iperf带宽测试
iperf3是用来测量一个网络最大带宽的工具。它支持调节各种参数比如发送持续时间,发送/接收缓存,通信协议。每次测试,它都会报告网络带宽,丢包率和其他参数。
进行iperf测试需要在两台主机上安装iperf软件,其中一台作为服务端(接收数据),另一台作为客户端(发送数据)。以下针对不同主机的不同操作系统下安装iperf软件进行阐述。
目录
一、Linux操作系统下安装iperf
二、Windows操作系统下安装iperf
三、进行带宽测试
四、附表(iperf指令常用选项)
一、Linux操作系统下安装iperf
- 安装依赖包
执行的指令为:yum install gcc
- 安装wget
执行的指令为:yum -y install wget
3、下载iperf-3.0.6源码包
执行的的指令为:wget http://downloads.es.net/pub/iperf/iperf-3.0.6.tar.gz
4、对源码包进行解压
执行的指令为:tar zxvf iperf-3.0.6.tar.gz
5、进入目录,执行的指令为:cd iperf-3.0.6
根据系统情况自动生成编译时所需的Makefile文件
执行的指令为:./configure
6、编译源码包
make
7、安装
make install
二、Windows操作系统下安装iperf
1、iperf的下载地址为:https://iperf.fr/iperf-download.php,选择相应的版本,这里以iperf3.1.3版本为例:
2、将下载得到的iperf-3.1.3-win64的安装包解压到D盘,得到两个文件,如下图所示:
3、然后打开cmd,先进入D盘,然后cd进入D:\iperf-3.1.3-win64目录。
三、进行带宽测试
以订购的云主机(Linux操作系统)作为服务端,本地windows作为客户端为例进行带宽测试。
1、在云主机上执行命令:iperf3 -s,表示以服务端的方式启动。
2、在windows客户端执行命令iperf3.exe -c 112.35.79.53 -t 30 -b 20M,
其中-c表示以客户端的方式启动,112.35.79.53表示云主机绑定的公网IP地址,-u表示udp包,-t 60表示打流60s,-b 20M表示测试20Mbit带宽。
3、执行完以上指令,在windows客户端可以看到:
在云主机服务端可以看到:
[5]标志开头的是上行测试,[4]标志开头的是下行测试。由测试结果可知,指定客户端通过TCP协议发送数据的带宽为20Mbit/s,实际测试结果约为19.9Mbit/s,测试结果正常。
注:客户对云主机带宽进行测试时,客户端的带宽(或者多台客户端的带宽之和)必须超过服务端的带宽,带宽测试的结果才是准确的,以服务端显示的带宽为准。
四、附表(iperf指令常用选项)
iperf选项分为 通用选项、服务端特定选项以及客户端特定选项:
通用选项 | |
-f <kmKM> | 报告输出格式。 [kmKM] format to report: Kbits, Mbits, KBytes, MBytes |
-i <sec> | 在周期性报告带宽之间暂停n秒 |
-p | 设置服务端监听的端口 |
-u | 使用UDP协议测试 |
-w n<K/M> | 指定TCP窗口大小 |
-m | 输出MTU大小 |
-M | 设置MTU大小 |
服务端选项 | |
-s | iperf服务器模式 |
-d | 以后台模式运行服务端 |
-U | 运行一个单一线程的UDP模式 |
客户端选项 | |
-b | 指定客户端通过TCP协议发送数据的带宽(bit/s) |
-c | 以客户端模式运行iperf |
-t | 指定iperf带宽测试时间 |