网络之tcp的四次挥手

2019-08-23  本文已影响0人  谜00016

说说tcp的四次挥手

答:首先说明的是“挥手”是为了终止连接。

tcp四次挥手示意图 关于四次挥手的流程,可以通过上图简单表示出来。
第一次挥手
Client发送一个FIN,用来关闭数据传输,此时CLient进入FIN-WAIT-1阶段。假设seq=u,FIN=1

第二次挥手
SERVER端收到FIN请求后,发送一个ACK来进行确认回复。其中ACK=1,ack=u+1,seq=v。当Client收到这个回复,Client就会进入FIN-WAIT-2阶段。

第三次挥手
在SERVER端将最后的数据传输后,服务端会发送一个FIN来告知最后的数据已经传输完成。此时服务端进入LAST-ACK阶段。FIN=1,ACK=1,ack=u+1,假设seq=w。

第四次挥手
客户端收到服务发送的FIN之后,会进入TIME-WAIT阶段,在这个阶段,最多等待2*MSL时间(ps:MSL是Maximum Segment Lifetime的英文缩写,含义是报文最大生存时间)。然后发送一个ACK给服务端,告诉服务端已接收到FIN,服务端你可以关闭了。ACK=1,seq=u+1,ack=w+1。

说说为什么客户端TIME-WAIT这个阶段存在的意义。

客户端收到服务发送的FIN之后,会进入TIME-WAIT阶段,在这个阶段,最多等待2*MSL时间(ps:MSL是Maximum Segment Lifetime的英文缩写,含义是报文最大生存时间)。
这个阶段存在的意义有两个

上一篇 下一篇

猜你喜欢

热点阅读