2

在生成 UDP 流量时,还可以iperf3根据每秒数据包报告测量值吗?

详细模式的典型输出如下:

Test Complete. Summary Results:
[ ID] Interval           Transfer     Bandwidth       Jitter    Lost/Total Datagrams
[  4]   0.00-10.00  sec  1.64 GBytes  1.41 Gbits/sec  0.010 ms  804029/1208925 (67%)  
[  4] Sent 1208925 datagrams
CPU Utilization: local/sender 99.6% (16.4%u/83.3%s), remote/receiver 0.1% (0.0%u/0.1%s)

iperf Done.

我看到可以在 中iperf2指定输入速率pps,但没有提到测量的接收速率(iperf3无论如何我都没有看到这个功能)

4

1 回答 1

3

我在 iperf3 中看不到 pps 选项,但是下面的链接详细介绍了一种获取所需内容的方法。

https://discuss.aerospike.com/t/benchmarking-throughput-and-packet-count-with-iperf3/2791

像往常一样运行 iperf3 测试。在服务器上创建一个包含以下内容的脚本:

#!/bin/bash

INTERVAL="1"  # update interval in seconds

if [ -z "$1" ]; then
        echo
        echo usage: $0 [network-interface]
        echo
        echo e.g. $0 eth0
        echo
        echo shows packets-per-second
        exit
fi

IF=$1

while true
do
        R1=`cat /sys/class/net/$1/statistics/rx_packets`
        T1=`cat /sys/class/net/$1/statistics/tx_packets`
        sleep $INTERVAL
        R2=`cat /sys/class/net/$1/statistics/rx_packets`
        T2=`cat /sys/class/net/$1/statistics/tx_packets`
        TXPPS=`expr $T2 - $T1`
        RXPPS=`expr $R2 - $R1`
        echo "TX $1: $TXPPS pkts/s RX $1: $RXPPS pkts/s"
 done

这将为您提供每秒数据包的输出。

于 2016-11-30T18:47:43.073 回答