moq-wg / moq-transport

draft-ietf-moq-transport
Other
83 stars 20 forks source link

Consider using different terms to disambiguate control messages with a type, from untyped messages on dedicated streams #540

Open LPardue opened 2 weeks ago

LPardue commented 2 weeks ago

The spec uses the term Message for two different forms of things. Control messages share a single stream type and all need to contain a type in the message itself. IIUC, the things sent on streams of type OBJECT_DATAGRAM, STREAM_HEADER_TRACK, and STREAM_HEADER_TRACK are homongenous, so don't need an explicit type field.

Calling both of these things message is mildly confusing since they have fundamentally different formats.

LPardue commented 2 weeks ago

While the control messages are defined as Control Messages in https://moq-wg.github.io/moq-transport/draft-ietf-moq-transport.html#name-control-messages, this isn't consistently used throughout the document. So perhaps that is the solution here.

martinduke commented 2 weeks ago

Although we want to get rid of STREAM_HEADER_TRACK, it's necessary to have a type byte on unidirectional streams from STREAM_HEADER_SUBGROUP at this time.

IIRC, there is some thought about using Datagrams for another thing, and at the very least it's necessary to keep the OBJECT_DATAGRAM codepoint as an extension point for any such scheme.

martinduke commented 2 weeks ago

I do agree that the doc needs an editorial pass, as until recently the control plane/data plane distinction was not as clean as it is now.