Python自动化之WiFi跑流(iperf3)
Python自动化之WiFi跑流(iperf3)
目录
一:iperf介绍
iperf3是一款带宽测试工具,它支持调节各种参数,比如通信协议,数据包个数,发送持续时间,测试完会报告网络带宽,丢包率和其他参数。
二:手动执行
需要有2台设备,客户端和服务器端(在同一个网络下面)

1、打开服务器侧的iperf
iperf3.exe –s
注意:
(1)iperf文件路径必须为全英文。
(2)进入iperf目录方式:①:cd + 目录
②:找到iperf目录,shift + 右键,点击在此处打开Powershell窗口

输入.\iperf3.exe - s显示如下,打开成功

2、打开客户端侧的iperf
Iperf常用参数说明:
-c host 以客户端模式启动,host是数据源所在的服务器端地址,比如:iperf -c 222.35.11.23;
-i sec 以秒为单位显示报告间隔,比如:iperf -c 222.35.11.23 -i 2;
-u 使用UDP协议,发送UDP数据包,默认使用TCP连接;
-w 指定TCP窗口大小,默认是8KB,此参数比较重要,需要针对不同的带宽和时延进行调整;
-t 测试时间长,默认10秒,比如:iperf -c 222.35.11.23 -t 5
-n (一般配合UDP协议时使用)指定传输的字节数,比如:iperf -c 222.35.11.23 -n 100000
-P (大写)指定同时进行的TCP/UDP连接数,对于高带宽测速,需要该参数建立多条TCP/UDP连接以测得更准确的速率;
-s 以server模式启动,eg:iperf -s
-p 指定服务器端使用的端口或客户端所连接的端口
以下指令为例进行执行测试:
.\iperf3 -c 192.168.101.6 -t 120 -b 30M
服务器测试显示如下图:

客户端侧显示如下图:

三:python自动化执行
备注:以python电脑为客户端,还有一台设备为服务器端;
服务器侧iperf手动拉起(确定设备类型可以做相关通讯方式,进行自动化拉起)
1、准备环境
iperf的程序需要和脚本放到一个文件夹中(后面方便获取当前文件夹)

获取当前文件夹并进入:
dest_dir = os.path.dirname(__file__)
os.chdir(dest_dir)
2、下发客户端侧指令
cmd = \iperf3 -c 192.168.101.6 -t 120 -b 30M
os.popen(cmd)
以上就是一个简单的iperf脚本,如需要更多功能,留言沟通
更多推荐




所有评论(0)