Thanks to http://support.microsoft.com/kb/314053
and http://www.cnblogs.com/eaglet/archive/2010/09/21/1832233.html
Windows的所有 TCP/IP 参数都是注册表值,这些值分别位于以下两个不同的子项下: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services
Tcpip\Parameters\Interfaces\<适配器 ID>
注意:<适配器 ID> 是 TCP/IP 绑定到的网络适配器。要确定适配器 ID 和网络连接之间的关系,请查看HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Network\{4D36E972-E325-11CE-BFC1-08002BE10318}\<ID for Adapter>\Connection。这些项中的“Name”值提供“网络连接”文件夹中所使用的网络连接的友好名称。这些项下的值是特定于各个适配器的。具有 DHCP 和静态配置值的参数可能存在也可能不存在。具体取决于计算机或适配器是否是用 DHCP 配置的,以及是否已指定静态替代值。必须重新启动计算机,才能使更改生效。
对于XP,在
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
下增加以下项:
MaxUserPort = 65535
MaxFreeTcbs = 60000
MaxHashTableSize = 1024
可以通过创建以下注册表项和注册表值来增加可用端口数
HKLM\Software\Policies\Microsoft\Windows\RTC\PortRange\Enabled (REG_DWORD) set to 1
HKLM\Software\Policies\Microsoft\Windows\RTC\PortRange\MinSipDynamicPort (REG_DWORD) set to 5354
HKLM\Software\Policies\Microsoft\Windows\RTC\PortRange\MaxSipDynamicPort (REG_DWORD) set to 65535
另外,由于 Windows 限制了可用于单个进程的句柄数,因而需要修改以下注册表项
HKLM\Software\Microsoft\Windows NT\CurrentVersion\Windows
增加或修改以下项
USERPostMessageLimit (REG_DWORD) set to 65535