quiche icon indicating copy to clipboard operation
quiche copied to clipboard

QUIC server response bigger than allowed x3 byte limit

Open josephnoir opened this issue 2 years ago • 1 comments

I performed a handshake with https://cloudflare-quic.com. The reply from the server is bigger than the allowed x3 limit of the client payload. Here's a screenshot of the first packets, the complete PCAP trace is attached in the zip.

Screen Shot 2022-06-27 at 10 56 15 AM

Only looking at the UDP payload sizes, the initial packet from the client has 1337 bytes. This would give the server 4011 bytes to answer. However, it sends a total of 5406 bytes, which is 1395 more than allowed by the specification.

A big chunk of the overhead stems form the padding in the two Initial responses. Here, the server sends two datagrams instead of coalescing the ACK and CRYPTO packet into a single one. But even if only a single datagram would be sent, the sever would still go over the limit.

I tried looking through the code to identify the specific locations, but haven't been successful so far.

firefox-cloudflare-quic-handshake.pcapng.zip

josephnoir avatar Jun 27 '22 09:06 josephnoir

Any updates or interest to fix this?

josephnoir avatar Sep 16 '22 14:09 josephnoir

This question relates to a specific deployment of QUIC related to https://cloudflare-quic.com. We communicated directly with the team that looked into this and the findings were summarized in https://dl.acm.org/doi/10.1145/3555050.3569123. Since the question was answered elsewhere, I'll close this one.

LPardue avatar Jan 16 '23 17:01 LPardue