tcp有连接限制吗

burningbloodgg 2012-08-04 03:16:09
tcp是面向连接的,服务器端接受后有一个对等的socket,那如果处理后不关闭,那岂不是socket会越来越多?
另外UDP中,接受到的报文被保存到一个字节数组中,如果在接受后利用线程池处理该字节数组会有同步问题吗。
...全文
133 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
melos 2012-08-07
  • 打赏
  • 举报
回复
是的,一般是1024以后可用的端口随机分配的。
burningbloodgg 2012-08-05
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]

引用 2 楼 的回复:

引用 1 楼 的回复:

tcp报文中目的/源端口号是16位也就是2字节,所以在不关闭的情况下连接会受到限制.

你说的跟连接没关系啊。

连接的时候你不要获得对方的端口号然后给TCp的那个字段?
你也用不到那么多端口号所以应该可以不关闭.我做过的程序是一个基于UCOSII系统的TCP/IP协议栈,自己构造TCP报文,所以可能和你用高级语言写的在w……
[/Quote]
我说的不是一台机子能开多少TCP端口,而是说,如果一台服务器,有N个客户端来连接,那肯定不可能是无限的吧,这个限制是什么。
burningbloodgg 2012-08-05
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 的回复:]

一个连接肯定要分配一个TCP端口啊,服务器监听是一个固定窗口,但连接一旦建立,那服务器会给客户端分配一个数据通信端口,所以这个连接数是受限于TCP端口的。
[/Quote]
这个通行socket的端口是随机分配剩余可用的吧,TCP有65000+,一般不需要考虑端口够不够,只要考虑服务器的处理能力,比如分配多大的线程池吧。
melos 2012-08-05
  • 打赏
  • 举报
回复
应该说,服务器监听是一个监听socket,建立连接后,会分配一个数据通信socket。
melos 2012-08-05
  • 打赏
  • 举报
回复
一个连接肯定要分配一个TCP端口啊,服务器监听是一个固定窗口,但连接一旦建立,那服务器会给客户端分配一个数据通信端口,所以这个连接数是受限于TCP端口的。
忘世麒麟 2012-08-04
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]

引用 1 楼 的回复:

tcp报文中目的/源端口号是16位也就是2字节,所以在不关闭的情况下连接会受到限制.

你说的跟连接没关系啊。
[/Quote]
连接的时候你不要获得对方的端口号然后给TCp的那个字段?
你也用不到那么多端口号所以应该可以不关闭.我做过的程序是一个基于UCOSII系统的TCP/IP协议栈,自己构造TCP报文,所以可能和你用高级语言写的在windows系统下的有出入.当做参考吧.
burningbloodgg 2012-08-04
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]

tcp报文中目的/源端口号是16位也就是2字节,所以在不关闭的情况下连接会受到限制.
[/Quote]
你说的跟连接没关系啊。
忘世麒麟 2012-08-04
  • 打赏
  • 举报
回复
tcp报文中目的/源端口号是16位也就是2字节,所以在不关闭的情况下连接会受到限制.

18,356

社区成员

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

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