Wi-Fi无源物联网反向散射通信 学习记录
1. 反向散射技术简介
待补充…
2. 实现思路
2.1 数据传输方式
假设局域网内有一台主机A、一个反向散射标签,一台无线AP(或另一台主机B)。在反向散射系统中,如果主机A想获取标签的数据,需要标签将数据调制到局域网中的某个已有的信号上,并由主机接收。
比较直观的思路是,使标签改变信号的幅度或相位,相当于在物理层上对信号进行调幅或调相。但因为标签反射信号的强度远低于原信号,不容易在接收端解析出标签传递的数据。此时我们可以利用802.11协议的 MAC层帧聚合 和 块ACK 机制,在数据链路层上进行操作[1]。
2.2 利用MAC层聚合帧进行二元调制
Wi-Fi 802.11n协议引入了帧聚合机制,将多个MAC层PDU帧聚合成一个大型帧(A-MPDU),一次性交付物理层进行传输。使用该方法可以减少封装开销和信道竞争,增大网络吞吐量。
802.11协议规定,对于任何单播数据帧,都要立即发送ACK帧进行回应。而对聚合之后的帧,接收方只需要发送一个 块ACK 帧,即可分别对多个帧进行回应。
当主机需要获取一个反向散射标签的数据时,主机首先主动向无线AP发送A-MPDU帧。在聚合帧传输过程中,标签会选择性地干扰其中的一些帧。这样,在无线AP回传给主机的块ACK中,就可以看出哪些帧被干扰了。如果把“干扰”和“不干扰”这两种状态当成“0”和“1”,就可以实现简单的二元调制。
2.3 反向散射标签设计
待补充…
3. 设备和软硬件环境准备
安装 Linux
双硬盘安装双系统Win11+Ubuntu22.4【注】后续将使用CSI分析工具PicoScenes,截至2025年2月其支持的环境为:
系统: Ubuntu 22.04 LTS 或其变体,最高内核版本6.0.5-15,同时必须安装在物理机上
无线网卡: AX200(或 AX201)、AX210(或 AX211)、QCA9300 和 IWL5300切换 Linux 内核版本
ubuntu 内核降级,切换linux内核版本启用 Pktgen (生成Wi-Fi数据包)
Linux内核pktgen的使用安装 PicoScenes (监测Wi-Fi信号的CSI信息[3])
PicoScenes文档安装 PicoScenes MATLAB Toolbox (解析PicoScenes捕获的CSI信息)
PicoScenes MATLAB Toolbox Core【注】在Windows下,该Toolbox需要调用TDM-GCC编译器。在安装TDM-GCC编译器时,目录名称不能含有空格,否则MATLAB无法检测到编译器。
4. Wi-Fi 数据包收发及CSI监测
使用AX200网卡测试Wi-Fi数据包收发,并收集其信道状态信息,分析信号传输和子载波状态。
- Pktgen 生成Wi-Fi数据包
在Ubuntu下生成数据包,向局域网内主机发送UDP包。可自定义数据包长度、源/目的地址等参数。
【注】由于数据包发送层次原因,发送方无法在Wireshark中捕获到Pktgen生成的数据包,接收端可以正常捕获。
- PicoScenes 收集Wi-Fi信道状态信息(CSI)
使用 PicoScenes MATLAB Toolbox 解析不同子载波的幅度和相位
5. 802.11 WLAN报文捕获
在无线网络中使用Wireshark抓包时,网卡默认会将接收到的802.11帧转换为以太网帧/数据包显示,无法直接监听802.11帧。为了直接观察WLAN报文,我们需要将网卡置于监听模式(Monitor mode)。
监听模式下,网卡会停止自身数据收发。此时无线环境中所有数据帧都会被网卡接收,不再区分不同的WLAN。
在Ubuntu系统中,我们可以使用 Aircrack-ng 套件中的 Airmon-ng 工具将网卡切换为监听模式。
Wireshark WLAN(IEEE 802.11)捕获教程
CaptureSetup/WLAN - Wireshark WikiAirmon-ng 技术文档
Airmon-ng - Aircrack-ng
开启监听模式后,我们需要在Wireshark中选择WLAN所属的信道和频宽。
捕获到的802.11帧如下:
6. 反向散射方案测试
为检验当前反向散射方案效果,我们使用一台运行Ubuntu系统的电脑作为客户端,在一部手机上开启移动热点作为模拟的路由器端,反向散射标签置于两者之间。由于网卡无法同时收发数据和监听802.11帧,我们额外添加一台电脑用于监听Block ACK。
系统测试时,客户端电脑不断向模拟路由器发送数据包,反向散射标签以10Kbps的速率切换干扰和不干扰状态。在监听电脑上观察模拟路由器向客户电脑发送的Block ACK,可以发现当不开启反向散射标签时,Block ACK显示子帧基本正常接收。
当开启反向散射标签,部分子帧被破坏,Block ACK的Bitmap部分出现大量0比特。
监听结果初步验证了当前反向散射方案的可行性,但传输稳定性不佳,误码率高,未达到部分参考文献中展示的效果。该现象可能与传输距离、信道电磁环境、反向散射标签设计等因素有关,我们将在未来持续改进系统设计。
7. 参考资料
[1] Abedi, A., Dehbashi, F., Mazaheri, M.H., Salehi-Abari, O., & Brecht, T. (2020). WiTAG: Seamless WiFi Backscatter Communication. Proceedings of the Annual conference of the ACM Special Interest Group on Data Communication on the applications, technologies, architectures, and protocols for computer communication.
[2] 付嵩博.反向散射共生通信系统标签波形与检测技术研究[D],2024
[3] Zhiping Jiang, Tom H. Luan, Xincheng Ren, Dongtao Lv, Han Hao, Jing Wang, Kun Zhao, Wei Xi, Yueshen Xu, Rui Li, Eliminating the Barriers: Demystifying Wi-Fi Baseband Design and Introducing the PicoScenes Wi-Fi Sensing Platform, in IEEE Internet of Things Journal (IEEE IOT-J), doi: 10.1109/JIOT.2021.3104666.