网络性能测试工具 iperf

57 阅读2分钟

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

软件获取

  • 选择下载 64 位最新版:

  • 将软件解压缩到非中文路径下,共有两个文件:cygwin1.dll 和 iperf3.exe:

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

注意 iperf 在使用前要关闭防火墙

本地测试

  • 输入 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 指令即可查看 iperf 支持的全部指令:

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

更多内容