1. MTU和相关概念的定义:Mtu是最大传输单位,完整称为最大传输单位。
它是指可以通过通信协议的特定层的最大数据包大小(以字节为单位)。
由于定义不明确,此处还引入了几个相关术语,MRU,PMTU,MSS和JUMBO FRAME,以供大家区分。
其次,MTU涉及主要原理:1,常见网络的MTU值:IP网络以数据包为单位传输信息,然后,一次适合传输一个数据包的大小以及最有效的数据包大小是其中之一。
核心问题。
MTU是事实上的标准,它确定在哪种类型的物理网络上传输多少数据包。
不同类型的网络具有不同的物理特性和发展阶段,其MTU的默认值也不同。
以下是各种类型的网络及其默认MTU的摘录。
值:对于Windows操作系统,以太网网卡的默认MTU为1500,但可以通过修改工具或修改注册表进行修改,但只能将其更改为较小的值,而不能更改为较大的值,即只能更改为小于或等于1500个字节。
2. PMTU发现过程:对于基于网络的应用程序,如果通过网络的应用程序的MTU等于PMTU,则通过网络的应用程序的效率最高。
换句话说,应用程序通过主机网卡发送的最大数据包大于PMTU。
越近(意味着小于或等于PMTU),遍历网络的应用程序的效率越高,其原因是有效避免了碎片和重组。
为了实现此目标,某些操作系统支持自动发现路径MTU的功能。
具体过程是:router在路由器接口上接收到一个数据包,该数据包的长度大于接口的MTU值。
如果数据包标记为未分段,则此消息将被丢弃,并且将返回ICMP错误消息以通知发起者该丢弃原因。
消息发起者将发送相对较小的消息。
通过以上消息的多次协商,将获得某个固定路径的最小Mtu值。
该过程称为“ Mtu发现”。
[有关详细信息,请参阅RFC1191]。
了解MTU发现的原理,并举例验证PMTU更改过程:在上图所示的实验网络中,一个三层设备模拟PPPOE拨号以实现对宽带IP网络的访问。
第3层设备的上游以太网端口的默认MTU为1482字节。
数据包捕获结果显示如下:将第3层设备的上游以太网端口的默认MTU更改为1000字节。
数据包捕获结果显示如下: 3,“ PMTU”发现的问题:由于无法统一和标准化Internet上的路由器或其他网络设备的配置,因此某些运营商或网站会考虑网络安全性和其他需求,有时会过滤掉ICMP消息。
此外,PMTU还涉及主机,各种交换机,路由器,防火墙和其他网络设备。
这些主机和网络设备没有实现PMTU协商和交互的有效手段,因此Mtu Discovery无法正常运行,从而影响应用程序的正常运行,也就是说,目前基本上没有发现PMTU的有效手段。
当Internet上的网络设备遇到MTU发现数据包或必须对IP数据包进行分段但DF设置为1时,路由器可以使用以下任何一种方法(从Internet摘录):按照RFC 792和RFC 792中的原始定义进行发送。
ldquo; ICMP目标不可到达的片段需要和DF设置。
消息,然后丢弃该数据包。
原始消息格式不包含有关转发失败的链接的IP MTU的信息。
(导致PMTU无法正常发现)?发送“需要的ICMP目的地不可到达的碎片和DF集”。
在RFC 1191中重新定义消息,然后丢弃该数据包。
这种新的消息格式包含一个MTU字段,该字段可以指示转发失败的链接的IP MTU。
(PMTU可能会正常发现)RFC RFC 1191定义了路径MTU(PMTU)发现,它使源TCP和目标TCP对等体能够动态发现两者之间路径的IP MTU,从而发现路径的TCP MSS。
在接收到“所需的目的地不可到达的碎片和DF集”时,将其发送给用户。
消息已定义