BT在WinXP SP2上为何慢

董师傅茶坊

董师傅最近接到一位读者的电话,他反映在WinXP SP2的系统上,使用BT下载或者电骡下载的时候,下载速度非常慢。而他在使用以前的WinXP SP1的时候,是没有这个问题的。而且据他说,他已经排除了是宽带限制P2P速度的问题。那么还有什么原因会造成这个问题呢?其实这个问题已经有很多读者问过董师傅了,本期,董师傅就和嘉宾一起来探讨这个问题。

董师傅:最近我收到一些读者的来信,说Windows XP更换为SP2后,发现BT、电骡等都用得很不爽,已经排除了ISP的问题,现在我们来谈谈为什么会有这个现象,以及如何解决这问题。

嘉宾:Windows的安全性一直被用户所诟病,在Windows SP2尚未推出之前,世上就涌现了不少比较厉害的蠕虫病毒,例如2003年“冲击波”病毒的泛滥就让那些忽视系统更新的用户吃了不少苦头。因此,SP2在系统安全性能方面做出了非常大的改进。为了防范蠕虫病毒的传播和攻击,WinXP SP2中将TCP并发连接数限制为最多10个。而BT、电骡之类的P2P工具,需要占用更多的并发连接数,于是,问题出现了,使用那些P2P的工具都感觉非常慢。

你也可以在“控制面板→性能和维护→管理工具→计算机管理→事件查看器→系统”里查看是否有4226的警告,消息是:“TCP/IP 已经达到并发TCP连接尝试次数的安全限制。”如果超过此限制就会出现大量的这样的警告。

董师傅:微软上面有政策,那我们在下面也有对策。我们只要突破TCP并发连接数的限制,就能提高Windows XP SP2的多线程访问速度。

嘉宾:最开始的时候,曾经流传过修改注册表来“解决”此问题,源于微软知识库(http://support.microsoft.com/default.aspx?kbid=314053)关于在注册表中修改TcpNumConnections解决此问题的技巧,实践已证明,此路不通!

董师傅:是的,当初我也按照这个方法去做了一次,确实不行。是在注册表中定位HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters下,修改的“TcpNumConnections”的键值,将其由10改为150,即设置TCP最大并发连接数为150。

嘉宾:修改注册表这个方法,看起来有效,实际上并不能突破TCP并发连接数的限制来提高网络速度。经过研究,WinXP SP2的限制是通过Tcpip.sys这个系统文件来实现的,并不是通过修改注册表实现。

董师傅:所以,要突破并发数的限制,就只有从Tcpip.sys系统文件上入手了。

嘉宾:没错,就是修改WinXP SP2的系统文件Tcpip.sys。Tcpip.sys是Windows XP SP2重要的系统文件,位于“C:\Windows\system32\drivers目录下。使用Winhex来手工修改Tcpip.sys文件,方法如下:

首先将C:\WINDOWS\SYSTEM32\DRIVERS目录下的Tcpip.sys文件拷贝到其他目录,用Winhex打开备份的这个文件,在offset栏分别定位到“00000130”和“4F322”行,将其原始值“6E 12 06 00”、“0A 00 00 00”分别修改为“62 13 06 00”、“FE FF FF 00”。保存后在安全模式下将文件分别拷贝覆盖C:\WINDOWS\SYSTEM32\DRIVERS、C:\WINDOWS \SERVICEPACKFILES\I386、C:\WINDOWS\SYSTEM32\DLLCACHE文件夹下的同名文件即可。

值得注意的是,上面介绍的是WinXP SP2 2180版的修改数据,对于其他版本的修改数据值有所不同,大家可以到网上搜索相应版本的修改数据。不过,鉴于这种做法有很大的潜在危险性,不推荐读者采用这种方法。

董师傅:说到这里,我们大家都对WinXP SP2的TCP并发连接数限制有了一定的了解,需要读者注意的是,修改Tcpip.sys核心文件,虽然提高了Windows XP SP2的多线程访问速度,但却降低了WinXP SP2的安全性能,如果你的电脑感染了病毒和木马,过多地启用新线程,会加速病毒和木马的蔓延,因此你在追求网络下载速度的同时,也要注意网络安全。

建议你及时安装升级杀毒软件和防火墙,如果是普通用户,可以利用上面的方法,将TCP最大并发连接数设置为10~30,BT用户可以设置为100~150。

嘉宾:我们有三点明确了:一、之前流传的修改注册表以解除TCP连接数限制的技巧已被证实是行不通的;二、这并不是WinXP SP2的设计缺陷,而是出于安全考虑的限制手段;三、不推荐使用第三方补丁,最好的解决方案是等待各软件的升级。