iperf测试recovery模式下WiFi吞吐量

2023-10-08 23:30

本文主要是介绍iperf测试recovery模式下WiFi吞吐量,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

iperf测试recovery模式下WiFi吞吐量

  • 1. 准备工作
  • 2. 搭建测试环境
    • 2.1 搭建iperf测试环境
    • 2.2 搭建Recovery模式WiFi环境
  • 3.iperf测试

  Iperf是一个主动测试网络性能的工具。它能对 TCP/IP 和 UDP/IP 带宽的性能进行测量,能够提供网络吞吐率信息,以及延时、丢包率、最大段和最大传输单元大小等统计信息;从而能够帮助我们测试网络性能,定位网络瓶颈。

  关于iperf的下载安装以及详细的介绍另写文章进行介绍,本篇仅对公司环境进行演示如何使用iperf测试。

  Iperf测试需要确定server端和client端,server端是监听到达的测试请求,也就是接受端。client端是用于发起测试请求,也就是发送端。

1. 准备工作

  • 准备PC和平台使用的iperf文件
    在这里插入图片描述
  • 准备串口工具
  • 准备一台无线路由器

2. 搭建测试环境

2.1 搭建iperf测试环境

① 将PC使用的iperf.exe复制到PC的任何一个目录
如:D:\iperf.exe
在这里插入图片描述
② 用U盘将iperf文件复制到平台系统的/system/bin目录下

  • U盘的路径在storage目录下
  • system为只读权限,需要使用mount命令重新挂载读写权限
  • 复制后要使用chmod 777赋予权限
console:/ $ su
console:/ # cd storage/6CEC-41FF/                                              
console:/storage/6CEC-41FF # ls
88x2cs.ko    System\ Volume\ Information iw.iw                         
Android      ioctl.ioctl                 ixia-吞吐量测试软件----电信用 
Endpoint.apk iperf                       logo.jpg                      
LOST.DIR     iperf.exe                   u-boot.bin                    
console:/storage/6CEC-41FF # cp iperf /system/bin/                             
cp: /system/bin//iperf: Read-only file system
1|console:/storage/6CEC-41FF # cd ../..
console:/ # mount -o rw,remount /system
console:/ # cp /storage/6CEC-41FF/iperf /system/bin/                           
console:/ # chmod 777 /system/bin/iperf                                        
console:/ # ls -l /system/bin/iperf                                            
-rwxrwxrwx 1 root root 955847 2020-01-01 08:08 /system/bin/iperf

实现效果如下:在这里插入图片描述
③ 确定IP地址

  • PC端通过有线或无线连接路由器
  • 盒子端通过无线连接WiFi
  • 确保盒子和PC端都在同一网段(原本只需要一台电脑,因为公司window系统下有权限限制,iperf发送需要权限,因此需要两台电脑,自用机没有权限限制)

命令查看IP地址

  • PC端window cmd窗口下使用ipconfig查看IP地址
  • 盒子端在串口终端工具SecureCRT窗口下使用ifconfig查看IP地址

此时没有连接WiFi,仅展示命令:
在这里插入图片描述
在这里插入图片描述

2.2 搭建Recovery模式WiFi环境

① 配置iw、ioctl命令环境
如同上面iperf命令配置,同样用U盘将iw.iw、ioctl.ioctl文件复制到/system/bin/目录下,并去掉文件后缀,同样赋予777权限。
在这里插入图片描述
最后结果如图:
在这里插入图片描述
② 进入Recovry模式

reboot recovery

③ 配置ip
进入recovery模式后先手动mount分区

busybox mount /dev/block/system /system
busybox mount /dev/block/vendor /vendor

挂载U盘的话

busybox mount /dev/block/sda1 udisk/

mount分区后insmod驱动前,需要手动给wifi上下电:

ioctl /dev/wifi_power 0x6d04		//下电
ioctl /dev/wifi_power 0x6d03		//上电

在这里插入图片描述

然后insmod驱动

