作者:張慧 金陳瀟帥
隨著藍(lán)牙低功耗(BLE)技術(shù)在物聯(lián)網(wǎng)(IoT)行業(yè)快速普及,涌現(xiàn)出傳感器、可穿戴設(shè)備、醫(yī)療設(shè)備等典型應(yīng)用,但隨著智能家居領(lǐng)域的蓬勃發(fā)展,藍(lán)牙設(shè)備進(jìn)行一對(duì)一的數(shù)據(jù)通信已逐漸無(wú)法滿足智能家居設(shè)備連接的需求,因此,藍(lán)牙技術(shù)聯(lián)盟(Bluetooth Special Interest Group)于2017年7月發(fā)布藍(lán)牙網(wǎng)狀標(biāo)準(zhǔn),支持多對(duì)多拓?fù)洌愃凭W(wǎng)狀結(jié)構(gòu)),多個(gè)藍(lán)牙設(shè)備可以互相發(fā)送消息并可以作為中繼將消息轉(zhuǎn)發(fā)到網(wǎng)絡(luò)中的其他設(shè)備。
相較于WiFi技術(shù),藍(lán)牙m(xù)esh技術(shù)具有傳輸距離廣、擺脫中心節(jié)點(diǎn)依賴、支持多對(duì)多拓?fù)?、支持單?jié)點(diǎn)故障自我修復(fù)等特點(diǎn)。隨著近年來(lái)智能家居領(lǐng)域的蓬勃發(fā)展,各種低功耗傳感器如雨后春筍般出現(xiàn)在智能家居市場(chǎng)上,藍(lán)牙m(xù)esh技術(shù)的特點(diǎn)正好彌補(bǔ)了傳統(tǒng)藍(lán)牙的不足,因此可以預(yù)見(jiàn)在未來(lái)的市場(chǎng)上,藍(lán)牙m(xù)esh技術(shù)在通信,物聯(lián)網(wǎng)、人工智能等領(lǐng)域?qū)⒌玫綇V泛的應(yīng)用。
Part 01●??藍(lán)牙m(xù)esh技術(shù)特點(diǎn)?●
- 支持多對(duì)多拓?fù)?/strong>
藍(lán)牙m(xù)esh網(wǎng)絡(luò)采用一種稱為“網(wǎng)絡(luò)泛洪(flooding)”的方式進(jìn)行發(fā)布和中繼消息,可實(shí)現(xiàn)mesh網(wǎng)絡(luò)中多個(gè)節(jié)點(diǎn)和多個(gè)節(jié)點(diǎn)的連接及消息互通。
- 擴(kuò)展物理區(qū)域覆蓋
藍(lán)牙m(xù)esh網(wǎng)絡(luò)擺脫節(jié)點(diǎn)只能下掛在網(wǎng)關(guān)或主路由下的束縛,還可作為中繼節(jié)點(diǎn)、朋友節(jié)點(diǎn)的角色,支持對(duì)終端設(shè)備消息中繼和轉(zhuǎn)發(fā),實(shí)現(xiàn)“接力傳輸”,克服WiFi技術(shù)較遠(yuǎn)距離的設(shè)備消息互通及覆蓋等困難。
- 去除中心節(jié)點(diǎn)依賴
藍(lán)牙m(xù)esh網(wǎng)絡(luò)進(jìn)行消息傳遞,不會(huì)通過(guò)某一特定路線、特定設(shè)備或某一固定過(guò)程進(jìn)行消息路由,因此,可擺脫中心節(jié)點(diǎn)(例如:網(wǎng)關(guān)、主路由設(shè)備等)的依賴。
- 支持自我修復(fù)
藍(lán)牙m(xù)esh網(wǎng)絡(luò)中單一節(jié)點(diǎn)故障或異常無(wú)法進(jìn)行通信,會(huì)進(jìn)行自動(dòng)自我配置,通過(guò)其他正常工作節(jié)點(diǎn)傳遞或中繼消息,從而實(shí)現(xiàn)單點(diǎn)故障自我修復(fù)。
Part 02●??藍(lán)牙m(xù)esh技術(shù)原理?●
藍(lán)牙m(xù)esh技術(shù)的原理和設(shè)計(jì)主要從網(wǎng)絡(luò)架構(gòu)、拓?fù)浼肮?jié)點(diǎn)、地址劃分三方面進(jìn)行體現(xiàn),以下將以這三個(gè)方面為切入點(diǎn),剖析藍(lán)牙技術(shù)原理。
1?? 藍(lán)牙m(xù)esh技術(shù)網(wǎng)絡(luò)架構(gòu)
在網(wǎng)絡(luò)架構(gòu)中,藍(lán)牙m(xù)esh是工作在BLE協(xié)議棧之上,使用相同的物理層和鏈路層。
圖1 藍(lán)牙m(xù)esh協(xié)議棧示意圖
自上而下,藍(lán)牙m(xù)esh協(xié)議棧分別為:模型層(Model Layer)、基礎(chǔ)模型層(Foundation Model Layer)、訪問(wèn)層(Access Layer)、上層傳輸層(Upper Transport Layer)、底層傳輸層(Lower Transport Layer)、網(wǎng)絡(luò)層(Network Layer)、承接層(Bearer Layer)。其中,藍(lán)牙m(xù)esh協(xié)議棧各層作用為:模型層定義用戶場(chǎng)景/應(yīng)用,基礎(chǔ)模型層配置管理mesh,訪問(wèn)層定義應(yīng)用如何利用上下文數(shù)據(jù),上層傳輸層對(duì)應(yīng)用數(shù)據(jù)加密及解密,底層傳輸層對(duì)數(shù)據(jù)分段及重組,網(wǎng)絡(luò)層進(jìn)行網(wǎng)絡(luò)管理,承接層進(jìn)行廣播/GATT承載。
2?? 藍(lán)牙m(xù)esh拓樸及節(jié)點(diǎn)
圖2 藍(lán)牙m(xù)esh網(wǎng)絡(luò)拓?fù)?/a>
藍(lán)牙m(xù)esh支持多對(duì)多通信,因此在具有較多設(shè)備的場(chǎng)景下,藍(lán)牙m(xù)esh一般為網(wǎng)狀結(jié)構(gòu),如上圖所示,在藍(lán)牙m(xù)esh網(wǎng)絡(luò)拓?fù)渲?,一般存在這四類節(jié)點(diǎn)類型:
(1)藍(lán)色節(jié)點(diǎn)代表普通終端節(jié)點(diǎn),不能對(duì)藍(lán)牙m(xù)esh網(wǎng)絡(luò)中消息進(jìn)行中繼轉(zhuǎn)發(fā),直接從藍(lán)牙m(xù)esh網(wǎng)絡(luò)中進(jìn)行消息的接收和發(fā)送;
(2)紅色節(jié)點(diǎn)為中繼節(jié)點(diǎn),用于消息的中繼,實(shí)現(xiàn)網(wǎng)絡(luò)消息的遠(yuǎn)距離傳輸;
(3)紫色節(jié)點(diǎn)代表朋友節(jié)點(diǎn),用于低功耗節(jié)點(diǎn)和網(wǎng)絡(luò)間傳遞消息;
(4)黃色節(jié)點(diǎn)代表低功耗節(jié)點(diǎn),通過(guò)朋友節(jié)點(diǎn)進(jìn)行消息的接收或轉(zhuǎn)發(fā),這類節(jié)點(diǎn)一般是低功耗傳感器,采用電池供電,因此會(huì)存在休眠機(jī)制。
藍(lán)牙m(xù)esh技術(shù)基于網(wǎng)絡(luò)泛洪(flooding)的信息傳遞機(jī)制,所有信息一旦由節(jié)點(diǎn)發(fā)布后,就會(huì)廣播到網(wǎng)絡(luò)上,而非透過(guò)路由方式傳遞給一個(gè)或多個(gè)節(jié)點(diǎn)。而WiFi網(wǎng)絡(luò)是圍繞著一個(gè)中央節(jié)點(diǎn)(例如網(wǎng)關(guān)、路由器等設(shè)備)來(lái)進(jìn)行消息上下行,所有網(wǎng)絡(luò)流量都會(huì)經(jīng)過(guò)此處,萬(wàn)一中央節(jié)點(diǎn)故障,整個(gè)網(wǎng)絡(luò)就跟著停擺。藍(lán)牙m(xù)esh技術(shù)可有效去除中心化,擺脫對(duì)中心節(jié)點(diǎn)依賴。
3?? 藍(lán)牙m(xù)esh地址劃分
藍(lán)牙m(xù)esh網(wǎng)絡(luò)層定義了四種基本類型的地址:未分配地址、單播地址、虛擬地址、組播地址,其中,地址長(zhǎng)度為16位。地址詳細(xì)分類如下表所示:
(1)未分配地址
未分配地址是尚未被配置的節(jié)點(diǎn)元素的地址或未分配的地址。未分配地址的值為0x0000。例如:可以通過(guò)將模型的發(fā)布地址設(shè)置為未分配地址來(lái)禁用模型的消息發(fā)布,未分配地址不得用于消息的源或目標(biāo)地址字段。
(2)單播地址
單播地址是分配給每個(gè)元素的唯一地址,單播地址的值不能為0x0000,可取值范圍為0x0001到0x7FFF。在配網(wǎng)階段,配置器會(huì)在網(wǎng)絡(luò)節(jié)點(diǎn)的生命周期內(nèi)為節(jié)點(diǎn)的每個(gè)元素分配單播地址,該地址可以由配置器取消分配,允許重復(fù)利用。
(3)虛擬地址
虛擬地址表示一組目標(biāo)地址,每個(gè)虛擬地址在邏輯上代表一個(gè)標(biāo)簽UUID,一個(gè)或多個(gè)元素可以配置發(fā)布或訂閱同一個(gè)標(biāo)簽UUID。標(biāo)簽UUID不會(huì)被傳輸,應(yīng)該用做上層傳輸層中消息完整性校驗(yàn)值的附加數(shù)據(jù)字段。虛擬地址的取值范圍為0x8000到0xBFFF。
(4)組播地址
將0或多個(gè)元素的地址配置成同一地址,該地址就為組播地址。組播地址從0xFF00到0xFFFF保留給固定的用途,0XC000到0xFEFF用于其他用途。組播地址只能在消息的目標(biāo)地址字段中使用,發(fā)送給組播地址的消息會(huì)被訂閱這個(gè)組播地址的所有模型實(shí)體接收。
Part 03●??藍(lán)牙m(xù)esh在智能家居領(lǐng)域的應(yīng)用?●
在智能家居市場(chǎng)上,藍(lán)牙m(xù)esh的應(yīng)用主要集中在給智能家居設(shè)備配網(wǎng)和管控智能家居設(shè)備兩大場(chǎng)景。
所謂藍(lán)牙m(xù)esh配網(wǎng)就是通過(guò)配置將設(shè)備加入到網(wǎng)絡(luò)中,使其成為藍(lán)牙m(xù)esh網(wǎng)絡(luò)的一部分。藍(lán)牙m(xù)esh配網(wǎng),主要涉及到未配網(wǎng)設(shè)備(Unprovisioned Device)、配網(wǎng)器(provisioner)、mesh節(jié)點(diǎn)(mesh Node)三個(gè)角色。如下圖所示,將未配網(wǎng)設(shè)備經(jīng)過(guò)信標(biāo)階段、邀請(qǐng)階段、交換公鑰階段、身份認(rèn)證階段、分發(fā)配網(wǎng)數(shù)據(jù)階段5個(gè)階段后,即可接入藍(lán)牙m(xù)esh網(wǎng)絡(luò)實(shí)現(xiàn)消息的互聯(lián)互通。
圖3 藍(lán)牙m(xù)esh配網(wǎng)流程圖
對(duì)于管控智能家居設(shè)備,即可通過(guò)節(jié)點(diǎn)間消息互傳、廣播等實(shí)現(xiàn)同時(shí)對(duì)多個(gè)智能家居設(shè)備的管控,并且可以支持遠(yuǎn)程控制和本地控制,相較于在WiFi網(wǎng)絡(luò)下同時(shí)管控多個(gè)設(shè)備,藍(lán)牙m(xù)esh管控方式響應(yīng)速度更快并且對(duì)網(wǎng)絡(luò)負(fù)載更小。
圖4 藍(lán)牙m(xù)esh網(wǎng)絡(luò)內(nèi)多個(gè)設(shè)備管控
綜合Part1~Part3所述,藍(lán)牙m(xù)esh技術(shù)擁有支持多點(diǎn)對(duì)多點(diǎn)連接、物理覆蓋區(qū)域廣闊、去除中心節(jié)點(diǎn)依賴等特性,既然滿足了智能家居設(shè)備日益增長(zhǎng)的互聯(lián)互通的需求,又克服了現(xiàn)有WiFi技術(shù)無(wú)法解決的困難,為物聯(lián)網(wǎng)適配不同場(chǎng)景提供了新的解決方案。