Linux之网络性能测试工具netperf实践

这篇具有很好参考价值的文章主要介绍了Linux之网络性能测试工具netperf实践。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、netperf简介

  Netperf是一种网络性能的测量工具,主要针对基于TCP或UDP的传输。Netperf根据应用的不同,可以进行不同模式的网络性能测试,即批量数据传输(bulk data transfer)模式和请求/应答(request/reponse)模式。Netperf测试结果所反映的是一个系统能够以多快的速度向另外一个系统发送数据,以及另外一个系统能够以多快的速度接收数据。
  Netperf工具以client/server方式工作。server端是netserver,用来侦听来自client端的连接,client端是netperf,用来向server发起网络测试。在client与server之间,首先建立一个控制连接,传递有关测试配置的信息,以及测试的结果;在控制连接建立并传递了测试配置信息以后,client与server之间会再建立一个测试连接,用来来回传递着特殊的流量模式,以测试网络的性能。

二、安装步骤

1、安装gcc编译环境

[root@s142 ~]# yum install -y gcc*

2、下载netperf软件包

[root@s142 software]# wget https://github.com/HewlettPackard/netperf/archive/refs/tags/netperf-2.7.0.zip

3、解压软件包

[root@s142 software]# unzip netperf-2.7.0.zip

4、预编译

[root@s142 software]# cd netperf-netperf-2.7.0/
[root@s142 netperf-netperf-2.7.0]# ./configure

5、编译

[root@s142 netperf-netperf-2.7.0]# make
make all-recursive

make[2]: Leaving directory `/opt/software/netperf-netperf-2.7.0’
make[1]: Leaving directory `/opt/software/netperf-netperf-2.7.0’

5、安装

[root@s142 netperf-netperf-2.7.0]# make install

6、查看命令版本

[root@s142 netperf-netperf-2.7.0]# netserver -V
Netperf version 2.7.0
[root@s142 netperf-netperf-2.7.0]# netperf -V
Netperf version 2.7.0

7、获取命令帮助

  实际上如果不执行编译安装命令,也可以在src目录下找到命令,并直接执行命令。当然我们执行了编译安装就不需要切换到编译目录下执行命令了,可以在任意目录下执行这两个命令。

[root@s142 src]# ./netserver --help
./netserver: invalid option – ‘-’

Usage: netserver [options]

Options:
-h Display this text
-D Do not daemonize
-d Increase debugging output
-f Do not spawn chilren for each test, run serially
-L name,family Use name to pick listen address and family for family
-N No debugging output, even if netperf asks
-p portnum Listen for connect requests on portnum.
-4 Do IPv4
-6 Do IPv6
-v verbosity Specify the verbosity level
-V Display version information and exit
-Z passphrase Expect passphrase as the first thing received
网卡测试工具,linux环境软件安装,运维工具研究,测试工具,网络性能测试,网络连接性能测试,netperf,netserver

三、netperf网络性能测试实践

1、测试规划

  netperf工具工作模式为server/client模式,所以我们需要两台测试服务器,都安装netperf工具,然后一端模式服务端,一端模拟客户端。
网卡测试工具,linux环境软件安装,运维工具研究,测试工具,网络性能测试,网络连接性能测试,netperf,netserver

2、批量数据(TCP流)传输测试

  • 在s152服务器上运行服务端
    Netperf缺省情况下进行TCP批量传输,即-t TCP_STREAM。测试过程中,netperf向netserver发送批量的TCP数据分组,以确定数据传输过程中的吞吐量。

[root@s152 netperf-netperf-2.7.0]# netserver -p 8888
Starting netserver with host ‘IN(6)ADDR_ANY’ port ‘8888’ and family AF_UNSPEC
[root@s152 netperf-netperf-2.7.0]# netstat -tnpl |grep 8888
tcp6 0 0 :::8888 ::😗 LISTEN 9043/netserver

  • 在s142客户端上测试连接
    通过测试结果可以看到使用16384字节大小socket发送缓存,接受缓存大小为87380字节,历时10.26秒,带宽吞吐量为93.96Mbit/s。

[root@s142 netperf-netperf-2.7.0]# netperf -H 192.168.0.152 -p 8888
网卡测试工具,linux环境软件安装,运维工具研究,测试工具,网络性能测试,网络连接性能测试,netperf,netserver

3、批量数据(UDP流)传输测试

  • 在s152服务器上运行服务端
    Netperf测试UDP数据包无需在服务器端指定参数,所以不用重启服务器端,只需要在客户端加上-t UDP_STREAM

