目录
起始序号
引入
在介绍TIME_WAIT状态时,我们就提到了起始序号 -- tcp协议的超时重传(去重,确定时间),通信建立机制(三次握手,通信,四次挥手的细节和图解),为什么是3次/4次,肉机,全/半连接队列,SYN洪水,TIME_WAIT状态(解决,为什么出现,MSL)-CSDN博客
为了防止过了timeout时间,仍然有数据残留,要是双方立即又重新连接,且不变更ip/port,就有可能收到老数据
- 虽然这种概率很小,但不能不防
所以采用随机序号,使得新老连接的起始序号发生冲突的概率很小
- 而起始序号早在三次握手期间的交换报文中协商好了
序号和确认序号
所以实际上,我们填充进序号字段里的值
- 应该是起始序号+字节偏移量
而确认序号的含义也变了
- 要得到真正的下一个数据在缓冲区的位置 = 确认序号-起始序号
总结
总之,这样设计出来的序号,在两次连接中只有很小的概率会冲突
- 即使有旧数据到达主机,也不会被处理
本站资源均来自互联网,仅供研究学习,禁止违法使用和商用,产生法律纠纷本站概不负责!如果侵犯了您的权益请与我们联系!
转载请注明出处: 免费源码网-免费的源码资源网站 » tcp协议中的起始序号
发表评论 取消回复