TCP三次握手和四次挥手过程
时间: 2024-06-20 17:01:43 浏览: 114
TCP三次握手与四次挥手.pdf
5星 · 资源好评率100%
TCP(Transmission Control Protocol)是Internet协议族中的传输层协议,它提供可靠的数据传输服务。三次握手和四次挥手是TCP连接建立和断开的关键步骤。
**三次握手(Three-way Handshake):**
1. **客户端发起(SYN)**:客户端发送一个SYN(同步序列号)包给服务器,请求建立连接。这个包包含了随机生成的初始序列号seq。
2. **服务器响应(SYN+ACK)**:服务器收到SYN后,回应一个SYN+ACK包,确认收到了客户端的请求,并且也为自己的序列号设置了一个值。同时,它也设置了期望的序列号作为确认号ack。
3. **客户端确认(ACK)**:客户端收到服务器的SYN+ACK后,发送一个ACK(确认)包,确认收到了服务器的响应,并且设置确认号ack为服务器SYN+ACK包中期望的序列号+1。
**四次挥手(Four-way Handshake):**
1. **主动关闭(FIN)**:当数据传输完成后,客户端想要关闭连接,它会发送一个FIN(结束)包给服务器,请求终止连接。
2. **服务器响应(ACK)**:服务器收到FIN后,发送一个ACK,确认收到了关闭请求,并进入半关闭状态(只允许接收数据,但不再发送)。
3. **服务器关闭(FIN)**:服务器在完成所有未发送的数据后,发送一个FIN给客户端,表示服务器也准备关闭连接。
4. **客户端确认(ACK)**:客户端收到服务器的FIN后,发送一个ACK确认,至此,双方都进入了关闭等待状态,等待对方的确认。一旦客户端收到服务器的ACK,连接正式断开。
阅读全文