人们不是嘲笑你的梦想
他们嘲笑的是你的实力

iperf:最精准的网络带宽测试工具

iperf是一个老牌的网络性能测试工具,一般情况下我们使用它都是用来测试带宽的,但是由于这个工具使用起来不是特别方便,因为它分为Server和Client两个部分,并且必须要两个端都结合起来才能测试,除此之外,iperf只支持从Client向Server发送数据,所以实际测试起来也比较麻烦。

虽然iperf使用起来不是很方便,比起现在的那些一键测速脚本真的要繁琐很多,但是iperf的测试结果绝对是最精准最可信的。

我总结了一个部署的小口诀,只要记住这个你就不用懂太多知识,轻轻松松也能玩转iperf:

假设你要在你的VPS测试下行就运行iperf的服务端,测试上行就运行iperf的客户端。

很好理解,下面正好我利用前两天买的阿里云香港机器做个测试。

首先,我们要安装iperf,包在EPEL扩展源里面:

yum -y install epel-release

然后就可以直接安装:

yum -y install iperf

你也可以安装iperf3,这是目前比较新的版本:

yum -y install iperf3

但本次文章我们还是使用iperf而不是iperf3,并且你需要知道的是iperf和iperf3的某些命令不通用,两个版本之间的Server/Client也有兼容问题。也就是说你必须要保证Server/Clietn版本的一致性。

现在我们先来测试VPS的下行,那么就执行下面的命令运行iperf的服务端:

iperf -s -p 2333 -i 1 -f M

参数注解:

s:启动服务端
p:指定端口号
i:每间隔多少秒回显一次数据报告
f:指定带宽单位

默认是测试的TCP,如果你要测试UDP则可以使用如下参数:

iperf -u -s -p 2333 -i 1 -f M

参数注解:

u:指定测试UDP协议

这样服务端就运行成功了,接下来我们需要在别的机器上部署客户端,这里我拿另外一台VPS部署了客户端,客户端的启动命令是:

iperf -c 123.123.123.123 -p 2333 -i 1 -t 60 -f M

参数注解:

c:启动客户端,并在后面填写服务端的IP地址。
p:指定端口号,需要和服务端指定的端口号一致。
i:每间隔多少秒回显一次数据报告
t:测试时长(单位秒)
f:指定带宽单位

如果配置一切正常,你就可以看到测试数据了:

如我之前测评的文章所说的一样,阿里云的下行都是标配100M的,这个测试数据很精准。

接下来,我们来测试上行带宽。之前说过了,测试上行,那么就要在被测试的机器内运行iperf的客户端。

所以我们直接把两台测试机器用到的命令互换一下即可,下面是测试出来的上行带宽数据:

和阿里云在官网上写的一模一样,很精准,标配30M上行~

iperf的用途很多,同时也支持Win,如果你想测试你的本机到VPS的网络情况也是可以这样实现的,我懒得码字了,贴张图应该都能看懂:

如果是iperf3的话

测试上传的机器

iperf3 -s

测试下载的机器

iperf3 -c 123.123.123.123

参数注解:

P:多线程,多少个线程后面就是多少
R:反向

未经允许不得转载:四四的军火库 » iperf:最精准的网络带宽测试工具