iperf简述
iperf是一个网络性能测试工具,可以测试最大TCP和UDP带宽性能.
具有多种参数和udp特性,可以根据需要调整,可以报告带宽,延迟抖动和数据包丢失.
版本:分为linux版本和windows版本,linux更新快,版本最新.windows更新慢.windows版本的iperf叫做jperf或者xjperf.jperf是在iperf基础上开发了更好的UI界面和新功能.
iperf安装
linux下安装:
同级目录找到iperf-2.0.5.tar.gz,cp到宁的ubuntu,执行以下操作
- tar –xzvf iperf-2.0.5.tar.gz
- cd iperf-2.0.5
- ./configure
- make
- make install
赶赶单单
windows下安装
同级目录下找到jperf-2.0.0 for windows.rar,解压看操作步骤即可.
手机安装
百度搜索iperf,安装2.0.6即可,其他版本不适应现在的智能手机
iperf的主要功能如下:
tcp:
- 测量网络带宽; 报告mss/mtu值的大小和观测值;
- 支持tcp窗口值通过套接字缓冲;
- 当p线程或win32线程可用时,支持多线程.
- 客户端与服务端支持同时多重连接
udp:
- 客户端可以创建指定带宽的udp流;
- 测量丢包;
- 测量延迟;
- 支持多播;
- 当p线程可用时,支持多线程.
- 客户端与服务端支持同时多重连接(不支持windows).
iperf配置参数的说明:必看
例子讲解:
tcp_server端:
iperf -s -i 1 -f m -w 300k
udp_server端:
只是加上-u即可.其他基本不变
- -s :iperf服务器模式;
- -i 1: 设置每次打印的时间间隔,单位为s,所以这边设置为1s.
- -f m: 设置带宽单位, b表示bit/sec, B表示Bytes/sec, m表示Mbits/sec.
- -w 300k: 设置缓冲区大小,设置为300kbit.
例子讲解:
tcp_client端:
iperf -c 172.20.0.192 -i 1 -f m -w 300k
udp_client端只是加上-u即可.其他基本不变
- -c: iperf 客户端模式,后面对应服务器的ip地址.
不常用参数配置说明:
- -l, --len #[KM] 设置读写缓冲区的长度。TCP方式默认为8KB,UDP方式默认为1470字节。
- -m, --print_mss 输出TCP MSS值(通过TCP_MAXSEG支持)。通常情况MSS值一般比MTU值小40字节。
- -p, --port # 设置端口,与服务器端的监听端口一致。默认是5001端口,与ttcp的一样。.
- -B, --bindhost 绑定到主机的多个地址中的一个。
- -C, --compatibility 与低版本的Iperf使用时,可以使用兼容模式。
- -M, --mss #[KM} 通过TCP_MAXSEG选项尝试设置TCP最大信息段的值。MSS值的大小通常是TCP/ip头减去40字节。在以太网中,MSS值 为1460字节(MTU1500字节)。
- -N, --nodelay 设置TCP无延迟选项,禁用Nagle’s运算法则。通常情况此选项对于交互程序,例如telnet,是禁用的。
- -V (from v1.6 or higher) 绑定一个IPv6地址。服务端:$ iperf -s –V,客户端:$ iperf -c -V