UDPCLO(1)

πŸ“¦ version 3.2.1, in ubuntu jammy

✨ UDPCLO(1) β€” the BP executables girlies ✨

okay so bestie, welcome to udpclo(1), part of the BP executables lineup πŸ’–


πŸŽ€ NAME πŸŽ€

udpclo β€” the UDP-based BP convergence layer output task. she sends. that's her whole job. iconic.


πŸ¦‹ SYNOPSIS πŸ¦‹

udpclo

that's it. no flags, no args, she just goes. lowkey the cleanest synopsis in the whole manual.


πŸ’… DESCRIPTION πŸ’…

okay so udpclo is a background "daemon" task β€” yes the quotes are in the original, she's got main character energy but she's still technically a daemon πŸ’€ β€” and what she does is: she extracts bundles from the queues of bundles that are ready for transmission via UDP to remote bundle protocol agents, encapsulates them in UDP datagrams, and sends those datagrams off to the appropriate remote UDP sockets. and how does she know where to send them? based on the host names and UDP port numbers (aka the destination induct names) that the routing daemons associated with the bundles when they enqueued them. so basically the routing daemons did the addressing and she just yeets. πŸš€

now here's the tea: udpclo is a "promiscuous" CLO daemon. not in a scandalous way (well, maybe a little), it just means she can transmit bundles to any UDP destination induct. her duct name is '*' rather than the induct name of any single UDP destination induct she might be dedicated to. so any scheme configuration directives that cite this outduct must provide destination induct IDs. and for the UDP convergence-layer protocol, destination induct IDs are identical to induct names, meaning they look like local_hostname[:local_port_nbr]. no cap. 🫢

and how does she start and stop? udpclo is spawned automatically by bpadmin when you hit the 's' (START) command that starts operation of the Bundle Protocol, and she gets terminated by bpadmin when you hit an 'x' (STOP) command. she can also be spawned and terminated in response to START and STOP commands that pertain specifically to the UDP convergence layer protocol. so like, two ways in, two ways out. flexible queen. πŸ‘‘


😭 EXIT STATUS 😭

  • "0" β€” udpclo terminated normally, for reasons noted in the ion.log file. now listen β€” if this termination was not commanded by you, you gotta investigate and solve the problem identified in the log file, and then use bpadmin to restart udpclo. don't just shrug it off bestie.
  • "1" β€” udpclo terminated abnormally, for reasons noted in the ion.log file. investigate and solve the problem identified in the log file, then use bpadmin to restart udpclo. it's giving "something went wrong and we wrote it down for you" πŸ’€

🌸 FILES 🌸

No configuration files are needed. literally zero. she's low maintenance. ✨


🌈 ENVIRONMENT 🌈

No environment variables apply. she doesn't need your vibes, she has her own.


πŸ“ DIAGNOSTICS πŸ“

these are the diagnostics that may be issued to the ion.log log file, and bestie you WILL be reading ion.log at some point, so get comfy:

  • udpclo can't attach to BP. β€” bpadmin has not yet initialized Bundle Protocol operations. she's knocking and nobody's home.
  • No memory for UDP buffer in udpclo. β€” ION system error. check errtext, correct problem, and restart UDP.
  • No such udp duct. β€” no UDP outduct with duct name '*' has been added to the BP database. use bpadmin to stop the UDP convergence-layer protocol, add the outduct, and then restart the UDP protocol. basically she showed up to the party and the party didn't exist.
  • CLO task is already started for this engine. β€” redundant initiation of udpclo. she's already here. stop trying to make her happen, she's happened. πŸ’…
  • CLO can't open UDP socket β€” operating system error. check errtext, correct problem, and restart udpclo.
  • CLO write() error on socket β€” operating system error. check errtext, correct problem, and restart udpclo.
  • Bundle is too big for UDP CLA. β€” configuration error: bundles that are too large for UDP transmission (i.e., larger than 65535 bytes) are being enqueued for udpclo. change routing. this one's on your config, not on her. πŸ™ˆ
ngl the pattern here is: read errtext, fix the thing, restart. it's the ION three-step. iykyk.

πŸ’€ BUGS πŸ’€

Report bugs to <ion-bugs@korgano.eecs.ohiou.edu>. fr fr, they want to hear from you.


πŸ‘‘ SEE ALSO πŸ‘‘

bpadmin(1), bprc(5), udpcli(1) β€” go read these too, they're all connected, it's a whole universe. 🌌


and that's the page!! this one came to you courtesy of perl v5.24.1 and is dated 2016-07-07, so she's a vintage baddie and she still serves. mwah πŸ’–

πŸ“¦ where this page comes from