172
172
什么是CLOSE_WAIT和TIME_WAIT状态?
当我在Windows机器上进行netstat -a
操作时,我得到的端口列表有四个状态之一:
- LISTENING
- CLOSE_WAIT
- TIME_WAIT
- ESTABLISHED
CLOSE_WAIT
是什么意思/表示什么?
当我在Windows机器上进行netstat -a
操作时,我得到的端口列表有四个状态之一:
- LISTENING
- CLOSE_WAIT
- TIME_WAIT
- ESTABLISHED
CLOSE_WAIT
是什么意思/表示什么?
由于TCP/IP的工作方式,不能立即关闭连接。在连接关闭后,数据包可能会不按顺序到达或被重新发送。CLOSE_WAIT表示远程端点(连接的另一端)已经关闭了连接。TIME_WAIT表示本地端点(这一边)已经关闭了连接。该连接被保留在附近,这样,任何延迟的数据包都可以被匹配到该连接并进行适当的处理。当连接在四分钟内超时后,连接将被移除。更多详情请参见http://en.wikipedia.org/wiki/Transmission\_Control\_Protocol。
基本上,"wait “状态意味着一方关闭了连接,但最终确认的关闭状态还在等待中。
详细情况请参考以下TCP状态图: http://www.jxos.org/Projects/TCP/tcpstate.html
TIME_WAIT表示等待足够的时间来确定远程TCP收到了FIN请求的ACK。参见en.wikipedia.org/wiki/Transmission\Control\Protocol (和RFC 793)