insmod /vendor/lib/modules/*****.ko  

连接WiFi,(此处注意WiFi不能设置密码)

ifconfig wlan0 up
iw wlan0 connect "WiFi名称"
iw wlan0 connect "ASUS_AC68U_5G"

配置ip

假设路由器的网关地址是
192.168.1.1
这样配置ip:
ifconfig wlan0 192.168.1.100
ip rule add from all lookup main
ndc resolver setnetdns wlan0 192.168.1.1 8.8.4.4		//此句若报错可跳过
ip route add default dev wlan0 via 192.168.1.1

3.iperf测试

RX测试命令如下:  
console: 盒子端
iperf -s 
PC端
iperf -c  192.168.1.80 -i 1 -w 2M -t 120 -P 8 TX测试命令:
console: 盒子端
iperf -c  192.168.1.80 -i 1 -w 2M -t 120 -P 4
PC端:
iperf -s 

iperf命令参数

-s      以server模式启动。
-c host 以client模式启动。host是server端地址。通用参数:
-f [kmKM] 分别表示以Kbits, Mbits, KBytes, MBytes显示报告,默认以Mbits为单位
-i sec   以秒为单位显示报告间隔 
-l      缓冲区大小,默认是8KB
-m     显示tcp最大mtu值
-o     将报告和错误信息输出到文件
-p     指定服务器端使用的端口或客户端所连接的端口
-u     使用udp协议
-w     指定TCP窗口大小,默认是8KB
-B     绑定一个主机地址或接口(当主机有多个地址或接口时使用该参数)
-C     兼容旧版本(当server端和client端版本不一样时使用)
-M    设定TCP数据包的最大mtu值
-N    设定TCP不延时
-V    传输ipv6数据包server专用参数:
-D    以服务方式运行。
-R    停止iperf服务。client端专用参数:
-d    同时进行双向传输测试
-n    指定传输的字节数, 
-r    单独进行双向传输测试
-t    测试时间,默认20秒, 
-F    指定需要传输的文件
-T    指定ttl值

这篇关于iperf测试recovery模式下WiFi吞吐量的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/168734

相关文章

Linux系统配置NAT网络模式的详细步骤(附图文)

《Linux系统配置NAT网络模式的详细步骤(附图文)》本文详细指导如何在VMware环境下配置NAT网络模式,包括设置主机和虚拟机的IP地址、网关,以及针对Linux和Windows系统的具体步骤,... 目录一、配置NAT网络模式二、设置虚拟机交换机网关2.1 打开虚拟机2.2 管理员授权2.3 设置子

SpringBoot如何通过Map实现策略模式

《SpringBoot如何通过Map实现策略模式》策略模式是一种行为设计模式,它允许在运行时选择算法的行为,在Spring框架中,我们可以利用@Resource注解和Map集合来优雅地实现策略模式,这... 目录前言底层机制解析Spring的集合类型自动装配@Resource注解的行为实现原理使用直接使用M

C#原型模式之如何通过克隆对象来优化创建过程

《C#原型模式之如何通过克隆对象来优化创建过程》原型模式是一种创建型设计模式,通过克隆现有对象来创建新对象,避免重复的创建成本和复杂的初始化过程,它适用于对象创建过程复杂、需要大量相似对象或避免重复初... 目录什么是原型模式?原型模式的工作原理C#中如何实现原型模式?1. 定义原型接口2. 实现原型接口3

大数据spark3.5安装部署之local模式详解

《大数据spark3.5安装部署之local模式详解》本文介绍了如何在本地模式下安装和配置Spark,并展示了如何使用SparkShell进行基本的数据处理操作,同时,还介绍了如何通过Spark-su... 目录下载上传解压配置jdk解压配置环境变量启动查看交互操作命令行提交应用spark,一个数据处理框架

SpringBoot中整合RabbitMQ(测试+部署上线最新完整)的过程

《SpringBoot中整合RabbitMQ(测试+部署上线最新完整)的过程》本文详细介绍了如何在虚拟机和宝塔面板中安装RabbitMQ,并使用Java代码实现消息的发送和接收,通过异步通讯,可以优化... 目录一、RabbitMQ安装二、启动RabbitMQ三、javascript编写Java代码1、引入

Nginx设置连接超时并进行测试的方法步骤

《Nginx设置连接超时并进行测试的方法步骤》在高并发场景下,如果客户端与服务器的连接长时间未响应,会占用大量的系统资源,影响其他正常请求的处理效率,为了解决这个问题,可以通过设置Nginx的连接... 目录设置连接超时目的操作步骤测试连接超时测试方法:总结:设置连接超时目的设置客户端与服务器之间的连接

Java实现状态模式的示例代码

《Java实现状态模式的示例代码》状态模式是一种行为型设计模式,允许对象根据其内部状态改变行为,本文主要介绍了Java实现状态模式的示例代码,文中通过示例代码介绍的非常详细,需要的朋友们下面随着小编来... 目录一、简介1、定义2、状态模式的结构二、Java实现案例1、电灯开关状态案例2、番茄工作法状态案例

SSID究竟是什么? WiFi网络名称及工作方式解析

《SSID究竟是什么?WiFi网络名称及工作方式解析》SID可以看作是无线网络的名称,类似于有线网络中的网络名称或者路由器的名称,在无线网络中,设备通过SSID来识别和连接到特定的无线网络... 当提到 Wi-Fi 网络时,就避不开「SSID」这个术语。简单来说,SSID 就是 Wi-Fi 网络的名称。比如

如何测试计算机的内存是否存在问题? 判断电脑内存故障的多种方法

《如何测试计算机的内存是否存在问题?判断电脑内存故障的多种方法》内存是电脑中非常重要的组件之一,如果内存出现故障,可能会导致电脑出现各种问题,如蓝屏、死机、程序崩溃等,如何判断内存是否出现故障呢?下... 如果你的电脑是崩溃、冻结还是不稳定,那么它的内存可能有问题。要进行检查,你可以使用Windows 11

性能测试介绍

性能测试是一种测试方法,旨在评估系统、应用程序或组件在现实场景中的性能表现和可靠性。它通常用于衡量系统在不同负载条件下的响应时间、吞吐量、资源利用率、稳定性和可扩展性等关键指标。 为什么要进行性能测试 通过性能测试,可以确定系统是否能够满足预期的性能要求,找出性能瓶颈和潜在的问题,并进行优化和调整。 发现性能瓶颈:性能测试可以帮助发现系统的性能瓶颈,即系统在高负载或高并发情况下可能出现的问题