首页/网络/抓包与流量分析速查/Wireshark 帧间耗时列
Wireshark 技巧75 条

Wireshark 帧间耗时列

把 tcp.time_delta 添加为列显示每帧与同流上一帧的时间差:慢响应的空白区间一目了然,查找"卡在哪一段"时非常高效。

帧间耗时列

tcp.time_delta 是 Wireshark 为同一条 TCP 流计算的帧间隔,即当前帧与本流上一帧的时间差。把它添加成一列并按数值排序,「卡在哪一段」立刻呈现:某个请求之后长时间没有数据,那一行的间隔值会格外大。它只对有前序帧的报文取值,是 TCP 流专项分析中效率最高的手段之一。

基本信息

适用平台Wireshark 3.x / 4.x(tcp.time_delta 字段)
添加方式选中 TCP 详情的 Timestamps 分组 → 右键字段 → Apply as Column
取值前提同一 tcp.stream 内存在更早的帧
排序技巧点击列头降序,耗时最大的帧排到最前

典型使用场景

  • 定位响应空白期:请求已发出却迟迟无响应,看该帧相对上一帧的间隔
  • 排序找出异常帧:按间隔降序排,前几行往往就是问题所在
  • 观察周期性任务:同一连接上定时请求的间隔是否规律
  • 对比不同客户端:同一接口在不同客户端上的帧间隔差异
  • 与异常标注交叉验证:结合 tcp.analysis 的标记行共同判断

操作路径

操作路径
# 选中 TCP 详情 → Timestamps 分组 → 找到 time_delta 字段
# 右键 → Apply as Column,列名可改为 delta
tcp.time_delta > 0.5     # 筛出帧间隔超过 500 毫秒的包
# 点击该列列头降序,直接看到耗时最大的帧

间隔读法

现象可能原因下一步
请求行之后间隔大服务端处理耗时或网络往返对照服务端侧抓包或应用日志
数据帧间隔规律递增发送端节流或受窗口限制查看 Window Full 与拥塞标记
响应后长时间无帧应用未继续发送,或连接已断结合 RST/FIN 与两侧日志
每包间隔都很小链路顺畅关注吞吐而非单帧间隔
time_delta 只在已有前序帧的流上有值,每条流的首个包显示为空或破折号,这不代表异常;做统计时也不要把它按零处理,否则平均值会被拉低。
该字段按 tcp.stream 计算,同一五元组在抓包期间被复用成两条连接时会拆成两个流,跨流之间的间隔不会被计入,判断「连接是否被重建」时要结合 SYN 一起看。

易错点

  • 排到队列首的是间隔明显偏大的帧,结合上下文判断是应用慢还是网络慢
  • 重置参考方式会影响数值:每流首个包永远无值
  • 把大间隔直接等同于网络延迟:服务端处理慢同样表现为大间隔,须两侧对照
  • 抓包机自身负载高时处理延迟会被计入间隔,怀疑之前先核对抓包统计里的丢包数

数据来源与参考

  • Wireshark 显示过滤器参考(tcp.time_delta)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