- 文档首页
云服务器
云服务器ECS
最佳实践
性能测试
测试网络性能
使用iPerf3测试网络性能
使用iPerf3测试网络性能
本文介绍如何使用iPerf3测试云服务器的网络性能。
iPerf3介绍
iPerf3是用于测试IP网络上最大可用带宽的工具,支持调节时序、缓冲区、协议(TCP,UDP,SCTP与IPv4和IPv6)有关的各种参数。对于每次测试,它都会详细的报告网络带宽,延迟抖动和数据包丢失率。
操作步骤
说明
本文的测试结果仅作为参考,不代表云服务器的真实最优性能。
步骤一:准备环境
参考 购买云服务器,准备被测试机器和辅助测试机器。本文测试环境如下表所示: 步骤二:安装iperf3
- 分别远程登录被测试机器和辅助测试机器,详细请参见 登录实例。
- 在被测试机器和辅助测试机器,执行以下命令安装iperf3。
步骤三:测试网络性能
测试收方向
- 被测试机器启动128个iperf3 server进程。
- 将128个端口均分给4台辅助测试机器,每个辅助机器启动32个iperf3 client进程。
- 在被测试机器(172.0.0.1)上创建脚本server.sh,并添加可执行权限。
- 执行vim server.sh命令,创建server.sh文件。
for ((i=0; i<proc_num; i++))
port=$((port_begin + i))
iperf3 -s -i 1 -p $port -A $(( $cpu % $1 )) -D > /dev/null &
- 执行chmod +x sever.sh指令,赋予server.sh文件执行权限。
- 在被测试机器(172.0.0.1)上运行./ sever.sh 128,启动128个iperf3 server进程。
- 在四台辅助测试机器上创建脚本client.sh,并添加可执行权限。
- 执行vim client.sh命令,创建client.sh文件。
for ((i=0; i<proc_num; i++))
port=$((port_begin + i))
iperf3 -c $dst_ip -u -l 16 -b 10000M -i 1 -t 3600 -p $port -A $(( $i % $2)) -P 1 > /dev/null 2>&1 &
说明
4台辅助测试机器的port_begin需要递增,如:
172.0.0.2使用12000
172.0.0.3使用12032
172.0.0.4使用12064
172.0.0.5使用12096
- 执行chmod +x client.sh指令,赋予client.sh文件执行权限。
- 在四台辅助测试机器分别执行./client.sh 172.0.0.1 32,为每台辅助测试机器启动32个iperf3 client进程。
- 在被测试机器端执行sar -n DEV 1,查看测试结果。
-
测试发方向
- 128个iperf3 server均分给4台辅助测试机器,每个辅助机器启动32个iperf3 server进程。
- 被测试机器(172.0.0.1)分别向每一台辅助测试机器(172.0.0.2~172.0.0.5)启动32个iperf3 client进程打流,总共128个iperf3 client进程。
- 在四台辅助测试机器上创建脚本server.sh,并添加可执行权限。
- 执行vim server.sh命令,创建server.sh文件。
for ((i=0; i<proc_num; i++))
port=$((port_begin + i))
iperf3 -s -i 1 -p $port -A $(( $cpu % $1 )) -D > /dev/null &
说明
4台辅助测试机器的port_begin需要递增,如:
172.0.0.2使用12000
172.0.0.3使用12032
172.0.0.4使用12064
172.0.0.5使用12096
- 执行chmod +x server.sh指令,赋予server.sh文件执行权限。
- 在辅助测试机器上运行./server.sh 32,启动32个iperf3 server进程。
- 在被测试机器上(172.0.0.1)创建脚本client.sh,并添加可执行权限。
- 执行vim client.sh命令,创建client.sh文件。
for ((i=0; i<proc_num; i++))
port=$((port_begin + i))
iperf3 -c $dst_ip -u -l 16 -b 10000M -i 1 -t 180 -p $port -A $(( $cpu % $4)) -P 1 > /dev/null 2>&1 &
- 执行chmod +x client.sh指令,赋予client.sh文件执行权限。
- 在被测试机器(172.0.0.1)执行以下命令,运行client.sh脚本文件。
./client.sh 172.0.0.2 12000 0 128
./client.sh 172.0.0.3 12032 32 128
./client.sh 172.0.0.4 12064 64 128
./client.sh 172.0.0.5 12096 96 128
- 在四台辅助测试机器分别执行sar -n DEV 1,查看测试结果。
- 四台辅助测试机器测试结果的总和即为被测试机器的测试结果: 3790019 + 3183582 + 3500913 + 3564047 约为14Mpps。
-
最近更新时间:2025.10.09 14:54:31