IoT時代:Wi-Fi「配網」技術剖析總結

導讀

近年來,物聯網市場競爭激烈,從物聯網平臺廠商,設備生產商,到服務提供商,都在涌入這片紅海。預計到2020年,全球聯網設備數量將達到260億個,年複合增加率達到20%;全球聯網設備帶來的數據將達到44ZB,這一數據將是2012年的22倍,年複合增加率48%。算法

物聯網時代對網絡的需求

物聯網系統層次瀏覽器

物聯網系統從架構上劃分爲三個層次:感知層、網絡層、應用層:安全

  • 感知層:解決的是人類世界和物理世界的數據獲取問題,由各類傳感器以及傳感器網關構成。該層被認爲是物聯網的核心層,主要是物品標識和信息的智能採集,它由基本的感應器件(例如RFID標籤和讀寫器、各種傳感器、攝像頭、GPS、二維碼標籤和識讀器等基本標識和傳感器件組成)以及感應器組成的網絡(例如RFID網絡、傳感器網絡等)兩大部分組成。該層的核心技術包括低速和中高速短距離傳輸技術、自組織組網技術、協同信息處理技術,傳感器網絡中間件技術等,涉及的核心產品包括傳感器、電子標籤、傳感器節點、無線路由器、無線網關等。服務器

  • 傳輸層:也被稱爲網絡層,解決的是感知層所得到的數據的接入和傳輸功能,是進行信息交換、傳遞的數據通路。物聯網傳輸層分爲有線通訊傳輸層和無線通訊傳輸層。有線通訊技術包括中長距離的廣域網絡和短距離的現場總線;無線通訊層分爲長距離的無線局域網、中短距離的無線局域網和超短距離的無線局域網。而因爲物聯網的網絡層承擔着巨大的數據量,而且面臨更高的服務質量要求,物聯網須要對現有網絡進行融合和擴展,利用新技術以實現更加普遍和高效的互聯功能。網絡

  • 應用層:也可稱爲處理層,解決的是信息處理和人機界面的問題。網絡層傳輸而來的數據在這一層裏進入各種信息系統進行處理,並經過各類設備與人進行交互。處理層由業務支撐平臺(中間件平臺)、網絡管理平臺(例如M2M管理平臺)、信息處理平臺、信息安全平臺、服務支撐平臺等組成,完成協同、管理、計算、存儲、分析、挖掘、以及提供面向行業和大衆用戶的服務等功能,典型技術包括SOA技術、海量存儲、分佈數據處理、數據挖掘、信息管理等先進技術可被普遍採用。架構

在各層之間,信息不是單向傳遞的,可有交互、控制等,所傳遞的信息多種多樣,包括在特定應用系統範圍內能惟一標識物品的識別碼和物品的靜態與動態信息。函數

儘管物聯網在環境監測、智能電力、智能交通、工業監控、智能家居等經濟和社會各個領域的應用特色千差萬別,可是每一個應用的基本架構都包括感知、傳輸和應用三個層次,各類行業和各類領域的專業應用子網都是基於三層基本架構構建的。性能

物聯網接入協議與傳輸協議的區別編碼

咱們將物聯網通訊協議分爲兩大類,一類是接入協議,一類是傳輸協議:加密

接入協議通常負責子網內設備間的組網及通訊,接入協議大多都不屬於TCP/IP協議族,只能用於設備子網(設備與網關組成的局域網)內的通信;傳輸協議主要是運行在傳統互聯網TCP/IP協議之上的設備通信協議,負責設備經過互聯網進行數據交換及通訊。

採用接入協議的物聯網設備,須要經過網關進行協議轉換,轉換成通信協議才能接入互聯網。而採用通信協議的物聯網設備,則能夠直接接入互聯網。

經常使用的接入協議包括Wi-Fi、RFID、NFC、ZigBee、Bluetooth、LoRa、NB-IoT、GSM、GPRS、3/4/5G網絡、Ethernet、RS23二、RS48五、USB等等;經常使用的通信協議包括HTTP、CoAP、MQTT、XMPP、AMQP、JMS等。接入協議位於網絡層次架構中的物理/數鏈層,通信協議位於應用層。

物聯網接入協議和通信協議區別以下:

那麼,既然有了能夠直接接入互聯網的通信協議,那麼接入協議的意義何在呢?接入協議的優點提及了,相對於通信協議,接入協議所依賴的硬件資源要求更低,功耗更低,網絡傳輸的數據量也更小,所以,在控制領域等一些場景中更具優點。

這些場景中,物聯網設備每每沒有外接電源,所以要求功耗盡量低,好比,一節鈕釦電池可以供電一年左右。這樣的要求是HTTP等協議的所需的硬件環境難以勝任的。

