§9.

Data Streams

Sections

A publisher sends Objects matching a subscription on Data Streams.

All unidirectional MOQT streams start with a variable-length integer indicating the type of the stream in question.

Table 8
ID Type
0x4 SUBGROUP_HEADER (Section 9.4.2)
0x5 FETCH_HEADER (Section 9.4.4)

All MOQT datagrams start with a variable-length integer indicating the type of the datagram.

Table 9
ID Type
0x1 OBJECT_DATAGRAM (Section 9.2)
0x2 OBJECT_DATAGRAM_STATUS (Section 9.2)

An endpoint that receives an unknown stream or datagram type MUST close the session.

The publisher only sends Objects after receiving a SUBSCRIBE or FETCH. The publisher MUST NOT send Objects that are not requested. If an endpoint receives an Object it never requested, it SHOULD terminate the session with a protocol violation. Objects can arrive after a subscription or fetch has been cancelled, so the session MUST NOT be teriminated in that case.

Every Track has a single 'Object Forwarding Preference' and the Original Publisher MUST NOT mix different forwarding preferences within a single track. If a subscriber receives different forwarding preferences for a track, it SHOULD close the session with an error of 'Protocol Violation'.

This is one section of the MoQT specification, rendered per-section for quick reference and citation. The authoritative text is draft-ietf-moq-transport-10 at the IETF.