安装iperf及使用说明

一、iperf的安装

Linux下安装:
前提:Linux安装自带组件GCC编译器
unzip iperf-2.0.4.tar.zip
tar -xzvf iperf-2.0.4.tar.gz 
cd iperf-2.0.4
./configure
make && make install
iperf -s -D  //开启iperf服务端
对外开放服务器的5001端口

/etc/sysconfig/iptables 添加:

-A RH-Firewall-1-INPUT -m state --state NEW -m udp -p udp --dport 5001 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 5001 -j ACCEPT

windows下的安装:
安装JDK1.6(JRE)
解压jperf-2.0.0.zip后直接运行jperf.bat即可

iperf原理图

二、iperf的使用(这里为Linux下的使用)
TCP测试   可以测量最大TCP带宽,
服务器端  iperf -s -D 
客服端    iperf -c 服务器ip -p 5001 -i -t 36000 > 测试数据存放文件

UDP测试   测试UDP参数,可以报告带宽,延迟抖动和数据包丢失情况
服务器端 iperf -s -u  
客户端   iperf -c 服务器ip -u -b 100M -i 1 -t 36000 -d > 测试数据存放文件

如果要查看所有参数的使用方法,请用"man iperf"命令查看。
通用参数
-f [k|m|K|M] 分别表示以Kbits, Mbits, KBytes, MBytes显示报告,默认以Mbits为单位,eg:iperf -c 222.35.11.23 -f K
-i sec 以秒为单位显示报告间隔,eg:iperf -c 222.35.11.23 -i 2
-l 缓冲区大小,默认是8KB,eg:iperf -c 222.35.11.23 -l 16
-m 显示tcp最大mtu值
-o 将报告和错误信息输出到文件eg:iperf -c 222.35.11.23 -o c:iperflog.txt
-p 指定服务器端使用的端口或客户端所连接的端口eg:iperf -s -p 9999;iperf -c 222.35.11.23 -p 9999
-u 使用udp协议
-w 指定TCP窗口(数据报)大小,默认是8KB
-B 绑定一个主机地址或接口(当主机有多个地址或接口时使用该参数)
-C 兼容旧版本(当server端和client端版本不一样时使用)
-M 设定TCP数据包的最大mtu值
-N 设定TCP不延时
-V 传输ipv6数据包

server专用参数
-D 以服务方式运行ipserf,eg:iperf -s -D
-R 停止iperf服务,针对-D,eg:iperf -s -R

client端专用参数
-d 同时进行双向传输测试
-n 指定传输的字节数,eg:iperf -c 222.35.11.23 -n 100000
-r 单独进行双向传输测试
-t 测试时间,默认10秒,eg:iperf -c 222.35.11.23 -t 5
-F 指定需要传输的文件
-T 指定ttl值

注意事项:

1.发包测试需要分为UDP测试与TCP测试,其中服务端需要用-u命令去区分监听协议。
2.TCP协议测试不能计算出时延与丢包率,而且还不能指定发送带宽。

TCP:
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-5467.6 sec  50160 MBytes  77.0 Mbits/sec       #测试时间,传输总字节,速率   

UDP:
[ ID] Interval       Transfer     Bandwidth       Jitter   Lost/Total Datagrams
[  4]  0.0-5382.1 sec  6.17 GBytes  9.85 Mbits/sec  0.091 ms 66707/4576385 (1.5%)   #测试时间,传输总字节,速率,抖动,丢包率。



留言