使用Iperf3可端到端测试两台电脑间真实网络带宽:先在服务端运行iperf3 -s监听,再于客户端用iperf3 -c IP发起TCP/UDP测试,支持多线程(-P)、单向传输(-R)及结果导出(-o/-J)。

如果您需要评估两台电脑之间的真实网络传输能力,则可以使用 Iperf3 工具进行端到端带宽测试。以下是执行该测试的具体步骤:
一、在服务端启动 Iperf3 监听模式
Iperf3 的服务端需先运行并等待客户端连接,它会绑定指定端口接收数据流,并统计接收速率。默认监听端口为 5201,可自定义但需与客户端一致。
1、在目标电脑(作为服务端)打开终端或命令提示符。
2、输入命令:iperf3 -s 启动默认监听。
3、如需指定端口,例如使用 8080 端口,运行:iperf3 -s -p 8080。
4、确认终端显示 “Server listening on 5201” 或对应端口号,表示服务端已就绪。
二、在客户端发起带宽测试请求
客户端向服务端发起 TCP 或 UDP 数据流,Iperf3 自动测量吞吐量、抖动与丢包率(UDP 模式下)。测试持续时间默认为 10 秒,可调整。
1、在另一台电脑(作为客户端)打开终端或命令提示符。
2、执行基础 TCP 测试命令:iperf3 -c 服务端IP地址,例如 iperf3 -c 192.168.1.100。
3、若服务端使用非默认端口,添加 -p 参数:iperf3 -c 192.168.1.100 -p 8080。
4、如需进行 UDP 测试并设定带宽目标(如 100Mbps),运行:iperf3 -c 192.168.1.100 -u -b 100M。
三、使用多线程提升测试精度
单线程测试可能受限于单个 TCP 连接的拥塞控制机制,启用多个并行流可更充分压测链路容量,尤其适用于千兆及以上网络。
1、在客户端命令中加入 -P 参数指定并行流数量,例如启动 4 个并发连接:iperf3 -c 192.168.1.100 -P 4。
2、可同时结合时间与缓冲区参数,如:iperf3 -c 192.168.1.100 -P 4 -t 30 表示运行 30 秒。
3、观察输出中的 “SUM” 行,其 bandwidth 值为所有线程合计带宽,代表链路整体吞吐能力。
四、限制测试方向以排除干扰
默认测试为双向:客户端发、服务端收。但在某些场景下(如防火墙策略或单向链路),需强制指定传输方向以避免误判。
1、仅执行客户端到服务端的单向测试(推荐常规使用):iperf3 -c 192.168.1.100 -R,其中 -R 表示反向,即服务端发送、客户端接收。
2、若需严格限定为客户端发送、服务端接收(默认行为),无需加 -R;但可显式使用 iperf3 -c 192.168.1.100 --no-delay 关闭 Nagle 算法,降低小包延迟影响。
3、验证方向是否生效:查看结果中 “Sender” 和 “Receiver” 标识,确保与预期角色一致。
五、保存测试结果至文件便于复核
将原始输出记录为文本可避免手动抄录错误,也方便后续比对不同配置下的性能差异。
1、在客户端命令末尾添加 -o 参数指定输出文件路径,例如:iperf3 -c 192.168.1.100 -o ./test_result.txt。
2、执行后检查当前目录是否生成 test_result.txt 文件。
3、若需 JSON 格式结构化输出以便脚本解析,替换为:iperf3 -c 192.168.1.100 -J > result.json。










