完成端口连接限制问题(参与就有分!!!!!!!!!!!!!!!!!!!!!!)

Hxy129 2004-11-22 09:02:34
服务端使用完成端口模型,客户端的连接是
for(int i = 0; i < 5000; i++)
{
connect
send
recv
}
发现连接到4000千左右就连接不上了
但是断开一些连接并关闭套接字后
又可以连接,难道还有什么资源限制吗,不是可以到65535吗?
...全文
235 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
Pandona 2004-12-17
  • 打赏
  • 举报
回复
mark
Hxy129 2004-11-23
  • 打赏
  • 举报
回复
谢谢大家,尤其是[lemon_wei(soft_fans)]

按照[lemon_wei(soft_fans)]的方法修改注册表重启后问题解决。
Hxy129 2004-11-22
  • 打赏
  • 举报
回复
To [kingzai]:
我这个完成端口模型是参照《windows网络编程上的例子写的》,不知道是什么原因,
而且连接最大数也不稳定,一般就是4000左右就不行了。
kingzai 2004-11-22
  • 打赏
  • 举报
回复
当然有限制,服务器接到一个连接请求,就要另开一个空闲端口去和客户端进行连接。
而端口号范围是1~65535,一般1024以下是给系统保留的,那么理论上连接限制应该是6万4千多个。
我觉得是你完成端口模型的问题,你参考一下以前讨论完成端口的贴子
stonex_2000 2004-11-22
  • 打赏
  • 举报
回复
在for循环里创建socket,使用完了再close就不会了吧?
我以前试了,好象4000多还一直可以运行的啊.
fengge888 2004-11-22
  • 打赏
  • 举报
回复
把listen中的参数设置大一些 比如500
goodluckyxl 2004-11-22
  • 打赏
  • 举报
回复
你65535是系统的端口数目 包括分给用户使用和自己使用就2个字节16位
你connect只对一个端口连接
hjunxu 2004-11-22
  • 打赏
  • 举报
回复
有这种事啊,没有亲身试过,不过想来跟系统设置可能有点关系。
barsteng 2004-11-22
  • 打赏
  • 举报
回复
连接限制和完成端口没有什么直接关系,如果楼主找不到问题,可以先不用完成端口,直接试试最大能开多少个连接
lemon_wei 2004-11-22
  • 打赏
  • 举报
回复
win2k缺省的出站连接的临时端口为1024-5000,要想使用更多的出站端口需要修改注册表
修改方式:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\
项下建一个
MaxUserPort
双字节值,
例如:取值为10000时,大约有9000个端口可用

18,356

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