TCP/IP 连接 三次握手
TCP/IP 四次分手
@TODO
TIME_WAIT 状态
有三种状态可以进入此状态
1.由FIN-WAIT-2,双方不同时发起FIN,主动关闭的一方在完成自身发起的关闭请求后,接收到被动关闭一方的FIN后进入的状态。
2.由CLOSING,双方同时发起关闭,都做了发起FIN的请求,同时接收到FIN并做了ACK的情况下
3.由FIN-WAIT-1,同时接收到FIN(对方发起)和ACK(本身发起的FIN的回应) //本身发起的FIN回应的ACK先于对方的FIN请求到达
unix网络编程上说 执行主动关闭的那端经历了这个状态 而该状态存在的两个理由是:
(1)可靠地实现tcp全双工连接的终止
当最终的ACK丢失,服务器将重新发送FIN N 因此客户端必须维持某一个状态一段时间 来保证它可以重新发送最终那个ACK
反之如果,客户端不维护这一状态将响应一个RST 服务器端认为这是一个错误 而无法实现全双工连接的终止
(2)允许老的重复分节在网络中消逝
这一状态的持续时间是MSL(任何IP数据报能够在因特网中存活的最大时间) 防止前一个连接终止,而出现了化身,化身却接收到老的连接分组
TCP不给处于TIME_WAIT状态的连接发起新的化身
不同状态之间的转换