導讀
近年來,物聯網市場競争激烈,從物聯網平台廠商,裝置生産商,到服務提供商,都在湧入這片紅海。預計到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、RS232、RS485、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的配網方式。
關注高德技術,找到更多出行技術領域專業内容