iperf3 的 UDP 模式
UDP 模式按指定速率发送报文,输出丢包率与抖动,适合评估实时音视频、游戏这类对时延抖动敏感的业务。UDP 没有拥塞控制,发送速率完全由参数决定,因此必须从低到高逐步校准,找出丢包开始出现的位置,而不是一上来就压满。
基本信息
| 基本用法 | iperf3 -c 10.0.0.2 -u -b 200M -t 30 |
|---|---|
| 发送速率 | -b 指定,需按目标带宽设定并逐步提高 |
| 关注指标 | Jitter 抖动与 Lost/Total 丢包 |
| 双端输出 | 服务端也会给出接收侧统计 |
| 结果不一致时 | 核对 -b 设置与服务端内核丢弃计数 |
典型使用场景
- 评估音视频业务的路径质量与抖动水平
- 确定某条链路在多大速率下开始出现丢包
- 验证 QoS 或限速策略对丢包与抖动的影响
- 跨地域链路的质量基线采集
- 无线或公网链路的稳定性对比
用法
用法
iperf3 -c 10.0.0.2 -u -b 50M -t 30 # 从较低速率开始校准
iperf3 -c 10.0.0.2 -u -b 200M -t 30 # 逐步提高,观察丢包出现点
iperf3 -c 10.0.0.2 -u -b 200M -t 30 -R # 反向测试收向抖动
# 关注输出中的 Jitter(抖动) 与 Lost/Total(丢包) 两项输出判读
| 指标 | 含义 | 判读 |
|---|---|---|
| Jitter | 相邻报文到达间隔的波动 | 实时业务关注该值是否稳定 |
| Lost/Total | 丢包数与总包数 | 从低速率就丢说明路径或接收端有问题 |
| 端到端延迟 | 单向延迟估算依赖时钟同步 | 未同步时钟时只看相对变化 |
| 服务端统计 | 接收侧速率与丢弃 | 与客户端结果互补 |
测试设计
- 从低速率起步,按档位逐步提升,找到丢包拐点
- 同一档位重复多轮,避免单次抖动的偶然结果
- 同时观察两端接口与协议栈的丢弃计数
- 记录测试窗口,避免与业务高峰重叠
两端结果不一致时,优先核对发送速率设置是否一致,再看接收端的协议栈丢弃计数;只看客户端输出容易把接收侧的问题误判为链路问题。
UDP 压测的本质是「以固定速率发」,速率越高越容易在接收端内核或应用层排队丢弃,因此丢包拐点并不等于链路带宽上限。