IoT时代:Wi-Fi“配网”技术剖析总结
这种配网方式的基本思想是,Wi-Fi模块工作在STA+AP混合模式并启动内嵌的WEB服务器,电脑手机或平板等Wi-Fi设备连接WIFI模块所建立的AP热点,并获取得到一个IP地址(即:加入了这个Wi-Fi模块的热点AP模式所建立的Wi-Fi局域网),然后电脑手机或平板等Wi-Fi设备通过其上标配的浏览器访问Wi-Fi模块上的WEB服务器,在打开的WEB网页中,完成各种配置,包括设置Wi-Fi模块在STA模式下去链接第三方热点或路由器的SSID和密码,让WIFI模块作为STA去连接其他热点AP或路由器。 SoftAP配网 SoftAP配网方式在小米智能家居产品中被广泛应用。其原理是在Wi-Fi网络中另外启动TCP服务,通过TCP进行SSID和密码的配置,使智能硬件接入到指定的路由器。 在机器复位后,首先智能硬件会工作在Wi-Fi的AP模式,且开启TCP服务器,进入监听状态。 在此时,使用手机接入该AP热点,连接成功后,打开客户端,手机会去连接TCP服务器,三次握手连接成功后,则传输协议数据,内容包括指定智能硬件将要连接的Wi-Fi的SSID和密码。 硬件成功接收到手机发来的数据包解析得到Wi-Fi名字和密码。回复手机正在尝试连接了。关闭AP模式,开启station模式连接路由器,成功连接到指定的路由器。然后手机切回到指定路由器并开启UDP通讯,智能硬件用UDP协议广播配网成功数据。 智能配网(SmartConfig/SmartConnection....) 所谓智能配网,就是使用Wi-Fi设备本身自带的WIFI信号,在MAC层将SSID和密码按照一定的协议格式填充在MAC包中不加密的包头部分,采用广播和抓包方式,从手机等设备将SSID和密码分段多次传递给WIFI模块。 目前市面上常见的多种SmartConfig/SmartConnection技术,虽然各个Wi-Fi芯片方案会取不同的英文名字,但是基本原理则基本相同,只是填充的数据协议格式稍有区别。 智能配网一般需要在发送SSID和密码的设备(例如手机)上安装一个APP,该APP实现了和Wi-Fi模块之间的协议交互(发送SSID和密码)。 这个功能最早是TI提出并应用于CC3200上;不过从原理上讲,只要芯片驱动支持开启混杂模式(Wi-Fi Promiscuous),就可以支持一键配网功能,只是各个厂家叫法及实现编码方式不同而已。
由于无线数据传播必定是广播的,所以必然可以被监听到;如果AP没有加密的话,UDP直接可以把相关的信息发送出来.但是路由器AP一般都是加密的,而且加密方式不固定。 Wi-Fi模块在无法直接解析出数据包。从802.11的MAC层帧格式中可以看到, 链路层载荷数据(即网络层头部及网络层数)在数据帧中是清晰可辨的, 只要接收到802.11帧就可以立刻提取出载荷数据, 计算载荷数据的长度自不用说, 而这里的载荷数据, 通常就是密文。 在发送端,可以采用2种不同的编码发送方式:
接收端进入一键配置功能后,Wi-Fi智能硬件从信道1开始监听路由上的数据,如当前监听信道有符合规则的数据包,就停止信道切换,停留在当前信道接收完全部数据.否则就依次切换至信道2.3.4....直到信道14后又从信道1开始继续监听依次循环; 当然,Wi-Fi智能硬件可以在开启混杂模式之前,先行扫描当前环境下存在的AP获取所有当前AP的信道,然后只对当前扫描到的信道进行依次监听,如当前环境下只存在2个路由,分别在1.6信道,只需轮流扫描channel1和channel6,这样可以提高配置效率。 声波配网 声波配网,即通过手机发出声波,将SSID、password等信息传给设备的一种配网方式。通过手机播放声波把Wi-Fi的初始化连接信息传递给智能设备,让设备识别完成Wi-Fi初始化流程建立网络连接。 (编辑:晋中站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |