iperf3 测试100G网卡带宽性能
Posted xiaosheng124
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iperf3 测试100G网卡带宽性能相关的知识,希望对你有一定的参考价值。
iperf3
iperf3 作为iperf 系列网络测试工具新一代工具,开发团队重写代码使之有全新的实现方式,更少的代码量,更加小巧,但这也导致了其与iperf工具前后不兼容,一些命令执行具有差异化,而这些差异在大带宽网卡性能测试时则更加明显,现记录整理以供大家参考。
iperf 带宽性能测试
首先简单说一下iperf性能测试的命令,由于它是C/S 架构,测试时需要先执行Server端命令:
iperf -s -i 5 (-s 是开启server端 -i 5是每5s打印一次数据,可以不加)
之后再执行Client端命令:
iperf -c $ip -i 5 -t 100 -P 11 (-c 后加 服务端ip 进行连接 -t 测试时间 -P 数据流条数)
可以看到测试将默认启用5001端口,以11条数据流进行,SUM 值为99.0 Gbits/s。
iperf3 带宽性能测试
iperf3 虽然作为新的实现,但是其命令与iperf 具有很高的相似程度。我们可以将刚刚iperf测试命令直接拿来使用。
Server 端:iperf3 -s
Client 端: iperf3 -c $ip -i 5 -t 100 -P 11
但是这样测试出来的网卡带宽是远远达不到iperf工具测试出的结果,这是因为iperf3 是不支持多线程的,与iperf 通过-P 参数增加数据并行流开启多线程不同,iperf3 增加-P 参数也是单线程的,测试过程中所有并行流运行与同一个CPU核心,这将限制我们获得最大的带宽测试结果,为了解决这一问题,可以增加iperf3的进程,修改命令如下:
Server 端 :iperf3 -s -p 5201 & iperf3 -s -p 5202 & iperf3 -s -p 5203&
Client 端 : iperf3 -c $ip -i 5 -t 100 -P 11 -p 5201 &
iperf3 -c $ip -i 5 -t 100 -P 11 -p 5202 &
iperf3 -c $ip -i 5 -t 100 -P 11 -p 5203 &
增加-p (注意大小写)参数,在5201,5202,5203 三个端口分别开启一个测试进程,这样我们将三个进程得到的SUM 值累加将会得到最终的测试结果,为99.1Gbits/s,与iperf 工具测试的结果是基本一致的。
参考链接:iperf3 at 40Gbps and above 。
以上是关于iperf3 测试100G网卡带宽性能的主要内容,如果未能解决你的问题,请参考以下文章
iperf3 网络探测详解(androidiOSwindows)
iperf3 网络探测详解(androidiOSwindows)