秋忆博客
若是有缘,时间空间都不是距离,若是无缘,终日相聚也无法会意,凡事不必太在意,更不需去强求。
   MTU是Maximum Transmission Unit的缩写,即最大传输单元。是指链路层(TCP/IP四层结构中的最底层:链路层 Link Layer)所能传送数据帧的最大长度。MTU的单位是字节。 大部分网络设备的MTU都是1500,即IP数据报的长度不能超过1500字节。表1列出了几种常见的MTU值。

                表1 几种常见的最大传输单元
 网  络  MTU字节
超通道
16 Mb/s令牌环(IBM)
4 Mb/s令牌环(IEEE 802.5)
FDDI
以太网
IEEE802.3/802.2
X.25
点对点(低延时)
65536
17914
4464
4352
1500
1492
576
296

   如果本机的MTU比网关的MTU大,大的数据报就会被拆开来传送,这样会产生很多数据报碎片,增加丢包率,降低网络速度。把本机的MTU设成比网关的MTU小或相同,就可以减少丢包。
   如何检测网关的MTU。 在XP下面,进入命令提示符(开始-运行:输入cmd),执行:
 ping -f -l 1472 192.168.1.175
   其中192.168.1.175是另外一台局域网内主机的IP地址,
本机IP地址为192.168.1.209(IP地址为192.168.×.×的为局域网专用IP,是不能在公网上显示的,主要是基于缓解IP地址资源紧张而提出的一种解决方法)。1472 是数据报的长度。1472是通过这样计算出来的:由于以太网的MTU为1500,这个长度是包括IP包头长度(一般为20字节),以及传输层的报头长度 (TCP一般为20字节,UDP为8字节)。由于Ping程序发送的数据长度是UDP数据,因此,可以发送至以太网最大的UDP数据长度为1500-20 -8=1472字节。
  同时,上面的参数是“-l”(小写的L),而不是“-1”。如果能ping通,表示数据报不需要拆包,可以通过网关发送出去。 如果出现: Packet needs to be fragmented but DF set. 表示数据报需要拆开来发送。此时,减少数据报长度,再执行上面的ping命令。从1400到1472之间多试几次,就能找到合适的数据报长度了。把数据报 长度加上数据报头28字节,就得到MTU的值。 如果检测到网关的MTU值是1500,不需要修改。如果网关有防火墙ping不通,可以试试直接把MTU设为1400。

   以下是执行
ping -f -l 1472 192.168.1.175的输出结果:
Pinging 192.168.1.175 with 1472 bytes of data:

Reply from 192.168.1.175: bytes=1472 time=2ms TTL=128
Reply from 192.168.1.175: bytes=1472 time=1ms TTL=128
Reply from 192.168.1.175: bytes=1472 time=1ms TTL=128
Reply from 192.168.1.175: bytes=1472 time=1ms TTL=128

Ping statistics for 192.168.1.175:
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
    Minimum = 1ms, Maximum = 2ms, Average = 1ms

  这首先说明当IP数据报的长度为1500字节的时候,网关可以顺利的发送出去,而不用将数据报拆分,即分组。下面我们将测试IP数据包为1501字节是,即UDP数据长度为1473时执行
ping -f -l 1473 192.168.1.175 的输出结果:

Pinging 192.168.1.175 with 1473 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 192.168.1.175:
    Packets: Sent = 4, Received = 0, Lost = 4 (100% loss),
   
    这说明当IP数据报的长度为1501字节时,数据报就需要分组。由此可以看出,网关的MTU应该是1500字节。
posted on 2008-03-04 09:50  秋忆  阅读(4041)  评论(1编辑  收藏  举报