当前位置: 首页 > 面试题库 >

请你说一说TCP的三次握手和四次挥手的过程及原因

郎睿
2023-03-14
本文向大家介绍请你说一说TCP的三次握手和四次挥手的过程及原因相关面试题,主要包含被问及请你说一说TCP的三次握手和四次挥手的过程及原因时的应答技巧和注意事项,需要的朋友参考一下

参考回答:

TCP的三次握手过程如下:

C-> SYN -> S

S->SYN/ACK->C

C->ACK->S

 

三次握手的原因:三次握手可以防止已经失效的连接请求报文突然又传输到服务器端导致的服务器资源浪费。例如,客户端先发送了一个SYN,但是由于网络阻塞,该SYN数据包在某个节点长期滞留。然后客户端又重传SYN数据包并正确建立TCP连接,然后传输完数据后关闭该连接。该连接释放后失效的SYN数据包才到达服务器端。在二次握手的前提下,服务器端会认为这是客户端发起的又一次请求,然后发送SYN ,并且在服务器端创建socket套接字,一直等待客户端发送数据。但是由于客户端并没有发起新的请求,所以会丢弃服务端的SYN 。此时服务器会一直等待客户端发送数据从而造成资源浪费。

TCP的四次挥手过程如下:

C->FIN->S

S->ACK->C

S->FIN->C

C->ACK->S

 

四次挥手的原因:由于连接的关闭控制权在应用层,所以被动关闭的一方在接收到FIN包时,TCP协议栈会直接发送一个ACK确认包,优先关闭一端的通信。然后通知应用层,由应用层决定什么时候发送FIN包。应用层可以使用系统调用函数read==0来判断对端是否关闭连接。

 类似资料:
  • 本文向大家介绍说说TCP传输的三次握手四次挥手策略相关面试题,主要包含被问及说说TCP传输的三次握手四次挥手策略时的应答技巧和注意事项,需要的朋友参考一下 为了准确无误地把数据送达目标处,TCP协议采用了三次握手策略。用TCP协议把数据包送出去后,TCP不会对传送 后的情况置之不理,它一定会向对方确认是否成功送达。握手过程中使用了TCP的标志:SYN和ACK。 发送端首先发送一个带SYN标志的数据

  • 本文向大家介绍请你说一说四次挥手相关面试题,主要包含被问及请你说一说四次挥手时的应答技巧和注意事项,需要的朋友参考一下 参考回答: 1.客户端发送syn0给服务器 2.服务器收到syn0,回复ack(syn0+1)  

  • 本文向大家介绍TCP 三次握手和四次挥手?相关面试题,主要包含被问及TCP 三次握手和四次挥手?时的应答技巧和注意事项,需要的朋友参考一下 为了准确无误地把数据送达目标处,TCP协议采用了三次握手策略。 2.1 TCP 三次握手漫画图解 如下图所示,下面的两个机器人通过3次握手确定了对方能正确接收和发送消息(图片来源:《图解HTTP》)。 简单示意图: 客户端–发送带有 SYN 标志的数据包–一次

  • 本文向大家介绍请你来说一下TCP三次握手四次挥手的过程,为什么tcp连接握手需要三次, time_wait状态相关面试题,主要包含被问及请你来说一下TCP三次握手四次挥手的过程,为什么tcp连接握手需要三次, time_wait状态时的应答技巧和注意事项,需要的朋友参考一下 参考回答: 1)TCP连接(三次握手)过程: 客户端A:发送SYN连接报文,序列号为x,进入SYNC-SENT状态。 服务端

  • 本文向大家介绍请你说一说三次握手相关面试题,主要包含被问及请你说一说三次握手时的应答技巧和注意事项,需要的朋友参考一下 参考回答: 1.客户端发送syn0给服务器 2.服务器收到syn0,回复syn1,ack(syn0+1)

  • 本文向大家介绍请你说明一下,SSL四次握手的过程相关面试题,主要包含被问及请你说明一下,SSL四次握手的过程时的应答技巧和注意事项,需要的朋友参考一下 考察:HTTP加密协议   1、 客户端发出请求 首先,客户端(通常是浏览器)先向服务器发出加密通信的请求,这被叫做ClientHello请求。 2、服务器回应 服务器收到客户端请求后,向客户端发出回应,这叫做SeverHello。 3、客户端回应