【讲清楚,说明白!】使用iperf3监测网络吞吐量

一、iperf3介绍

(1.1)iperf3是一个网络带宽测试工具,iperf3可以擦拭TCP和UDP带宽质量。iperf3可以测量最大TCP带宽,具有多种参数和UDP特性,iperf3可以报告带宽、延迟抖动和数据包丢失。利用iperf3这一特性,可以用来测试一些网络设备如路由器,防火墙,交换机等的性能。

(1.2)使用iperf3,你可以调整与时序、缓冲区和协议(如TCP、UDP、SCTP)相关的几个参数。它对网络性能调优操作很方便,为了获得最大或相当改善的网络性能,你需要增加吞吐量以及网络接收个发送功能的延迟。但是在进行实际调整之前,你需要执行一些测试以收集整体网络性能统计信息,以指导你的调优过程。其结果包括以秒为单位的时间间隔,数据传输,带宽(传输速率),丢失和其他有用的网络性能参数,它主要用于协助调整特定路径上的TCP连接。

#二、iperf3安装

(2.1)我们使用的操作系统是CentOS 7.4,然后我们使用base源安装,便可以将iperf3-3.1.7-2.el7.x86_64软件包安装好。

aUAv0x.png aUEnN8.png

(2.2)然后我们使用两台主机,其中192.168.26.51作为服务器端,将192.168.26.131作为客户端。在两台主机上安装好iperf3后,即可开始测试网络吞吐量。我们首先连接到我们的服务器端的远程机器使用-s标志的是服务器模式下的iperf3,默情况下它将监听5201端口,我们也可以使用-f开关指定生成报告的数据格式类型(其中k表示Kbits、m表示Mbits、g表示Gbits、K表示KBytes、M表示MBytes、G表示GBytes)。
使用命令 iperf3 -s -f K

aUEM9g.png

(2.3)如果服务器上的另一个程序正在使用端口5201,则我们可以使用-p开关指定其他端口监听(例如指定4000端口)iperf3 -s -p 4000

aUEGBq.png

(2.4)我们也可以使用-D标志作为守护程序运行,并将服务器消息写入日志文件 iperf3 -s -D > iperf3.log

aUEtEV.png

三、iperf3客户端操作

(3.1)我们将192.168.26.51作为服务器,并且执行监听5201端口的命令(图3-1),在客户端192.168.26.131的主机上,使用-c标志在客户端模式下运行iperf3并指定运行服务器的主机(使用IP地址或域主机名都可以)。执行大约18至20秒后,客户端终止并生成指示基准测试平均吞吐量的结果,显示信息如下(图3-2)。
注意:从基准测试结果中,如下面的屏幕接入所示,服务器和客户端的值存在差异,但是,我们应该始终考虑在执行的每个测试中使用从iperf3客户端主机获得的结果。

** iperf3 -s -f K—在服务器端执行**

** iperf3 -c 192.168.26.51 -f K—在客户端执行**

aUEU4U.png aUEruR.png

(3.2)如果我们想在Linux中实现先进的网络测试吞吐量,确定网路中给定时间内数据量的一个重要因素是TCP窗口大小,它在调整TCP连接时很重要,我们可以使用-w标志设置窗口大小、套接字缓冲区大小,如图所示。

iperf3 -c 192.168.26.51 -f K -w 200K

aUEf8e.png

(3.3)如果要在服务器发送和客户端接收的反向模式下运行,可以添加-R开关。

iperf3 -c 192.168.26.51 -f K -w 200K -R

aUETbt.png

(3.4)如果要运行双向测试,意味着我们要同时测量两个方向上的宽带,可以使用-d选项。

aUEX8g.png

(3.5)如果要在客户端输出中获取服务器结果,可以使用“–get-server-output”选项,此时我们便会在客户端192.168.26.131主机上获取两份数据。

aUVpbq.png

(3.6)也可以使用-P选项设置并行客户端流的数量,它们同时运行

aUVPaV.png

文章转载自

https://blog.51cto.com/13613726/2460671

猜你喜欢

转载自blog.csdn.net/u012932409/article/details/107763810