TCP/DUP 找出最合适的MTU值

来源:互联网 发布:ubuntu怎么使用命令 编辑:程序博客网 时间:2024/06/10 16:41

找出最合适的MTU值  

在默认情况下,TCP/IP在网络中的最大传输单元为1500。这是什么意思呢?我们知道网络传输数据是按数据包的形式来传送的,例如默认的MTU值为1500字节,那么当传送的数据大于1500时,则会以此为标准,将其分封个若干个1500字节,然后进行封包、解包操作。由此看来,MTU值的大小会影响到封包和解包操作的频率。  那么我们是不是将MTU的值设的越大越好呢?当然不是,首先值过小,那么会在网络中进行频繁的封包和解包,其影响显而易见;而设置的值过大那么适合局域网内部的高速传输,但是接入Internet则会影响稳定性。因此我们需要寻找最合适的MTU值。  

  寻找MTU合适大小的方法是借助Ping工具来完成的。在运行窗口中输入“cmd”后回车打开命令提示符窗口,输入“ping -f -l MTU值 网关IP”,其中-f表示不进行碎片整理,-l表示指定MTU的值,而最终朱则试我们一般是拿网关为标准。   

    在测试时,我们可以先取一个基准数据,例如默认设置1500,如果命令执行之后返回的提示信息是“Packet needs to be fragmented but DF set.”时,那则说明我们设置的MTU值过大,不适合当前的网络(图1);当不适合时则需要重新执行该命令并将MTU值改小,而返回的信息变成“Reply from 192.168.1.254: bytes=1472 time=1ms TTL=64”的时候(图2),那么则可以将MTU值再增大,一直找到在两种状态之间的那个MTU值,这个数值就是当前环境下最合适的MTU值了。