經常使用的幾種物聯網接入協議

目前市場上常見的接入協議有ZigBee、藍牙以及Wi-Fi協議等:

  • ZigBee目前在工業控制領域應用普遍,在智能家居領域也有必定應用。它有如下主要優點:

①低成本:ZigBee協議數據傳輸速率低,協議簡單,因此開發成本也比較低。而且zigbee協議還免收專利費用。

②低功耗:因爲ZigBee協議傳輸速率低,節點所需的發射功率僅1mW,並採用休眠+喚醒模式,功耗極低。

③自組網:經過ZigBee協議自帶的mesh功能,一個子網絡內能夠支持多達65000個節點鏈接,能夠快速實現一個大規模的傳感網絡。

④安全性:使用crc校驗數據包的完整性,支持鑑權和認證,而且採用aes-128對傳輸數據進行加密。

ZigBee協議的最佳應用場景是無線傳感網絡,好比水質監測、環境控制等節點之間須要自組網以相互之間傳輸數據的工業場景中。在這些場景中ZigBee協議的優點發揮的很是明顯。目前國內外不少廠商也將ZigBee運用在智能家居方案中。

  • 藍牙協議你們都很是熟悉了,特別是隨着藍牙4.0協議推出後發展迅速,目前已經成爲智能手機的標配通訊組件。藍牙4.0之因此在近幾年發展迅速,主要有如下兩點緣由:

①低功耗:我認爲這個是藍牙4.0的大殺器,使用鈕釦電池的藍牙4.0設備可運行一年以上,這對不但願頻繁充電的可穿戴設備具備十分大的吸引力。當前基本世面上的可穿戴設備基本都選用藍牙4.0方案。

②可手機接入:近年來支持藍牙協議基本成爲智能手機的標配,用戶無需購買額外的接入模塊。

  • Bluetooth最大的優勢是不依賴於外部網絡、便攜、低功耗。只要有手機和智能設備,就能保持穩定的鏈接,走到哪連到哪。因此大部分運動和戶外使用的設備都會優先考慮Bluetooth。它的主要不足是:不能直接鏈接雲端,傳輸速度比較慢,組網能力比較弱。

  • Wi-Fi協議和藍牙協議同樣,目前也獲得了很是大的發展。因爲前幾年家用Wi-Fi路由器以及智能手機的迅速普及,Wi-Fi協議在智能家居領域也獲得了普遍應用:

①Wi-Fi能夠直接接入互聯網:相對於ZigBee,採用Wi-Fi協議的智能家居方案省去了額外的網關,相對於藍牙協議,省去了對手機等移動終端的依賴。

②Wi-Fi最大的優勢是鏈接快速、持久、穩定,它是IoT設備端鏈接的首選方案,惟一須要考慮的是智能設備對Wi-Fi覆蓋範圍的依賴致使smart devices的活動範圍比較小,不適合隨時攜帶和戶外場景。

至關於藍牙和ZigBee,Wi-Fi協議的功耗成爲其在物聯網領域應用的一大瓶頸。可是隨着如今各大芯片廠商陸續推出低功耗、低成本的Wi-Fi soc(如esp8266),這個問題也在逐漸被解決。

何謂「配網」

WIFI的 「聯網」和「自動聯網」

  • 連網:通常指的是Wi-Fi設備經過SSID和密碼來鏈接熱點AP或路由器,以加入後者所創建的網絡的過程。
  • 自動連網:通常指的是Wi-Fi設備在啓動、掉線、或掃描到特定的SSID後,會使用以前保存的SSID與密碼,自動鏈接熱點AP或路由器,而不須要手工從新輸入。其中,WIFI設備掉線後的「自動連網」,又經常被稱爲「自動重連」。
  • 自動連網:通常須要在以前配網成功後,將SSID和密碼進行保存,以便在須要「自動連網」時能夠從保存的地址讀取出來使用。

Wi-Fi的「配網」

「配網」指的是,外部向Wi-Fi模塊提供SSID和密碼,以便Wi-Fi模塊能夠鏈接指定的熱點或路由器並加入後者所創建的相關Wi-Fi網絡。

Wi-Fi模塊通常不像電腦手機或平板等設備,有豐富的人機交互界面,能夠方便的實現配網,所以,Wi-Fi模塊的「配網」方式支持,會成爲Wi-Fi模塊特性的一個基本話題。

能提供方便、靈活多樣、條件約束少的配網方式,經常成爲Wi-Fi模塊的賣點之一,更是Wi-Fi模塊的使用者,在選型時須要慎重考慮評估的一個重要方面。

Wi-Fi經常使用配網方式及原理實現