[root@s152 netperf-netperf-2.7.0]# netserver -p 8888

  • 在s142客户端上测试连接
    UDP测试结果有两行,第一行显示的是客户端的发送统计,这里的吞吐量表示Netperf向本地socket发送分组的能力。第二行显示的是服务器端接收的情况,由于UDP协议的不可靠性,远端系统的接收吞吐量要远远小于发送出去的吞吐量。

[root@s142 netperf-netperf-2.7.0]# netperf -t UDP_STREAM -H 192.168.0.152 -p 8888 – -m 1024 -M 1024 -s 16384 -S 16384网卡测试工具,linux环境软件安装,运维工具研究,测试工具,网络性能测试,网络连接性能测试,netperf,netserver

4、TCP长连接性能测试

  • 测试请求/应答(request/response)网络流量的性能,TCP_RR模式
    TCP_RR方式的测试对象是多次TCP request和response的交易过程,但是它们发生在同一个TCP连接中,这种模式常常出现在数据库应用中。数据库的client程序与server程序建立一个TCP连接以后,就在这个连接中传送数据库的多次交易过程。Netperf输出的结果也是由两行组成。第一行显示本地系统的情况,第二行显示的是远端系统的信息。

[root@s142 netperf-netperf-2.7.0]# netperf -t TCP_RR -H 192.168.0.152 -p 8888
[root@s142 netperf-netperf-2.7.0]# netperf -t TCP_RR -H 192.168.0.152 -p 8888 – -r 500,500
网卡测试工具,linux环境软件安装,运维工具研究,测试工具,网络性能测试,网络连接性能测试,netperf,netserver

5、TCP短连接性能测试

  • 测试请求/应答(request/response)网络流量的性能,TCP_CRR模式
    与TCP_RR不同,TCP_CRR为每次交易建立一个新的TCP连接。最典型的应用就是HTTP,每次HTTP交易是在一条单独的TCP连接中进行的。因此,由于需要不停地建立新的TCP连接,并且在交易结束后拆除TCP连接,交易率一定会受到很大的影响。

[root@s142 netperf-netperf-2.7.0]# netperf -t TCP_CRR -H 192.168.0.152 -p 8888
[root@s142 netperf-netperf-2.7.0]# netperf -t TCP_CRR -H 192.168.0.152 -p 8888 – -r 500,500
网卡测试工具,linux环境软件安装,运维工具研究,测试工具,网络性能测试,网络连接性能测试,netperf,netserver

四、常用参数说明

1、netserver命令常用参数说明

参数 参数说明
-h 获取命令帮助
-V 查看命令版本
-p 指定监听端口
-4 指定IPv4协议
-6 指定IPv6协议
-D 不在后台运行,默认后台运行
-d 增加debug输出
-L 使用主机名监听
-N 不输出debug信息

2、netperf命令常用参数说明

  netperf命令格式为:netperf [global options] – [test specific options]
如下列表中的-m,-r这些参数都是测试专有参数,需要写在–后。文章来源地址https://www.toymoban.com/news/detail-789430.html

参数 参数说明
-t testname 指定进行的测试类型(TCP_STREAM,UDP_STREAM,TCP_RR,TCP_CRR,UDP_RR),可以通过man netperf命令查看有哪些类型
-H ip 指定远端运行netserver的server IP地址
-p port 指定远端运行netserver的port端口
-L testlen 指定测试时间,默认10s,单位秒
-V 查看命令版本
-h 获取命令帮助
-s size 设置本地系统的socket发送与接收缓冲大小
-S size 设置远端系统的socket发送与接收缓冲大小
-m size 设置本地系统发送测试分组的大小
-M size 设置远端系统接收测试分组的大小
-r req,resp 设置request和reponse分组的大小
-D 对本地与远端系统的socket设置TCP_NODELAY选项

