本發(fā)明涉及網(wǎng)絡通信領域,尤其涉及一種用于Wi-Fi網(wǎng)絡的配置方法,以及使用該配置方法的物聯(lián)網(wǎng)終端和控制端。
背景技術:
隨著物聯(lián)網(wǎng)技術的高速發(fā)展以及Wi-Fi網(wǎng)絡的日益普及,越來越多的物聯(lián)網(wǎng)終端會具備Wi-Fi模塊,以接入網(wǎng)絡或云端。對于包含Wi-Fi模塊的物聯(lián)網(wǎng)終端來說,在接入Wi-Fi網(wǎng)絡之前,需要獲取到Wi-Fi網(wǎng)絡的服務集標識(SSID)和密碼來與AP(Access Point)建立連接,才能連接該Wi-Fi網(wǎng)絡。但是對于一些物聯(lián)網(wǎng)終端,尤其是headless device(即不包括人機界面的設備),由于難以將Wi-Fi網(wǎng)絡的SSID和密碼配置進去,因此在接入Wi-Fi網(wǎng)絡的時候,往往需要非常繁多的操作,對普通用戶造成了極大的困擾。
為了簡化Wi-Fi的配置流程,現(xiàn)有的WPS標準目前可支持三種方法:PBC(Push-button configuration),PIN(Personal Identification Number)及NFC(Near Field Communication)。其中PBC方法配置起來最簡單,只需要在120秒分別按下AP和物聯(lián)網(wǎng)終端上的WPS按鍵,就可以配置好物聯(lián)網(wǎng)終端的Wi-Fi模塊,但是官方文檔中強調了PBC方法對主動攻擊的防御非常脆弱,容易遭受網(wǎng)絡攻擊。而PIN方法是WPS認證強制要求的方法,此方法需要輸入物聯(lián)網(wǎng)終端的PIN碼,比如,物聯(lián)網(wǎng)終端需要接入家庭網(wǎng)絡,由于家庭網(wǎng)絡中的AP通常也沒有輸入界面,因此需要借助個人PC或平板等訪問AP設置界面的網(wǎng)頁,然后將物聯(lián)網(wǎng)終端的PIN碼輸入到對應位置。可見操作也比較繁瑣,普通用戶使用起來非常不便。而NFC方法需要物聯(lián)網(wǎng)終端具備NFC近場通訊硬件,這樣就增加了設備的成本,不利于推廣。此外,物聯(lián)網(wǎng)設備和Wi-Fi AP都必須支持WPS功能,才能使用WPS方法,但是現(xiàn)實情況中,并非所有的Wi-Fi設備都經(jīng)過了WPS認證,而通過WPS認證也無形增加了設備成本。
另外,現(xiàn)有技術中還可以通過物聯(lián)網(wǎng)終端Wi-Fi模塊支持AP或者Soft AP模式來進行Wi-Fi配置。該方法配置過程如下:物聯(lián)網(wǎng)終端Wi-Fi模塊首先進入AP或Soft AP模式,即構建一個Wi-Fi網(wǎng)絡(網(wǎng)絡A);控制端(如手機、筆記本等)斷開和Wi-Fi路由器的連接,搜索到網(wǎng)絡A并連接,連接成功后物聯(lián)網(wǎng)終端和控制端可以進行通信,此時在控制端運行特定的應用程序,將Wi-Fi路由器的SSID和密碼等配置信息發(fā)送給物聯(lián)網(wǎng)終端;物聯(lián)網(wǎng)終端成功接收到這些配置信息后,將Wi-Fi模塊轉換為Station模式,依據(jù)接收的配置信息連接Wi-Fi路由器,與此同時,手機斷開和網(wǎng)絡A的連接并連接到Wi-Fi路由器,繼而完成整個配置過程。由上可見,該方法需要物聯(lián)網(wǎng)終端Wi-Fi模塊支持AP或者Soft AP模式,同時配置流程復雜,需要用戶多次切換網(wǎng)絡,用戶也需要具備一定的網(wǎng)絡技術基礎,不便于用戶的操作使用。
現(xiàn)有還有一種配置方案是通過控制端的廣播/組播來配置物聯(lián)網(wǎng)設備的Wi-Fi模塊。該方法配置過程如下:物聯(lián)網(wǎng)設備Wi-Fi模塊首先進入monitor模式,控制端連接Wi-Fi網(wǎng)絡的路由器后,在控制端運行特定的應用程序,該應用程序依據(jù)特定的規(guī)則將Wi-Fi路由器的SSID及密碼等配置信息嵌入到數(shù)據(jù)包中,然后通過廣播/組播的形式將這些數(shù)據(jù)包發(fā)送到路由器Wi-Fi網(wǎng)絡中,物聯(lián)網(wǎng)設備Wi-Fi模塊監(jiān)聽到這些廣播/組播幀后,通過特定的規(guī)則解析得到Wi-Fi路由器的SSID及密碼等配置信息,然后依據(jù)這些配置信息自動接入Wi-Fi路由器。
其中一種特定的規(guī)則如:將Wi-Fi配置信息映射到數(shù)據(jù)包的長度信息當中,通過廣播的方式發(fā)送到Wi-Fi網(wǎng)絡中,但是由于受到幀MTU(Maximum Transmission Unit)的限制,理論上每幀數(shù)據(jù)可用來存放Wi-Fi配置信息的空間最大為11 bits,在傳遞一個8個字節(jié)的SSID和8個字節(jié)的密碼信息時,較為理想的狀態(tài)下也是需要發(fā)送14個數(shù)據(jù)幀,才能夠完成Wi-Fi配置。
另外一種特定的規(guī)則如:將Wi-Fi配置信息填充到組播IP地址的后三字節(jié)中,通過組播的方式發(fā)送到Wi-Fi網(wǎng)絡中,理論上每幀可用來存放Wi-Fi配置信息的空間為24 bits。在傳遞一個8個字節(jié)的SSID和8個字節(jié)的密碼信息時,較為理想的狀態(tài)下也是需要發(fā)送12個數(shù)據(jù)幀。
上述這兩種方案配置信息的傳輸容量均相對較小,相同長度的配置信息發(fā)送時間長。此外,由于網(wǎng)絡中廣播包比重往往較大,會對解析過程造成一定干擾,導致穩(wěn)定性不高,如果出現(xiàn)丟包或錯包的情況,配置時間會更長。
技術實現(xiàn)要素:
本發(fā)明的第一目的是提供一種控制端提高配置效率、配置穩(wěn)定性和使用方便性的用于Wi-Fi網(wǎng)絡的配置方法。
本發(fā)明的第二目的是提供一種物聯(lián)網(wǎng)終端提高配置效率、配置穩(wěn)定性和使用方便性的用于Wi-Fi網(wǎng)絡的配置方法。
本發(fā)明的第三目的是提供一種提高配置效率、配置穩(wěn)定性和使用方便性的控制端。
本發(fā)明的第四目的是提供一種提高配置效率、配置穩(wěn)定性和使用方便性的物聯(lián)網(wǎng)終端。
為了實現(xiàn)本發(fā)明的第一目的,本發(fā)明提供一種控制端用于Wi-Fi網(wǎng)絡的配置方法,其中,配置方法包括發(fā)送配置幀的步驟,配置幀為802.11數(shù)據(jù)幀,配置幀的目標MAC地址包括配置數(shù)據(jù),配置數(shù)據(jù)包括服務集標識或密碼。
由上述方案可見并參照圖1,圖1是傳輸協(xié)議的封裝原理示意圖,最上層為Ethernet幀格式,然后經(jīng)過LLC(Logic Link Control)子層封裝,最后按照802.11 MAC(Medium Access Control)子層進行封裝,形成802.11幀。依據(jù)802.11規(guī)范,對于WEP、WPA、WPA2安全模式來說,在發(fā)送802.11數(shù)據(jù)幀時,需要對802.11幀的Payload數(shù)據(jù)進行加密。因此,終端接入到Wi-Fi網(wǎng)絡之后,發(fā)送的數(shù)據(jù)幀僅MAC Header域是透明的,其他Payload部分都經(jīng)過了加密。由于802.11幀的MAC Header字段總是暴露的,所以可以從MAC Header中獲取信息;由于Payload一般都是經(jīng)過加密的,在沒有密鑰的情況下不能解析該部分的數(shù)據(jù)。
依據(jù)802.11 MAC幀的封裝可看出,Ethernet幀中的目標MAC地址(Destination MAC)和源MAC地址(Source MAC)地址信息會加入到802.11 MAC header中??梢岳眠@兩個字段來制定一套特定的通信協(xié)議,進行信息傳遞。但是對于Wi-Fi網(wǎng)絡來說,對于發(fā)送出去的802.11幀,如果幀中的Source MAC地址不在該Wi-Fi網(wǎng)絡中,該數(shù)據(jù)幀會被不斷重發(fā),引起錯誤,所以不能修改源MAC地址(Source MAC),但是可以修改目標MAC地址(Destination MAC)。
故可以將Wi-Fi的配置信息存放到802.11幀的目的地址中。如果物聯(lián)網(wǎng)終端處于監(jiān)聽模式,可以抓取到該802.11數(shù)據(jù)幀。理論上每幀可用來存放Wi-Fi配置信息的空間為48 bits,遠大于技術背景中提到的其他配置方案。由于目標MAC地址容量大,所以同樣多的數(shù)據(jù)只需要發(fā)送更少的數(shù)據(jù)幀,這樣就提高了配置效率,使整個Wi-Fi配置過程更快。
控制端發(fā)送這些包含Wi-Fi配置信息的配置幀,具體為,配置幀的目標MAC地址包括配置數(shù)據(jù),配置數(shù)據(jù)包括SSID或密碼。
更進一步的方案是,配置幀的目標MAC地址還包括過濾代碼、配置幀標識和第一循環(huán)冗余校驗碼和序號,過濾代碼為控制端和物聯(lián)網(wǎng)終端之間的預設標識,配置幀標識與配置數(shù)據(jù)關聯(lián),第一循環(huán)冗余校驗碼為配置數(shù)據(jù)的校驗結果,序號與配置數(shù)據(jù)關聯(lián)。
由上可見,過濾代碼可幫助快速地判斷信息源端和過濾出所需要的幀,循環(huán)冗余校驗碼為配置數(shù)據(jù)的校驗結果,用于保證數(shù)據(jù)包傳輸?shù)恼_性和完整性,配置幀標識用于標識數(shù)據(jù)幀的類型,當配置數(shù)據(jù)較多時,需要分段傳輸,可通過序號對配置數(shù)據(jù)進行識別,以及通過校驗碼校驗數(shù)據(jù)是否出錯,保證配置數(shù)據(jù)傳輸?shù)母咝院头€(wěn)定性。
更進一步的方案是,配置方法在發(fā)送配置幀的步驟之前還包括發(fā)送同步幀或發(fā)送輔助幀的步驟,同步幀為802.11數(shù)據(jù)幀;同步幀的目標MAC地址包括過濾代碼、同步碼、同步幀標識和第二循環(huán)冗余校驗碼,第二循環(huán)冗余校驗碼為同步碼的校驗結果。輔助幀均為802.11數(shù)據(jù)幀,輔助幀的目標MAC地址包括過濾代碼、服務集標識的字符串長度、密碼的字符串長度、安全加密模式、輔助幀標識和第三循環(huán)冗余校驗碼,第三循環(huán)冗余校驗碼為服務集標識的字符串長度、密碼的字符串長度和安全加密模式的校驗結果
由上可見,現(xiàn)實生活中的無線網(wǎng)絡往往非常復雜,在同一個空間中,可能存在多個Wi-Fi網(wǎng)絡,每個Wi-Fi網(wǎng)絡工作的信道可能不同,每個Wi-Fi網(wǎng)絡也可能包含多個發(fā)送終端,這些發(fā)送終端又在不間斷的發(fā)送無線包。如果物聯(lián)網(wǎng)終端開啟監(jiān)聽模式,其獲取的數(shù)據(jù)包將是海量的。故物聯(lián)網(wǎng)終端需要確定哪一個控制端在發(fā)送具有Wi-Fi配置信息的數(shù)據(jù)包。當物聯(lián)網(wǎng)終端接收到同步幀時,通過分析該同步幀可獲取發(fā)送終端的MAC地址,該數(shù)據(jù)幀的發(fā)送終端即為對應的控制端。
輔助幀的發(fā)送可使物聯(lián)網(wǎng)終端獲取服務集標識的字符串長度、密碼的字符串長度、安全加密模式,可確保配置信息正確,減少Wi-Fi配置過程時間。
為了實現(xiàn)本發(fā)明的第二目的,本發(fā)明提供一種物聯(lián)網(wǎng)終端用于Wi-Fi網(wǎng)絡的配置方法,其中,配置方法包括接收配置幀的步驟,配置幀為802.11數(shù)據(jù)幀;配置幀的目標MAC地址包括配置數(shù)據(jù),配置數(shù)據(jù)包括SSID或密碼。
更進一步方案是,配置方法還包括連接步驟,連接步驟包括:解析配置幀并獲取配置數(shù)據(jù);根據(jù)服務集標識和密碼連接Wi-Fi網(wǎng)絡。
更進一步方案是,所述配置幀的目標MAC地址還包括:過濾代碼、配置幀標識、第一循環(huán)冗余校驗碼和序號;所述過濾代碼為控制端和所述物聯(lián)網(wǎng)終端之間的預設標識,所述配置幀標識與所述配置數(shù)據(jù)關聯(lián),所述第一循環(huán)冗余校驗碼為所述配置數(shù)據(jù)的校驗結果,所述序號與所述配置數(shù)據(jù)關聯(lián)。
由上可見,過濾代碼可幫助快速地判斷信息源端和過濾出所需要的幀,循環(huán)冗余校驗碼為配置數(shù)據(jù)的校驗結果,用于保證數(shù)據(jù)包傳輸?shù)恼_性和完整性,配置幀標識用于標識數(shù)據(jù)幀的類型,當配置數(shù)據(jù)較多時,需要分段傳輸,可通過序號對配置數(shù)據(jù)進行識別,以及通過校驗碼校驗數(shù)據(jù)是否出錯,保證配置數(shù)據(jù)傳輸?shù)母咝院头€(wěn)定性。
更進一步方案是,所述配置方法在接收所述配置幀的步驟之前還包括接收同步幀或接收輔助幀的步驟;所述同步幀為802.11數(shù)據(jù)幀,所述同步幀的目標MAC地址包括所述過濾代碼、同步碼、同步幀標識和第二循環(huán)冗余校驗碼;所述第二循環(huán)冗余校驗碼為所述同步碼的校驗結果;所述輔助幀為802.11數(shù)據(jù)幀,所述輔助幀的目標MAC地址包括所述過濾代碼、所述服務集標識的字符串長度、所述密碼的字符串長度、安全加密模式、輔助幀標識和第三循環(huán)冗余校驗碼;所述安全加密模式為Wi-Fi網(wǎng)絡的加密方式,所述第三循環(huán)冗余校驗碼為所述服務集標識的字符串長度、所述密碼的字符串長度和所述安全加密模式的校驗結果。
由上可見,現(xiàn)實生活中的無線網(wǎng)絡往往非常復雜,在同一個空間中,可能存在多個Wi-Fi網(wǎng)絡,每個Wi-Fi網(wǎng)絡工作的信道可能不同,每個Wi-Fi網(wǎng)絡也可能包含多個發(fā)送終端,這些發(fā)送終端又在不間斷的發(fā)送無線包。如果物聯(lián)網(wǎng)終端開啟監(jiān)聽模式,其獲取的數(shù)據(jù)包將是海量的。故物聯(lián)網(wǎng)終端需要確定哪一個控制端在發(fā)送具有Wi-Fi配置信息的數(shù)據(jù)包。當物聯(lián)網(wǎng)終端接收到同步幀時,通過分析該同步幀可獲取發(fā)送終端的MAC地址,該數(shù)據(jù)幀的發(fā)送終端即為對應的控制端。
輔助幀的發(fā)送可使物聯(lián)網(wǎng)終端獲取服務集標識的字符串長度、密碼的字符串長度、安全加密模式,可確保配置信息正確,減少Wi-Fi配置過程時間。
更進一步方案是,在接收所述同步幀的步驟之前,所述配置方法還包括:切換至監(jiān)聽模式,并定時切換信道地監(jiān)聽802.11數(shù)據(jù)幀;當?shù)谝淮谓邮盏剿鐾綆?,則鎖定所述同步幀所在的信道。
由上可見,物聯(lián)網(wǎng)終端在接收同步幀之前,需要定時切換信道監(jiān)聽數(shù)據(jù)包,當接收到同步幀時鎖定該信道繼續(xù)接收數(shù)據(jù)包,且通過單播方式來接收同步幀、輔助幀或配置幀,能夠使配置過程更為穩(wěn)定和高效。
為了實現(xiàn)本發(fā)明的第三目的,本發(fā)明提供一種控制端,包括處理器和無線通訊模塊,處理器通過無線通訊模塊接收和發(fā)送數(shù)據(jù),其中,處理器執(zhí)行上述方案中的配置方法。
由上述方案可見,控制端與物聯(lián)網(wǎng)終端連接配置時,控制端向外輸出802.11的配置幀,并將配置信息存放在配置幀中,具體為,配置幀的目標MAC地址包括過濾代碼、配置數(shù)據(jù)、配置幀標識和校驗數(shù)據(jù),其中,過濾代碼可幫助快速判斷信息源端,也可更快的過濾出所需要的幀,配置幀標識用于標識數(shù)據(jù)幀的類型,校驗數(shù)據(jù)用于保證數(shù)據(jù)包傳輸?shù)恼_性和完整性。
為了實現(xiàn)本發(fā)明的第四目的,本發(fā)明提供一種物聯(lián)網(wǎng)終端,包括處理器和無線通訊模塊,處理器通過無線通訊模塊接收和發(fā)送數(shù)據(jù),其中,處理器執(zhí)行上述方案中的配置方法。
由上述方案可見,控制端與物聯(lián)網(wǎng)終端連接配置時,物聯(lián)網(wǎng)終端接收802.11的配置幀,這些配置幀中包含Wi-Fi配置信息,具體為,配置幀的目標MAC地址包括過濾代碼、配置數(shù)據(jù)、配置幀標識和校驗數(shù)據(jù)。其中,通過解析過濾代碼來快速地過濾出所需要的幀,通過解析配置幀標識來識別數(shù)據(jù)幀的類型,通過解析校驗數(shù)據(jù)來檢驗配置數(shù)據(jù)是否出錯。
附圖說明
圖1是802.11無線網(wǎng)絡傳輸協(xié)議的封裝原理示意圖。
圖2是本發(fā)明Wi-Fi配置方法實施例的物聯(lián)網(wǎng)連接原理示意圖。
圖3是本發(fā)明Wi-Fi配置方法實施例中控制端配置流程圖。
圖4是本發(fā)明Wi-Fi配置方法實施例中數(shù)據(jù)幀結構示意圖。
圖5是本發(fā)明Wi-Fi配置方法實施例中物聯(lián)網(wǎng)終端配置流程圖。
圖6是本發(fā)明物聯(lián)網(wǎng)系統(tǒng)實施例的系統(tǒng)框圖。
以下結合附圖及實施例對本發(fā)明作進一步說明。
具體實施方式
控制端用于Wi-Fi網(wǎng)絡的配置方法實施例:
參照圖2和圖3,物聯(lián)網(wǎng)系統(tǒng)包括路由器端11、物聯(lián)網(wǎng)終端12和控制端13,控制端13發(fā)送的同步幀、輔助幀和配置幀均通過路由器端11傳遞發(fā)送給物聯(lián)網(wǎng)終端12。
在首次使用時,先將控制端13(如手機、電腦和平板等)接入路由器端11的Wi-Fi網(wǎng)絡,即步驟S11,隨后執(zhí)行步驟S12,對Wi-Fi網(wǎng)絡的SSID和密碼進行加密。
隨后執(zhí)行步驟S13,控制端13通過單播方式發(fā)送同步幀集合,參照圖4,一個同步幀集合包括兩個不同的同步幀,同步幀為802.11數(shù)據(jù)幀,且依次發(fā)送同步幀集合六次,具體地,同步幀的目標MAC地址的結構如圖4所示,同步幀的目標MAC地址依次包括過濾代碼(filter code)、同步幀標識(1)、循環(huán)冗余校驗碼(crc)和同步碼(sync碼),一個字節(jié)的filter code,一個字節(jié)的同步幀標識,一個字節(jié)的循環(huán)冗余校驗碼,三個字節(jié)的同步碼,兩個同步幀的同步碼分別為{0x11,0x22,0x33}和{0x33,0x22,0x11}。
過濾代碼為控制端13和物聯(lián)網(wǎng)終端12之間的預設標識,在本實施例中,過濾代碼為源MAC地址每個字節(jié)的異或運算得出,即filter code=s_addr[0]^s_addr[1]^s_addr[2]^s_addr[3]^s_addr[4]^s_addr[5],此處在目標MAC地址中加入和源MAC地址的關聯(lián),可幫助快速判斷源端,也可更快的過濾出所需要的幀,對于同步幀來說,同步幀標識符設置為1,循環(huán)冗余校驗碼為同步碼的校驗結果,即為后三個字節(jié)同步碼的crc校驗。
隨后執(zhí)行步驟S14,控制端13通過單播方式發(fā)送輔助幀集合,一個輔助幀集合包括一個輔助幀,輔助幀為802.11數(shù)據(jù)幀,且依次發(fā)送輔助幀集合六次,具體地,輔助幀的目標MAC地址的結構如圖4所示,輔助幀的目標MAC地址依次包括過濾代碼(filter Code)、輔助幀標識(2)、循環(huán)冗余校驗碼(crc)、服務集標識的字符串長度(SSID length)、密碼的字符串長度(password length)和安全加密模式(secure mode), 一個字節(jié)的filter code,一個字節(jié)的輔助幀標識,一個字節(jié)的循環(huán)冗余校驗碼,一個字節(jié)的SSID length,一個字節(jié)的password length,一個字節(jié)的secure mode。
對于輔助幀來說,輔助幀標識符設置為2,循環(huán)冗余校驗碼為服務集標識的字符串長度、密碼的字符串長度和安全加密模式的校驗結果,即為后三個字節(jié)的數(shù)據(jù)的crc校驗。
隨后執(zhí)行步驟S15,控制端13通過單播方式發(fā)送配置幀集合,一個配置幀集合包括多個具有SSID數(shù)據(jù)的配置幀和多個具有密碼數(shù)據(jù)配置幀,配置幀的個數(shù)可根據(jù)SSID和密碼的長度而定,配置幀為802.11數(shù)據(jù)幀,且依次發(fā)送配置幀集合四次,具體地,配置幀的目標MAC地址的結構如圖4所示,配置幀的目標MAC地址依次包括過濾代碼(filter code)、配置幀標識(3/4)、校驗數(shù)據(jù)(index|crc)和配置數(shù)據(jù),一個字節(jié)的filter code,一個字節(jié)的配置幀標識,一個字節(jié)的校驗數(shù)據(jù),三字節(jié)的配置數(shù)據(jù)。對于具有加密的SSID數(shù)據(jù)的配置幀來說,配置幀標識符設置為3,對于具有加密的密碼數(shù)據(jù)的配置幀來說,配置幀標識符設置為4。
配置數(shù)據(jù)包括服務集標識或密碼,在本實施例中分別采用不同配置幀存放加密的SSID和密碼,而在同一個配置幀同時存放加密的SSID和密碼也是可以實現(xiàn)的。校驗數(shù)據(jù)包括序號index和循環(huán)冗余校驗碼crc,crc為該字節(jié)的低三位,為后三字節(jié)數(shù)據(jù)的crc校驗結果和0x07相與,index為高五位,表示該配置數(shù)據(jù)的序號(是由于SSID和密碼通常超過3字節(jié),需要分段存儲)。
然后執(zhí)行步驟S16,等待接收由物聯(lián)網(wǎng)終端發(fā)出的物聯(lián)網(wǎng)終端確認信號,并判斷是否收到,如否,則返回步驟S13,如是,則表明物聯(lián)網(wǎng)終端接收到配置數(shù)據(jù)并可根據(jù)配置數(shù)據(jù)接入Wi-Fi網(wǎng)絡,故最后執(zhí)行步驟S17,控制端13發(fā)送控制端確認信號。
物聯(lián)網(wǎng)終端用于Wi-Fi網(wǎng)絡的配置方法實施例:
參照圖5,物聯(lián)網(wǎng)終端12首次連接Wi-Fi網(wǎng)絡時,首先執(zhí)行步驟S21,上電后設置循環(huán)定時器,定時切換監(jiān)聽Wi-Fi信道,接著執(zhí)行步驟S22,將物聯(lián)網(wǎng)終端12切換至監(jiān)聽模式,在所有Wi-Fi信道間循環(huán)監(jiān)聽。隨后執(zhí)行步驟S23,接收一個數(shù)據(jù)幀,然后執(zhí)行步驟S24,判斷接收該數(shù)據(jù)幀之前是否已經(jīng)接收到同步幀,如否,則執(zhí)行步驟S25,判斷該數(shù)據(jù)幀是否為同步幀,如否,則返回執(zhí)行步驟S23,繼續(xù)執(zhí)行抓取數(shù)據(jù)幀,如果該數(shù)據(jù)幀為同步幀,則執(zhí)行步驟S26,分析該同步幀并獲取幀中的源MAC地址,同時鎖定該同步幀所在的信道,使得物聯(lián)網(wǎng)終端12僅在該信道監(jiān)聽。
隨后返回執(zhí)行步驟S23,繼續(xù)在鎖定的信道上抓取單播傳輸?shù)臄?shù)據(jù)幀,在抓取另一數(shù)據(jù)幀后,執(zhí)行步驟S24,判斷之前是否已經(jīng)收到同步幀,如是,則執(zhí)行步驟S27,依據(jù)源MAC地址對監(jiān)聽的數(shù)據(jù)幀進行過濾,該數(shù)據(jù)幀可能是同步幀、輔助幀或配置幀,故可對符合的同步幀、輔助幀和配置幀進行解析,檢測其中的目標MAC地址是否匹配預定義的規(guī)則,即如上述實施例中的同步幀、輔助幀和配置幀的目標MAC地址的結構所示,如果同步幀、輔助幀和配置幀的目標MAC地址結構匹配,則按照目標MAC地址中的序號、標記等相關的信息進行解析,并獲得該目標MAC地址中存放的部分加密的SSID和密碼。
隨后執(zhí)行步驟S28,判斷是否解析完全,如否,則依次執(zhí)行步驟S23和S24,繼續(xù)抓取數(shù)據(jù)幀并進行解析,直到根據(jù)SSID長度和密碼長度完全解析得出加密后路由器端Wi-Fi網(wǎng)絡的SSID和密碼。然后執(zhí)行步驟S29,對加密的SSID和密碼進行解密,得到Wi-Fi的配置數(shù)據(jù),然后切換至Station模式,并根據(jù)SSID和密碼連接路由器端的Wi-Fi網(wǎng)絡。
隨后執(zhí)行步驟S30,判斷是否成功連接Wi-Fi網(wǎng)絡,如否則返回步驟S21,重新連接Wi-Fi網(wǎng)絡,如是則執(zhí)行步驟S31,物聯(lián)網(wǎng)終端發(fā)送物聯(lián)網(wǎng)終端確認信號,最后執(zhí)行步驟S32,判斷是否接收由控制端發(fā)送的控制端確認信號,如收到則配置流程結束。另外,整個配置過程設置有超時機制,如果超時,會自動退出配置流程。
物聯(lián)網(wǎng)系統(tǒng)實施例:
參照圖6,物聯(lián)網(wǎng)系統(tǒng)包括路由器端11、控制端13和多個物聯(lián)網(wǎng)終端,多個物聯(lián)網(wǎng)終端包括物聯(lián)網(wǎng)終端12、14和15,由于物聯(lián)網(wǎng)終端均相同,下面以物聯(lián)網(wǎng)終端12為例進行說明。物聯(lián)網(wǎng)終端12包括處理器121和無線通訊模塊122,處理器121通過無線通訊模塊122與路由器端21連接并接收和發(fā)送數(shù)據(jù),控制端13包括處理器131和無線通訊模塊132,控制端13通過通訊模塊132與路由器端11連接,處理器131通過通訊模塊132和路由器端11與各個物聯(lián)網(wǎng)終端交互并接收和發(fā)送數(shù)據(jù)。
控制端13可實現(xiàn)對SSID和密碼加密,控制端13通過通訊模塊132和路由器端11發(fā)送同步幀集合、發(fā)送輔助幀集合、發(fā)送配置幀集合、接收物聯(lián)網(wǎng)終端確認信號和發(fā)送確認信號,同時還實現(xiàn)將過濾代碼、配置數(shù)據(jù)、幀標識、校驗數(shù)據(jù)、源MAC地址、同步碼、循環(huán)冗余校驗碼、服務集標識的字符串長度、密碼的字符串長度和安全加密模式分別對應的存放在同步幀、輔助幀和配置幀的目標MAC地址中。
處理器121可執(zhí)行如物聯(lián)網(wǎng)終端配置方法實施例中的步驟,即如切換監(jiān)聽信道;切換工作模式;通過無線通訊模塊122接收同步幀、輔助幀和配置幀;分析得出源MAC地址、配置數(shù)據(jù)等;解密SSID和密碼;根據(jù)SSID和密碼連接Wi-Fi網(wǎng)絡;通過通訊模塊122和路由器端11發(fā)送和接收確認信號。
由上可見,控制端與物聯(lián)網(wǎng)終端連接配置時,通過802.11的同步幀、輔助幀和配置幀的傳輸,并將配置信息存放在配置幀中,具體為,配置幀的目標MAC地址包括過濾代碼、配置數(shù)據(jù)、配置幀標識和校驗數(shù)據(jù)。其中,過濾代碼可幫助快速判斷信息源端,也可更快的過濾出所需要的幀;配置幀標識用于標識數(shù)據(jù)幀的類型;校驗數(shù)據(jù)能夠檢驗配置數(shù)據(jù)是否出錯。通過將相關的配置數(shù)據(jù)存儲在目標MAC地址獲得更大的容量,使得在連接配置時發(fā)送更少的數(shù)據(jù)幀,提高連接配置效率,同時使Wi-Fi網(wǎng)絡配置更加快速和穩(wěn)定。以及相對于廣播或組播的方式,其容量大大提升,發(fā)送相同長度的配置信息時間更短,提高了物聯(lián)網(wǎng)設備Wi-Fi配置的速度,其由于每幀容量大,發(fā)送次數(shù)更少,解析過程難度降低同時更加精確,增加了物聯(lián)網(wǎng)終端Wi-Fi配置的穩(wěn)定性,以及由于每幀容量大,可通過添加更多的校驗機制,來有效的抵抗錯包、丟包等一些復雜Wi-Fi環(huán)境,提升了物聯(lián)網(wǎng)終端Wi-Fi配置的抗干擾能力。
上述實施例只是本發(fā)明較佳實施例,在一些理想狀態(tài)的網(wǎng)絡環(huán)境中,可只發(fā)送和接收一個配置幀,便可實現(xiàn)Wi-Fi網(wǎng)絡的配置連接,又如在一些網(wǎng)絡環(huán)境下,可以發(fā)送接收一個同步幀集合、一個輔助幀集合和一個配置幀集合,也是可以實現(xiàn)配置連接的,再如,根據(jù)不同的網(wǎng)絡環(huán)境和配置數(shù)據(jù)的大小,可將幀集合的發(fā)送數(shù)量進行調整,即五個同步幀集合、三個輔助幀集合、六個配置幀集合,也是同樣能夠實現(xiàn)目的的。同時對于數(shù)據(jù)幀的目標MAC地址存放相關信息和配置數(shù)據(jù),除了如上述實施例的存放外,還可以以其他順序存放,或以不同字節(jié)容量形式存放數(shù)據(jù)。再例如過濾代碼與源MAC地址的關聯(lián)還可采用其他運算方式得出,再例如過濾代碼可以設置為預設的代碼(如00等),只要是控制端和物聯(lián)網(wǎng)終端的預定義規(guī)則是相互匹配的,即可相互識別交互的預設標識,便可使得物聯(lián)網(wǎng)終端確定控制端為發(fā)送端。只要將配置數(shù)據(jù)和相關信息存儲在802.11數(shù)據(jù)幀的目標MAC地址上便可實現(xiàn)本發(fā)明的目的。