如何修改windows服务器最大的tcp连接数

 我来答
帐号已注销
2016-09-10 · TA获得超过7700个赞
知道大有可为答主
回答量:4780
采纳率:80%
帮助的人:2039万
展开全部
调整系统参数来调整单机的最大TCP连接数,Windows 下单机的TCP连接数有多个参数共同决定:

以下都是通过修改注册表[HKEY_LOCAL_MACHINE \System
\CurrentControlSet \Services \Tcpip \Parameters]

1. 最大TCP连接数
TcpNumConnections

2. TCP关闭延迟时间
TCPTimedWaitDelay (30-240)s

3. 最大动态端口数 MaxUserPort (Default
= 5000, Max = 65534) TCP客户端和服务器连接时,客户端必须分配一个动态端口,默认情况下这个动态端口的分配范围为
1024-5000 ,也就是说默认情况下,客户端最多可以同时发起3977 个Socket 连接

4. 最大TCB 数量 MaxFreeTcbs

系统为每个TCP
连接分配一个TCP 控制块(TCP control block or
TCB),这个控制块用于缓存TCP连接的一些参数,每个TCB需要分配
0.5
KB的pagepool 和
0.5KB
的Non-pagepool,也就说,每个TCP连接会占用
1KB
的系统内存。

非Server版本,MaxFreeTcbs 的默认值为1000
(64M
以上物理内存)Server 版本,这个的默认值为 2000。也就是说,默认情况下,Server 版本最多同时可以建立并保持2000个TCP 连接。

5. 最大TCB Hash
table 数量 MaxHashTableSize

TCB 是通过Hash table 来管理的。

这个值指明分配 pagepool 内存的数量,也就是说,如果MaxFreeTcbs = 1000 , 则 pagepool
的内存数量为 500KB那么MaxHashTableSize 应大于 500 才行。这个数量越大,则Hash
table 的冗余度就越高,每次分配和查找 TCP 连接用时就越少。这个值必须是2的幂,且最大为65536.

IBM
WebSphere Voice Server 在windows
server 2003 下的典型配置

MaxUserPort = 65534
(Decimal)

MaxHashTableSize = 65536
(Decimal)

MaxFreeTcbs = 16000
(Decimal)

这里我们可以看到 MaxHashTableSize 被配置为比MaxFreeTcbs 大4倍,这样可以大大增加TCP建立的速度。
Storm代理
2023-07-25 广告
StormProxies是一家国内优质海外HTTP代理商,拥有一个庞大的IP资源池,覆盖200多个地区,IP数量大且匿名度高。其优点还包括超高并发、稳定高效、技术服务等特点,同时提供HTTP、HTTPS以及SOCKS5协议支持。此外,Sto... 点击进入详情页
本回答由Storm代理提供
badkue0
2016-09-02 · 超过228用户采纳过TA的回答
知道小有建树答主
回答量:272
采纳率:100%
帮助的人:403万
展开全部
在做性能测试测试时候,如果被测试的系统页面很简单,并且性能很好,这样会导致压力机得tcp链接数不够而导致如下错误:HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\tcpip\Parameters\TcpTimedWaitDelay to 30
and HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\tcpip\Parameters\MaxUserPort to 65534
and rebooting the machine
See the readme.doc file for more information
通过百度搜索介绍最多的还是让修改TimedWaitDelay 和MaxUserPort这2个值,其中是将TimedWaitDelay修改的相对小点,可以根据实际情况来定,
同时将MaxUserPort这个值修改大些,但是修改完并重启机器后,该问题仍然存在,通过多方查资料,然后对一些注册表进行修改:
[HKEY_LOCAL_MACHINE \System \CurrentControlSet \Services \Tcpip \Parameters]
TcpNumConnections = 0x00fffffe (Default = 16,777,214)
以上注册表信息配置单机的最大允许的TCP连接数,默认为 16M。这个数值看似很大,这个并不是限制最大连接数的唯一条件,还有其他条件会限制到TCP 连接的最大连接数。
最大动态端口数
TCP客户端和服务器连接时,客户端必须分配一个动态端口,默认情况下这个动态端口的分配范围为 1024-5000 ,也就是说默认情况下,客户端最多可以同时发起3977 个Socket 连接。我们可以修改如下注册表来调整这个动态端口的范围
[HKEY_LOCAL_MACHINE \System \CurrentControlSet \Services \Tcpip \Parameters]
MaxUserPort = 5000 (Default = 5000, Max = 65534)
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式