第一次挥手:客户端(主动关闭方)发送一个FIN,用来关闭客户端到服务端的数据传送,客户端进入FIN_WAIT_1状态。
第二次挥手:服务端收到FIN后,发送一个ACK给客户端,确认序号为收到序号+1,服务端进入Close_WAIT状态。此时TCP连接处于半关闭状态,即客户端已经没有要发送的数据了,但服务端若发送数据,则客户端仍要接收。
第三次挥手:服务端发送一个FIN,用来关闭服务端到客户端的数据传送,服务端进入LAST_ACK状态。
第四次挥手:客户端收到FIN后,客户端进入Time_WAIT状态,接着发送一个ACK给服务端,确认后,服务端进入Closed状态,完成四次挥手。
下图助于理解:
TCP三次握手过程点这里