为什么TCP 要采用「3次握手」建立连接?

发布时间:2025-05-05 点击:0
首先说说为什么是三次握手?
当客户端发送一次请求a后,但是a在网络延迟了很久, 接着客户端又发送了一次b,但是此时a已经无效了。
接着服务器相应了b,并返回tcp连接头,建立连接(这里就2次哈)。
然后,a 历经千山万水终于到服务器了, 服务器一看有请求来了,则接受。
由于一开始a带着的tcp格式都是正确的,那么服务器,理所应当的也返回成功连接的flag,但是,此时客户端已经判断该次请求无效,废弃了。
然后服务器,就这么一直挂着(浪费资源),造成的一个问题是,md, 这个锅是谁的?所以,为了保险起见,再补充一次连接就可以了。
所以3次是最合适的。在chinese中,以3为起称为多,如果你用4,5,6,7,8...次的话,这不更浪费吗?
为什么要进行三次握手?举个栗子吧!
在红军时期,a连和b连分在左右翼,约定在几时几分一同发起打击。这个几时几分的信息就需要人工通过通讯员来走路传递。所以a连指挥官派出通讯员。
这是第一次。
假设通讯员到达了b连,并且告知了b连指挥官几时几分,b连指挥官一定会让通讯员再回去通知a连指挥官,可怜的通讯员只能冒着危险返回a连,因为a连指挥官看不到通讯员返回的话,不知道几时几分这个信息到底传达到了b连没有。
这是第二次。
现在b连指挥官开始担心通讯员是否回到了a连,如果没回到,b连指挥官会设身处地的想一想a连指挥官见不到返回的通讯员,肯定是不敢打的,所以b连指挥官最盼望的是再次看到通讯员出现在b连,所以a连指挥官会让通讯员再回b连一次。
因此可以说三次握手是在最快最省力的情况下作出的选择。
(第二次握手)
第三次握手的数据包,客户端再次发送确认包(ack) syn标志位为0,ack标志位为1.并且把服务器发来ack的序号字段+1,放在确定字段中发送给对方.并且在数据段放写isn的+1,如下图所示
(第三次握手)
以上就是 wireshark中的tcp三次握手过程。


软文创作中不可忽视的八个方面
定制化网站建设的好处是什么?
企业在定制网站时需要了解的四点建议
UI界面元素和设计例子
天津网站建设_天津网站设计的要与不要
健身类网站建设方案
为什么有些建站公司建站这么便宜?
https证书价格多少为什么https证书价格这么贵?