虚假重传是什么
虚假重传指发送方误判丢包而重发,但原来的报文其实已经到达并被确认:重发动作在协议栈看来是必要的超时重传,在网络视角看则是多余流量。Wireshark 会把它单独标注为 tcp.analysis.spurious_retransmission。这类现象往往由重传超时估算过小或乱序到达被误判为丢包引起,无线链路抖动是常见诱因。少量出现不影响业务,频繁出现则会浪费带宽并干扰拥塞控制判断。
基本信息
| 适用平台 | Wireshark 的 TCP 分析标注,Linux 与 Windows 均适用 |
|---|---|
| 过滤字段 | tcp.analysis.spurious_retransmission |
| 对比字段 | tcp.analysis.retransmission、tcp.analysis.fast_retransmission |
| 判据 | 重发前没有重复确认群,且对端已确认过该段数据 |
典型使用场景
- 评估无线接入链路的稳定性对业务的实际影响
- 排查「重传计数高但用户无感」的统计口径问题
- 区分真实丢包与乱序误判,避免误判为链路故障
- 对比调整超时参数或时间戳选项前后的流量变化
- 在吞吐不达标分析中确认多出来的重传是否来自误判
- 为链路质量报告提供分类后的重传构成
观察要点
观察要点
tcp.analysis.spurious_retransmission # 只看虚假重传
tcp.analysis.retransmission # 全部重传,用于对比
# 重传包前后没有重复确认群
# 对端已经确认过被重发的这段数据
# 多由重传超时偏小或乱序被误判引起,而非链路真的丢包重传类型对照
| 标注类型 | 触发原因 | 判读方向 |
|---|---|---|
| 超时重传 | 计时器到期未见确认 | 查链路时延抖动与超时估算 |
| 快速重传 | 收到重复确认 | 通常对应真实丢包 |
| 虚假重传 | 误判丢包实际已到达 | 查乱序、无线抖动与超时参数 |
| 乱序 | 报文顺序错乱但未丢失 | 查多路径与队列调度 |
从一条流的中途开始抓包会缺少前文,标注数量容易偏多,判断前先确认抓包覆盖了会话的起始阶段。
无线链路的抖动是常见诱因,结论要结合物理层或空口质量指标,只看传输层容易下错判断。