为何我的Modem里面不能改MTU值
发布网友
发布时间:2022-04-22 02:23
我来回答
共1个回答
热心网友
时间:2024-01-27 08:23
请参考以下的文章
http://www.blogdear.com/blog/granite/archives/2005/721.html
优化:MTU最大传输单位
先来解释一下,什么是MTU,它的英文全称Maximum Transmission Unit,意为最大传输单位。也就是在连接的时候,所传输信息包最多可以有多少字节。MTU决定着信息包的大小,如果信息包太小,同样大小的数据就会分成很多个包传输,计算机不得不频繁地作出响应;如果信息包太大则会产生错误,导致传输失败。必须找到不会返回fragment信息的最大MTU,如图中所示。下面讨论不同类型的宽带连接应把最大MTU设为多大最合适。
Cable modem连接的MTU标准设置是1500,各种DSL之间是有点差异的。譬如说,ADSL PPPOE设为1492,而ADSL STATIC则设为1500。其余各种DSL连接都使用1500 MTU,跟Cable modem一样。这样说可能有点混乱,看下面的清单就一目了然了:
ADSL PPPOE = 1492 MTU
ADSL STATIC IP = 1500 MTU
SDSL = 1500
VDSL = 1500
HDSL = 1500
IDSL = 1500
CABLE = 1500
接下来,大家一定急着知道究竟如何修改MTU。只要修改注册表,或更简单地,下载一个小小的工具——Dr.TCP就行了。
下载Dr.TCP之后,无需安装,直接运行。一般的朋友看到这个工具的界面可能会觉得有点迷惑,不过一会儿你就会知道它确实很棒。看下面的截图,转到MaxMTU选项,删掉原来的数字,填上你想要的MTU值。如静态IP ADSL原来设的值可能是1492,删掉改为1500。
注意:使用ADSL PPPOE连接的用户,就算你在工具中把MTU设为1492,Windows也会把它*在1454。如何冲破Windows的*,把它设为1492呢?仔细按后面提示做,就可以在Windows 9x中把MTU设为1492了,一共有三步。这些方法只适用于Winpoet用户,在文章下面Ethernet用户那部分。Winpoet、Ethernet和RASPPPOE都是用于把ADSL PPPOE或PPPOA连接到互联网所用的软件。ISP服务提供商会指定你使用哪一种软件。
开始之前,先解释一下两个英文缩写的含义:
PPP0E——Point-to-Point Protocol over Ethernet,是一种以太网上的点对点协议。
PPPOA——Point-to-Point Protocol over ATM,通过ATM异步传输模式的点对点协议。
下面是具体步骤:
Winpoet 2.x以上版本用户
Winpoet通常把MTU设为1362、1454或1462,而事实上,它可以达到1492。下面有三个步骤,可以把它改为1492。在做完第一频之后,不管原来是1362还是1462,都会变为1454。
~~~~~~~~~~~~~~~~~~~~~
步骤1:
打开Dr.TCP,先确定在Adapter Settings那里适配器,先选择“拔号适配器”,在右边MTU那里填上1492。再把其它所有适配器的MTU设为0,最后选择以太网卡(Ethernet adapter),把右边MTU那里清空成为空白,不填任何数字。点击下面的Apply按钮,退出,重新启动,到前面提到的网站重新测试一下自己的网速。
~~~~~~~~~~~~~~~~~~~~~
这时MTU应该是1454(如果不是的话,看看哪里操作不对了),接下来进行第二步。
注意:现在的真实MTU应该是1454而不是1492,如果原来只是1362的话,现在的感觉应该会很好。
步骤2:
这是Winpoet的一个新优化选项,它能够突破1454的*。点击桌面左下角的开始菜单,选择运行,在“打开”右边填上“regedit”(不包括引号),点击“确定”,在注册表中找到如下位置:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\Net\000n
(其中“n”是一个具体数字,如0001、0002,等)逐一查看这些000n,看哪个夹里面有“iVasion PoET Adapter”)
应该可以看到TunnelMode=1,双击TunnelMode,把1改为0。
重新启动计算机,再测试一次,这里的MTU值就是1492了。
注意:这一步优化在有些线路上不支持,如果把Tunnelmode改为0后连不上网,只好按刚才的方法把它改回1,使用1454的MTU了。这种情况下,没有别的办法能把MTU提升到1492。
如果一切顺利,目前的MTU应该是我们所想要的1492,下面用ping测试一下,看看你的线路是否支持1492 MTU。
步骤3:
为了找到你那条线路所能支持的MTU,按如下方法做:
打开一个MSDOS窗口,敲入指令:
ping -f -l 1464 www.ISP的网站.com(这个网址是指你的网络提供商的网址,如www.pacbell.net)
(注意,指令中每一个“-”字符前应该有一个空格)按回车键执行。如果看到“packet needs to be fragmented”的错误信息,再ping,把1464这个数字减少10,直到没有错误信息,再把数字加上1,ping一下。直到再次出现“packet needs to be fragmented”的错误信息,再减1,把这个数字记下来。
这个数字加上28就是你的线路所支持的最大MTU了(因为在指定ping的数据包大小时,没有把28字节的IP/ICMP头算进去)。
注意:如果第一次用1464这个数字ping的时候就顺利通过,就不用再试其它了,1464+28=1492,这就是你的MaxMTU值。
----------------------------------------------------------------------
Ethernet用户
Ethernet用户不能用Dr.TCP优化你的MTU。另外,Ethernet把MTU的大小(也有人称为MaxFrameSize——最大帧)*在1454了。下面是尽可能得到最大带宽的MTU方法:
1、优化注册表。虽然以太网有个最大MTU为1454的*,但PPPoE的最大值是1492。虽然这样的修改不能在实际上得到大于1454的MTU,但它把MTU的上限提高了。
打开注册表如下位置:
HKEY_LOCAL_MACHINE/System/CurrentControlSet/ Services/Class/Net/000n/Ndi/params/MaxFrameSize/"max" ....
(其中“n”是一个具体数字,里面有Network Telesystems PPPoE Adapter,也就是以太网卡)。这里有个MaxFrameSize串值(这不是我们要修改的地方)。我们要修改的是名为max的字符串值,把它改为1492,重新启动计算机。
2、好了,MTU上限修改好,接下来就可以进行设置,依次点击:
开始
设置
控制面板
网络
Network Telesystems Enternet PPPoE Adapter (NTSP3)
点击“高级”选项卡
看到“MaxFrameSize(最大帧)”了吗?把它改为1492。重新启动计算机。
非PPPOE(静态IP用户,或cable modem用户)和PPPOA用户要修改MTU,只需在Dr.TCP中选择下拉菜单,把NIC(以太网卡,PPPoA用户应该选择的是拔号适配器)设为1500,点击Apply,退出,重启。
-----------------------------------------------------------------------
RASPPPOE用户
部分RASPPPoE用户会发现,1492的MTU太高了。
如果出现这个问题的话,按前面提到的方法,用ping指令确定拔号适配器所能支持的MTU大小,再用Dr.TCP把MTU设为亲自测试所得到的值。同时,还要在RASPPPoE属性中进行设置,在“Override Max Transmission Unit(最大过载传输单位)”中使用相同的数字。
===========================================================
===========================================================
宽带连接优化指南(三)
优化RWIN(TCP receive window)
打开Dr.TCP并找到“TCP receive window”,在这里输入你所要的下载速度,点击apply按钮,退出并重新启动计算机。RWIN是整个宽带连接优化中最重要的一步,它限定用户网络下行方向的带宽。下面是RWIN中所填数字相应的带宽,左边是所要得到的下载速度,右边是要得到这个速度所要填入的相应数字:
1.5mbps: 约 22000
1.0mbps: 约 11000
768kbps: 约 10000
512kbps: 约 8000
384kbps: 约 6000
256kbps: 约 4000
用不同的数字多试几次,看看有什么变化!到文章第(一)部分提到的网站测试一下,就可以发现下载速度有多大的改变了!!!
优化TTL(Time to Live数据包存活时间)
每个数据包都有指定的TTL时间,用于控制数据在多少次跳跃(中转)之后终止,譬如可指定为64次。Windows 98的默认TTL值是128,有人觉得TTL值设低一点会提高连接的稳定性,这个其实很难说得准的,或许理论上应该是这么回事,但在实际使用中很难看到什么明显的区别。不管怎么说,还是介绍一下修改TTL的方法吧:打开Dr.TCP,看右上角最下边的一个选项,就是TTL。
1、假如你经常浏览一些比较远程的网站,如国*站,可以把TTL设为255。这样可能会解决一些远程网站总是连接超时不能打开的问题。
2、如果你所浏览的网站都是近距离的国内网站,把TTL设为128或64比较合适。毕竟互联网就是互联网,有一定的距离,不象局域网那么短距离,所以最好别设为32。
优化Max Duplicate Acks(最大重复发送次数)
这个设置用于设置数据包丢失时,数据包重复发送的次数。Windows 98的默认次数是3,而Windows 2000的默认值是2。如果在上网听音乐或看电影的过程中,并没有发现数据包丢失的话,试度把它设为2,这样对网络游戏也有好处。
优化Windows Scaling
当RWIN值高于65535时,就必须激活Scaling缩放,如果是Win98的话,必须先升级vtcp.386补丁(WinME和W2k不需打补丁)。很少用户会把RWIN值设到高于65535,因此让这个选项保持default值也就是no就可以了。
优化Time Stamping(卫星用户请特别注意了)
对RWIN低于65535的一般用户来说,这个选项没什么用。但如果在ping中检查到线路的延迟时间较长,或使用的是卫星连接的话,Time Stamping就有用了。因此,一般用户把它设为default或no,卫星用户把它设为yes。
优化Selective ACKS
这个选项用于设置线路中发生数据包丢失时,是否仅重新传送所丢失的数据包。Win98/98SE/ME/2K的默认设置是yes,而Windows 95和NT没有这个功能,这些旧操作系统的用户,是时候升级了。
优化Path MTU Discovery
这个选项用于自动识别用户线路,设置相应的MTU大小。前面说过,MTU的最大值是1500,PPPoe用户的MTU应该是1492或更低。Win98/98SE/ME/2K/NT中该项默认设置是yes,Win95没有这个功能。
优化Black Hole Detection
用于探测路由器MTU值,建议把它设为no,Win95/98/98SE/ME/2K中的默认值就是no。
Tweaking ICS(共享网络连接)
ICS是多机共享一个网络连接时所用的软件,用于指定多少部计算机在共享同一个网络连接。在没有安装ICS的机子上,这个选项呈灰色不可修改。
结语
宽带优化就介绍到这里,祝您的网络一路顺风,希望大家一起来分享优化后网速提高的狂喜。另外,在本文发表期间,收到许多网友来信提问,迟些将整理出来一并回答。先为大家解决一个燃眉之急,由于编辑过程中的失误,笔者原来在文中所做的Dr.TCP下载连接被删掉了,现在请点击这里下载Dr.TCP。
=============================================================
附:
Tcp1323Opts:(Window Scaling)
在带宽与延迟的乘积值很高的连接上(例如,卫星连接),可能需要将窗口的大小增加到64K以上。为了提高窗口大小,需要按照RFC1323中的规定,设置如下注册表条目,以启用TCP选项: HKEY_LOCAL_MACHINE\System\CurrentControlSet\
Services\Tcpip\Parameters\Tcp1323Opts (REG_DWORD)
为了使用大于65,535的窗口尺寸,该注册表条目应该被设置为1。在修改了该值之后,便可以将用来控制TCPWindowSize的注册表条目设置为大于64K的值(最大1GB)。