Commit Graph

12 Commits

Author SHA1 Message Date
Marten Seemann
0db354456a make Path MTU Discovery resilient to random packet loss (#4545) 2024-06-04 02:10:11 -07:00
Marten Seemann
375fc59084 remove unused SetMax method on the mtuDiscoverer (#4543) 2024-05-31 22:00:15 -07:00
Marten Seemann
e41d1f9dd7 logging / qlog: add support for DPLPMTUD (#4517)
* logging / qlog: add support for DPLPMTUD

* improve the MTU discovery integration test
2024-05-14 02:37:54 -07:00
Marten Seemann
2557fb98b2 initialize the MTU discoverer when processing the transport parameters (#4514)
On the client side, we always use the configured packet size. This comes
with the risk of failing the handshake if the path doesn't support this
MTU. If the server sends a max_udp_payload_size that's smaller than this
size, we can safely ignore this: Obviously, the server still processed
the (fully padded) Initial packet, despite claiming that it wouldn't do
so.

On the server side, there's no downside to using 1200 bytes until we
received the client's transport parameters:
* If the first packet didn't contain the entire ClientHello, all we can
do is ACK that packet. We don't need a lot of bytes for that.
* If it did, we will have processed the transport parameters and
initialized the MTU discoverer.
2024-05-13 22:50:26 -07:00
Marten Seemann
e90a0d4e03 increase initial packet size to 1280 bytes (for both IPv4 and IPv6) (#4500) 2024-05-08 20:55:19 -07:00
Marten Seemann
e1bcedc78c ackhandler: use a frame handler interface for OnAcked / OnLost of all frame types (#3888) 2023-06-04 13:04:28 -07:00
Marten Seemann
bef0f3d31a pass the maximum packet size from MTU discoverer to packet packer 2023-06-02 18:35:02 +03:00
Marten Seemann
ecaef04695 initialize the MTU discoverer immediately 2023-06-02 18:35:02 +03:00
Marten Seemann
58cedf7a4f rename module, adjust import paths to quic-go/quic-go (#3680) 2023-01-21 19:53:57 -08:00
Marten Seemann
2e98150cd4 don't send path MTU probe packets on a timer (#3423) 2022-05-20 03:10:39 -07:00
Marten Seemann
c6ae91a8cf introduce a mtuDiscoverer interface 2021-03-03 12:00:14 +08:00
Marten Seemann
04642c9e4d add a MTU discoverer that performs a binary search to determine the MTU 2021-03-03 12:00:14 +08:00