TCP协议的三次握手和四次挥手
三次握手和四次挥手是TCP协议建立连接和断开连接的过程,用日常生活中的对话场景来理解会更直观:
三次握手(建立连接)
就像两个人打电话前的确认:
- 你说:“喂,能听到吗?”(客户端发送SYN信号,表示想建立连接)
- 对方回答:“能听到,你呢?”(服务端回复SYN+ACK,表示同意并确认)
- 你再说:“我也能听到,开始说吧!”(客户端发送ACK,确认连接)
至此通话通道建立,双方可以正式交流。
四次挥手(断开连接)
就像挂电话前的礼貌告别:
- 你说:“我说完了,先挂了啊。”(客户端发送FIN信号,请求断开)
- 对方回答:“好的。”(服务端先回复ACK,确认收到请求)
- 对方接着说:“我也说完了,挂吧。”(服务端处理完数据后,也发送FIN信号)
- 你最后回应:“好的,拜拜。”(客户端回复ACK,确认断开)
至此双方都确认断开,连接终止。
为什么断开需要多一步?
因为连接是双向的,好比电话的两条线路。三次握手只需要确认双方都能通话,而四次挥手需要分别确认双方都“说完话”再挂断,避免一方突然挂断导致另一方数据丢失。
浙公网安备 33010602011771号