常見的配網方式,可歸爲以下幾大類:直接配網、WPS配網、WEB配網、SoftAP配網、智能配網配網、聲波配網。用戶能夠根據具體的使用場合選擇各類最適合的配網方式。

直接配網

所謂直接配網,就是經過UART串口、SPI口、SDIO口、I2C等主機接口,按照必定的通訊協議,將SSID和密碼,直接傳遞給WIFI模塊。Wi-Fi模塊在收到SSID和密碼後去鏈接熱點或路由器,並將鏈接的結果從主機接口返回。目前斑馬車機採用的這種方式鏈接盯盯拍。

例如,常見的經過UART串口AT指令配網、SPI API函數配網、SDIO API函數配網、I2C API函數配網等。

直接配網方式軟件方案實現簡單,但須要鋪設其餘的通訊線路,比較適合於板載WIFI模塊,或有其餘協議傳輸線鏈接的設備間。所以對於環境要求比較高,須要在系統間有其它的通訊鏈路存在。

WPS配網

路由器中WPS是由Wi-Fi聯盟所推出的全新Wi-Fi安全防禦設定(Wi-Fi Protected Setup)標準,該標準推出的主要緣由是爲了解決長久以來無線網絡加密認證設定的步驟過於繁雜艱難之弊病。WPS用於簡化Wi-Fi無線的安全設置和網絡管理。它支持兩種模式:我的識別碼(PIN)模式和按鈕(PBC)模式。

這種方式須要模塊支持WPS功能。使用者每每會由於步驟太過麻煩,以至乾脆不作任何加密安全設定,於是引起許多安全上的問題。由於安全性的緣故,近幾年已經逐步被放棄,愈來愈多的路由器開始放棄或者自動關閉對這種方式的支持。

WEB配網

在支持AP模式的Wi-Fi模塊上內嵌一個簡易的WEB服務器,在WEB網頁裏提供了配網的交互接口。其餘網絡設備(例如手機、平板、電腦等)直接鏈接上Wi-Fi模塊的AP熱點,在瀏覽器上打開該WEB網頁,在WEB網頁裏配置該Wi-Fi模塊去鏈接其餘的AP或路由器。

歸因於近年來愈來愈多的Wi-Fi芯片解決方案都開始支持STA+AP混合模式(即WIFI模塊不只能夠做爲工做站STA使用去鏈接其餘路由器或熱點,同時自己也能夠做爲一個熱點AP供其餘WIFI設備節點來鏈接),也歸因於近年來許多Wi-Fi芯片解決方案愈來愈高的集成度能夠將TCP

IP協議棧直接集成在Wi-Fi模塊上,所以,能夠簡單地在Wi-Fi模塊上直接實現一個WEB服務器,且這個服務器能夠經過Wi-Fi模塊的AP模式直接訪問(不須要依賴其餘網絡,手機等設備直接訪問WIFI模塊自創建的Wi-Fi網絡和WEB網頁,進行配置)。

這種配網方式的基本思想是,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),就能夠支持一鍵配網功能,只是各個廠家叫法及實現編碼方式不一樣而已。

SNAP:格式數據包

DA:目標MAC地址

SA:源MAC地址

LENGTH:表示後面數據的長度

LLC:表示LLC頭

SNAP:表示3byte的廠商代碼和2byte的協議類型表示

DATA:載荷數據

FCS:幀檢驗序列

因爲無線數據傳播一定是廣播的,因此必然能夠被監聽到;若是AP沒有加密的話,UDP直接能夠把相關的信息發送出來.可是路由器AP通常都是加密的,並且加密方式不固定。

Wi-Fi模塊在沒法直接解析出數據包。從802.11的MAC層幀格式中能夠看到, 鏈路層載荷數據(即網絡層頭部及網絡層數)在數據幀中是清晰可辨的, 只要接收到802.11幀就能夠馬上提取出載荷數據, 計算載荷數據的長度自不用說, 而這裏的載荷數據, 一般就是密文。

在發送端,能夠採用2種不一樣的編碼發送方式:

  • UDP廣播:從802.11幀格式分析中獲知,無線信號監聽方的角度來講,無論無線信道有沒有加密,DA、SA、LENGTH、LLC、SNAP、FCS字段老是暴露的,所以信號監聽方能夠從這6個字段獲取有效信息.從發送方講,因爲操做系統的限制,若是採用廣播只剩下LENGTH發送方可經過改變其所須要發送數據包的長度進行控制.因此只要指定出一套利用長度編碼的通信協議,就可利用數據包的Length字段進行數據傳遞;
  • UDP組播:組播地址是保留的D類地址從224.0.0.0-239.255.255.255,IP地址與MAC地址映射關係爲:將MAC地址的前25位設定爲01.00.5e,而MAC地址的後23位對應IP地址的位;故發送端能夠將數據編碼在組播ip的後23bit中,經過組播包發送,接收端進行解碼便可;

