在生成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
中指定输入速率,但没有提及测量的接收速率(我在{{1}中看不到此功能无论如何)
答案 0 :(得分:2)
我在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
这将为您提供每秒数据包的输出。