美文网首页
TCP连接和断开为什么是三次握手和四次挥手?

TCP连接和断开为什么是三次握手和四次挥手?

作者: 弹指飞间 | 来源:发表于2019-01-18 09:35 被阅读0次

阅读本文需要先了解TCP连接过程,这里不详细描述,流程如下:

TCP连接和断开为什么是三次握手和四次挥手?

问题来了:

1.为什么建立连接要三次握手?

2.为什么断开连接要四次挥手?

先说第一个问题。在想这个问题的时候,我想到的是为什么两次握手不可以。以A、B两人通信为例,第一次握手是A发消息给B,第二次握手是B发消息给A,我们知道经过两次握手之后,A和B之间的通信线路(A到B,B到A)是通了,但没有解决信任的问题。第一次握手使得B知道A->B是通的,第二次握手使得A知道A->B,B->A是通的,但此时B不知道B->A是否通,因此需要第三次握手,即A再发消息给B告诉它收到消息,这时B就知道B->A是通的。经过三次握手之后,A和B都知道彼此通信是通的。其实这个信任的问题,用四次握手来描述就比较清楚,即A发B,B回A,B再发A,A回B,只是中间B那两步简化成一步就可以了。

其实断开连接的时候,使用的就是类似上述四次握手的过程,那么问题来了,为什么断开连接时中间那两步不能并成一步了呢?B回应A的分手请求时同时也发送自己的分手请求不可以吗?

答案是不可以。这是因为断开连接时,要连接过程中的数据处理可能没有完成。A发给B,B回应A时,表示A->B的线路断开,此时A不再发消息,B不再收消息。但是B可能还有数据要发给A,经过一段时间后,B处理完数据并全部发送给A后,才发起断开连接请求,开始B->A断开的过程,因此B回应A的分手请求和B发送分手请求不能合并成一步。

相关文章

  • 三次握手和四次挥手

    三次握手是TCP建立连接时进行的,四次挥手是TCP断开连接是进行的,要弄明白三次握手和四次挥手,需要了解TCP的协...

  • 网络通信

    Tcp通信原理了解吗? Tcp连接需要进行三次握手,断开需要四次挥手。 为什么TCP连接需要三次握手分开需要四次握...

  • TCP三次握手、四次挥手漫画

    乔戈里大神的漫画TCP连接为什么是三次握手,而不是两次握手,也不是四次握手?TCP断开连接为什么是四次挥手,不是二...

  • 知识点总结1-计算机网络

    1.TCP的三次握手和四次握手 建立TCP的话,需要三次握手才能建立,而断开连接则需要四次挥手 三次握手:通俗描述...

  • TCP的三次握手和四次挥手

    参考资料:[1].【TCP】详解TCP 三次握手和四次挥手[2]. iOS:为什么TCP连接要三次握手,四次挥手[...

  • 三次握手简单理解

    三次握手 四次挥手 建立TCP连接需要三次握手, 而断开连接需要执行四次挥手. 信号 SYN 同步 ASK 确认 ...

  • TCP三次握手建立连接和四次挥手断开连接(个人理解)

    TCP三次握手建立连接和四次挥手断开连接(个人理解) TCP协议通过三次握手的方式建立连接: 1.客户端(李二狗)...

  • 漫谈TCP三次握手和四次挥手

    建立TCP需要三次握手才能建立,而断开连接则需要四次握手。那么为什么是三次握手和四次挥手呢?举个栗子:有两个神秘人...

  • 一篇搞懂TCP中的三次握手和四次挥手的过程

    大家知道TCP建立连接需要经过三次握手,而断开连接需要经过四次挥手,那三次握手和四次分手分别做了什么和如何进行...

  • TCP的3次握手&4次挥手

    详解 TCP 连接的“ 三次握手 ”与“ 四次挥手 ” 为什么“握手”是三次,“挥手”却要四次? 建立连接时,被动...

网友评论

      本文标题:TCP连接和断开为什么是三次握手和四次挥手?

      本文链接:https://www.haomeiwen.com/subject/cbpgdqtx.html