Socket接受后会发生什么?

时间:2016-11-03 04:26:52

标签: sockets networking

当监听套接字的服务器接受连接时会发生什么?

我的教授幻灯片包括这个解释

  

如果一切顺利,服务器会接受连接。接受后,服务器获取一个绑定到不同端口的新套接字。它需要一个新的套接字(因此是一个不同的端口号),以便在为连接的客户端提供服务时,它可以继续监听原始套接字的连接请求。

但我觉得这不对。因为如果在高负载服务器上,端口很容易耗尽。

究竟发生了什么?实际上多线程如何响应t套接字?

1 个答案:

答案 0 :(得分:1)

你是对的。从开始到结束,你教授的幻灯片错误是错误的。新套接字使用与侦听套接字相同的本地端口。

我要补充一点,我真的觉得这件事很令人震惊。请教授解释以下netstat输出:

TCP    0.0.0.0:389            0.0.0.0:0              LISTENING       2932
TCP    127.0.0.1:389          127.0.0.1:57863        ESTABLISHED     2932