TCP 三次握手

TCP(传输控制协议)三次握手是建立TCP连接的过程。这个过程确保了通信双方都能确认对方的存在,并且准备好进行数据传输。三次握手的步骤如下:

1. 第一次握手(SYN)

  • 发送方:客户端

  • 动作:客户端向服务器发送一个SYN(同步)包。

  • 目的:客户端请求建立连接。

  • 状态:客户端进入SYN_SENT状态。

2. 第二次握手(SYN-ACK)

  • 发送方:服务器

  • 动作:服务器接收到客户端的SYN包后,向客户端发送一个SYN-ACK(同步-确认)包。

  • 目的:服务器确认收到客户端的请求,并请求客户端确认。

  • 状态:服务器进入SYN_RECEIVED状态。

3. 第三次握手(ACK)

  • 发送方:客户端

  • 动作:客户端接收到服务器的SYN-ACK包后,向服务器发送一个ACK(确认)包。

  • 目的:客户端确认服务器的请求,并完成连接的建立。

  • 状态:客户端和服务器都进入ESTABLISHED状态。

总结

通过这三次握手,客户端和服务器都确认了对方的存在,并且双方都准备好进行数据传输。这个过程确保了连接的可靠性,避免了数据包的丢失和重复。

示意图

客户端                服务器
   |                    |
   |--- SYN ------------>|
   |                    |
   |<-- SYN-ACK ---------|
   |                    |
   |--- ACK ------------>|
   |                    |

状态变化

  • 客户端:CLOSED -> SYN_SENT -> ESTABLISHED

  • 服务器:CLOSED -> LISTEN -> SYN_RECEIVED -> ESTABLISHED

三次握手是TCP协议中非常重要的一个过程,它确保了数据传输的可靠性和稳定性。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值