Window Full 标记
Wireshark 标注的 TCP Window Full 表示发送方的数据已经把接收窗口塞满,只能停下来等对方更新窗口。它不是错误,而是「发送受限」的直接线索:如果同时观察到接收端处理慢,基本就能判断瓶颈在接收侧,而不是链路丢包或带宽不足。
基本信息
| 适用平台 | Wireshark 的 TCP 分析标记 |
|---|---|
| 过滤方式 | tcp.analysis.window_full |
| 相关标记 | tcp.analysis.zero_window(接收方通告零窗口) |
| 含义 | 发送端视角:已发数据填满了对端通告的窗口 |
典型使用场景
- 判断发送停顿原因:区分窗口受限与丢包受限
- 评估接收端处理能力:窗口频繁被填满说明消费速度不足
- 大文件传输分析:批量传输里出现少量窗口填满属常见
- 长肥管道调优:窗口偏小会明显限制吞吐,需要加大接收缓冲
- 与应用指标对照:结合接收端 CPU、内存回收与线程池状态判断
过滤与判读
过滤与判读
tcp.analysis.window_full # 发送端填满接收窗口的瞬间
tcp.analysis.zero_window # 接收窗口为零
tcp.window_size < 8192 && tcp.len > 0 # 小窗口下仍在持续发送三种受限对照
| 标记 | 含义 | 瓶颈在哪 |
|---|---|---|
| Window Full | 发送数据填满了对端窗口 | 接收端读取或处理慢 |
| Zero Window | 接收方通告没有接收空间 | 接收应用已完全阻塞 |
| 重传标记 | 数据丢失需要重发 | 路径丢包或链路质量 |
Window Full 与 Zero Window 不是一回事:前者是发送端发现自己填满了窗口,后者是接收端明确通告零窗口。前者通常更早出现,可以理解为预警信号。
如果接收端窗口本身很小而 Window Full 高频出现,属于典型的配置受限场景。加大接收缓冲或调大窗口往往能立刻看到吞吐改善。
抓到 Window Full 不等于存在故障。大文件传输中偶发出现是正常现象,应关注它占整体传输时间的比例,以及是否伴随明显的业务停顿。