小言_互联网的博客

CentOS7.6 万兆网卡性能测试.

524人阅读  评论(0)

Table of Contents

一. 物理机&软件:

二.网卡信息

三. 安装netperf

四. 开启多队列功能

五. 测试

5.1.性能标

5.2.netserver和netperf配置参数

5.2.netserver和netperf配置样例

六. 查看结果

七.总结

最终结果极限  万兆网卡:  网络吞吐量 大约为 9409.58 Mbit/s ≈  1176MB/s


本文章主要是为了测试万兆网卡的传输速率.

 

一. 物理机&软件:

1.两台装有万兆网卡的物理机, 中间用万兆交换机互联.

2.测试软件netperf 

 

 

二.网卡信息

Mellanox Technologies MT27710 Family [ConnectX-4 Lx]


  
  1. [root@master01 ~] # ethtool enp9s0f0
  2. Settings for enp9s0f 0:
  3. Supported ports: [ FIBRE ]
  4. Supported link modes: 1000baseKX/Full
  5. 10000baseKR/Full
  6. Supported pause frame use: Symmetric
  7. Supports auto-negotiation: Yes
  8. Supported FEC modes: None BaseR
  9. Advertised link modes: 1000baseKX/Full
  10. 10000baseKR/Full
  11. Advertised pause frame use: Symmetric
  12. Advertised auto-negotiation: Yes
  13. Advertised FEC modes: None
  14. Speed: 10000Mb/ s
  15. Duplex: Full
  16. Port: FIBRE
  17. PHYAD: 0
  18. Transceiver: internal
  19. Auto-negotiation: on
  20. Supports Wake-on: d
  21. Wake-on: d
  22. Current message level: 0x00000004 ( 4)
  23. link
  24. Link detected: yes

三. 安装netperf

 

在测试机和陪练机上安装Netperf。

执行如下命令,下载Netperf。

wget -c "https://codeload.github.com/HewlettPackard/netperf/tar.gz/netperf-2.5.0" -O netperf-2.5.0.tar.gz

或者

百度网盘 链接: https://pan.baidu.com/s/1yDLYII0EmGHdl0Sx4rtPxA  密码: ttwr

 


依次执行如下命令,安装Netperf。

tar -zxvf netperf-2.5.0.tar.gz
cd netperf-netperf-2.5.0
./configure && make && make install && cd ..
执行netperf -h和netserver -h命令,确认安装成功。

 

四. 开启多队列功能

在测试机内部依次执行如下命令,开启多队列功能。

注:以开启 enp9s0f0 网卡为例。

ethtool -L enp9s0f0 combined 4
echo "ff" > /sys/class/net/enp9s0f0/queues/rx-0/rps_cpus
echo "ff" > /sys/class/net/enp9s0f0/queues/rx-1/rps_cpus
echo "ff" > /sys/class/net/enp9s0f0/queues/rx-2/rps_cpus
echo "ff" > /sys/class/net/enp9s0f0/queues/rx-3/rps_cpus

 

五. 测试

5.1.性能标

(1)bps是指比特率

bps是线路单位,表示bit(比特)/second(秒)。在计算机网络或者是网络运营商中,一般,宽带速率的单位用bps(或b/s)表示;bps表示比特每秒即表示每秒钟传输多少位信息。

(2)pps是指网络吞吐率

pps是包转发率单位,表示包/秒,交换机每秒可以转发多少百万个数据包(Mpps),即交换机能同时转发的数据包的e799bee5baa6e79fa5e98193e59b9ee7ad9431333431353963数量。

 

5.2.netserver和netperf配置参数

Netperf安装完成后会生成2个工具:netserver和netperf。

工具名称 工具说明 主要参数 参数说明
netserver 接收端工具(server 端) -p 端口号
netperf 发送端工具(client 端) -H 指定 ECS 实例的 IP 地址。
-p 指定 ECS 实例的端口。
-l 指定运行时间。 单位 秒
-t 指定发包协议类型:TCP_STREAM 或 UDP_STREAM。建议使用 UDP_STREAM。
-m 指定数据包大小。
  • 测试 PPS 时,建议该值为 1。
  • 测试 BPS(bit per second)时,建议该值为 1400。

 

5.2.netserver和netperf配置样例

测试机   内启动netserver进程  [ 开放接收端口 :11256 ]  可以开启多个端口

netserver -p 11256

 

陪练机  内启动netperf进程,分别指定到测试机的不同netserver端口。

 

PPS:

netperf -H master01  -p 11256 -t UDP_STREAM -l 300 -- -m 1

 

BPS:

netperf -H master01  -p 11256 -t UDP_STREAM -l 300 -- -m 1400

 

 

