Expand description
The board-agnostic half of a LAN bearer: what a radio does with a datagram from the group before its node sees it.
The socket, the group membership, and the DNS-SD responder are the board’s, because they are its network stack’s. Everything that decides about a datagram is here, where it can be tested on a host:
- Validation. One UMSH frame per datagram, no header. Empty and oversized datagrams, and ones whose version bits name no protocol, are dropped and counted. MeshCore v1 frames are recognized and left alone: this node does not carry them across the LAN.
- The ingress limit. A token bucket over the datagrams handed to the node, so a busy LAN cannot spend the radio’s airtime faster than the operator allows. The duty ceiling still applies behind it.
- The hand-off. A
BridgePortthe radio multiplexer drains into the node asRxOrigin::Bearer, and into the ULCP session, which hears the LAN as the device does. - The egress. Every UMSH frame the radio puts on the air, as the multiplexer reports it, queued for the board’s socket task. The LAN works as backhaul does: whether a frame is carried is the node’s ordinary forwarding decision, and the LAN sees what came of it.
Spec: docs/protocol/src/lan-bearer.md.
Structs§
- Ingress
Limit - The ingress limit: a bucket of datagrams, refilled continuously at the configured rate.
- LanPort
- The LAN bearer’s port into the radio multiplexer.
Enums§
- Verdict
- What became of one datagram.
Functions§
- classify
- What a datagram is, judged by its first octet alone—as a radio judges a reception, before parsing anything.