首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
在线笔面试、雇主品牌宣传
登录
/
注册
何止hz
2020-09-11 14:15
已编辑
腾讯_cdg_后台开发
关注
已关注
取消关注
tcp三次握手,为什么不是两次,这个面试题到底该咋回答?
请教下各位牛油的答案,到底该怎么答?
我一般会回答,这是由tcp的机制决定的,只有通过三次握手,才能完成序列号的同步,用于后续的数据传输。
各位是咋回答的,想听听大佬们的标准答案。
提示
全部评论
推荐
最新
楼层
宝宝可乖了
米哈游_引擎开发
三次握手不是TCP独有的,所有的端到端的全双工通信要确认各自的发送和接受通道是畅通的,双发都至少需要两次交互,加起来就是4次。因为第二次被动方的确认回复和第三次的发送可以合并为一次,就变成三次交互了。
3
回复
分享
发布于 2020-09-11 21:43
我是真的菜得1P
字节跳动_基础架构_后端开发工程师
3次握手完成两个重要的功能,既要双方做好发送数据的准备工作(双方都知道彼此已准备好),也要允许双方就初始序列号进行协商,这个序列号在握手过程中被发送和确认。 现在把三次握手改成仅需要两次握手,死锁是可能发生的。作为例子,考虑计算机S和C之间的通信,假定C给S发送一个连接请求分组,S收到了这个分组,并发 送了确认应答分组。按照两次握手的协定,S认为连接已经成功地建立了,可以开始发送数据分组。可是,C在S的应答分组在传输中被丢失的情况下,将不知道S 是否已准备好,不知道S建立什么样的序列号,C甚至怀疑S是否收到自己的连接请求分组。在这种情况下,C认为连接还未建立成功,将忽略S发来的任何数据分组,只等待连接确认应答分组。而S在发出的分组超时后,重复发送同样的分组。这样就形成了死锁。
3
回复
分享
发布于 2020-09-18 16:15
野猪佩琪🐗
西安交通大学 Java
大概意思是防止已失效的连接请求到达服务器建立连接浪费资源。计算机网络谢希仁教材作出了解释。
2
回复
分享
发布于 2020-09-11 14:48
繁花蓝
广州大学 前端工程师
假设A、B两方进行TCP握手 如果是两次握手A->B(第一次握手因为某些原因迟到了很久) A->B(A再次进行一次握手请求) B->(响应握手建立连接) 而此时第一次握手请求这个时候才到了B端,那么B端也要响应这个握手连接啊,于是就返回响应,但是这个时候的A已经将第一次的握手请求作废,所以这一条连接就纯属于浪费服务器的资源。 如果是三次握手 A->B(请求握手)、B->A(同意握手 但是不确定A能否收到这个同意握手的回应)、A->B(已收到回应 TCP连接建立),如果A将第一次握手请求作废,那么就不会有第三次的握手,而TCP连接也不会建立起来 我的理解是这个样子的
2
回复
分享
发布于 2020-09-11 15:55
E·M·T
天津工业大学 Java
https://mp.weixin.qq.com/s/rX3A_FA19n4pI9HicIEsXg 在快到页面中间的位置,很详细
2
回复
分享
发布于 2020-09-11 20:22
飞翔的鸵鸟
门头沟学院 C++
1. 两次握手会出现, 当第一次发送信号在网络中被隔置,第二次再发此时建立链接,断开链接后第一次链接信号又到了,此时会导致建立连接 2. 另外就是三手握手保证的是让对方知道我已经知道了,两次不行
1
回复
分享
发布于 2020-09-11 14:46
Keepen
西安工业大学 golang
我一般是通过举例加上分析来回答。 生活中:小明、小李 小明:在吗? 小李:在的(表示小李可以进行通信)(这就相当于是既应答了,也提问了) 小明:那个.....(表示小明现在也是在线的,因为可能上一步小李过了很久才回复小明,小明可能已经离线了) 可以进行数据通信了!!!!!!! 再下来就是分析包序啥的,个人觉得这样表达的就比较清晰了 仅供参考,大佬轻喷!!!😂
1
回复
分享
发布于 2020-09-11 16:51
我在上塘河边
浙江工业大学 Java
源端需要知道自己发送无问题,自己接收无问题,对端发送无问题,对端接收无问题。 对端需要知道自己发送无问题,自己接收无问题,源端发送无问题,源端接收无问题。 一共8个问题 第一次解决了:6,7 第二次解决了:1,2,3,4,8 第三次解决了:5
7
回复
分享
发布于 2020-09-11 16:13
mler
北京邮电大学 大数据开发工程师
我觉得可以从全双工这个角度+一端建立/断开链接需要一次请求响应,去解释,本来应该是四次,c->s一次请求响应,s->c一次请求响应,建立连接没有数据要传输,所以第二三次可以合为一次。总共就三次了。 两次只能确保c->s是建立了连接,无法保证s->c建立了连接。 同一挥手需要四次,也是因为两端传输数据不是同时完毕的,所以各负责各的。
1
回复
分享
发布于 2020-09-11 16:01
啦啦啦啦咯咯
西安邮电大学 Java
我一般是从两次握手会引发的问题这个角度回答的
点赞
回复
分享
发布于 2020-09-11 14:26
拖泥带水
度小满_基础架构研发工程师
一个是死锁问题,一个是资源浪费问题。
点赞
回复
分享
发布于 2020-09-11 16:00
疯轻扬
阿里巴巴_CRO技术部_开发工程师
两个将军问题,本质是在不可靠信道上通过交换信息达到一致是不可能的,一致就是双方都建立连接
点赞
回复
分享
发布于 2020-09-11 19:48
牛客69143547号
哈尔滨工业大学(深圳) C++
m
点赞
回复
分享
发布于 2020-09-11 19:52
光辉岁月v
门头沟学院 golang
三次握手,应该叫三次报文交换,实际上是确认通信双方的收发数据能力,确认序列号,二次握手就确认tcp连接的话,客户端的收发能力可以确认,服务端不知道自己发的数据客户端能否收到,用三次握手既可高效(中间的SYN,ACK合并一起发),又可确保可靠。同理断开连接的四次挥手如果服务端已没有数据发送,也可退化成三挥
点赞
回复
分享
发布于 2020-09-11 22:38
还没有回复哦~
相关推荐
02-12 14:25
沈阳化工大学 Java
快手日常支付(电商)一面
能实习多久实习拷打:实习主要做的内容介绍一下怎么获取的对应的部署数据问了具体的表设计,以及不同的表存储的什么数据为什么你这个SQL会更快呢(一点点扣,一点点介绍聊了20分钟)为什么不在代码中对数据处理,而是通过一条sql的形式处理的呢(首先保证原子性、其次逐条判断效率低)ON DUPLICATE KEY UPDATE会有什么缺点呢(在mysql中适用,但是SQlserver不适用,对于使用了索引的update操作就没必要使用)离职检测会在什么时候触发为什么不是在人员离职那一时刻处理呢算法:字符串相加八股文:线程池参数核心线程数和最大线程数还有队列长度怎么安排呢mysql默认的隔离级别举了两个在...
卡卡罗特w:
这就是百度的title 吗,全是大厂面试
查看13道真题和解析
点赞
评论
收藏
分享
02-12 17:14
顺丰集团_HR(准入职员工)
顺丰内推顺丰面经
25Min 1.自我介绍2.介绍MTV框架3.对测试的了解4.selenium元素定位方法,使用时有没有遇到过什么问题,怎么处理frame框架5.乐观锁和悲观锁6.数据库索引,左连接和右连接7.http和https8.接口测试的方法,需要准备哪些数据9.你做过哪些接口测试和自动化测试10.用python查找多个文件中的文件数量思路(递归,count方法)11.linux 查找大小小于1M的文件12.浏览器加载的页面是空白的有什么原因13.意向工作地14.使用postman和jmeter做过什么15.深拷贝和浅拷贝反问:1.具体工作内容2.技术栈:java,python顺丰科技25届校招内推启...
顺丰集团
|
校招
|
超多精选岗位
点赞
评论
收藏
分享
02-13 17:05
菏泽学院 嵌入式硬件工程师
24届女生,感觉考研二战要失败,急需大佬指点!🥺🥺🥺
穿件外套出门:
这简历一眼太水了,前面有的没的直接删,写项目亮点
点赞
评论
收藏
分享
02-11 12:48
腾讯_大数据高性能开发(准入职员工)
腾讯内推腾讯面经
分享面经(wxg 某团队----客户端开发)一面 (1个小时05分钟)30分钟的实习cpp的一些问题,比如如何利用windowsapi设计窗口,z型扫描,如何定位等问题(30分钟)1个小时后约复试二面(1个小时)20分钟实习之后看了看我的github,给面试官跑了一下之前自己开源的代码和博客。30分钟。10分钟 反转链表(好多次都写反转链表了哈哈)1个小时后约第二次复试三面30分钟实习(1小时50分钟)场景题 弹窗的设计以及大数据的处理。(跟之前的很像,我发现这些企业都爱考整体的架构设计,)要包括数据库和中间件的设计以及处理。(因为我实习和开源的东西用到过)1个小时20分钟智力题我是真没准备,...
腾讯
|
实习
|
超多精选岗位
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
3
41
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
985计算机老学长掏心窝子:当年我踩过的坑,希望你们能绕开
2.1W
2
...
厌倦互联网了,开始逃离ing
1.2W
3
...
想要在大厂生存必须要学会提效
7144
4
...
【已挂】影石Insta360|嵌入式软件|日常实习一面
4946
5
...
字节飞书后端面试
4637
6
...
腾讯s3事业线 一面凉经
3480
7
...
发现自己还挺喜欢背八股
3243
8
...
难道春招还没开始吗?
2112
9
...
美团运营后端组 - 软件开发实习生 - 到餐业务 - 日常实习 - 一面面经
1735
10
...
字节一面
1729
创作者周榜
更多
正在热议
更多
#
小厂实习有必要去吗
#
30977次浏览
214人参与
#
我的工作日记
#
52321次浏览
748人参与
#
国企和大厂硬件兄弟怎么选?
#
112652次浏览
1637人参与
#
影石Insta360求职进展汇总
#
107081次浏览
960人参与
#
文科生还参加今年的春招吗
#
2792次浏览
24人参与
#
选择和努力,哪个更重要?
#
40184次浏览
459人参与
#
如果再来一次,你还会学硬件吗
#
102209次浏览
1228人参与
#
中核求职进展汇总
#
13044次浏览
123人参与
#
我的国央企投递进展
#
35730次浏览
242人参与
#
如果公司降薪,你会跳槽吗?
#
43850次浏览
341人参与
#
一人推荐一个值得去的通信/硬件公司
#
160819次浏览
1734人参与
#
长光卫星求职进展汇总
#
27338次浏览
180人参与
#
当下环境,你会继续卷互联网,还是看其他行业机会
#
68169次浏览
492人参与
#
机械人选offer,最看重什么?
#
68412次浏览
431人参与
#
大疆的机械笔试比去年难吗
#
63964次浏览
576人参与
#
大疆今年的机械笔试难吗?
#
35154次浏览
407人参与
#
你的秋招简历被谁挂了?
#
216043次浏览
2402人参与
#
考公VS就业,你怎么选?
#
51521次浏览
369人参与
#
秋招盘点:机械人值得去的企业
#
60876次浏览
630人参与
#
24届市场营销薪资爆料
#
9335次浏览
62人参与
牛客网
牛客企业服务