linux iperf测试带宽,使用iperf测试峰值带宽
在IDC机房工作,难免会遇到一些纠结带宽的客户,测试带宽的工具方法有很多种,这里就简单说一下使用iperf工具来测试带宽的方法。
iperf 是一个网络性能测试工具。Iperf可以测试最大TCP和UDP带宽性能。Iperf具有多种参数和UDP特性,可以根据需要调整。Iperf可以报告带宽,延迟抖动和数据包丢失。
iperf 分为两种版本,unix/linux版和windows版,unix/linux版更新比较快,版本最新。windows版更新慢。windows版的iperf叫jperf,或者xjperf。jperf是在iperf基础上开发了更好的UI和新的功能。
这里采用Windows系统下jperf测试下带宽,Linux下同理,下载jperf-2.0.2
先用最简单默认的方法测试一次,服务端机器执行如下命令,CD到jperf目录下的BIN目录内,-s参数指定服务端
客户端机器同样CD到jperf目录下的BIN目录内,-c 参数是指定服务端地址
这样在服务端和客户端都可以看到带宽测试结果,上图是45.2M。
但是往往在一般情况下为了更直观显示,客户需要加上其他参数,为了测试的准确性还需要并行测试,下面就是普通的测试方法
-i参数设置每次报告之间的时间间隔,单位为秒,-P参数是指定并行测试的数目
上面都是测试TCP带宽,最后测试下UDP带宽测试方法,服务端执行如下命令 -u指定测试UDP,-s指定服务端
客户端执行如下命令 这里是百兆带宽,指定-b为90M
测试时多结合-w参数,将TCP窗口大小改为1M 如 iperf -c ipaddress -i 1 -w 1M
也常结合-t参数,指定测试的时间,具体可在实际应用中酌情使用。
最后简单介绍下几个常用参数的解释:
-r //r参数表示双向数据测试,但要先测c到s的带宽
-d //d参数和r近似,并且功能更强,可同时测试双向数据
-w [2000] //w参数后跟数字,单位是byte,
-p [12000] //p参数可指定端口号
-t [20] //t参数默认表示测试10次,后加数字可以自己定义
-i [2] //i参数表示测试开始到结束的间隔时间,单位s
-u -b 10m //udp 10mbps 测试
-m //最大mpu测试
-P //并行测试
-h //帮助