TCP 为什么是三次握手,而不是两次或四次?

Posted archer-fang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了TCP 为什么是三次握手,而不是两次或四次?相关的知识,希望对你有一定的参考价值。

TCP是一种全双工的可靠传输协议,核心思想:保证数据可靠传输以及数据的传输效率

A------B

二次握手:

1.A发送同步信号SYN+A‘s initial sequence number

2.B发送同步信号SYN+B‘s initial sequence number +B‘s ACK sequence number

这里存在一个问题,假设A和B初始列号一致,但B无法知道A是否已经收到自己的SYN,如果这个SYN丢失,则A和B的初始序号将无法达成一致,从而不能保证数据的可靠传输。

四次握手:

1.A发送SYN+A‘s initial sequence number

2.B确认收到A的同步信号,并记录A’s ISN 到本地,命名B‘s ACK sequence number

3.B发送同步信号SYN+B‘ISN

4.A确认收到A的同步信号,并记录B’s ISN到本地,命名A‘s ACK sequence number

其中 2,3两步可以合并,提高数据的传输效率。

TCP 为什么是三次握手,而不是两次或四次?

 

 

以上是关于TCP 为什么是三次握手,而不是两次或四次?的主要内容,如果未能解决你的问题,请参考以下文章

6 张图带你搞懂 TCP 为啥是三次握手,而不是两次或四次?

TCP 为什么是三次握手,而不是两次或四次?

6 张图带你搞懂 TCP 为什么是三次握手,而不是两次或四次?

一文剖析TCP三次握手四次挥手

一文剖析TCP三次握手四次挥手

干货超具体讲解TCP/IP三次握手与四次挥手