iperf3 使用指南

一、工具简介

iperf3 用于测试两台设备之间的网络吞吐能力。SDK 提供的是 iperf 3.1.3 源码包,本文使用 iperf3 命令。组件来源及 SDK 源码包位置见 iperf3 组件简介。

测试需要服务端和客户端,两端均需安装兼容的 iperf3;iperf2 与 iperf3 不能直接互通。本文为通用示例,尚未在 CW080 实板验证。

二、测试前准备

将开发板和另一台 Linux 设备接入同一可通信网络。分别确认 iperf3 可执行,并记录服务端 IP 地址:

command -v iperf3
ip addr show

确认两端网络互通,防火墙允许测试端口。以下以另一台 Linux 设备作为服务端、开发板作为客户端;请将示例地址替换为实际服务端地址。

三、TCP 吞吐测试

  1. 在服务端执行:

    iperf3 -s
  2. 在开发板客户端执行,示例中的 192.168.1.10 需替换:

    iperf3 -c 192.168.1.10 -t 10
  3. 等待测试结束,查看输出中的传输数据量及速率。默认测试方向为客户端发送、服务端接收,默认端口为 5201。完成后在服务端按 Ctrl+C 停止。

如需测试相反方向,在开发板客户端执行:

iperf3 -c 192.168.1.10 -t 10 -R

四、UDP 测试与结果说明

服务端仍运行 iperf3 -s,在开发板客户端执行:

iperf3 -c 192.168.1.10 -u -b 10M -t 10

其中 -u 指定 UDP,-b 10M 指定目标发送速率,实际接收速率可能不同。除速率外,还应查看丢包和抖动。测试结果受无线环境、距离、链路、系统负载和配置影响,不应直接作为产品性能保证。

连接失败时,检查服务端是否运行、IP 地址和端口是否正确,以及防火墙是否允许 TCP 或 UDP 测试流量。