测试面试 | 网络协议面试中命中率最高的三次握手

今天给大家分享网络协议面试中最有可能会被问到的一个问题,大家可以收藏起来,以防以后面试中被问到。

最常见的面试问题:请详细描述一下“三次握手”:

TCP协议建立链接需要通过三次握手,让传输更加可靠。

来,接下来,通过一幅图来带大家直观的感受一下,三次握手的具体流程。

一、先来干货

我们用文字来描述一下这个过程:

第一次握手

客户端向服务器发出请求连接,这时报文首部中的同部位为SYN=1,同时随机生成初始序列号为 seq=x,这是第一次握手,表示客户端想和服务端建立连接。

第二次握手

服务端收到客户端请求后,同意接受连接,会向客户端返回确认报文。确认报文中应该 ACK=1,SYN=1,确认号是 ack=x+1,同时为自己随机初始化一个序列号 seq=y。在返回确认报文的同时,也会询问客户端是否准备好接受。这是第四次握手。

第三次握手

客户端收到服务端返回的确认后,还要向服务器给出确认,确认已经准备好接受。确认报文的 ACK=1,ack=y+1,此时,TCP 正式连接建立。这是第三次握手。

二、再来软文

什么,是不是有小伙们还是不太理解三次握手是什么意思,哈哈哈,贴心的我已经发现了,所以我再通过一个非常浪漫的案例给大家介绍一下,三次握手到底是什么意思。来,我们来看一下这幅图

 

哈哈哈,是不是很浪漫,我用文字来描述一下,tcp的三次握手可以看成男生追求女生的三次握手。

第一次握手

校草向校花表白,表示非常喜欢她,想跟她交往。

 

第二次握手

校花收到校草的表白后,给校草返回了一个信息,表示自己已经收到他的表白了,其实自己也挺喜欢他的,也愿意接受和他交往。

 

第三次握手

校草收到校花的回信开心的飞起来了,知道校花接受了自己,也愿意跟自己交往。于是就再回信给校花,表示校花的回信,自己已经收到了,自己也准备好咱俩交往的规划了。

到此为止,三次握手结束,校草与校花正式开始交往。

 

这里面,我们可以把校草看成客户端,校花看成服务端。通过这个案例,小伙伴们是不是瞬间对三次握手有了更清楚的理解了。但是为什么TCP协议建立连接需要进行三次握手呢?

三、为什么需要建立三次握手?

其实建立三次握手的主要目的是确保建立可靠的连接。不会因为网络的一些问题导致这个传输过程失效。如果客户端没有正常回应,那么就可以直接结束连接过程了,以防止最终的连接失效。

​现在我也找了很多测试的朋友,做了一个分享技术的交流群,共享了很多我们收集的技术文档和视频教程。
如果你不想再体验自学时找不到资源,没人解答问题,坚持几天便放弃的感受
qq群号:485187702【暗号:csdn11】
可以加入我们一起交流。而且还有很多在自动化,性能,安全,测试开发等等方面有一定建树的技术大牛
分享他们的经验,还会分享很多直播讲座和技术沙龙
可以免费学习!划重点!开源的!!!

最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走! 希望能帮助到你!【100%无套路免费领取】

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值