【每日阅读】2020年12月02日-TCP三次握手四次挥手

真诚的希望您能留言与我交流,这会对我有非常大的帮助!

下面例子都是A请求B。

为什么三次握手?

如果只有两次,则很可能第二次回应A根本没有收到。

【每日阅读】2020年12月02日-TCP三次握手四次挥手

为什么四次挥手?

因为A请求了结束,必须得到一次回应才能认为真的挥手成功了。B请求结束,也必须得到一次A的回应。

而且最后等待2MSL(报文最大生存时间),是为了确保收到B收到了最后一个回应。因为如果B没有收到最后一个回应,会再次发送结束请求,此时还有机会弥补。

20201203005517

TCP状态机

20201203005454

在这个图中,加黑加粗的部分,是上面说到的主要流程,其中阿拉伯数字的序号,是连接过程中的顺序,而大写中文数字的序号,是连接断开过程中的顺序。加粗的实线是客户端 A 的状态变迁,加粗的虚线是服务端 B 的状态变迁。

原创文章,作者:geekgao,如若转载,请注明出处:https://www.geekgao.cn/archives/2728

发表评论

邮箱地址不会被公开。 必填项已用*标注

GitHub
分享本页
返回顶部