今天在看udp广播配网的东西,中午吃完饭在外面溜达,想到一种可以加速配网速度的方法。
目前大家都在用的配网方式,主要是用于wifi iot的设备。采用广播 组播或者probe request 等单独或者联合的方式来将ssid和密码的信息传递到设备端,设备端再一一接收,直至接收完全。之后就可以去连接路由器了。
我这次主要是在这个ssid上面打主意,现在传ssid是一个字符一个字符的传递,直至传输完全。我打算只用一个字节或者两个字节,就将ssid传递过去。如何实现呢?
1,手机连接路由,获取路由bssid ssid;;
2,使用md5或者base64之类的算法计算bssid ssid,得出一个hash值;
3,WiFi设备进入一键配置状态后,首先进行扫网;
4,设备根据扫网结果,得出bssid ssid列表,再根据bssid ssid列表使用同等算法计算出相应的hash表;
5,手机将计算出的hash值发出来,
6,设备依次监听各个信道,将接收到的hash值与自己的hash表进行比对,比对完成后,即可以知道手机所连接的bssid ssid等的信息。
7,如此,ssid的传递就完成了。
这样一来,只是一个锁定的时间就完成了ssid的传输工作,接下来就只剩传输密码了。相比于传统的锁信息,传ssid,传密码的三步工作,这里直接把中间的那个步骤省掉了;估算下来,应该可以节省3分之一的时间吧。因为传输的数据少了,成功率也会提升,最后会体现在配网时间更快上。