当电脑连接网络传送资料时,资料会分割为不同大小的封包,MTU值设定。MTU是英文Maximum Transmission Unit的缩写,意为“最大传输单位”。也就是通过TCP/IP协议所传输的数据包最大有多少字节, MTU值越大,封包就越大,理论上可增加传送速率,但MTU值又不能设得太大,因为封包太大,传送时出现错误的机会大增。一般默认的设置,PPPoE连接的最高MTU值是1492, 而以太网(Ethernet)的最高MTU值则是1500,而在Internet上,默认的MTU大小是576字节, 为什么会有这种差别呢?一般而言,LAN就不说了吧,为充分发挥LAN的效能,MTU可以稍微大一点。Internet的情况恰好相反,对拨号用户来说, 那叫一个慢呀。因此,对于Internet,应当采用较小的数据包。 MTU值设定与宽带接入方式的不同也会影响上网速度,通常推荐的MTU配置是:对于拨号用户,设置成576;对于使用PPPoE的DSL用户,设置成 1400;对于其他用户,设置成1500。
ping www.blueidea -f -l 1480
出现 Packet needs to be fragmented but DF set.就说明该大小的(1480字节)数据包超过了ISP的MaxMTU,产生了数据冲突碎片,那么我们就降低Ping命令中的数据包大小,比如说是 1460一直到返回信息是Reply from 220.194.57.26: bytes=1460 time=134ms TTL=115才算正常,那个这个1460数据包大小的值就是ISP的PPPoE协议的MaxMTU值
9X系统中如下设定,运行 ==regedit回车,进入注册表。依次展开HKEY_LOCAT_MACHINE\System\CurrentControlSet\ Services\Class\NetTrans\,会看到包含几个000X的子项,寻含有键名为“DriverDesc”,键值为“TCP/IP”的 000X主键,该键里有该计算机的网络属性设置,如IP地址192.168.0.XX,网关 192.168.0.1,子网掩码255.255.255.0等。在该键下新建“DWORD值”,命名为“MaxMtu”,修改键值为十进制的1460,
Win95,98系统:
打开注册表编辑器,到位置 “HKEY_LOCAT_MACHINE\System\CurrentControlSet\Services\Class\NetTrans\000x”, “x”表示为数字,假如电脑安装了多个通讯协议,就会出现“0001”、“0002”、“0003”等项目,只要打开该项目,就会看见 “DriverDesc”是“TCP/IP”,即网卡的“Registry”设置,用户在这里可按鼠标右键新增一个“MaxMTU”的DWORD值,修改键值为十进制的1460,重启。
Win2000,NT,XP,2003系统可以采用如下2种方法之一,建议采用第一种,如果不行,依次往下试验
1,启用PMTUD的backhole传输
打开REGEDIT,HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\ Parameters\主键下,到主键 EnablePMTUBHDetect ,如果没有则创建这个Dword值,将其键值设置为1,保存后重起计算机,并测试故障是否解决?
2, 手工设置网卡的MTU值 tcpip协议连接不上
打开REGEDIT,HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\ Parameters\Interfaces\主键下,下面会有几个文件夹,分别代表机器的安装的每一块网卡,依次浏览每个文件夹,并察看窗口右边 IPAddress的键值,如果其值为你连接 Internet所用网卡的ip,则需要修改的就是这个文件夹。
进入此文件夹,到一个名为MTU的主键,如果没有则创建这个Dword值,修改键值为十进制的1460,重启。
路由器对转发数据包的单个包大小有限制,称为MTU,一般以太网MTU为1499,所以当你ping -l 10000的时候,超过了MTU的限制,路由器必须把一个数据包重新拆成若干个包来转
发。
有些低档路由器不支持MTU协商和数据包重拆,会自动丢弃超过MTU的数据包。
这和你本地链接的速度,用什么机器无关,和路由器的配置有关。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论