六. 查看结果

 


  
  1. [ root@slave01] # netperf -H 192.168.xxx.xxx -p 11256 -t UDP_STREAM -l 10 -- -m 1 #PPS
  2. MIGRATED UDP STREAM TEST from 0.0 .0 .0 ( 0.0 .0 .0) port 0 AF_INET to 192.168.xxx.xxx ( 192.168.xxx.xxx) port 0 AF_INET
  3. Socket Message Elapsed Messages
  4. Size Size Time Okay Errors Throughput
  5. bytes bytes secs # # 10^6bits/sec
  6. 262144 1 10.00 6124765 0 4.90
  7. 262144 10.00 6103439 4.88
  8. [ root@slave01 ] # netperf -H 192.168.xxx.xxx -p 11256 -t UDP_STREAM -l 10 -- -m 1400 # BBS
  9. MIGRATED UDP STREAM TEST from 0.0 .0 .0 ( 0.0 .0 .0) port 0 AF_INET to 192.168.xxx.xxx ( 192.168.xxx.xxx) port 0 AF_INET
  10. Socket Message Elapsed Messages
  11. Size Size Time Okay Errors Throughput
  12. bytes bytes secs # # 10^6bits/sec
  13. 262144 1400 10.00 5800083 0 6496.03
  14. 262144 10.00 4778491 5351.86
  15. [ root@slave01 ] #
  16. [ root@slave01 ] # netperf -H 192.168.xxx.xxx -p 11256 -t UDP_STREAM -l 10
  17. MIGRATED UDP STREAM TEST from 0.0 .0 .0 ( 0.0 .0 .0) port 0 AF_INET to 192.168.xxx.xxx ( 192.168.xxx.xxx) port 0 AF_INET
  18. Socket Message Elapsed Messages
  19. Size Size Time Okay Errors Throughput
  20. bytes bytes secs # # 10^6bits/sec
  21. 262144 65507 10.00 181666 0 9520.16
  22. 262144 10.00 174660 9153.01

 

 

根据这个结果进行解释


   
  1. Socket Message Elapsed Messages
  2. Size Size Time Okay Errors Throughput
  3. bytes bytes secs # # 10^6bits/sec
  4. 262144 65507 10.00 181666 0 9520.16
  5. 262144 10.00 174660 9153.01

 

  • 输出结果中各字段含义解释如下表所示。

    字段数据 含义
    262144 缓冲区大小
    65507 数据包大小(Byte)
    10.00 测试时间(s)
    181666 数据包成功数
    0 失败数
    9520.16 网络吞吐量(Mbit/s)

 

 

 

  • 通常我们建议在server端执行sar命令来统计实际收到的包并作为实际结果,具体命令为: sar -n DEV 1 320
    
         
    1. [root@master01 ] # sar -n DEV 1 320
    2. Linux 3.10. 0- 957.27. 2.el7.x86_64 (master01) 20200422日 _x86_64 _ ( 12 CPU)
    3. 154311秒 IFACE rxpck/ s txpck/ s rxkB/ s txkB/ s rxcmp/ s txcmp/ s rxmcst/ s
    4. 154312秒 lo 0. 00 0. 00 0. 00 0. 00 0. 00 0. 00 0. 00
    5. 154312秒 enp7s 0 78.38 0. 00 5.13 0. 00 0. 00 0. 00 0. 00
    6. 154312秒 enp9s0f 0 85.14 6.76 5.68 1.28 0. 00 0. 00 158.11
    7. 154312秒 enp9s0f1 0. 00 0. 00 0. 00 0. 00 0. 00 0. 00 0. 00
    8. 平均时间: IFACE rxpck/ s txpck/ s rxkB/ s txkB/ s rxcmp/ s txcmp/ s rxmcst/ s
    9. 平均时间: lo 2.91 2.91 0. 36 0. 36 0. 00 0. 00 0. 00
    10. 平均时间: enp7s 0 113.01 0. 00 7.78 0. 00 0. 00 0. 00 6.10
    11. 平均时间: enp9s0f 0 316102.14 4.04 459766.25 0. 94 0. 00 0. 00 119.84
    12. 平均时间: enp9s0f1 0. 00 0. 00 0. 00 0. 00 0. 00 0. 00 0. 00

     

七.总结

最终结果极限  万兆网卡:  网络吞吐量 大约为 9409.58 Mbit/s ≈  1176MB/s


  
  1. [ root@slave01 ] # netperf -H 192.168.xxx.xxx -p 11256 -t UDP_STREAM -l 10
  2. MIGRATED UDP STREAM TEST from 0.0 .0 .0 ( 0.0 .0 .0) port 0 AF_INET to 192.168.xxx.xxx ( 192.168.x 'x'x .114) port 0 AF_INET
  3. Socket Message Elapsed Messages
  4. Size Size Time Okay Errors Throughput
  5. bytes bytes secs # # 10^6bits/sec
  6. 262144 65507 10.00 180995 0 9485.04
  7. 262144 10.00 174511 9145.25
  8. [ root@slave01 ] # netperf -H 192.168.xxx.x'x'x -p 11256 -t TCP_STREAM -l 10
  9. MIGRATED TCP STREAM TEST from 0.0 .0 .0 ( 0.0 .0 .0) port 0 AF_INET to 192.168.xxx.xxx ( 192.168.xxx.xxx) port 0 AF_INET
  10. Recv Send Send
  11. Socket Socket Message Elapsed
  12. Size Size Size Time Throughput
  13. bytes bytes bytes secs. 10^ 6bits/sec
  14. 4194304 16384 16384 10.00 9409.58

 

 

 

 

 

 

 

 


转载:https://blog.csdn.net/zhanglong_4444/article/details/105682821
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场