软件介绍:
netperf是惠普公司开源的一款针对网络性能的测试工具,主要基于TCP或UDP的传输。根据应用的不同,可以进行批量数据传输(bulk data transfer)模式和请求/应答(request/reponse)模式的性能测试。
netperf以Client/Server方式工作。Server端是netserver,用来侦听来自client端的连接,Client端是netperf,用来向Server发起网络测试。在Client与Server之间,首先建立一个控制连接,传递有关测试配置的信息,以及测试的结果;在控制连接建立并传递了测试配置信息以后,Client与Server之间会再建立一个测试连接,来回传递特殊的流量模式,用来测试网络的性能。
netperf测试结果反映了一个系统能够以多快的速度向另外一个系统发送数据,以及另外一个系统能够以多块的速度接收数据。
官方网址:
https://hewlettpackard.github.io/netperf/
https://github.com/HewlettPackard/netperf
下载最新版本:(2019-8-14)
curl -L https://codeload.github.com/HewlettPackard/netperf/zip/netperf-2.7.0 -o netperf.zip
cd netperf
./configure
make
cd src
找到可执行的二进制文件,即可以使用了。
网上参考的例子也很多,我就不重复写了:
https://www.cnblogs.com/jacklikedogs/p/4331891.html
https://www.ibm.com/developerworks/cn/linux/l-netperf/index.html (较为优秀的教程,推荐参考)
https://www.jianshu.com/p/42e0fa6bf79c
https://blog.csdn.net/u011198997/article/details/84342947
网络测试的五项指标:
收集网络性能数据的方式:
TCP网络性能测试:
由于tcp协议能够提供端到端的可靠的传输,被大量网络应用程序使用。但是建立可靠的连接需要付出一定的代价,如维护连接,控制数据有序传递等都会消耗一定的带宽。
netperf提供的三种tcp模式:
UDP网络性能测试:
udp不能保持可靠传输,所以使用UDP不能保证传输的可靠性,所以UDP应用需要自行跟踪每个发出的分组,并重发丢失的分组。
netperf 提供两种udp流量测试模式:
由于UDP传输的不可靠性,使用netperf时,要确保发送缓冲区不大于接收缓冲区,否则数据会丢失。
软件使用:
启动netserver 使用特定端口:
-D 表示以非deamon 进程运行
-4 表示测试的为ipv4网络;
-p 表示使用特定端口;
启用netperf 软件:
netperf 软件特定格式:netperf [global options] -- [test-specific options]
netperf命令行参数可以分为两大类:全局命令行参数和测试相关的局部参数,两者之间通过--分隔;
常用命令行参数:
-H host :指定远端运行netserver的server IP地址。
-l testlen:指定测试的时间长度(秒)
-t testname:指定进行的测试类型,包括TCP_STREAM,UDP_STREAM,TCP_RR,TCP_CRR,UDP_RR
资源来源自网络,如果您有什么问题,可以留言交流。更多内容,请关注 cnblogs.com/xuyaowen