百科问答小站 logo
百科问答小站 font logo



关于三次握手和四次挥手,面试官想听到怎样的回答? 第1页

  

user avatar   bluedrum 网友的相关建议: 
      

这么讲吧,编程岗,能对TCP栈进行优化高手少之又少,又有幸到你们家面试更少。


但面试网络安全可有答有点靠边。但是对TCP栈本身进行攻击在现在这个环境难度有点大。





But, 就知很多面试官,好这一口。很多培训机构强化三次握手和四次挥手的回答,不要说回答,就是画个图都没问题 。



预注所有爱问这个问题 的公司找合适员工。


user avatar   chexiaopang 网友的相关建议: 
      

描述一下三次握手的过程,回答不出基本上就game over了。

如果没有什么错误,再让对方描述一下握手报文里都有哪些关键字段,能够说出ISN这个关键词, 接着问。

ISN代表什么?意义何在?

ISN,发送方的字节数据编号的原点,让对方生成一个合法的接收窗口。


ISN是固定不变的吗?

动态随机。


ISN为何要动态随机?

增加安全性,为了避免被第三方猜测到,从而被第三方伪造的RST报文Reset。


还有吗?

ISN动态随机使得每个tcp session的字节序列号没有重叠,如果出现tcp五元组冲突这种极小概率情况的发生,一个session的数据也不会被误认为是另一个session的。


刚才你提到第三方可以伪造RST报文,需要满足什么条件才能得逞?

需要sequence number 位于对方的合法接收窗口内。 而由于ISN是动态随机的,猜出对方合法接收窗口难度加大。

如果ISN = 0,那么猜出的难度就大大降低。


三次握手的第一次可以携带数据吗?为何?

不可以,三次握手还没有完成。


对方难道不可以将数据缓存下来,等握手成功再提交给应用程序?

这样会放大SYN FLOOD攻击。

如果攻击者伪造了成千上万的握手报文,携带了1K+ 字节的数据,而接收方会开辟大量的缓存来容纳这些巨大数据,内存会很容易耗尽,从而拒绝服务。


第三次可以携带数据吗?为何?

可以。

能够发出第三次握手报文的主机,肯定接收到第二次(服务器)握手报文,对吗?

因为伪造IP的主机是不会接收到第二次报文的。

所以,能够发出第三次握手报文的,应该是合法的用户。

尽管服务器侧的状态还没有“established”,接收到第三次握手的瞬间,状态就会切换为“established”,里面携带的数据按照正常流程走就好。

看到有人说,只看到过TCP状态位为 ’FIN +ACK’,但从来没有看过状态位只有 ‘FIN’,你应该怎样给他解释?

RFC793明确规定,除了第一个握手报文SYN除外,其它所有报文必须将ACK = 1。


很好,RFC规定的背后肯定有合理性的一面,能否深究一下原因?

TCP作为一个可靠传输协议,其可靠性就是依赖于收到对方的数据,ACK对方,这样对方就可以释放缓存的数据,因为对方确信数据已经被接收到了。

但TCP报文是在IP网络上传输,丢包是家常便饭,接收方要抓住一切的机会,把消息告诉发送方。最方便的方式就是,任何我方发送的TCP报文,都要捎带着ACK状态位。


ACK状态位单独能承担这个消息传递的任务吗?

不能!需要有 Acknowledge Number配合才行。

如果我方发出的Acknowledge Number == 10001,那意味着序列号10000及之前的字节已经成功接收。

如果对方占据字节序列号10000是应用层数据,那么就是确认应用层数据。

如果对方占据字节序列号10000是’FIN’状态位,那么就是确认接收到对方的’FIN’。

这是一道AWS面试题!

更多文章请阅读:




  

相关话题

  如何看待「因微信被封号,男子坠楼身亡」一事? 
  如何回答助理「你就给我三千月薪,你还想我怎么样」的问题? 
  计算机的能量转换过程是什么? 
  「中国政府为了国家安全在国内 GPS 定位时人为加入一定偏移」这种说法,有官方文件佐证么? 
  如何评价某985老师所说的「C语言至少学10年才能懂」? 
  互联网时代的线下活动和门店还有什么意义?为什么华为等手机厂商一直执着与线下呢? 
  如何看待阿里巴巴收购中天微?BAT 入局会改变现有芯片业格局吗? 
  网友吐槽小红书「滤镜景点」,小红书回应「展示更多避坑内容」,如何看待社交平台上过度包装的宣传? 
  如何评价钉钉6.0发布会,钉钉又带火新名词「低代码」,有人能解释一下这个意思吗? 
  方舟子打假林志颖,大家怎么看? 

前一个讨论
如何评价腾讯新推出的腾讯文档?
下一个讨论
米家有品众筹的品罗小怪兽料理机实际使用体验如何?





© 2024-12-24 - tinynew.org. All Rights Reserved.
© 2024-12-24 - tinynew.org. 保留所有权利