Flow Graph 是什么
Statistics → Flow Graph 把一条或多条会话按时间轴画成箭头交互图:横向是时间,纵向是通信双方,箭头方向标出报文由谁发出,箭头之间的间距反映交互节奏。它解决的是“怎么向非网络同事解释慢在哪里”:把请求与响应画成一条竖线,就能直观看出是客户端发得晚、服务端回得慢,还是来回次数过多。Flow type 选 TCP Flows 看连接级交互;选 All Packets 会把握手与确认也画出来,信息更全但画面更杂。
基本信息
| 适用产品 | Wireshark 桌面版(Windows / macOS / Linux) |
|---|---|
| 入口 | Statistics → Flow Graph… |
| 常用 Flow type | TCP Flows 看连接级请求响应 |
| 视图元素 | 时间轴、通信双方、方向箭头 |
| 联动操作 | 点击箭头可跳回主列表对应帧 |
典型使用场景
- 汇报讲解:把一次慢请求的交互顺序画出来,非网络同事也能读懂问题在第几步
- 判断迟到方:区分是客户端发得晚还是服务端回得慢
- 统计交互轮次:往返次数偏多往往说明协议设计冗余或缓存策略不合理
- 对照正常与异常:同一业务流程的两条流并排比较差异
- 确认连接复用:看同一条流上承载了几次请求响应
操作步骤
操作步骤
# 先过滤到目标流,避免多条流互相干扰
tcp.stream == N
Statistics → Flow Graph… # Flow type 选 TCP Flows
# 只勾选当前流,观察箭头间隔与方向
# 点箭头跳回主窗口定位报文读图要点
| 图形特征 | 含义 | 常见结论 |
|---|---|---|
| 箭头密集且间隔均匀 | 正常的请求响应往返 | 无异常 |
| 长时间只有单向箭头 | 一方持续发送而另一方沉默 | 对端未响应或应用卡住 |
| 请求与响应间隔突然拉长 | 交互节奏变慢 | 应用抖动或链路时延抬升 |
| 出现重复箭头 | 同一数据被重发或重复请求 | 查丢包或客户端重试逻辑 |
它和 Statistics → TCP Stream Graphs 里的 Time Sequence 图互补:Flow Graph 看交互节奏与方向,Time Sequence 看吞吐、窗口与重传随时间的变化,两者配合能覆盖大部分会话级问题。
同时勾选多条流时画面会非常杂乱,不同颜色与编号交错,很容易把两条会话的报文看成一条;先过滤到单条流再打开图。