http://www.speedguide.net/analyzer.php
MTU通信术语 最大传输单元(Maximum Transmission Unit,MTU)是指一种通信协议的某一层上面所能通过的最大数据报大小(以字节为单位)
MTU 不行太大也不能太小 要刚刚合适
比如:一个数据总长是 2999字节
MTU 为1500时 这个数据被 拆成 1500 为标准的一段 分 1500+1499 2段 传送完毕
MTU 为1400 时 这个数据被 拆成 1400 为标准的一段 分 1400+1400+199 3段 传送完毕
所以太小了 传送就不效率了...
比如:一个数据总长是 9999字节
MTU 为15000时 这个数据被 拆成 15000 为标准的一段 分 15000 1段 传送完毕
但是包太大 传送过程中 被干扰 或者 丢包了 就需要重新发送了
所以太大了 传送就也不效率了...
百兆网络 默认的MTU世界标准为最大1500 (PS:千兆也有巨帧 比如4k 6k 9k 甚至16k 不过要纯千兆环境才可以)
MRU Maximum-Receive-Unit (MRU) 和MTU一样 可以简单理解为 一个接受 一个发送 值而已
所以一般 路由设置 MTU MRU 相同值即可
如果测试 MTU 适合呢?
同最简单的方法就行了...
ping命令 用到2个参数 -l 就是包的大小 -f 不允许分段传送
例子我这里要测试 ADSL 的 最佳MTU值
-l 参数一般 从 1472 逐步减少 (MTU最大值是1500 减去28包头就是1472了)
-
- C:>ping -l 1465 -f qq.com
- Pinging qq.com [119.147.15.55] with 1465 bytes of data:
- Packet needs to be fragmented but DF set.
- Packet needs to be fragmented but DF set.
- Packet needs to be fragmented but DF set.
- Packet needs to be fragmented but DF set.
- Ping statistics for 119.147.15.55:
- Packets: Sent = 4, Received = 0, Lost = 4 (100% loss),
- C:>ping -l 1464 -f qq.com
- Pinging qq.com [119.147.15.55] with 1464 bytes of data:
- Reply from 119.147.15.55: bytes=1464 time=34ms TTL=56
- Reply from 119.147.15.55: bytes=1464 time=36ms TTL=56
- Reply from 119.147.15.55: bytes=1464 time=36ms TTL=56
- Reply from 119.147.15.55: bytes=1464 time=34ms TTL=56
- Ping statistics for 119.147.15.55:
- Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
- Approximate round trip times in milli-seconds:
- Minimum = 34ms, Maximum = 36ms, Average = 35ms
这里可以看出 1465 的包太大了 要分段传送 1464 就刚刚好
- 1464 + 28 = 1492
- 1492 就是我这里 ADSL的最佳 MTU MRU了...
MSS是报文传输
MSS + 20 字节 IP包头 + 20字节TCP头 就是 MTU了...
那么我的最佳MSS就是 MTU 减去40 1492-40 = 1452
1452就是我最佳的MSS了...
小结:
ping -l 的值 + 28 就是最佳 MTU值
MTU 减去 40 就是 最佳MSS值[@more@]
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/23590362/viewspace-1040050/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/23590362/viewspace-1040050/