口语化/面试讲解TCP为什么要握手,为什么是三次握手而不是两次或四次

     概念:三次握手即 three-way handshake,将他理解为三步握手,是一次握手分三个步骤进行,而不是一共握三次手。 

      首先为什么要握手?tcp是可靠全双工的一个双向通信传输协议,体现在就是通信的双方都需要确认对方是否收到了自己发的数据包是完整有序无差错的,如果不是就需要重发。


       其次为什么要握手三次?简单来说,两次不可靠四次不高效。先搞清楚1:tcp连接握手握的是啥?是通信双方数据原点的序列号(SN sequence number)。tcp是全双工的一个双向通信,为了可靠传输,始终都需要同步(SYNchronize)信号。初始双方的序号都是随机的。所以刚开始通信双方都产生一个初始的随机序列号ISN(相当于一个身份标识)。

2:三次握手的过程。

拿你我作比方就是,我生成初始序列号ISN(initial sequence number)后加上同步信号SYN发给你,你收到之其加1后命名为你自己的ACKsequence number确认序列号,然后你自己的ISN和同步信号SYN发给我,这是第二次握手。第三次握手就是我确认收到你的同步信号,并把你的ISN号记录到到本地并命名为我的ACK确认序号。

为什么两次不可靠?因为没有第三步的同步信号&#

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值