Re: Unbound DATA frames in HTTP/3 proposal

On Thu, Oct 9, 2025, at 17:33, Watson Ladd wrote:
> It depends on what the layers give to each other. If the expectation
> on the HTTP/3 layer is that the application visible stream comes from
> the QUIC layer as bunch of DATA frames that are each complete, vs.
> dealing with each byte as it comes in from a partial one, than an
> additional buffer is required. However I imagine that this is a) rare
> and b) can be structured so the buffer is most of the time not used
> (as most sensible implementations will throw the DATA frame on a
> STREAM frame into a packet as soon as they can, so the receiver
> doesn't buffer at all if they notice this has happened).

No buffering is needed.  Each of these layers is length-prefixed.  So a reader will have to track remaining lengths at each layer, but they do not need to buffer any bytes specially.  This is something I've implemented for chunked oblivious HTTP and it works cleanly.

You say a lack of alignment is potentially rare.  My experience is that while it is conceivable that framing is aligned to write sizes, that can get out of step.  So no guarantees.  But also no problem.

Received on Thursday, 9 October 2025 16:56:34 UTC