为何传输的数据包要少于1500个字节

一、链路层具备最大传输单元MTU这个特性,它限制了数据帧的最大长度,不一样的网络类型都有一个上限值。以太网的MTU是1500,你能够用 netstat -i 命令查看这个值。若是IP层有数据包要传,并且数据包的长度超过了MTU,那么IP层就要对数据包进行分片(fragmentation)操做,使每一片的长度都小于或等于MTU。咱们假设要传输一个UDP数据包,以太网的MTU为1500字节,通常IP首部为20字节,UDP首部为8字节,数据的净荷(payload)部分预留是1500-20-8=1472字节。若是数据部分大于1472字节,就会出现分片现象。

二、至于为何最大值设置成1500字节。
其实,这个最大传输单元MTU等于1500是国际规定的默认值而已,本身也能够将它设置的小一些,【最大值是1500】,就是规定而已,多是你们评估考虑1500是比较合适的一个数值。
可能能够这样认为,MTU=1500是一个通过实验获得的能够最大效率传输数据的值。假若大于1500,数据传输速度就会变慢;相反,若小于1500,链路又得不到充分利用,减少了效率。。。。因此,1500就是最好的值。网络

相关文章
相关标签/搜索