#5768·quic-go

路径 MTU 发现可以确定一个经常出现低速丢包的数据包大小,而且无法限制搜索范围。

作者: kubrickfr创建于 2026年7月27日更新于 2026年8月23日

1. 通过包大小的 A/B 测试(相同路径,相隔几分钟,使用工具计数每个约 50 个包的损失):

服务器发送 每个窗口的损失 流量
≤ 1440 字节的 IP 包(如果 MTU 设置为 1400) 0/58,0/55,0/52,0/57 … — 0% ~5 MiB/s 持续
1469 字节的 IP 包(通过 PMTUD 发现:1441 字节的 UDP 有效负载) 2/54,1/50,5/57,1/51 … — ~1–1.5% ~500 KiB/s

唯一变化的变量是包大小。平滑的 RTT 在两种状态下均稳定在 ~50 ms(没有缓冲区膨胀的特征)。

2. 临界值对 DF 探测是不可见的。 在同一路径上,ping -4 -M do 在 1450 字节的包中通过(在重复运行中损失为 0%),并在 1451 字节时硬件 100% 丢弃 - DF 被尊重。然而,将 QUIC 限制在 1450 字节并没有解决坍塌问题;将其限制在 1440 字节则可以。因此,即使保守地将发现限制在测量的路径 MTU 也还不够 - 损失阈值位于任何基于 DF 的测量所报告的值之下。

内容来源: quic-go/quic-go