- From: Willy Tarreau <w@1wt.eu>
- Date: Sat, 11 Oct 2025 08:01:26 +0200
- To: Kazuho Oku <kazuhooku@gmail.com>
- Cc: Ben Schwartz <bemasc@meta.com>, Yaroslav Rosomakho <yrosomakho@zscaler.com>, Demi Marie Obenour <demiobenour@gmail.com>, Amos Jeffries <squid3@treenet.co.nz>, "ietf-http-wg@w3.org" <ietf-http-wg@w3.org>
On Fri, Oct 10, 2025 at 09:01:36AM +0900, Kazuho Oku wrote: > Consider the case of sending 10 bytes. The composition of a UDP datagram > *near minimum* is like: > > QUIC 1st byte: 1 > QUIC DCID: 0 > QUIC packet number: 2 > QUIC STREAM frame header: 1 /* type */ + 2 /* id */ + 2 /* offset */ = 5 > H3 DATA frame header: 1 /* type */ + 2 /* length */ = 3 > H3 DATA frame payload: 10 > QUIC AEAD tag: 16 > > So, in the case of this example, total size of the UDP datagram is 37 > bytes, and the H3 DATA frame header takes 3 bytes; i.e., 8%. > > And we aren't even talking about the IP header. And potential ACKs in return! > Or, maybe the H3 layer (and also the QUIC layer) should provide support for > message-oriented streams like SCTP does, so that multiple protocols built > on top can benefit from them. That's why I suggested that I think we're missing an equivalent of the H1 upgade. In H2 and H3 we seem to be focusing a bit too much on encapsulation, which requires to fill all intermediate layers, while at least H3 is linear over a single stream and could very well benefit from a protocol upgrade, to switch to something that is transported over a bare QUIC stream. This would seem much cleaner to me, given that in the proposal here there's no intent to switch back to H3 after the transfer (even trailers are impossible). At least this would ease (and possibly standardize) the transition of H3-to-anything over QUIC. And the "message-oriented streams" you're mentioning could be the first one. Willy
Received on Saturday, 11 October 2025 06:01:33 UTC