TCP的ACK机制

15 篇文章 1 订阅 ¥9.90 ¥99.00

我们先来回顾一下TCP的完整协议,通过上面两张图我们就能知道,首先是创建连接传送数据。

三次握手 在这里插入图片描述

  • 发起连接的是客户端
  • 接收连接的是服务端
  • 服务端处于监听状态,当有连接过来,状态就变为SYN_RCVD
  • 回复一个SYN、ACK消息,客户端收到消息后状态变为ESTABLISHED
  • 再回复一个ACK消息,服务端接收到消息后服务端也处于ESTABLISHED
  • 在这之后客户端与服务器直接就可以进行消息的收发了。

消息收发

  • 客户端通过write()进行向服务器发送数据
  • 服务器通过read()进行数据的读取。

四次挥手

在这里插入图片描述

  • 断开连接的一方称为客户端
  • 被断开的一方称为服务端
  • 客户端调用close(),发送FIN到服务端
  • 服务端收到FIN后,调用close(),状态变为Close_WAIT,同时发送ACK消息到客户端。
  • 客户端收到FIN消息后,状态变为FIN_WAIT_2,状态变为WAIT_TIME
  • 客户端再回复ack给服务端,等待2倍的2msl
  • </
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

杜甲同学

感谢打赏,我会继续努力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值