文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

为啥TCP握手只要3次但挥手却要4次?

2024-11-29 23:37

关注

需要强调的一点是,TCP建立的是“全双工通信”。也就是单个TCP连接,本质上其实是由两个相互独立却方向相反的数据通道组成。

图片

基于此,在建立连接时,其实是由两组连接操作来完成,两组操作一共4个报文,也就是“四次握手”。

图片

但握手阶段没叫“四次握手”而是称为“三次握手”则是因为发生了“报文合并”。而之所以能够合并则是如开头所说,双方没有“历史负担”都是从零开始,可以同时建立连接。

当然,这里不是绝对的同时,建立连接总要有一方先发送SYN连接请求报文,然后接受方再响应。这时接受方就可以在响应报文ACK中合并自己的SYN连接报文,然后“一箭双雕”的发送。

图片

于是,原本的“四次握手”就因为中间两个报文的合并变成“三次握手”了。

但是到了需要挥手断开TCP连接时,全双工的两条数据通道都已经有了数据流,这时很难做到当其中一条数据流决定关闭时,另外一条也恰好要关闭。这也就是开头说的,大家各自都有“历史负担”了。

图片

当然,两条数据流正好同时断开的可能性也是有的,那就只需要“三次挥手”,但因为是特殊情况不具备代表性,所以不能作数。

这就像两个关系好的哥们,刚毕业时都是光棍,很容易约到一起去做事。但等双方各自成家后就难了,就算双方都有意愿,对方也不再一个电话就能到,而是“你先去,我等会到了给你电话”。

来源:Web学社内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