三次握手四次挥手

三次握手

图片说明

  • 客户端先发送syn给服务端,然后客户端进入SYN_SENT状态,证明它已经发送SYN了
  • 客户端SYN_RCVD,说明已经收到SYN了
  • 发送SYN、ACK为1表示有带这些值,ack为前面客户端发送的seq+1,seq则为一个新的
  • 客户端收到后知道服务端可以收到,并且客户端也可以收到服务端的,就进入established
  • 当此时服务端不知道它是否发出去了,就得让服务端发ack(服务端的seq+1),此时才可以进入established阶段

四次挥手

图片说明

  • 一端请求断开连接,就发送FIN标记给另一端,并进入FIN_WAIT_1(等待对面确定)
  • 另一端收到FIN标记,进入CLOSE_WAIT(表示不用再接收另一端发送的正文消息body),并发送ACK回去,表示自己收到了FIN标记
  • 然后第一端就进入FIN_WAIT_2,等待另一端发送完所有信息并接收FIN
  • 另一端发送FIN回去,并进入LAST_ACK,第一端进入TIME_WAIT(表示可以准备关了)
  • 第一端接收到后知道可以关了就发ACK表示自己知道对方也要关了,就进入CLOSED
  • 另一端接收到ACK也进入CLOESD
全部评论

相关推荐

评论
点赞
1
分享

创作者周榜

更多
牛客网
牛客企业服务