【网络】IP分片与路径MTU发现

目录

MTU值

IP分片与重组

路径MTU发现

路径MTU发现原理


个人主页:东洛的克莱斯韦克-CSDN博客

相关文章:【网络】从零认识IPv4-CSDN博客

MTU值

由于物理层的硬件限制,为了使网络性能最优,在数据链路层会有一个MTU值,表示数据链路的最大传输单元。

而不同数据链路的MUT的值可能不同。如下表格

数据链路协议 MTU(字节) 总长度(字节,包含FCS)
Hyperchannel 65535 65535
IP over HIPPI 65280 65320
16Mbps IBM Token Ring 17914 17958
IP over ATM 9180 -
IEEE 802.4 Token Bus 8166 8191
IEEE 802.5 Token Ring 4464 4508
FDDI 4352 4500
以太网 1500 1518
PPP (Default) 1500 -
IEEE 802.3 Ethernet 1492 1518
PPPoE 1492 -
X.25 576 -

IP协议的统一性抹平了数据链路层的差异,如果上层交付给网络层(IP层)的数据包过大,就需要把数据包分开发送,这称为IP分片。

IP分片与重组

由于数据链路层的协议可能不同,数据包不止再本主机会被分片,也可能会被其他路由器再分片。被分片的一般都是UDP的数据包,UDP协议是面向数据报的,UDP向下交付数据时可能会很大。而TCP协议是面向连接和字节流的,在三次握手是就协商好了MTU值,向下交付的数据一般不需要IP层进行分片。

路径MTU发现

随着时代的变迁,计算机网络的物理传输速度不断上升。这些高速的链路,对路由器和计算机网络,提出了更高的要求。另一方面,随着人们对网络安全的要求提高,路由器需要做的其他处理也越来越多,如网络过滤等。因此是不希望由路由器进行IP数据包的分片处理的。

其次,在分片处理中,一旦某个分片丢失,则会造成整个IP数据报作废。为,了避免此类问题,TCP的初期设计还曾使用过更小的分片进行传输。其结果是,网路的利用率明显下降。为了应对以上问题,产生了一种新的技术"路径MTU发现"(PathMTUDis-,covery)。

所谓路径MTU(PathMTU)是指从发送端主机到接收端主机之间不需,要分片时最大MTU的大小。即路径中存在的所有数据链路中最小的MTU。而路径MTU发现从发送主机按照路径MTU的大小将数据报分片后进行发送。进行路径MTU发现,就可以避免在中途的路由器上进行分片处理,也可以在TCP中发送更大的包。现在,很多操作系统都已经实现了路径MTU发现的功能。

路径MTU发现原理

首先在发送端主机发送IP数据报时将其首部的分片禁止标志位设置为1(IP层报头的标志位)。根据这个标志位,途中的路由器即使遇到需要分片才能处理的大包,也不会去分片,而是将包丢弃。

随后,通过一个ICMP的不可达消息将数据链路上MTU的值给发送主机。,下一次,从发送给同一个目标主机的IP数据报获得ICMP所通知的MTU值以后,将它设置为当前MTU。发送主机根据这个MTU对数据报进行分片处理。如此反复,直到数据报被发送到目标主机为止没有再收到任ICMP,就认为最后一次ICMP所通知的MTU即是一个合适的MTU值。

那么,当MTU的值比较多时,,最少可以缓存约10分钟。在这10分钟内使用刚刚求得的MTU,但过了这10分钟以后则重新根据链路上的MTU做一次路径MTU发现。

相关推荐
2501_9151063242 分钟前
Flutter、React Native 项目如何搞定 iOS 上架?从构建 IPA 到上传 App Store 的实战流程全解析
websocket·网络协议·tcp/ip·http·网络安全·https·udp
没有黑科技1 小时前
5G网络中频段的分配
网络·5g
搬码临时工2 小时前
如何通过外网访问内网?哪个方案比较好用?跨网远程连接网络知识早知道
网络·智能路由器
snetlogon203 小时前
JDK17 Http Request 异步处理 源码刨析
android·网络协议·http
2301_793069823 小时前
Azure 虚拟机端口资源:专用 IP 和公共 IP Azure Machine Learning 计算实例BUG
tcp/ip·flask·azure
还有几根头发呀5 小时前
UDP 与 TCP 调用接口的差异:面试高频问题解析与实战总结
网络·网络协议·tcp/ip·面试·udp
秋水丶秋水6 小时前
SSL安全证书怎么安装?
网络协议·http·https
Demisse12 小时前
[华为eNSP] OSPF综合实验
网络·华为
工控小楠12 小时前
DeviceNet转Modbus TCP网关的远程遥控接收端连接研究
网络·网络协议·devicenet·profient
搬码临时工12 小时前
电脑同时连接内网和外网的方法,附外网连接局域网的操作设置
运维·服务器·网络