TCP四次挥手

TCP四次挥手

tcp四次挥手,客户端和服务器谁先发起都行。由于tcp连接是全双工的,因此每个方向都必须单独进行关闭。

第一次挥手

客户端发送FIN给服务器。客户端状态由ESTABLISHED变成FIN_WAIT_1

第二次挥手

服务器收到FIN并发送ACK给客户端。服务器状态由ESTABLISHED变成CLOSE_WAIT。服务器将缓存中未发送完的数据继续发送给客户端。客户端收到ACK后状态由FIN_WAIT_1变成FIN_WAIT_2

第三次挥手

服务器发送FIN给客户端,服务器状态由CLOSE_WAIT变成LAST_ACK

第四次挥手

客户端收到FIN后返回ACK给服务器,然后客户端状态由FIN_WAIT_2变成TIME_WAIT(TIME_WAIT=2MSL)

服务器收到ACK后,状态由LAST_ACK变为CLOSED。而客户端在经过TIME_WAIT时间后变为CLOSED

TCP四次挥手

上一篇:struct,1.0,struct的用法


下一篇:三次握手和四次挥手