简单理解三次握手与四次挥手

247 阅读1分钟

三次握手

  1. 客户端发送syn包给服务器,并进入syn-send状态
  2. 服务器接收syn包,发送syn和ack包给客户端,进入syn-recv状态
  3. 客户端收到syn 和ack ,客户端和服务器端进入 established状态

为什么三次握手

  1. 第一次:服务器:客户端的发送能力和和服务器的接收能力正常
  2. 第二次:客户端: 客户端发送,接收能力正常,服务器发送,接收能力正常
  3. 第三次:服务器:客户端发送,接收能力正常,服务器发送,接收能力正常

四次挥手

四次挥手: A对B说:我要和你断开连接!B说:好的,断吧! B也对A说我也要和你断开连接!A说:好的,断吧!

  1. 客户端发送fin包给服务器
  2. 服务器接收到fin包,发送ack确认 3.服务器发送fin包给客户端
  3. 客户端发送ack确认

为什么建立连接是三次握手,而关闭连接却是四次挥手呢

建立连接阶段,服务器吧syn和ack放一起发送,断开连接时,fin和ack分开发送