You need to enable JavaScript to run this app.
导航

使用Netperf测试网络性能

最近更新时间2023.12.07 17:11:01

首次发布时间2022.10.09 14:31:22

本文介绍如何使用Netperf测试工具测试云服务器的网络性能。

Netperf介绍

Netperf 是一种网络性能的测量工具。根据应用的不同,可以进行不同模式的网络性能测试,即批量数据传输(bulkdata transfer)模式和请求/应答(request/reponse)模式。Netperf 测试结果所反映的是一个系统能够以多快的速度向另外一个系统发送数据,以及另外一个系统能够以多快的速度接收数据。更多信息请参考 Netperf 官网

操作步骤

说明

本文的测试结果仅作为参考,不代表云服务器的真实最优性能。

步骤一:准备环境

测试时,参考 购买云服务器,购买相同配置的2台Linux云服务器。云服务器A上安装netperf的netserver作为服务器端,云服务器B上安装netperf作为客户端。在不运行应用情况下,云服务器B压测云服务器A(不指定数据包大小),测试云服务器A的网络 TCP 收带宽性能。网络压力持续时间为5分钟,取云服务器A收到压力50秒后持续200秒的带宽平均值。
云服务器规划

主机名称内网IP地址角色
benchmark-1192.168.xx.xxServer
benchmark-2192.168.xx.xxClient

步骤二:安装Netperf

  1. 安装测试工具。
    1. 执行以下命令,在 两台 云服务器上分别安装 Netperf 工具。

      wget https://codeload.github.com/HewlettPackard/netperf/tar.gz/netperf-2.7.0
      tar -xzvf netperf-2.7.0
      yum install gcc sysstat -y
      cd ./netperf-netperf-2.7.0
      ./configure             
      make && make install
      
    2. 执行以下命令,验证安装状态。如果返回使用帮助即证明安装成功。
      netperf -p参数说明:

      参数说明
      -p端口号
      -H接收端 IP 地址
      -t发包协议类型
      -l测试时长
      -m数据包大小,带宽建议“1440”,收发包建议“1”

步骤三:测试网络性能

测试TCP bps
1. 在 server 端启动 netserver 进程,监听 12000 端口。
netserver -p 12000
2. 在 client 端执行以下命令。命令中 IP 地址为 client 端内网 IP 地址。
netperf -H 192.168.xx.xx -p 12000 -t TCP_STREAM -l 300 -- -m 1440 &
3. 在 server 端使用 sar 工具查看结果。
sar -n DEV 1 200
image.png
bps 结果为 rxkB/s 数值,单位换算:kB/s * 8/1000= Mbps
测试UDP pps
1. 在 server 端启动 netserver 进程,监听 12000 端口。
netserver -p 12000
2. 在 client 端执行以下命令。命令中 IP 地址为 client 端内网 IP 地址。
netperf -H 192.168.xx.xx -p 12000 -t UDP_STREAM -l 300 -- -m 1 &
3. 在 server 端使用 sar 工具查看结果。
sar -n DEV 1 200
image.png
pps 结果为 rxpck/s 数值。