Tcp连接状态说明
2013-07-21 23:55
253 查看
CLOSED:无连接是活动的或正在进行
LISTEN:服务器在等待进入呼叫
SYN_RECV:一个连接请求已经到达,等待确认
SYN_SENT:应用已经开始,打开一个连接
ESTABLISHED:正常数据传输状态
FIN_WAIT1:应用说它已经完成
FIN_WAIT2:另一边已同意释放
ITMED_WAIT:等待所有分组死掉
CLOSING:两边同时尝试关闭
TIME_WAIT:另一边已初始化一个释放
LAST_ACK:等待所有分组死掉
TIME_WAIT:
1.防止上一次连接中的包,迷路后重新出现,影响新连接(经过2MSL,上一次连接中所有的重复包都会消失)
2.可靠的关闭TCP连接。在主动关闭方发送的最后一个 ack(fin) ,有可能丢失,这时被动方会重新发fin, 如果这时主动方处于 CLOSED 状态 ,就会响应 rst 而不是 ack。所以主动方要处于 TIME_WAIT 状态,而不能是 CLOSED 。另外这么设计TIME_WAIT 会定时的回收资源,并不会占用很大资源的,除非短时间内接受大量请求或者受到攻击。
LISTEN:服务器在等待进入呼叫
SYN_RECV:一个连接请求已经到达,等待确认
SYN_SENT:应用已经开始,打开一个连接
ESTABLISHED:正常数据传输状态
FIN_WAIT1:应用说它已经完成
FIN_WAIT2:另一边已同意释放
ITMED_WAIT:等待所有分组死掉
CLOSING:两边同时尝试关闭
TIME_WAIT:另一边已初始化一个释放
LAST_ACK:等待所有分组死掉
TIME_WAIT:
1.防止上一次连接中的包,迷路后重新出现,影响新连接(经过2MSL,上一次连接中所有的重复包都会消失)
2.可靠的关闭TCP连接。在主动关闭方发送的最后一个 ack(fin) ,有可能丢失,这时被动方会重新发fin, 如果这时主动方处于 CLOSED 状态 ,就会响应 rst 而不是 ack。所以主动方要处于 TIME_WAIT 状态,而不能是 CLOSED 。另外这么设计TIME_WAIT 会定时的回收资源,并不会占用很大资源的,除非短时间内接受大量请求或者受到攻击。
相关文章推荐
- netstat tcp。连接中各种状态说明
- TCP 连接和状态说明
- TCP的连接&断连&状态转移过程
- tcp连接状态查询
- 关于TCP连接中的状态(以后整理进相关文章中)
- 浅谈TCP/IP协议栈(十)TCP的连接和状态迁移
- TCP协议网络连接状态详解
- TCP 连接状态图 (TCP Connection State Diagram)
- TCP连接的状态详解以及故障排查
- TCP建立/关闭连接时握手过程中的状态情况
- TCP连接中的状态
- netstat + awk 查看tcp的网络连接状态
- TCP连接各状态数量、以及TCP各状态变迁流程
- 查看 Apache并发请求数及其TCP连接状态
- Apache并发请求数及其TCP连接状态故障排除
- 查看 并发请求数及其TCP连接状态
- 【转】Linux服务器上11种网络连接状态 和 TCP三次握手/四次挥手详解
- TCP连接TIME_WAIT和CLOSE_WAIT状态
- Tcp连接状态
- (Linux)TCP连接过程状态详解