Iperf 是一款专业的开源网络性能测试工具,它被广泛用于测量网络带宽、延迟、抖动和数据包丢失等网络性能指标,支持 TCP 和 UDP 等,可用于点对点或客户端-服务器等模式的网络测试。

软件获取

  • 选择下载 64 位最新版:

  • 将软件解压缩到非中文路径下:

  • 打开 CMD 或者 PowerShell,并切换到当前目录,执行 iperf3 --version 指令,能够输出版本号信息即可正常使用:

本地测试

  • 输入 iperf3 -s 指令,在本地创建一个服务端,默认端口号为 5201:

  • 再打开一个 CMD 或 PowerShell,执行 iperf3 -c 127.0.0.1指令,即可开始本地测试:

  • 测试不限带宽下的吞吐量、抖动和丢包率,设置使用 UDP 协议,并拿到服务端的测试报告,执行指令 iperf3 -c 127.0.0.1 -u -b 0 --get-server-output

其中,Interval 代表测试时长,Transfer 代表在 Interval 时长里,传输的数据量,Bandwidth 表示传输带宽,Jitter 表示网络抖动,Lost/Total Datagrams 表示丢失的数据包与总数据包

常用指令参数

  • 输入 iperf3 -h 指令查看支持的指令:

  • 一些常用的指令参数:
参数释义
-p指定要监听的端口或要连接的端口
-f指定带宽输出格式,Kbits, Mbits, KBytes, MBytes
-i指定每次报告之间的时间间隔,单位为秒
-V设置输出详细的报告
-J以 JSON 格式输出
-s运行在服务器模式
-c运行在客户端模式
-u设置采用 UDP 协议,默认采用 TCP 协议
-t指定数据传输的总时间,默认 10 秒
-l设置读写缓冲区的长度
-b设置目标带宽,0 为不限制
-R反转模式(服务端发送,客户端接收)
–get-server-output获取服务端的测试报告
–logfile filename将 log 输出到文件

使用示例

场景:两台电脑连接一台交换机,测试交换机。保证两台电脑能够互相 Ping 通。

  • 一台电脑做服务端,打开命令行,切换到 Iperf 所在目录,执行命令创建服务端:
iperf3 -s
  • 另一台电脑做客户端,使用 UDP 进行测试:
iperf3 -c 192.168.10.120 -u -b 0 --get-server-output --logfile log.txt -V -t 36000

192.168.10.120 为服务端 IP;-u 表示使用 UDP;-b 0 表示不限制带宽;–get-server-output 表示获取服务端的测试报告;–logfile log.txt 表示将日志输出到文件;-V 表示设置详细日志;-t 36000 设置测试时间 36000 秒(10 小时)

  • 当使用 TCP 测试,去掉 -u 选项即可

更多内容

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