-
SYN(同步序列编号):
- 用途:用于开始一个新的连接。
- 解释:当客户端想要与服务器建立连接时,它会发送一个带有SYN标志的数据包。这是三次握手中的第一次握手。
-
ACK(确认):
- 用途:确认已收到数据包。
- 解释:当一方收到带有SYN或FIN标志的数据包时,它会发送一个带有ACK标志的数据包作为响应,表示已收到并确认了之前的包。
-
FIN(结束):
- 用途:用于结束一个连接。
- 解释:当连接中的一方不再需要发送数据时,它会发送一个带有FIN标志的数据包,请求断开连接。这是四次挥手中的第一次挥手。
一、三次握手(建立连接)
- 第一次握手:客户端发送一个带有SYN (同步序列编号) 标志的数据包给服务端,以便开始一个新的连接。
- 第二次握手:服务端收到SYN后,会应答一个带有自己SYN的ACK (确认) 数据包。
- 第三次握手:客户端收到服务端的SYN+ACK后,发送一个确认包ACK,这样,双方建立起连接。
- 拓朴图
二、四次挥手(终止连接)
- 第一次挥手:当连接不再需要时,客户端发送一个FIN (结束) 数据包。
- 第二次挥手:服务端确认这个FIN包,发送一个ACK包。
- 第三次挥手:服务端发送自己的FIN包请求断开连接。
- 第四次挥手:客户端确认服务端的FIN包,发送一个ACK包,完成断开。