加载中...
MTU 定义了网络链路上单次能传输的最大数据帧大小。以太网标准 MTU 为 1500 字节,超出则需分片。MTU 设置不当会导致连接神秘断开或性能下降,是网络排查中常被忽视的关键参数。

| 以太网标准 MTU | 1500 字节 |
| PPPoE MTU | 1492 字节 |
| 相关 RFC | RFC 1191(PMTUD) |
以太网的 1500 字节 MTU 并非精密计算的结果,而是 1980 年代初 DEC 工程师 Bob Metcalfe 拍板的经验值——大到能装下多数应用数据,小到不会让一块坏帧占用链路太久。这个数字沿用至今,成为事实上的互联网标准。
不同链路层技术有各自的 MTU:Wi-Fi(802.11)也是 1500;PPPoE 因为帧头多了 8 字节,有效 MTU 只有 1492,这是家用宽带(ADSL/光猫 PPPoE 拨号)常见的坑;Jumbo Frame 可将 MTU 扩展到 9000 字节,在数据中心内部大量使用以提高吞吐效率。[1]
当 IP 包超过链路 MTU 时,路由器(IPv4)或发送端(IPv6)需要分片。分片有代价:增加头部开销,目标端需重组,任意一片丢失整包重传。IPv6 干脆禁止中间路由器分片,只允许源端分片。
路径 MTU 发现(PMTUD, RFC 1191)是解决方案:发送方将 IP 包的 DF(Don't Fragment)位置 1,途中任何路由器若无法转发就回一个 ICMP「需要分片」消息,发送方据此降低包大小。然而很多防火墙会屏蔽 ICMP,导致「黑洞」——连接看上去建立成功,却无法传数据。这也是 VPN 配置中经常需要手动设置 MSS 钳位(tcp-mss 1452)的原因。

| 以太网标准 MTU | 1500 字节 |
| PPPoE MTU | 1492 字节 |
| 相关 RFC | RFC 1191(PMTUD) |
登录 后参与讨论
暂无讨论,来发表第一条评论吧