NG_FRAME_RELAY(4)

πŸ’– NG_FRAME_RELAY πŸ’–

okay so bestie, welcome to ng_frame_relay(4), a page from the Kernel Interfaces Manual, and honestly? it's giving vintage networking and i'm obsessed. this is the frame relay netgraph node type and she is ICONIC. let's get into it πŸŽ€


✨ NAME ✨

ng_frame_relay β€” frame relay netgraph node type 🌸


✨ SYNOPSIS ✨

#include <netgraph/ng_frame_relay.h>

✨ DESCRIPTION ✨

so what does this girl actually DO? the frame_relay node type handles encapsulation, de-encapsulation, and multiplexing of packets using the frame relay protocol. she supports up to 1024 DLCI's, no cap. πŸ’…

one thing tho β€” the LMI protocol is not her job, she outsources that to a separate node type (go check ng_lmi(4), that's her bestie 🫢).

the downstream hook should be connected to the synchronous line, i.e., the switch. then hooks dlci0, dlci1, through dlci1023 are all available to connect to each of the DLCI channels. it's giving a whole lineup of icons ✨


✨ HOOKS ✨

this node type supports the following hooks:

  • downstream β€” the connection to the synchronous line. 🌈
  • dlciX β€” here X is a decimal number from 0 to 1023. this hook corresponds to the DLCI X frame relay virtual channel. one hook per channel, very demure, very mindful. πŸŽ€

✨ CONTROL MESSAGES ✨

ngl she's lowkey simple in the best way: this node type supports only the generic control messages. that's it. that's the whole menu. πŸ“


✨ SHUTDOWN ✨

this node shuts down upon receipt of a NGM_SHUTDOWN control message, or when all hooks have been disconnected. so basically she leaves when you tell her to, or when everyone ghosts her. πŸ˜­πŸ’€


✨ SEE ALSO ✨

the whole friend group fr fr 🫢


✨ HISTORY ✨

the ng_frame_relay node type was implemented in FreeBSD 4.0. vintage queen πŸ‘‘


✨ AUTHORS ✨

Julian Elischer <julian@FreeBSD.org> β€” thank you for your service, king πŸ«‘πŸ’œ


✨ BUGS ✨

okay bestie, listen up because this one is a real note and not just vibes:

Technically, frames on DLCI X should not be transmitted to the switch until the LMI protocol entity on both ends has configured DLCI X as active. The ng_frame_relay node type ignores this restriction, and will always pass data received on a DLCI hook to downstream. Instead, it should query the LMI node first. πŸ™ˆ

so yeah, she's a little reckless. she skips the vibe check and just sends it. πŸ’€ not great, not terrible, but definitely noted.


and that's the whole page, bestie!! this one came out of the Debian crew, dated January 19, 1999 β€” so yes, she's been serving frame relay realness since before we were born. iconic behavior, honestly. mwah πŸ’…πŸ’–βœ¨

πŸ“¦ where this page comes from