TCP三次握手和四次挥手
TCP三次握手和四次挥手
-
三次握手(建立TCP连接)
- 第一次握手:客户端发送一个TCP的SYN标志位为1的包,指定服务器的端口,发起连接请求。
- 第二次握手:服务器收到客户端的SYN包后,向客户端发回确认包应答。
- 第三次握手:客户端收到服务器的应答后,会发送ACK应答到服务器。
-
四次挥手(断开TCP连接)
- 第一次挥手:客户端向服务器发送FIN,请求关闭客户端到服务器的数据发送。
- 第二次挥手:服务器收到客户端发送的FIN后,发回一个ACK。
- 第三次挥手:服务器关闭与客户端的连接,发送FIN到客户端。
- 第四次挥手:客户端发回ACK确认,断开连接。
-
TIME_WAIT状态?
- 保证TCP协议的全双工连接能够可靠关闭
- 保证本次连接的重复数据段消失,也保证了下一次客户端的可靠连接。
-
建立连接是三次,而断开连接是四次?
- 建立连接时,服务器发回SYN同步和ACK应答可以放在一个报文中。
- 关闭连接时,是发起方数据发送完毕后,给对方发送一个FIN报文。当服务器收到客户端的FIN报文后,先发送ACK应答,首先关闭客户端到服务器的数据发送。TCP连接是全双工的,每个方向都要进行关闭,当服务器数据发送完毕后,会向客户端发送FIN报文。所以发送ACK应答和FIN报文要进行两次挥手,以确保数据发送的完整性。

浙公网安备 33010602011771号