netperf 网络测试工具
软件介绍:
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
网络测试的五项指标:
- 可用性(availability):可使用ping 命令测试网络是否通畅;
- 响应时间(response time):ping 命令echo request/reply 一次往返所花费的时间;
- 网络利用率(network utilization):指的是网络使用时间和空闲时间的比例;
- 网络吞吐量(network throughput):在网络中两个节点之间,提供给网络应用的剩余带宽,测试网络吞吐的时候,需要在一天的不同时刻来进行测量;
- 网络带宽容量(network bandwidth capacity):与吞吐不同,网络带宽容量指的是在网络两个节点之间的最大可用带宽。该值是由网络设备本身的能力决定的。
收集网络性能数据的方式:
- 使用snmp协议直接到网络设备中获取;
- 侦听相关的网络性能数据,典型的工具为tcpdump;
- 自行产生相应的测试数据,使用netperf工具等;
TCP网络性能测试:
由于tcp协议能够提供端到端的可靠的传输,被大量网络应用程序使用。但是建立可靠的连接需要付出一定的代价,如维护连接,控制数据有序传递等都会消耗一定的带宽。
netperf提供的三种tcp模式:
- 单个tcp连接,批量传输大量数据;
- 单个tcp连接,client请求/server 应答模式;
- 多个tcp连接,每个连接中一对请求应答 transaction 方式;
UDP网络性能测试:
udp不能保持可靠传输,所以使用UDP不能保证传输的可靠性,所以UDP应用需要自行跟踪每个发出的分组,并重发丢失的分组。
netperf 提供两种udp流量测试模式:
- 从client 到 server 的单向批量传输;
- 请求应答模式
由于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
netperf 网络测试工具的更多相关文章
- TCP/UDP网络性能测试工具 - Netperf (zz) ..网络测试工具
在构建或管理一个网络系统时,我们更多的是关心网络的可用性,即网络是否连通,而对于其整体的性能往往考虑不多. 除了netperf以外. 还有很多其它的网络性能测试工具. 如db, ...
- 网络测试工具netperf(转)
http://pangyi.github.io/blog/20141210/wang-luo-ce-shi-gong-ju-netperf/ 网络测试工具netperf 2014年12月10日 一般我 ...
- 网络测试工具--Iperf、Netperf 、MZ
网络性能测量的五项指标 可用性(availability) 响应时间(response time) 网络利用率(network utilization) 网络吞吐量(network throughpu ...
- IPerf——网络测试工具介绍与源码解析(4)
上篇随笔讲到了TCP模式下的客户端,接下来会讲一下TCP模式普通场景下的服务端,说普通场景则是暂时不考虑双向测试的可能,毕竟了解一项东西还是先从简单的情况下入手会快些. 对于服务端,并不是我们认为的直 ...
- 网络测试工具netperf
Netperf是一种网络性能的测量工具,主要针对基于TCP或UDP的传输.Netperf根据应用的不同,可以进行不同模式的网络性能测试,即批量数据传输(bulk data transfer)模式和请求 ...
- QNET,一款给力的APP弱网络测试工具
目前在测试移动设备上进行弱网络专项测试的方案主要有两种: 通过Android设备连接到PC上进行弱网络测试,比如Fiddler,Charles,NET-Simulator等.基本思路是在PC上装一个F ...
- 复刻smartbits的国产网络测试工具minismb-使用burst模式
复刻smartbits的国产网络性能测试工具minismb,是一款专门用于测试智能路由器,网络交换机的性能和稳定性的软硬件相结合的工具.可以通过此工具测试任何ip网络设备的端口吞吐率,带宽,并发连接数 ...
- 复刻smartbits的国产网络测试工具minismb-如何添加数据流
复刻smartbits的国产网络性能测试工具minismb,是一款专门用于测试智能路由器,网络交换机的性能和稳定性的软硬件相结合的工具.可以通过此工具测试任何ip网络设备的端口吞吐率,带宽,并发连接数 ...
- 复刻smartbits的国产网络测试工具minismb-如何测试路由器
复刻smartbits的国产网络性能测试工具minismb,是一款专门用于测试智能路由器,网络交换机的性能和稳定性的软硬件相结合的工具.可以通过此工具测试任何ip网络设备的端口吞吐率,带宽,并发连接数 ...
随机推荐
- RBAC-权限管理设计
1.RBAC(Role-Based Access Control)——基于角色的访问控制.简单来说每个角色有不同的权限,通过对用户赋予不同角色来赋予其对应权限. 2.RBAC0:最基本的用户角色多对多 ...
- Key Management: Hardcoded Encryption key 密钥管理:硬编码加密密钥
- Redux学习及应用
Redux学习及应用 一:Redux的来源? Redux 是 JavaScript 状态容器,提供可预测化的状态管理.Redux是由 Flux 演变而来,但受 Elm 的启发,避开了 Flux 的复杂 ...
- c++ 拷贝构造函数(重点在内含指针的浅拷贝和深拷贝)
今天同事问了一个关于拷贝构造函数的问题,类中包含指针的情况,今天就来说说c++的拷贝构造函数. c++的拷贝构造函数是构造函数的一种,是对类对象的初始化,拷贝构造函数只有一个参数就是本类的引用. 注意 ...
- windows下安装了2个python,如何下载模块到不同的python中
修改python名称即可,修改Scrpit下的pip名称即可,用不同的名称打开就行 https://www.cnblogs.com/legend-123/p/11195706.html
- centos7 配置阿里镜像
1. 备份原来的yum源 cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak 2.设置aliyun的y ...
- vue 路由对象
路由对象在使用了 vue-router 的应用中,路由对象会被注入每个组件中,赋值为 this.$route ,并且当路由切换时,路由对象会被更新. so , 路由对象暴露了以下属性: 1.$rout ...
- 【oracle】ORA-00947: 没有足够的值
insert 时 对应NOT NULL 的列 必须有值
- [译]Vulkan教程(32)生成mipmap
[译]Vulkan教程(32)生成mipmap Generating Mipmaps 生成mipmap Introduction 入门 Our program can now load and ren ...
- [译]Vulkan教程(16)图形管道基础之总结
[译]Vulkan教程(16)图形管道基础之总结 Conclusion 总结 We can now combine all of the structures and objects from the ...