报文 wireshark_Wireshark网络分析(三)TCP报文seq和ack确认机制

本文深入分析TCP报文的seq序号和ack确认机制,包括TCP握手阶段、数据发送阶段,以及TCP Selective Acknowledgement (SACK)。通过Wireshark工具展示了seq和ack在不同阶段的作用,解释了SACK如何处理乱序数据包,同时提及了延迟确认(delay ack)策略。
摘要由CSDN通过智能技术生成

发送端和接收端的TCP会话维护了32位的序列号( sequence number ),用来记录发送了多少数据,而 TCP报文确认序号(acknowledgement number) 表示了有多少数据成功接收了。通常初始的序列号是随机的,可能的范围在 0 到4,294,967,295。wireshark中默认采用了相对序号,为了便于分析,通过之前的文章Wireshark网络分析(二)-- 使用技巧设置为原始的序号。

TCP的可靠性借助了报文ack确认机制,基本逻辑为:

  • 发送端发送了报文,包含了序号seq和长度len;

  • 接收端收到报文之后,发送ack报文,ack=seq+len,表示下一个期望收到的报文序号。(因为从序号seq开始长度为len的数据都收到了)。

然后各种机制、优化都是围绕上述过程进行,比如:

  • 发送端发送报文之后,等待接收ack的时间如何设定,如果长时间没有收到确认如何处理;

  • 如果发送端过程中,网络不稳定部分“很长”时间没有到达接收端,发送端又发送了报文,接收端收到了重复的报文如何处理;

  • 如果ack报文丢失了如何处理。

本文先对于TCP报文的seq序号和ack确认的基本过程进行分析说明。

序号分析

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值