TCP基础知识----序列号、确认号

7 篇文章 0 订阅
5 篇文章 0 订阅

seq 当前端成功发送的数据位数
ack 希望对方下一次发送的序号  不是当前端已经接收到的数据量

以三次握手为例  https://blog.csdn.net/zhangdell/article/details/115380788
第一次: SYN = 1,seq = x

第二次:SYN = 1,ACK = 1,seq = y,ack = x + 1

第三次:ACK = 1,seq = x + 1,ack = y + 1

这里边容易给大家一个误导,觉得下一次的ack = 上一次的seq + 1,下一次的seq = 上一次的ack,有个+1的关系在这里边。其实这是错误的,正确的是+Len

现在以Wireshark抓包为例 (192.168.0.102 是client   192.168.0.101 是服务server)

No.1 2 3是3次握手的过程

No.7 是client--->server 发送 abcdefg  seq = 1,ack = 41 len = 7

No.8 是server--->client 发送ACK 确认包 seq = 41,ack = 8 len = 0  (下一次从8开始发,客户端此时就知道上次发送的7个字节的内容 全部被server端接收)

No.9 是client--->server 发送 abcdef seq = 8,ack = 41,len = 6

No.10 是server---->client 发送ACK确认包 seq = 41,ack = 14, len = 0 (下一次从14开始发  14刚好是上一次的seq+len)

所以seq 表示当前已经成功向对方发送的数据位数   ack是告诉对端下一次从哪里给我发数据

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值