tcp连接下源端口和目的端口的疑问?

发布于 2022-09-07 15:34:23 字数 271 浏览 23 评论 0

假设我现在有个循环打印“hello world”的进程,就单单从进程角度来说,当我启动它的时候,它会被分配到一个端口号吗?

换句话说,端口号是我去拿进程绑定了才有这个端口,还是只要一启动进程就会被随机分配一个端口?

现在引申出第二个问题,假设我有个客户端进程A,ip地址是IPA,有一个服务端进程B,ip地址是IPB。B进程主动监听(绑定)了端口PB,现在A进程有个连接池,指向了IPB和PB。现在A进程同时从连接池中拿出10个连接同时向B进程发送数据,这个时候,这10个连接的四元组是什么样的?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

猥琐帝 2022-09-14 15:34:23
  1. 不会。操作系统不会闲的没事干。
  2. 拿进程绑定了才有这个端口。
  3. IPA:[1..10] -> IPB:PB。因为连接池一开始就初始化了,所以不论拿不拿出来发数据,四元组都不会变。
锦爱 2022-09-14 15:34:23
  1. 进程启动的时候绑定啥端口就分配啥端口,如果端口被占用,分配失败,程序默认情况下退出(做了异常捕获的走异常处理流程)
  2. 连接建立成功后,四元组IPA:随机端口x10 <-> IPB:PB 在断开连接前是固定的,发数据不影响四元组
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文