TCP 连接建立断开协议

TCP连接的建立通过三次握手实现,包括Client的SYN请求,Server的SYN+ACK确认,以及Client的ACK确认。断开连接则涉及四次挥手,首先是Client的FIN关闭请求,Server的ACK响应,Server的FIN关闭请求,最后是Client的ACK确认,进入TIME_WAIT状态。在挥手过程中,可能存在ACK丢失的问题,导致连接关闭延迟或无法关闭。
摘要由CSDN通过智能技术生成

TCP三次握手 建立连接

1)Client 将标志位 SYNC 置为 1,随机生成一个值 seq=J,并将该数据包发送给 Server,Client 进入 SYNC_SENT 状态,等待 Server 确认。
如果 Client 超时没有接收到 ACK,重发数据包。

2)Server 收到数据包后由标志位 SYNC=1 知道 Client 请求建立连接,Server 将标志位 SYNC 和 ACK 都置为 1,ack=J+1,随机产生一个值 seq=K,并将该数据包发送给 Client 以确认连接建立,Server 进入 SYN_RCVD 状态。
如果此时 Server 重新收到 Client 建立请求的消息,重发 ACK 包。
如果超时没有接收到 Client 的 ACK 响应,重发 ACK 包。

3)Client 收到确认后,检查 ack 是否为 J+1,ACK 是否为 1,如果正确则将标志位 ACK 置为 1,ack=K+1,并将该数据包发送给 Server,Client 进入 Established 状态,Server 检查 ack 是否为 K+1,ACK 是否为 1,如果正确则连接建立成功,Server 进入 Established 状态,随后 Client 与 Server 之间可以开始传输数据了。
Client 进入 Established 状态后,如果收到 Server 重发的 ACK 消息,重发自己的 ACK。

这样最后 Client 与 Server 都进入了 Established 状态&#x

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值