Expand description
MoQT client implementation for draft-11.
Each draft lives in its own top-level module with a complete, independent implementation: connection, endpoint state machine, event types, observer trait, and per-flow state machines (subscribe, fetch, announce, track status). No code is shared across drafts — each draft carries its own copy because wire-level differences would make a shared layer leaky.
Enable via the draft11 feature.
§Differences from draft-10
Draft-11 is a structural change from draft-10. The most visible shifts:
subscribe_idis renamed torequest_idthroughout the control plane.MAX_SUBSCRIBE_ID/SUBSCRIBES_BLOCKEDbecomeMAX_REQUEST_ID/REQUESTS_BLOCKED.Subscribegains aforwardfield;group_orderandfilter_typeare carried as VarInts rather than typed enums.SubscribeOkcollapses the largest group/object pair into a single optionallargest_location;SubscribeErrorgains a trailingtrack_alias;SubscribeDonegainsstream_count.Announce/AnnounceOk/AnnounceErrorandSubscribeAnnounces*userequest_idinstead of carrying the namespace on every reply.TrackStatusRequest/TrackStatusare request-id keyed andTrackStatusno longer echoes the track namespace / name; it carries alargest_location.Fetchis restructured into aFetchPayloadenum (StandalonevsJoining);FetchOkuses a singleend_locationand addsend_of_track.- The data-stream layer adds subgroup variants 0x08–0x0D, datagram types 0x00–0x03, and per-object extension headers.
Modules§
- connection
- Outbound MoQT connection with MoQT framing over QUIC.
- endpoint
- Unified endpoint state machine orchestrating all MoQT protocol flows.
- event
- Client event types emitted via the observer. Client event types emitted by a draft-11 MoQT connection.
- fetch
- Fetch lifecycle state machine.
- namespace
- Announce / SubscribeAnnounces state machines.
- observer
- Connection observer trait for receiving client events. Connection observer trait for receiving structured events.
- session
- Session state, setup validation, and request ID allocation. MoQT session lifecycle management (draft-11).
- subscription
- Subscription lifecycle state machine.
- track_
status - Track status lifecycle state machine.