TCP/IP TIME_WAIT状态原理和服务端过多原因分析,及解决方案。
TCP握手
TCP协议中的三次握手和四次挥手(图解):http://blog.csdn.net/whuslei/article/details/6667471
创建连接三次握手:发SYN包,返回SYN/ACK包,再发ACK包
当请求者收到SYN 后,就开始建立连接了。而被请求者第三次握手结束后才建立连接。
关闭连接四次握手:发FIN包,返回ACK包,FIN包,返回ACK包
TCP连接是全双工,我关了你的连接,并不等于你关了我的连接。
linux查看time_wait数量
netstat -n | awk ‘/^tcp/ {++S[$NF]} END { for(a in S) print(a,S[a])}’
参考
http://lib.csdn.net/article/computernetworks/17275
TIME_WAIT状态的连接过多是什么原因?
windows 下解决 Time_Wait 和 CLOSE_WAIT 方法