TCP 流分析82 条

TCP 窗口探测判读

发送端在窗口 0 状态下定期发送 1 字节探测(或零窗探测),确认接收端何时能接收:抓包中表现为间隔递增的相同序列号小包。

用途识别零窗口期间的探测行为
过滤tcp.analysis.window_probe / 窗口=0 期间的 tcp.len<=1 包

观察

观察
探测间隔随退避递增(与 RTO 相关)
探测被 ACK 且窗口仍 0 → 继续等待
窗口恢复 → 探测返回非零窗口 → 正常传输
探测持续很久是接收应用阻塞的强烈信号,可与接收端线程栈一起对照。

易错点

  • 探测包体量小、间隔长,在长抓包里容易被当作噪音过滤掉,查零窗口问题要专门看
  • 抓包点单侧时看不到接收端内部状态,恢复时间只能从探测响应推断

数据来源与参考

  • RFC 9293(探测)
  • Wireshark User's Guide
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