[PATCH 0 of 3] QUIC path MTU discovery

Roman Arutyunyan arut at nginx.com
Tue Mar 28 14:51:37 UTC 2023


This implementation does not rely on ICMP PTB messages.  Instead, QUIC
packet acknowledgement is used to make sure the MTU is suppored by the path
([1], [2]).  A lost packet, as detected by QUIC, indicates the MTU is too big.

Existing QUIC implementations use different approaches to size selection while
probing MTU.  Options are:

- hardcoded MTU values array
- linear search
- binary search

A review of size search methods is available in [3].

The algorithm implemented first tries local MTU, followed by a binary search
in case the local MTU was too big.

[1] https://datatracker.ietf.org/doc/html/rfc9000#name-datagram-packetization-laye
[2] https://datatracker.ietf.org/doc/html/rfc8899
[3] https://www.youtube.com/watch?v=5kIe3pbK84A


More information about the nginx-devel mailing list