什么是非监听套接字?

时间:2019-01-09 21:31:20

标签: linux sockets netstat

netstat(8) man page指出“同时显示侦听和非侦听(对于TCP,这意味着已建立的连接)套接字。使用--interfaces选项,显示未标记的接口”

什么是非监听套接字与监听套接字?它仍然占据港口吗?还是该端口免费供其他程序使用?

2 个答案:

答案 0 :(得分:2)

监听套接字是服务器进程正在等待有人连接的套接字,例如,空闲的Web服务器。正在监听的端口被认为正在使用。

非监听套接字是已建立连接的套接字,例如,已连接Web客户端(例如浏览器)并且可以或正在传输数据的Web服务器。通常,套接字正在侦听的端口通常也会循环回以由同一进程或进程树侦听。

答案 1 :(得分:2)

套接字运行状态机。他们等待,然后响应请求。状态之一是“听”。

不监听是所有其他状态,换句话说,正在发生某种事情或建立了连接。

有一个很好的TCP状态图,其中包含状态描述here。如果链接断开,我在这里提供了缩小尺寸的版本。

enter image description here