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的网络情况也是可以这样实现的,我懒得码字了,贴张图应该都能看懂:
文章写完了,那么看完的朋友们,来说说上面这张图测试的是服务器的上行还是下行带宽呢?
客户端,
那么色图呢