2019-06-02

三次握手:
首先客户端发送连接请求报文
服务器接受连接后恢复ACK报文,并为这次连接分配资源
客户端接收到ACK报文好后也向服务器发送ACK报文,并分配资源

四次挥手:
当客户端没有需要向服务器发送的数据时,首先向服务器发送FIN报文,表示自己发送数据完毕,服务器可以继续发送数据
服务器发送ACK报文,表示知道了,如果有,继续发送数据
服务器发送数据完毕,向客户端发送FIN报文
客户端接受后发送ACK报文,并进入计时等待状态,

为什么TIME_WAIT状态需要经过2MSL(最大报文段生存时间)才能返回到CLOSE状态?
答:虽然按道理,四个报文都发送完毕,我们可以直接进入CLOSE状态了,但是我们必须假象网络是不可靠的,有可以最后一个ACK丢失。所以TIME_WAIT状态就是用来重发可能丢失的ACK报文。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容