iperf3网络带宽测试
一、iperf3工具简介
iperf3是一款非常实用的开源工具,主要用于测量网络的各项性能指标,像网络吞吐量、延迟、抖动等。在网络性能测试领域,它应用十分广泛,支持TCP、UDP、SCTP等多种协议的性能测试。无论是网络优化工作,还是评估网络的整体状况,iperf3都能发挥重要作用。它具备客户端和服务器两种模式,通过在这两个模式下进行数据传输操作,进而精准衡量网络性能,是网络调优、带宽评估工作中的得力助手。在使用iperf3测试两个设备之间的传输速率时,需要在两端设备上都安装该软件,并且同时运行才能完成测试。
二、iperf3命令的相关参数说明
| 参数 | 说明 | 示例 |
|---|---|---|
| -s | 启动服务端模式。在服务器上运行此参数,让服务器处于等待客户端连接测试的状态 | iperf3 -s |
| -c | 启动客户端模式。客户端使用这个参数发起对服务端的连接测试请求 | iperf3 -c 192.168.1.100 |
| -p | 指定服务端口。默认情况下,iperf3服务端监听5201端口,可通过此参数自定义端口 | iperf3 -s -p 5202(服务端指定5202端口);iperf3 -c 192.168.1.100 -p 5202(客户端连接服务端的5202端口) |
| -t | 设置持续时间。单位为秒,控制测试的时长 | iperf3 -c 192.168.1.100 -t 60(客户端向服务端发起持续60秒的测试) |
| -i | 设置报告间隔时间,单位为秒。每隔设定时间就会输出一次测试结果 | iperf3 -c 192.168.1.100 -i 10(每10秒输出一次测试结果) |
| -P | 启用并发连接数。默认iperf3通过单个线程进行测试,此参数可增加并发连接线程数 | iperf3 -c 192.168.1.100 -P 4(客户端使用4个并发连接进行测试) |
| -u | 使用UDP协议进行测试。默认使用TCP协议,测试UDP网络性能时用此参数 | iperf3 -c 192.168.1.100 -u(客户端使用UDP协议向服务端测试) |
| -b | 指定目标带宽。可设定测试时期望达到的带宽值 | iperf3 -c 10.1.1.2 -b 10000M(客户端向10.1.1.2服务端发起测试,目标带宽为10000M) |
| -R | 反向测试。默认客户端向服务器发送数据,使用此参数后,服务器向客户端发送数据 | iperf3 -c 192.168.1.100 -R(客户端要求服务端反向发送数据进行测试) |
三、测试前准备步骤(以麒麟V10-SP3-2303服务器版本为例)
在开始测试之前,有两项重要的准备工作:关闭服务器防火墙或开通对应端口,以及在服务端和客户端均安装iperf3。
(一)检查源上是否有对应安装包
通过以下命令检查系统源中是否存在iperf3安装包:
yum list | grep iperf3
执行该命令后,如果源中有iperf3安装包,会显示类似下面的信息:

(二)通过yum进行安装
确认源中有安装包后,使用以下命令进行安装:
yum install iperf3

安装过程中,系统会提示安装的详细信息,比如要安装的包的架构、版本、大小,以及安装依赖等内容。安装完成后,会显示安装的包的数量等总结信息。
四、测试步骤
(一)服务端先运行iperf3
在服务端设备上,打开终端,输入以下命令启动服务端模式:
iperf3 -s
执行命令后,如果看到类似Server listening on 5201的结果,这就表明iperf3服务端已经成功启动,并且正在监听默认的5201端口,此时客户端就可以使用这个端口来进行连接测试了。
(二)客户端进行测试
在客户端设备的终端中,输入以下命令进行测试:
iperf3 -c 服务端IP
这里的“服务端IP”需要替换为实际的服务端设备的IP地址。例如,如果服务端的IP地址是10.10.10.12,那么命令就是iperf3 -c 10.10.10.12。
五、结果数据说明

测试完成后,会得到一些关键的测试结果数据:
- Interval:表示程序的运行时间,即本次测试持续了多长时间。
- Transfer:指传输的数据总量,直观反映了在测试期间传输了多少数据。
- Bitrate:测试出的带宽比特率,也就是速率,这个指标体现了网络在测试期间的实际传输速度,单位通常是Mbps(兆比特每秒)或Gbps(吉比特每秒) 。数值越高,说明网络的传输速度越快,带宽性能越好。