TCP三次握手和四次挥手

前序:TCP是一种面向连接,可靠传输的方式,双方之间需要建立一个虚拟的通道的过程,这个过程称之为三次握手

1 TCP三次握手

TCP三次握手和四次挥手_第1张图片

  • 首先TCP客户端通过http协议请求TCP服务器,客户端并发送一个带SYN的数据包给服务器,客户端进入等待状态,等待服务器确认。
  • 第二次握手,服务器接收到客户端发送过来的SYN数据包之,然后将这个SYN数据包+1,既SYN+ACK 回送给客户端,此时服务器器进入等待状态。
  • 第三次握手,客户端接收到服务器发送过的SYN+ACK数据包后, 客户端在将ack+1 最后回送给服务器,此时的三次握手完成

2 TCP的四次挥手

由于tcp是全双工的,连接的拆除需要四个包,既四次挥手,在socket编程中,任何一方关闭close都可完成挥手操作
TCP三次握手和四次挥手_第2张图片

  • 第一次挥手,首先客户端发送一个FIN,用来关闭客户端到服务器的数据传送
  • 第二次挥手,服务器接收到客户端发送过来的FIN数据之后,回送一个ACK给客户端,表示确认收到关闭机制。
  • 第三次挥手,服务器关闭与客户端的连接,并发送一个FIN确认包给客户端。
  • 第四次挥手,客户端将服务器发送FIN确认包,客户端回送给ACK包,表示确认收到。此时双方都关闭了连接,四次挥手完成

你可能感兴趣的:(TCP三次握手和四次挥手)