本文分享自天翼云开发者社区《 云主机网络测试方法》,作者:高淑杰
创建两台相同配置 ECS, 其中一台作为server,另一台作为client
规格:s7.xlarge.2
镜像:centos 8.2
分别在两台ECS上安装netperf
tar zxvf netperf-2.7.0.tar.gz cd netperf ./configure make && make install netserver -h netperf -h
在server端执行如下脚本
pkill netperf
pkill netserver
c_cpu=` cat /proc/cpuinfo |grep processor |wc -l`
port=18000
count=$1
for j in `seq ${count:-$c_cpu}`; do
netserver -p $[$port+j] > /dev/null 2>&1 &
done
在client端执行如下脚本
pkill netperf
pkill netserver
c_cpu=` cat /proc/cpuinfo |grep processor |wc -l`
server=server_ip
port=18000
time=300
count=$1
for j in `seq ${count:-$c_cpu}`; do
netperf -H ${server} -l ${time:-300} -t TCP_STREAM -p $[$port+j] -- -D > /dev/null 2>&1 &
done
sever端通过执行sar -n DEV 1 获取 rxkB/s,转换为带宽(kbps)=字节数(rxkB/s)*8,即为bps

server端执行如下脚本
pkill netperf
pkill netserver
c_cpu=` cat /proc/cpuinfo |grep processor |wc -l`
port=18000
count=$1
for j in `seq ${count:-$c_cpu}`; do
netserver -p $[$port+j] > /dev/null 2>&1 &
done
client端执行如下脚本
pkill netperf
pkill netserver
c_cpu=` cat /proc/cpuinfo |grep processor |wc -l` server=server_ip
port=18000
count=$1
time=300
for j in `seq ${count:-$c_cpu}`; do
netperf -H $server -p $[$port+j] -l ${time:-300} -t UDP_STREAM -- -m 1 -D > /dev/null 2>&1 &
done
在server 执行sar -n DEV 1查看rxpck/s 列,即为pps

创建两台相同配置 ECS, 其中一台作为server,另一台作为client
规格:s7.xlarge.2
镜像:centos 8.2
下载 rpm包 iperf3-3.1.3-1.fc24.x86_64.rpm rpm -ivh iperf3-3.1.3-1.fc24.x86_64.rpm iperf3 -h
在serverd端执行如下脚本
pkill iperf3
c_cpu=` cat /proc/cpuinfo |grep processor |wc -l`
count=$1
port=17000
for j in `seq ${count:$c_cpu}`; do
iperf3 -s -p $[$port+j] > /dev/null 2>&1 &
done
在client 端执行如下脚本
pkill iperf3
c_cpu=` cat /proc/cpuinfo |grep processor |wc -l`
port=17000
server=10.3.128.18
count=$1
ths=`ethtool -l eth0 |grep Combined |tail -1 |awk '{print $2}'`
for j in `seq ${count:-$c_cpu}`; do
iperf3 -c $server -p $[$port+j] -t 60 -P $ths > /dev/null 2>&1 &
done
sever端通过sar -n DEV 1 获取 rxkB/s,转换为带宽(kbps)=字节数(rxkB/s)*8

在server端执行如下脚本
pkill iperf3c_cpu=` cat /proc/cpuinfo |grep processor |wc -l`count=$1port=17000for j in `seq ${count:$c_cpu}`; do
iperf3 -s -p $[$port+j] > /dev/null 2>&1 &done
在client 端执行如下脚本
pkill iperf3
c_cpu=` cat /proc/cpuinfo |grep processor |wc -l` port=17000server=server_ipcount=$1ths=`ethtool -l eth0 |grep Combined |tail -1 |awk '{print $2}'`for j in `seq ${count:-$c_cpu}`; do
iperf3 -u -c $server -p $[$port+j] -t 300 -P $ths -l 16 -b 2048M -A $[($j-1)%$c_cpu] > /dev/null 2>&1 &done
在server端执行sar -n DEV 1 查看rxpck/s 列 即为收包pps

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70014251/viewspace-3078603/ ,如需转载,请注明出处,否则将追究法律责任。