MTU解读

MTU是Maximum Transmission Unit的缩写,中文对应解释为最大传输单元。就是网络中一次可以传输的最大包的大小。

在网络编程的过程中,大家经常会问这个值到底是多少?尤其是使用UDP(数据包方式)传输数据的时候,使用小于等于MTU大小,就可以避免发送出去的数据包被分包,这样避免了因分包导致的数据包的整个包的丢失。以TCP/IP的四层协议来看,MTU指的是那一层的参数呢?

答案是数据链路层,并不是很多人认为的传输层(如TCP,UDP)或者网络(IP),所以你的IP包的长度可以达到65535长度。

关于的它的大小,在IETF规定的草案文档中,也就是RFC中有规定,

Ethernet v2为1500 Bytes(字节),但是不要迷信这个,通常大家配置成这个值1500,但是这个一个网络配置参数,是可以更改的,可以小,也可以大,在路由器的配置中,其中就有一个参数是这个MTU,如果你使用jumbo帧的情况下,这个值可以到9000字节,关于jumbo frame可以参考Jumbo frame

具体的网络中,你需要使用相关的方法来检测MTU。不过最小的传输单元是有规定的,

IPv4是68

IPv6是1280

 

版权所有,禁止转载. 如需转载,请先征得博主的同意,并且表明文章出处,否则按侵权处理.

    分享到:

Leave a Reply

Your email address will not be published. Required fields are marked *