TCP三次握手:
-
客户端发送syn包到服务器,等待服务器确认接收
-
服务器确认接收syn包并确认客户的syn,并发送回来一个syn+ack的包给客户端
-
客户端确认接收服务器的syn+ack包,并向服务器发送确认包ack,二者相互建立联系后,完成tcp三次握手。
链接请求->确认链接请求->确认链接,建立连接
TCP四次挥手
- 第一次挥手:Client向Server发送FIN标志,用于关闭Client到Server的数据传送,并发送序列号a,进入FIN_WAIT_1状态。这表示Client告诉Server我已经没有数据要发给你了。
- 第二次挥手:Server接收到FIN标志后,发送一个ack=a+1,告知Client它已经接收到了关闭请求,进入CLOSE_WAIT状态。Clinet接收到回应后进入FIN_WAIT_2状态。
- 第三次挥手:Server发送FIN标志,用于关闭Server到Client的数据传送,并发出序列号b,进入LAST_ACK状态。这表示Server告诉Client我也没有数据要发送给你了。
- 第四次挥手:Client接收到FIN标志后,发送一个ack=b+1,告知Server它已经接收到请求关闭,进入TIME_WAIT状态。Server接收到回应进入CLOSED状态。等待2MSL后,Client依然没有收到其他回复,则也进入CLOSED。