MTU
- | 数据链路层单次传输的最大数据量 | 网络接口层,不是网络层 | 以太网:1500字节|
MSS
- | TCP 连接单次传输的有效数据量 | 传输层 | MTU - 40字节|
- | UDP层无分片能力
PMTUD
路径 MTU 发现(PMTUD) 是通过动态探测网络路径中最小 MTU 的机制,其核心是 DF 标志位(Don't Fragment)与 ICMP Fragmentation Needed 报文的协作。
抓包
No. Time Source Destination Protocol Length Info
1 0.000000 192.168.1.100 203.0.113.5 TCP 1500 [SYN] Seq=0 DF Flags=...
2 0.101203 10.0.0.1 192.168.1.100 ICMP 70 Frag needed (MTU=1400)
3 0.102005 192.168.1.100 203.0.113.5 TCP 1400 [SYN] Retransmission DF
4 0.201876 203.0.113.5 192.168.1.100 TCP 60 [SYN, ACK]
- DF为,为1代表路由需要分片并返回ICMP,为0代表分片传输
IP分片
IP分片(IP Fragmentation)是IP协议层将过大的数据包切割成多个符合链路层MTU限制的小分片,在接收端重组还原的过程
当IP包长度 > 出接口MTU 且 DF标志位=0(允许分片)时触发
尽量不要IP分片,消耗CPU和提高丢包率