7.Http三次握手,四次挥手
时间: 2023-07-17 10:04:55 浏览: 94
TCP三次握手,4次挥手流程
HTTP 协议本身并不涉及三次握手和四次挥手的过程,而是在传输层使用的 TCP 协议中存在这些概念。下面是 TCP 的三次握手和四次挥手的过程:
三次握手:
1. 第一次握手(SYN):客户端发送一个带有 SYN(同步)标志的数据包给服务器,表示客户端请求建立连接。此时客户端进入 SYN_SENT 状态。
2. 第二次握手(SYN+ACK):服务器收到请求后,会发送一个带有 SYN/ACK(同步/确认)标志的数据包给客户端,表示服务器接受连接请求。此时服务器进入 SYN_RCVD 状态。
3. 第三次握手(ACK):客户端收到服务器的响应后,会发送一个带有 ACK(确认)标志的数据包给服务器,表示客户端确认连接请求。此时客户端和服务器都进入 ESTABLISHED 状态,建立起连接。
四次挥手:
1. 第一次挥手(FIN):当客户端想要关闭连接时,发送一个带有 FIN(结束)标志的数据包给服务器,表示客户端不再发送数据。此时客户端进入 FIN_WAIT_1 状态。
2. 第二次挥手(ACK):服务器收到客户端的关闭请求后,发送一个带有 ACK 标志的数据包给客户端,表示服务器收到请求。此时服务器进入 CLOSE_WAIT 状态。
3. 第三次挥手(FIN):服务器准备关闭连接时,发送一个带有 FIN 标志的数据包给客户端,表示服务器不再发送数据。此时服务器进入 LAST_ACK 状态。
4. 第四次挥手(ACK):客户端收到服务器的关闭请求后,发送一个带有 ACK 标志的数据包给服务器,表示客户端接受关闭请求。此时客户端进入 TIME_WAIT 状态,等待一段时间后自动关闭连接,服务器进入 CLOSED 状态。
以上是 TCP 的三次握手和四次挥手的基本流程,用于建立和关闭连接,确保可靠的数据传输。
阅读全文