XGL Documentation¶
XGL is a production-oriented reliable multi-node protocol stack for resource-constrained MCUs. It provides a v2 wire format, multi-PHY routing, reliable delivery, ACK ranges, SACK, authentication, bounded fragment reassembly, and low-power runtime deadlines.
Current Capabilities¶
- 24-byte fixed wire header with explicit offset-based encoding.
- 16-bit node IDs and 32-bit packet numbers.
- TLV extensions for session, ACK range, SACK, fragment, security, and route metadata.
- Connection-scoped peer state keyed by
target_id + connection_id + session_epoch. - Production authentication provider requirements, including authenticated zero-copy behavior.
xgl_next_deadline_ms()for bare-metal and RTOS sleep scheduling.
Boundaries¶
- Single-frame payload length is still limited by
uint16_t payload_len. - Large messages use FRAGMENT_EXT.
- Compression and encryption are reserved codec capabilities and are rejected by the production path until fully wired.
- Broadcast and multicast address ranges are reserved; the current reliable path is unicast-focused.
Recommended Reading¶
SDK Users¶
Protocol Maintainers¶
- Architecture
- Implementation Map
- State Machines
- Wire Format
- TLV Extensions
- Reliability
- Security
- Validation Matrix