接收端進入一鍵配置功能後,Wi-Fi智能硬件從信道1開始監聽路由上的數據,如當前監聽信道有符合規則的數據包,就中止信道切換,停留在當前信道接收徹底部數據.不然就依次切換至信道2.3.4....直到信道14後又從信道1開始繼續監聽依次循環;

固然,Wi-Fi智能硬件能夠在開啓混雜模式以前,先行掃描當前環境下存在的AP獲取全部當前AP的信道,而後只對當前掃描到的信道進行依次監聽,如當前環境下只存在2個路由,分別在1.6信道,只需輪流掃描channel1和channel6,這樣能夠提升配置效率。

聲波配網

聲波配網,即經過手機發出聲波,將SSID、password等信息傳給設備的一種配網方式。經過手機播放聲波把Wi-Fi的初始化鏈接信息傳遞給智能設備,讓設備識別完成Wi-Fi初始化流程創建網絡鏈接。

必定程度上,聲波傳輸能夠理解爲相似NFC的一種近場通信技術。適用於沒有觸屏或觸屏較小不易於信息輸入,可是擁有麥克風的智能設備,如對話機器人,智能音響等。其優勢是配網速度快、可人耳感知,缺點是受環境干擾較大。

實現聲波配網,首先須要一套特定的算法庫,算法庫分手機端和設備端兩部分。手機端算法庫將ssid信息由字符串轉化爲聲音信號(PCM),而後將聲音信號經過音頻模塊播放出來。

同時,設備端錄下這一段聲音,而後用同一套算法庫將聲音信息解析出來,還原成原來的ssid信息(字符串),最後用解析到的ssid信息用於鏈接WIFI。

編解碼可選擇範圍分爲低頻、中頻、高頻三種,其中低頻的頻率範圍爲2K~5K,中頻的範圍爲8K~12K,高頻的範圍爲16K~20K。頻率越高,聲音越尖銳,抗噪性能越強。

顯然聲波配網技術中的技術難點就是聲波傳輸技術。而聲波傳輸的應用其實已經很廣啦:支付寶的聲波支付,QQ音樂中的歌曲的聲波分享,茄子快傳,蛐蛐兒等。

其實原理很簡單,能夠近似理解爲對稱加密,加解密的過程大概以下所示:

僅傳輸ASCII可打印字符。

傳輸UTF-8字符串。

簡單的說就是在發送端把你把要識別的字符映射成頻率,而後把一個頻率映射成一個音節信號(單頻率的正弦波)編碼成音頻播放;在接收端接收到音頻信號後,解析出頻率,而後根據兩邊共同的碼錶找到頻率對應的字符,從而解碼出數據。

具體來講就是咱們能夠將700HZ的正弦波對應成字符'a',800HZ的正弦波對應數字'b',900HZ的正弦波對應數字'c',以此類推。那麼數字串"abc"就對應成頻率串就是{700,800,900},而後把這個頻率串變成3個音節的正弦波音頻。若是規定每一個音節持續100ms,則{700,800,900}對應300毫秒的音頻段。接收方錄製聲音,對收到的聲音進行解析,識別出700HZ,800HZ,900HZ三段正弦波頻率,而後查找碼錶,解碼出的字符串就是"abc"。

聲波配網主要流程以下:

  • 首先,在手機(或平板等其它一代設備)輸入ssid信息(或獲取當前或系統保存的ssid信息),將信息由buffer編碼爲pcm數據;
  • 將使用算法庫編碼出來的pcm數據經過喇叭播放出來,同時,設備端打開錄音,捕獲pcm數據;
  • 設備端將pcm數據經過算法庫解碼回原來的buffer數據;
  • 從數據中解析出ssid、password等信息,並將其用於鏈接路由器。

IOT場景下的Wi-Fi配網選擇

Wi-Fi做爲最適合物聯網鏈接的技術,它能夠做爲物聯網的粘合劑。隨着鏈接節點的無限激增,聯網設備的覆蓋面和總量也將隨着快速增加。其內部集成了射頻收發、MAC、基帶處理、Wi-Fi協議和配置信息及網絡協議棧,用戶利用它能夠輕鬆實現串口設備的無線網絡功能。用戶在實際使用中可根據表中各配網方式的優劣選擇。

高德今年發佈天貓精靈高德版套裝。車盒藉助盯盯拍mini3行車記錄儀的攝像頭實現AR導航功能。在該案例中,充分考慮產品功能,論證其安全性,採用SoftAP的配網方式。

關注高德技術,找到更多出行技術領域專業內容
相關文章
相關標籤/搜索