网络测试工具Netperf安装使用

Netperf是一种网络性能测试工具,主要针对据域TCP和UDP的传输。Netperf根据应用的不同可以进行不同模式的网络性能测试,既批量数据传输模式(bulk data transfer)请求/应答模式(request/response)模式。Netperf测试结果所反映的是一个系统能够以多快速度向另外一台系统发送数据,以及另外一个系统能够以多快速度接收数据。

Netperf工具以client/server方式工作。server端是netserver,用来侦听来自client端的连接。client端是netperf,用来行server发起网络测试。在client和server之间,首先建立一个控制连接,传输有关测试配置信息,以及测试结果;在控制连接建立并传输了测试配置信息以后,client与server之间回再建立一个测试连接,用来来回传递特殊的流量模式,以测试网络的性能。


1.下载

下载地址:http://www.netperf.org/netperf/ 

这个网站上有最新版本的下载连接和操作手册

例如下载的文件为:netperf-2.6.0.tar

2.解压

$ tar -xvf netperf-2.6.0.tar

3.安装

$ cd netperf-2.6.0

$ ./configure

$ make

$ make install


4.首先在服务器端运行

$ netserver


5.运行客户端

$ netperf -H host -l testlen -t  testname

命令参数:

-H host:  指定远端运行netserver的server ip地址

-l testlen: 指定测试的时间长度(秒)

-t testname: 指定进行的测试类型,包括TCP_STREAM, UDP_STREAM, TCP_RR,UDP_RR, TCP_CRR


6. 测试案例

(1)服务器端执行:(ip: 10.10.11.208)

[root@phpc1 netperf-2.6.0]# netserver

Starting netserver with host 'IN(6)ADDR_ANY' port '12865' and family AF_UNSPEC

[root@phpc1 netperf-2.6.0]# 


(2)客户端运行

[root@phpc2 netperf-2.6.0]# netperf -H 10.10.11.208 -l 60 -t TCP_STREAM

MIGRATED TCP STREAM TEST from 0.0.0.0 (0.0.0.0) port 0 AF_INET to 10.10.11.208 () port 0 AF_INET
Recv   Send    Send                          
Socket Socket  Message  Elapsed              
Size   Size    Size     Time     Throughput  
bytes  bytes   bytes    secs.    10^6bits/sec  

 87380  16384  16384    60.03     [root@phpc2 netperf-2.6.0]# netperf -H 10.10.11.208 -l 60 -t TCP_STREAM
MIGRATED TCP STREAM TEST from 0.0.0.0 (0.0.0.0) port 0 AF_INET to 10.10.11.208 () port 0 AF_INET
Recv   Send    Send                          
Socket Socket  Message  Elapsed              
Size   Size    Size     Time     Throughput  
bytes  bytes   bytes    secs.    10^6bits/sec  


 87380  16384  16384    60.03     937.04    

从netperf是输出结果中我们可以知道以下信息:

(a) 远端系统(即server)使用大小为87380字节的socket接受缓冲区

(b)本地系统(即client)使用大小为16384字节的socket发送缓冲区

(c)向远端系统发送的测试分组大小为16384字节

(d)测试经历的时间为60秒

(e)吞吐量的测试结果为  937.04 *10^6bits/sec

在缺省情况下,netperf向发送的测试分组大小为本地系统所使用的socket发送缓冲大小

TCP_STREAM方式下与测试相关的局部参数如下所示:

-s size:设置本地系统的socket发送与接收缓冲大小

-S size:  设置远端系统的socket发送与接收缓冲大小

-m size: 设置本地系统发送测试分组的大小

-M size:  设置远端系统接收测试分组的大小

-D: 对本地与远端系统的socket设置TCP_NODELAY选项I/O测试。

其他网络性能测试工具如 dbs, iperf, pathrate, nettest, netlogger, tcptrace, ntop. 


7.网络性能介绍

(1)TCP网络性能

由于TCP协议能够提供端到端的可靠传输,因此被大量的网络应用程序使用。但是,可靠性的建立是要付出代价的。TCP协议保证可靠性的措施,如建立并维护连接,控制数据有序的传输等都会消耗一定的网络带宽。

netperf可以模拟以下三种不同的tcp流量模式:

(a)单个TCP连接,批量(bulk)传输大量数据。

(b)单个TCP连接,client请求/server应答的方式

(c)多个TCP连接,每个链接中一对请求/应答方式


(2)UDP网络性能

UDP没有建立连接的负担,但是udp不能保证传输的可靠性,所以使用udp的应用需要自行跟踪美国发出的分组,并重发丢失的分组,netperf可以模拟两种udp流量模式:

(a) 从client到server的单向批量传输

(b)请求/应答方式

由于udp传输的不可靠性,在使用netperf是需要确保发送的缓冲区大小不大于接收缓冲区大小,否则数据丢失,netperf将给出错误的结果。因此,对于接收到分组的统计不一定准确,需要结合发送分组的统计综合得出结论。


转自:http://www.linuxidc.com/Linux/2013-07/87975.htm

http://baike.baidu.com/link?url=fedX67QE502spVmfibXECPTkYf6e4Hp06gS1CklPySsLd0qU3WV5qcNizqh4A85yKKtpyYpKJJBLQ7cJaqRq3q



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值