【校招VIP】java专业课之三次握手四次挥手

05月18日 收藏 0 评论 2 java开发

【校招VIP】java专业课之三次握手四次挥手

考点介绍:

三次握手四次挥手问题是校招面试中的必考题。三次握手即TCP连接的建立。这个连接必须是一方主动打开,另一方被动打开的。四次挥手即TCP连接的释放(解除)。连接的释放必须是一方主动释放,另一方被动释放。

本期分享的java专业课之三次握手四次挥手,分为试题、文章以及视频三部分。

答案详情解析和文章内容可扫下方二维码或链接即可查看!

一、考点题目

1.为什么TCP链接需要三次握手,两次不可以么?

解答:为了防止 已失效的链接请求报文突然又传送到了服务端,因而产生错误。客户端发出的连接请求报文并未丢失,而是在某个网络节点……

2.三次握手是通过标识位和确认号进行的网络操作,下列哪个选项是不正确的?

A.第一次握手([SYN], Seq = x)

B.第二次握手([SYN,ACK], Seq = y, ACK = x + 1)

C.第二次握手([SYN,ACK], Seq = y, ACK = y + 1)

D.第三次握手([ACK], ACK = y + 1)

正确答案:C,三次握手面试时不能笼统的说第一次、第二次、第三次,而是要从编程的角度也就是TCP协议说明实现的方法,要理解标识位和状态位的变化。第一次握手(……

3.TCP断开连接的四次挥手中,第四次挥手发送的包会包含的标记,最正确的描述是?()

A.FIN

B.FIN,PSH

C.ACK

D.FIN,ACK

正确答案:C,我们假设由client提出关闭,则:第一次:FIN(client发给server)第二次:ACK(server发给client)第三次:FIN(server发给client )第四次:ACK(client发给server)……

4.为什么TCP连接的时候是3次,关闭的时候却是4次?

解答:因为只有在客户端和服务端都没有数据要发送的时候才能断开TCP。而客户端发出FIN报文时只能保证客户端没有数据发了,服务端还有没有数据发……

5.为什么客户端发出第四次挥手的确认报文后要等2MSL的时间才能释放TCP连接?

解答:这里同样是要考虑丢包的问题,如果第四次挥手的报文丢失,服务端没收到确认ack报文就会重发第三次挥手的报文,这样报文一去一回最长时间就是2MSL,所以需要等这么长时间来确认服务端确实……

(答案点击下方链接或者扫海报二维码查看哦)

二、考点文章

1.我终于搞懂了TCP的三次握手和四次挥手

TCP(Transmission Control Protocol,传输控制协议)是一种面向连接的、可靠的、基于字节流的通信协议,数据在传输前要建立连接,传输完毕后还要断开连接。客户端在收发数据前要使用 connect() 函数和服务器建立连接。建立连接的目的是保证IP地址……

2.简明理解三次握手和四次挥手

注:三次握手和四次挥手本身并不复杂,但却可以从很多角度理解这两个过程,本文仅取一个视点解读,如有其它看法欢迎留言交流。三次握手与四次挥手分别对应TCP连接建立过程与断开过程,先上TCP报文……

3.TCP协议中的三次握手和四次挥手(图解)

建立TCP需要三次握手才能建立,而断开连接则需要四次握手。整个过程如下图所示……

(扫下方海报二维码查看完整版)

三、考点视频

1.TCP建立和结束连接的过程

本题是开发类一线校招专业课必考题之一,需要在理解TCP协议的基础上,记忆过程中的状态码、字段和标志位,最好是能够在理解的前提下,背下状态图,属于面试5星必备考点……

移动端链接:https://m.xiaozhao.vip/dTopic/detail/330

PC端链接:https://xiaozhao.vip/dTopic/detail/330

C 2条回复 评论
轻舟行

现在互联网各个职位的壁垒已经有了,再也不是稍微会点就能入行的年代了,现在的职位一脚开始拒绝培训班出来的人了,除非你有自己的作品或者有工作经验才行。

发表于 2023-04-01 21:00:00
0 0
沈振衣

比之前听的课更好懂

发表于 2023-02-13 21:00:00
0 0