针对不同 IP 地址的 TCP 连接的临时端口重用

针对不同 IP 地址的 TCP 连接的临时端口重用

我知道在 TCP 端口 80 上运行网站的 Web 服务器可以接收来自许多不同 IP 地址的 TCP 连接,这些 IP 地址来自许多不同的临时端口。

客户端是否可以使用同一个临时端口在 TCP 端口 80 上发起与不同 Web 服务器的多个连接(完成 TCP 三次握手)?

例如:

Source Port: 55555, Destination Port: 80, Destination IP: 1.1.1.1
Source Port: 55555, Destination Port: 80, Destination IP: 2.2.2.2
Source Port: 55555, Destination Port: 80, Destination IP: 3.3.3.3

答案1

如果使用端口 55555 的第一个连接已关闭,则任何应用程序都可以重用该端口。如果某个应用程序尝试打开另一个应用程序正在使用的同一端口,则操作系统将响应该端口已在使用中。

需要注意的是,使用 TCP 打开端口的应用程序可以根据需要使用它,包括将其用于多个服务器,但所有的多路复用工作都在应用程序上,而不是 TCP 上。

相关内容