到了这里,关于Linux之网络性能测试工具netperf实践的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 网络性能测试工具 iperf3

    iperf3软件下载地址:https://liyouchen.lanzoul.com/iZmaI0otb1de 下载到电脑到,并解压后,会得到两个文件:cygwin1.dll 和 iperf3.exe,这两个文件拷贝到 c:windows 目录下 最后打开 cmd,执行 iperf3 --version ,若安装成功,会打印出版本信息 最后要在使用前,关闭防火墙 iperf3 有客户端 和 服务

    2024年02月12日
    浏览(85)
  • 网络性能测试工具:iperf3

    iperf3 是一个网络性能测试工具(iperf3下载地址)。iperf可以测试TCP和UDP带宽质量。iperf可以测量最大TCP带宽,具有多种参数和UDP特性。iperf可以报告带宽,延迟抖动和数据包丢失。 iperf3是一种用于主动测量IP网络上可实现的 最大带宽 的工具。 它支持调整与时序、缓冲区和协议(

    2024年02月16日
    浏览(50)
  • iperf3网络带宽性能测试工具 局域网网络最大带宽高阶教程

            iperf3 是一个 TCP, UDP, 和 SCTP (传输层协议)网络带宽测量工具,iperf 是一个用于主动测量 IP 网络上最大可用带宽的工具. 它支持与时间、协议和缓冲区相关的各种参数的调优. 对于每个测试,它报告测量的吞吐量/比特率(带宽), 丢包率和其他参数, iperf的版本不向下兼

    2024年02月20日
    浏览(43)
  • Linux性能测试工具 stress,stress-ng,sysbench,fio以及检测dstat

    通过man帮助,可以看到官方对dstat的定义为:多功能系统资源统计生成工具( versatile tool for generating system resource statistics)。在获取的信息上有点类似于top、free、iostat、vmstat等多个工具的合集,官方解释为vmstat、iostat、ifstat等工具的多功能替代品,且添加了许多额外的功能(

    2024年02月05日
    浏览(45)
  • 【工具/性能】开源的性能测试工具sysbench

    sysbensh是一个非常通用的benchmark工具,其提供多种方面的测试: cpu :提供一个简单的cpu benchmark测试 fileio:文件磁盘io的benchmark测试 memory:内存访问 benchmark测试 thread:线程调度 benchmark测试 mutex:POSIX的锁 benchmark测试 OLTP:数据库 benchmark测试,支持MySQL,Pgsql 默认支持MySQL,如

    2024年02月12日
    浏览(47)
  • H5性能测试以及H5性能测试工具

    背景由于公司最近项目有一个H5测试项目,功能测试不用多说,但是H5性能测试是一个大难题,于是研究下H5性能测试,下面总结下,希望能帮助自己回顾项目也希望能帮到测友。 H5性能测试的常用指标: 白屏时间:用户首次看到网页内容的时间,即第一次渲染流程完成的时间

    2024年02月14日
    浏览(60)
  • 前端性能测试必备测试工具

    我们在使用网站过程中,经常会遇到慢的问题,为了找到原因,一般需要借助工具进行检测,通过工具,可以检测出前端站点加载资源的相关详细情况。 今天,就给大家介绍几款前端性能测试分析工具,结合性能测试工具,实现通过量化的方式测试网站中诸如首字节加载时间

    2024年02月05日
    浏览(51)
  • 功能测试(八)—— APP之专项测试、性能测试、性能测试工具SoloPi

    目录 APP测试要点 目标 一、APP专项测试 1.1 兼容性 1.2 安装 1.3 卸载 1.4 升级 1.5 干扰测试(交叉事件测试) 1.6 Push推送 1.7 用户体验 二、 性能测试工具 2.1 APP性能测试工具介绍 —— SoloPi简介 2.2 APP性能测试工具 —— SoloPi使用 三、APP性能测试 3.1 CPU 3.2 内存 3.3 流量 3.4 电

    2024年02月03日
    浏览(54)
  • jmeter 性能测试工具的使用(Web性能测试)

    1、下载 该软件不用安装,直接解压打开即可使用。 2、使用 这里就在win下进行,图形界面较为方便 在目录apache-jmeter-2.13bin 下可以见到一个jmeter.bat文件,双击此文件,即看到JMeter控制面板。主界面如下: 3、创建线程组 测试计划--右键——》添加——》hreads——》线程组 设

    2024年02月10日
    浏览(65)
  • 扒开源安卓性能测试工具moblieperf源码——开发属于你自己的性能稳定性测试工具

    moblieperf由阿里巴巴开源的Android性能测试工具 下载:官方源码地址 mobileperf github 使用: 使用pycharm打开下载的项目 使用只需要修改配置文件 config.conf 即可 运行采集:a.mac、linux 在mobileperf工具根目录下执行sh run.sh ; b.windows 双击run.bat 配置图:(简单使用只需要修改包名和设

    2024年02月19日
    浏览(56)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包