TCP协议中的三次握手和四次挥手

三次握手过程理解

  1. 第⼀次握⼿(客户端发送syn包到服务器端):客户端发送syn包到服务器端,进⼊syn_send状态,等待服务器端的确认;
  2. 第⼆次握⼿(服务器返回syn+ack包给客户端):服务器端收到客户端的syn包,发送syn+ack包给客户端,进⼊syn_recv状态;
  3. 第三次握⼿(客服端返回ack包给服务端):客户端收到服务器端的syn+ack包,发送个ack包到服务器端,⾄此,客户端与服务器端进⼊established状态;
  4. 握⼿过程中传送的包不包含任何数据,连接建⽴后才会开始传送数据,理想状态下,TCP连接⼀旦建⽴,在通信双⽅的任何⼀⽅主动关闭连接前,TCP连接都会⼀直保持下去。
    TCP协议中的三次握手和四次挥手

四次挥手过程理解

  1. 第⼀次挥手:客户端发送fin包到服务端,客户端进⼊FIN-WAIT-1(终止等待1)状态,告诉服务端我不会再给你发送数据了;
  2. 第⼆次挥手:服务端收到连接释放报文,发送ack给客户端,服务端进⼊CLOSE-WAIT(关闭等待)状态,确认序号为收到序号+1;客户端收到服务器的确认请求后,客户端进⼊FIN-WAIT-2(终止等待2)状态,等待服务器发送连接释放报文;
  3. 第三次挥手:服务端也发送fin包给客户端,服务端进⼊LAST-ACK(最后确认)状态,告诉对方我也不会给你发送数据了;
  4. 第四次挥手:客户端收到连接释放报文,发送ack给对方,客户端进⼊TIME-WAIT(时间等待)状态;注意此时TCP连接还没有释放,必须经过2MSL(最长报文段寿命)的时间后,当客户端撤销相应的TCB后,才进入CLOSED状态;服务器只要收到了客户端发出的确认,立即进入CLOSED状态,同样,撤销TCB后,就结束了这次的TCP连接。

TCP协议中的三次握手和四次挥手

上一篇:el-date-picker 设置、读取值


下一篇:计网-网络攻击