tfpauly/draft-pauly-quic-datagram

Specify Max Payload Size instead of Max Frame Size

nibanks opened this issue · 3 comments

Right now, the TP specifies a maximum frame size, including frame type, length and payload. This makes certain values invalid (0, 1?). Also, since this values practically is a kind of flow control, indicating how much data I'm willing to receive at a time, it's the payload length that's important here, not the framing.

For these reasons, I'm arguing to change this to specifying a maximum payload length. Then, the question of what a value of zero means. Should a value of 0 be the same thing as not present or should it mean that only 0 length datagrams are allowed? I think it is simpler to say that a value of zero is the same as not present (i.e. disabled).

Wasn't the legality of zero-length frames agreed upon in #19?

I didn't even realize that the parameter wasn't payload size. Strongly agree that it should be.

I agree that is simpler to define zero to mean not allowed, but it is highly confusing to be forced to require a length of one if you specifically only use 0 length datagrams for heatbeats or similar. It would be better to a have separate indicator to reject datagrams altogether.

Closing this issue, follow along on the new repository.