短距WCN协议开发分享
本博客是全网最大分享安卓模块知识的博客,通过基础知识、安卓源码介绍、项目实践等方式,全面剖析手机各个模块的内容,使阅读者能够更好的理解,和应用到项目实践中,如果阅读过程中遇到不理解的,欢迎私信交流,本博主尽最大可能进行答疑解惑。
展开
-
驱动相关随笔
Driver=(none)//代表没有匹配到驱动。原创 2025-01-14 14:02:48 · 95 阅读 · 0 评论 -
WIFI取消自动回连机制
屏蔽此行代码即可。原创 2024-12-11 11:18:35 · 123 阅读 · 0 评论 -
Wireshark 使用
PC用wireshark抓包要保证,是PC和设备之间通信,要选择相同的局域网里(不可使用同一局域网下的其他PC进行通信设备之间的抓取)原创 2024-12-11 11:14:19 · 95 阅读 · 0 评论 -
通信之WLAN(Miracast)-RTSP交互
在手机上,该功能被命名为“投屏”,“屏幕投影”,“无线投屏”,“WiFi-Display”等等。在WLAN P2P链路上,WFD设备将建立“UDP”和“TCP”两条网络层的链路,UDP链路用做实时数据流传输,TCP链路承载控制数据流传输。支持Miracast功能的设备,在使用该功能时,可做角色“WFD source”或“WFD sink”(发送端和接收端)。WFD连接过程,如下图4所示。“WFD source”:实时将终端的video和audio(视频和音频)数据传输至WFD sink,如下图2所示。原创 2024-12-04 14:13:52 · 168 阅读 · 0 评论 -
通信之WLAN(信道)-an\n40h\n40l\u2解释
这个定义挺复杂,我们将WLAN通信系统的信道通俗的解释为“在WLAN通信系统中,信号是用电磁波发射,为了发射端和接收端发送的电磁波彼此可正常接收,指定电磁波发射所用的频段即为信道”。对信道划分介绍时,我们知道相邻的两个信道可扩展为支持40MHz可用带宽。我们先看下WLAN 2.4Ghz对信道的划分,如下图2所示。每个信道的带宽是22MHz,保护间隔1MHz,可用带宽20MHz,不同国家能够使用的信道是不一样的。相邻两个信道可扩展绑定为40MHz,扩展后的信道为(3,4,5,6,7,8,9,10,11)。原创 2024-12-02 16:57:59 · 64 阅读 · 0 评论 -
Wireshark筛选DHCP包
4、Key type:选择:wpa-pwd;Key:输入路由器的:密码:名称。5、点击OK,即可显示出DHCP流程。wireshark筛选DHCP包。1、编辑-》首选项-》3、点击Edit...原创 2024-11-26 20:33:50 · 188 阅读 · 0 评论 -
wifi中nl80211与wext的区别
接口类型与历史背景功能特性方面使用场景和应用程序兼容性原创 2024-11-25 15:25:09 · 214 阅读 · 0 评论 -
WIFI连接状态有哪个函数打印的?wlan0: State: DISCONNECTED -> INACTIVE
wpa_supplicant_set_state()//当更新状态时候,都是调用这个函数来打印日志;原创 2024-11-21 11:19:30 · 52 阅读 · 0 评论 -
Wi-Fi 认证-关联-加密流程
WiFi的基于802.11协议进行,无线AP在工作时会定时向空中发送beacon数据包,基站(STA)从beacon中解析出AP的名称、加密方式等信息,从而发起连接。:用于STA;:即刷门禁卡,新生入学,你被分配到97号楼,你提着箱子走到97号楼下想进去,你得有学校给你发的97号楼的门禁卡,证明你是有入住97号楼的资格。同样的,STA想要与AP,也需要一个认证,这就是链路认证;:确定STA有资格和AP建立无线链路后,STA还需要与AP,才能完成无线链路的建立;原创 2024-11-20 16:52:55 · 300 阅读 · 0 评论 -
wifi物理层和MAC的区别
WiFi 的物理层和 MAC 层是 IEEE 802.11 标准中定义的两个重要层次,它们在功能、实现方式及对 WiFi 性能的影响等方面存在显著区别,以下是具体介绍:原创 2024-11-13 09:54:39 · 262 阅读 · 0 评论 -
omnipeek抓包流程
如果STA解密后,没有dhcp,那就要AP选中,进行解密查看;因为有可能此时只有sta发包或者ap发包,所以筛选时候,只需要刷选一个地址即可,然后解密;,这时候需要抓取空口包来确定本端还是对端问题,今天简单讲解使用omnipeek工具抓包流程;直接点击过滤器,增加一个过滤器(通过wireless address)注意:如果要筛选DHCP,需要确定好STA或者ap地址,然后筛选出来。一般我们处理Wi-Fi断连、耗时长等问题,需要确定是。数据包解密流程(要先stop Capture)然后选中,进行解密;原创 2024-11-12 17:31:07 · 164 阅读 · 0 评论 -
【Wi-Fi】Short GI 即短保护间隔
在无线通信系统中,特别是基于正交频分复用(OFDM)技术的系统里,GI 是指在每个 OFDM 符号之间插入的一段空白时间间隔,用来避免符号间干扰(ISI)。而 Short GI 则是相对于常规保护间隔而言更短的时间间隔。原创 2024-11-12 15:30:14 · 325 阅读 · 0 评论 -
256-QAM(Quadrature Amplitude Modulation)是一种数字调制技术,MSC8 和 MSC9 的区别
256-QAM(Quadrature Amplitude Modulation)是一种数字调制技术,MSC8 和 MSC9 可能是指与 256-QAM 相关的不同标准、规范、配置或实现方式等,以下是关于它们之间区别的详细分析:原创 2024-11-12 15:29:20 · 130 阅读 · 0 评论 -
Android WiFi连接基本流程
通过侦听AP定期发送的Beacon帧来发现网络,Beacon帧中包含该AP所属的BSS的基本信息以及AP的基本能力级,包括:BSSID、SSID、支持的速率、支持的认证方式,加密算法、 Beacons帧发送间隔,使用的信道等。SA是自己本身的信息,SNonce是自己生成的信息,PMK可通过自身的密码和SSID计算得到,也是已知信息,因此,STA此时具备计算PTK的五元组信息,计算得到PTK后,用PTK的KCK位为对将要发送的数据包进行计算得到MIC,并将MIC一同发给AP。其中EAPOL不是必要阶段,当。原创 2024-01-25 09:25:07 · 529 阅读 · 0 评论 -
Wi-Fi服务启动流程
当初始化内核之后,就会启动一个相当重要的祖先进程,也就是init进程,在Linux中所有的进程都是由init进程直接或间接fork出来的。简单的说,内核加载进内存后,将首先进入内核引导阶段,在内核引导阶段的最后,调用start_kernel进入内核启动阶段,主要是完成内核的大部分初始化工作。函数得到的是 IServiceManager 接口类,addService() 的实现是空的,具体的实现是在 IServiceManager 的 实现类 ServiceManagerNative.java 中。原创 2024-01-25 09:24:45 · 229 阅读 · 0 评论 -
Android wifi 打开流程
当InitialState状态CMD_START_SUPPLICANT消息处理完成以后,就会切换到SupplicantStartingState状态,此时supplicant开启以后,会上报消息给WifiMonitor,WifiMonitor会通过broadcastSupplicantConnectionEvent发送到WifiStateMachine状态机,由当前状态SupplicantStartingState处理。用来获取保存的wifi操作的状态,如果是开则继续。原创 2024-01-25 09:24:04 · 290 阅读 · 0 评论 -
Android WiFi扫描流程
这张图包括在wifi打开的情况下上层发起的扫描,但是这里我们就跳过上层下发的过程,直接从上节中wifi打开后在 WifiStateMachine 中调用 startScan() 扫描开始。原创 2024-01-25 09:23:40 · 225 阅读 · 0 评论 -
Android WiFi认证流程
Wifi根据项目出货地区常见WiFi认证有 WFA 认证:WFA (WiFi联盟)认证 、CE(欧盟)认证、CTA(中国质量)认证、FCC(美国)认证、GCF(欧洲运营商)认证。如CE认证,需要提供当前项目过CE认证 具体测试模块,支持测试哪些功能。如日本软银,北美大T。1.实验室都测试pass过后,会提供一个测试pass 报告,同步提供认证证书,或者认证标签。1.实验室拿到认证机器,根据认证报告进行逐一测试各个功能,并记录相应测试结果报告。1.客户或者认证接口人发起认证请求、认证计划和相应认证实验室。原创 2024-01-25 09:23:11 · 428 阅读 · 0 评论 -
Android WiFi加密方式
项目中很少涉及加密方式的, 一般测试进行相关case测试,但是一般从高通或者MTK释放过来的源码都是支持的,很少会遇到这类问题。使用TKIP(临时密钥完整性协议),使用的仍是RC4加密算法,密钥为动态协商生成、支持MIC认证和防止重放攻击功能。中国支持的加密技术,在行货手机上内置,目前无线运营商的wi-fi网络设备已经支持这种加密技术,但没有开始推广使用。加密类型AES(高级加密算法),需要新的硬件支持,使用CCMP(计数器模式密码块链消息完整码协议)使用128位AES加密算法实现机密性。原创 2024-01-25 09:22:49 · 269 阅读 · 0 评论 -
Android WIFI各类问题分析需要log种类
涉及BT的 wifi BT 共存问题: 手机端(logcat +kernel +wmt_dirver +FW log)+tcpdump +sniffer log + BT HCI log。认证类问题:手机端(logcat +kernel +wmt_dirver +FW log)+工具端log + pass log和fail log 对比。手机端(logcat +kernel +wmt_dirver +FW log) +工具端log + pass log和fail log 对比。原创 2024-01-25 09:22:34 · 347 阅读 · 0 评论 -
Android 稳定性测试
在开发者选项中将日志等级设置为verbose, 将日志缓冲设置为16M.打开wifi详细日志。断开连接后就一直处于wifi无连接状态,导致测试fail全为连接状态错误。【操作步骤】使用M17-P12-CN刷机,执行WiFi MTBF测试。【实际结果】挂起WIFI MTBF后,测试fail 850次。首先,测试了10台,log中显示在同一时间段发生了断连,判断。①查看WiFi连接状态,没有连接成功。【样机信息】M17-P12-CN。【对比机结果及验证说明】无需对比。【预期结果】测试pass。原创 2024-01-25 09:22:14 · 273 阅读 · 0 评论 -
Android 测试机关闭WiFi开关,会自动重新打开WiFi开关(单机必现)
结合视频时间点,从log中看到:每一次手动在systemui界面关闭WiFi,“com.kk.xx.analyzer”就会下达开启命令。【样机信息】M17P-P1-GL-AS40280。【实际结果】测试机会自动重新打开WiFi开关;【预期结果】测试机关闭WiFi开关,不会开启;自动打开WiFi开关,重点注意关键字“分析助手.apk后台清除或者卸载再测试。【操作步骤】测试机关闭WiFi开关;分析助手.apk一直在打开WiFi。【对比机信息及验证结果】/【复现概率】10/10。【恢复方式】无法恢复。原创 2024-01-25 09:21:39 · 145 阅读 · 0 评论 -
Android wifi 连接5G_a网络网页刷新失败_偶现
问题时间点附近,AP发送给测试机数据有空档,在空口包中可以看到STA接收确认很快,为AP回复慢导致。已知目标AP = SSID: "ASDF", BSSID: 94:98:69:4a:1d:ef。AP=“ASDF”在办公环境下且连接了许多STA,该AP为802.11a,速率较低。对比机结果:同一时间另一台印尼国家码的M17可以正常刷新。log路径:名称:M17连接5G_a网络网页刷新失败。问题时间:2022-09-09-09-56-12。复现步骤:测试机连上该AP,刷新网页。预期结果:网页正常刷新。原创 2024-01-25 09:21:25 · 109 阅读 · 0 评论 -
Android wifi Display 测试机投屏花屏、卡死
在同一信道后,判断是在2.4G还是5G,2.4G开放环境下投屏极易受到环境影响花屏,5G也有可能在嘈杂环境受到影响,这是需要。电视与手机连接到同一网络(可使用5gAP,2.4G受环境影响较大),打开电视设置-投屏-手机投屏micrast功能。关闭设置-》蓝牙-》高级设置-》小米快连,关闭设置-》位置信息-》WLAN和蓝牙扫描,投屏开始后再关闭BT。如果有sniffer log,可以查看是否有丢包,丢包花屏正常,可以尝试更换AP和干净环境;【实际结果】花屏必现,偶现卡顿和卡死,测试机和电视端画面无法同步。原创 2024-01-25 09:21:01 · 364 阅读 · 0 评论 -
Android wifi 性能连接2.4G b模式WiFi 在RSSI值为30、40、60、70、80时开始上下行吞吐测试,上行有掉零现象
【操作步骤】连接2.4G b模式WiFi在RSSI值为30、40、60、70、80时进行上下行吞吐测试。,为iperf工具无法支持较小的精度,故显示为0,对比机同现象,判断为工具显示问题。,已由天线寄改善的机器至测试复测,同时已联系天线使用对比机对比测试天线性能。1:等待机器到测试后复测,并等待天线性能对比机对比结果。【对比机信息及验证结果】对比机K6S-CN也是此现象。【样机信息】M17-P1-CN-AS10682。【实际结果】上行有掉零现象。【预期结果】上行能正常出值。【恢复方式】无法恢复。原创 2024-01-25 09:20:37 · 262 阅读 · 0 评论 -
Android wifi 测试机连接2.4/5GWiFi热点(CH1,CH149),开启2.4/5G个人热点,辅助机连接测试机热点吞吐量低于对比机的10%
上测试机:12.8/16.1/15.2 对比机:36.8/36.6/38.4。下测试机:22.6/23.2、24.1 对比机: 39.6/46.5/39.7。连接热点时不能测试机和对比机之间进行AP/RP的转换,要选择。【操作步骤】1. 测试机及对比机连接2.4GWiFi热点。调换测试机及对比机位置,重复进行Step1~2步骤。【预期结果】测试机吞吐量数据不可低于竞品10%以上。【实际结果】测试机吞吐量数据低于竞品10%以上。①在看log之前要与测试沟通,这种对比类测试,【复现概率】10/10。原创 2024-01-25 09:20:11 · 188 阅读 · 0 评论 -
Android wif (稳定性)挂起WIFI MTBF后,testBLEScanWiFiChangeAP fail
错误现象:2022.09.17 04:59:13][V13.0.0.1.SMQCNXM][testBLEScanWiFiChangeAP][10][false][校验ping丢失率大于80失败。【实际结果】挂起WIFI MTBF后,testBLEScanWiFiChangeAP fail。【操作步骤】使用M17-P2-CN刷机,执行WiFi MTBF测试。【对比机结果及验证说明】无需对比。【备注说明】LOG已上传至飞书群。【样机信息】M17-P2-CN。【预期结果】测试pass。原创 2024-01-25 09:19:22 · 146 阅读 · 0 评论 -
Android wif 测试机连接小米路由器AX6000,无法访问网络
【备注说明】附9434+284log+录屏:M17P-P1-GL-30119可以正常使用,测试机M17-CN连接无法刷新网页。【预置条件】已搭建好小米路由器AX6000,2.4G&5G网络。GL:服务器MAC:a4:39:b3:da:ec:28。CN:服务器MAC:a4:39:b3:da:ec:28。CN:服务器MAC:a4:39:b3:da:ec:28。【操作步骤】测试机连接2.4G和5G网络刷新网络。【实际结果】连接显示无法使用该网络,网页无法刷新。【操作步骤】测试机连接2.4G和5G网络刷新网络。原创 2024-01-25 09:18:56 · 275 阅读 · 0 评论 -
Android wifi P2P流程---》连接2.4G WiFi时投屏建立在5G的36信道上_必现
Search State中,P2P Device将发送Probe Request帧,而Listen State中,它将接收其他设备的Probe Request帧并回复Probe Response帧。当P2P Device A通过Device Discovery找到周围的一个P2P Device B后,Device A就可以开展Group Formation流程以准备构造一个P2P Group。在组建P2P Group(即P2P Network)之前,智能终端都是一个一个的P2P Device。原创 2024-01-24 09:29:28 · 553 阅读 · 0 评论 -
Android wifi 玩荣耀大天使游戏,出现卡顿,断网现象
【问题详情】[小米内测][卡顿模块]玩荣耀大天使游戏,出现卡顿,断网现象,期间使用小米内侧应用反应问题,又出现系统界面没有响应弹窗,进程"system"没有响应弹窗。查找常规的关键字“EAPOL“”DHCP“,在问题时间都没有记录,所以直接从断开记录”CTRL-EVENT-DISCONNECTED“开始看。1.首先就是卡在下载log,点开没有权限需要长时间申请,翻看之前的记录,找到上一。给出问题发生时间在23:40:00,查看log:可以看到只有。【问题发生时间】2022-09-04 23:40:00。原创 2024-01-24 09:28:54 · 764 阅读 · 0 评论 -
Android wifi dut首次连接酒店wifi,不会弹出登录界面
【对比机信息及对比结果】对比机版本: Redmi Note 11E MIUI13.0.1稳定版 IQOO U5。卡1制式:移动注册4G VOLTE网络(主卡)卡2制式:联通注册4G VOLTE网络(副卡)5G智能省电关闭,WiFi关闭,5G智能切换关闭,双卡关闭5G。【实际结果】1.dut首次连接酒店wifi,不会弹出登录界面。【预期结果】1.dut首次连接酒店wifi,正常弹出登录界面。【复现步骤】1.dut连接酒店wifi 2.观察dut。【测试机恢复手段】自动恢复。对比机结果:0/10。原创 2024-01-24 09:28:25 · 552 阅读 · 0 评论 -
Android 蓝牙 高通平台nvram客制化流程
首先和射频同事沟通,根据运营商的要求,不同的 boardid 是否用多套 nvram?AGS5 项目中国区和 CE 采用一套 nvram,FCC 区采用一套,所以需要采用不 同 boardid 使用不同 nvram,即 overlay.dtsi 加载方式; 一般情况下,在项目名下面会有不同的 boardid 目录:比如 vendor/qcom/proprietary/devicetree-4.19/qcom/khaje/AGS5 这个目录下面会有 AL00_VA L03_VA W09_VA 等原创 2022-06-26 15:37:28 · 286 阅读 · 0 评论 -
SElinux介绍
分析:在SEAndroid中共定义了三个拥有巨大权限的attribute分别是mlstrustedsubject、mlstrustedobject、unconfineddomain,被分类到mlstrustedsubject的type在充当主体domain是可以越过MLS检查,被分类到mlstrustedobject的type在充当客体时可以越过MLS检查,被分到unconfineddomain的type则拥有所有权限可对客体进行任意操作。进程理论上所拥有的权限与执行它的用户的权限相同。原创 2023-03-12 10:43:11 · 116 阅读 · 0 评论 -
Android WIFI log基本分析流程
此后, Authenticator 将发送第三个 EAPOL-Key 给 Supplicant, 该消息携带组临时密码( Group Transient Key, GTK, 用于后续更新组密钥, 该密钥用KEK 加密) 、 MIC( 用 KCK 加密)。注意, IGTK( Integrity GTK) 用于加解密组播地址收发的管理帧。第四次握手,Supplicant 最后发送一次 EAPOL-Key 给 Authenticator 用于确认,如果认证成功, 双方将安装( Install) Key。原创 2022-09-25 11:57:22 · 2416 阅读 · 1 评论 -
Android wifi sniffer log总结分析
Pixel,与Samsung行为类似,并且Reassoc Resp后立即发送Disassoc断开了与原AP的关联。BTM Req和Resp中的Neighbor Report信息不同,原AP 66给出了建议AP 65,而DUT经过主动扫描后,AP 65并没有回复Probe Resp,因此STA认为没有合适的Candidate,没有发起漫游。排除路由器原因后,怀疑是MTK的驱动对WEP/WPA的切换处理有问题,拉通分析,是MTK驱动的一个bug,在WEP连接结束后,没有及时remove WEP key。原创 2022-09-25 11:58:16 · 2465 阅读 · 0 评论 -
Android wifi iw介绍
iw dev wlan0 set bitrates mcs-5 # 清除所有 tx 比特率和设置的东西来恢复正常。# iw list # 获得所有设备的功能,如带宽信息(2.4GHz,和5GHz),和802.11n的信息。# iw dev wlan0 set bitrates mcs-5 4 # 修改tx HT MCS的比特率。# iw wlan0 connect foo # 连接到已禁用加密的AP,这里它的SSID是foo。# iw help # 帮助。原创 2022-09-25 11:58:46 · 936 阅读 · 0 评论 -
Android Q WiFi 代码框架
备注:在Android 9.0中,WiFi的状态处理在WifiStateMachine中进行,到了Android Q,取消了WifiStateMachine,新增了ClientModeImpl代替 WifiStateMachine 的功能,实际内容大同小异,函数的调用与Android P相差不大。同学,别退出呀,我可是全网最牛逼的 WIFI/BT/GPS/NFC分析博主,我写了上百篇文章,请点击下面了解本专栏,进入本博主主页看看再走呗,一定不会让你后悔的,记得一定要去看主页置顶文章哦。原创 2023-02-11 17:20:02 · 861 阅读 · 0 评论 -
Wifi wpa_supplicant 到驱动的联系
Int wpa_driver_wext_scan(void *priv, const u8 *ssid,size_t ssid_len)中的LINE1174:if(ioctl(drv->ioctl_sock,SIOCSIWWSCAN,&iwr) < 0)从这里可以看出wpa_supplicant是通过IOCTL来调用SOCKET与driver进行通信的,并给DRIVER下达SIOCSIWSCAN这个命令。//创建了接受wpa_supplicant 的socket接口。//这个函数超级重要,后面详细的看。原创 2023-02-11 17:23:01 · 1299 阅读 · 1 评论 -
Android框架WiFi架构
动平台,它主要是用来支持WEP,WPA/WPA2和WAPI无线协议和加密认证的,而实际上工作内容是通过socket(不管是wpa_supplicant与上层还是wpa_spplicant与驱动都采用socket通讯)与驱动交互上报数据给用户,而用户可以通过socket发送命令给wpa_supplicant调试来对wifi芯片操作,简单的说,二、android wifi 系统架构:andtoid wifi 系统引入了wpa_supplicant,它的整个wifi系统。原创 2023-02-11 17:25:47 · 3081 阅读 · 0 评论 -
展锐平台WIFI吞吐问题解决方案
3、 如果 1 和 2 都没有问题的话,先从 log 确认下是否是共存的场景(也就是有没有打开 BT),因为WiFi 和 BT 是共用一根天线的,简单来说就是分时复用,打开 BT 的话肯定会影响WiFi 的吞吐的。同学,别退出呀,我可是全网最牛逼的 WIFI/BT/GPS/NFC分析博主,我写了上百篇文章,请点击下面了解本专栏,进入本博主主页看看再走呗,一定不会让你后悔的,记得一定要去看主页置顶文章哦。送队列的优先级是 VI,而测试机的优先级是 BE,优先级从高到低依次是 VO>VI>BE>BK,对比机。原创 2023-02-11 17:30:54 · 1568 阅读 · 1 评论