TCP三次握手与四次挥手讲解

  • 2022-07-07 22:38:00

TCP三次握手与四次挥手讲解

TCP三次握手与四次挥手讲解

三次握手

1.第一次握手

客户端向服务端发送 SYN(Synchronize) 标记设为 1 的TCP包。

Seq(Sequence Number)为由操作系统生成的随机数。然后,客户端进入 SYN_SEND 状态,等待服务器的确认。

2.第二次握手

服务器收到客户端的 SYN 包,会发一个对 SYN 包的确认包(SYN/ACK)回去。

ACK(Acknowledgment Number) 为 x+1(Sequence Number+1),服务器端把 SYN+ACK 报文段发送给客户端,此时服务器进入 SYN_RECV 状态。

3.第三次握手

客户端收到 SYN/ACK 包后,发一个确认包(ACK),通知服务器端连接已建立。

三次握手演示:

三次握手    seq       ack
 第一次    10000       0
 第二次    20000  10000+1=10001
 第三次    10001  20000+1=20001

四次挥手

1.第一次,客户端:『没有数据给你了』;

2.第二次:服务端:『收到,我也没有数据给你了』;

3.第三次:服务端:『请求关闭连接』;

4.第四次:客户端:『确认』;

服务端收到后关闭连接,客户端收不到回复了也关闭了连接。

猜你喜欢