点击上方“好好学java”,选择“置顶”公众号
重磅资源、干货,第一时间送达
![9b6ac7be12f664530c93468e9fef7721.png](https://i-blog.csdnimg.cn/blog_migrate/b74f283e71b84a5163870418f1a220d2.png)
① 修炼内功,设计模式从零开始学视频教程
② 实战!!java仿抖音实战 !
③ 解决笔试和面试问题!算法和刷题课程
④ 源码系列!!spring源码深度解析
作者:青柚_
原文:https://blog.csdn.net/qq_38950316/article/details/81087809
先来张图!
![53e2cfc94d5844723ca52fe94daac317.png](https://i-blog.csdnimg.cn/blog_migrate/40346728769204e56133d7737ff36851.jpeg)
序列号seq:占4个字节,用来标记数据段的顺序,TCP把连接中发送的所有数据字节都编上一个序号,第一个字节的编号由本地随机产生;给字节编上序号后,就给每一个报文段指派一个序号;序列号seq就是这个报文段中的第一个字节的数据编号。
确认号ack:占4个字节,期待收到对方下一个报文段的第一个数据字节的序号;序列号表示报文段携带数据的第一个字节的编号;而确认号指的是期望接收到下一个字节的编号;因此当前报文段最后一个字节的编号+1即为确认号。
确认ACK:占1位,仅当ACK=1时,确认号字段才有效。ACK=