netperf的安装、性能测试、参数、启动报错的坑、实例

netperf是一款用于衡量TCP和UDP网络性能的工具,支持TCP_STREAM、UDP_STREAM、TCP_RR、TCP_CRR和UDP_RR等模式。本文介绍了netperf的安装步骤、使用方法及常见问题解决方案,包括带宽、延迟和PPS测试的实例。

netperf介绍

netperf是一个基于client-server模式的网络测试工具,可以测量TCP和UDP传输的吞吐量、时延、CPU占用率等性能参数。

它可以测试以下几种模式的TCP核UDP网络性能:

TCP_STREAM:client端向server端发送批量TCP数据
UDP_STREAM:client端向server端发送批量UDP数据
TCP_RR和TCP_CRR:前者是在同一个连接中进行多次request和response请求(并发),后者(新建)是每次请求新建一个连接(HTTP)
UDP_RR:使用UDP进行request和response请求

安装

	1、wget -c "https://codeload.github.com/HewlettPackard/netperf/tar.gz/netperf-2.5.0" -O netperf-2.5.0.tar.gz
	2、tar zxvf netperf-2.5.0.tar.gz
	3、netperf-netperf-2.5.0 
	4、yum install gcc cc -y
	5、./configure
	6、make && make install
	7、检查是否安装成功(netperf -V)

使用方法

server端:

	netserver

client端:

	测试TCP_STREAM(TCP并发):
	netperf -t TCP_STREAM -H $netserver_ip -p $PORT -l $testtime -- -m $datagram_size
	测试TCP_RR(同一个IP并发):
	netperf -t TCP_RR -H $netserver_ip -l $testtime -p $PORT -- -r $req_size,$rsp_size
	测试UDP_STREAM:
	netperf -t UDP_STREAM -H $netserver_ip -l $testtime -- -m $datagram_size

常用参数

常用参数如下:

	  -t:设置netperf工作模式,包括TCP_STREAM、UDP_STREAM、TCP_CRR、TCP_RR、UDP_RR
	  -H:netserver的IP地址
	  -p:指定netserver的端口号
	  -l:设置测试时间
	  -m:批量传输时设置传输数据包大小
	  -r:请求应答模式测试时发送数据包大小和接收数据包大小
	  -O:自定义输出结果,可在其中添加时延、90值、99值、吞吐量、CPU使用率等信息

常见问题

netserver启动报错:

	如果netserver启动时端口被占用,则会报以下错误:
	Unable to start netserver with  'IN(6)ADDR_ANY' port '12865' and family AF_UNSPEC

解决方法:

	指定一个未使用的端口给netserver,如:
	netserver -p 49999

不同子网下的主机使用netperf时连接超时:

	netperf在设计时关闭了此功能,需要通过额外参数进行打开‘-R 1’,如:
	netperf -t TCP_STREAM -H $netserver_ip -P $PORT -l $testtime -- -R 1 -m $datagram_size

实例:

带宽测试:

	带宽测试:client向server发送32kb大包:
	netperf -t TCP_STREAM -H $server_ip_public -l $test_time -- -m 32k "MAX_LATENCY,MEAN_LATENCY,P90_LATENCY,P99_LATENCY,P999_LATENCY,P9999_LATENCY,STDDEV_LATENCY,THROUGHPUT,THROUGHPUT_UNITS"

延迟测试:

	长连接:
	netperf -t TCP_RR -H -H $server_ip_public -l $test_time -- -r $packet_size -O " MIN_LAETENCY, MAX_LATENCY, MEAN_LATENCY, P90_LATENCY, P99_LATENCY ,P999_LATENCY,P9999_LATENCY,STDDEV_LATENCY ,THROUGHPUT ,THROUGHPUT_UNITS "
	短连接:
	netperf -t TCP_CRR -H -H $server_ip_public -l $test_time -- -r $packet_size -O " MIN_LAETENCY, MAX_LATENCY, MEAN_LATENCY, P90_LATENCY, P99_LATENCY ,P999_LATENCY,P9999_LATENCY,STDDEV_LATENCY ,THROUGHPUT ,THROUGHPUT_UNITS"

PPS测试:

	client 端:
	netperf -H $server_ip_public -p $port -t UDP_STREAM -l 300 -- -m 1 -R 1
	server端:
	netserver -p $port
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

仙女肖消乐

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值