1、简介
Iperf是一个TCP/IP和UDP/IP的性能测量工具,能够提供网络吞吐率信息,以及震动、丢包率、最大段和最大传输单元大小等统计信息;从而能够帮助我们测试网络性能,定位网络瓶颈。
2、网站(下载)
http://fasterdata.es.net/performance-testing/network-troubleshooting-tools/iperf-and-iperf3/
http://downloads.es.net/pub/iperf/
(下载地址)
源码:iperf-3.0.11.tar.gz
3、移植和编译
ubuntu上面编译x86平台程序:
./configure
--prefix=install_dir
ubuntu上面编译dm8168平台程序:
./configure
--host=arm-none-linux-gnueabi --prefix=install_dir
make
make
install
4、测试运行
(1)、在dm8168开发板上面运行server程序:
iperf3 -s -i 1
(2)、在虚拟机上面运行(ip
修改为dm8168的ip):
iperf3 -c 192.168.1.234 -u -i 1 -b 1000m -t 1200
-l 1400
附:参数说明-s以server模式启动,eg:iperf
-s-c以client模式启动,host是server端地址,eg:iperf
-c 222.35.11.23
通用参数-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
iperf是client端向server端发送数据
server端显示的是接收速率,最好加i参数,进行速率跟踪
client显示的是发送速率
server显示接收速率
-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协议
测试htb的时候最好用udp,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单独进行双向传输测试
-b指定发送带宽,默认是1Mbit/s
在测试qos的时候,这是最有用的参数。
-t测试时间,默认10秒,eg:iperf
-c 222.35.11.23 -t 5
默认是10s
-F指定需要传输的文件-T指定ttl值