藍牙技術是享譽全球的品牌之一,也是全世界應用最為普遍的無線通信技術之一。從2000年到現在,藍牙技術已經廣泛應用于數十億臺設備。就2016年而言,制造商的藍牙設備出貨量更是超過30億臺。
藍牙的創新步伐從未停止。自面世以來,每一次改進都系統嚴謹,緊跟市場需求,一直支持和鼓勵創新。
藍牙技術令人驚嘆的故事還在繼續著,藍牙mesh網絡翻開了最新篇章,150家藍牙技術聯盟會員公司都參與了mesh的創建。
風格 OR 特性
對藍牙技術感興趣的朋友一定有這樣的習慣:定期查看藍牙技術聯盟采用的新版本。
通常,新版本為藍牙提供附加特性,或者以某種方式改進現有功能。不管怎么說,藍牙全新的“風格”已經面世;一款風格出眾的藍牙技術變體,將以完全不同的方式利用無線電,并針對一系列廣泛的用例設計和應用進行了優化。
藍牙基礎速率/ 增強資料速率(BR / EDR)是藍牙發布的第一款風格,旨在替代纜線連接,很快就成為無線音頻市場的主宰,并推動了新型計算機外設(如無線鼠標和鍵盤)的發展。
藍牙基礎速率/ 增強資料速率(BR / EDR)
引發無線個人音頻變革
隨后登場的是低功耗藍牙(Bluetooth Low Energy)。它經過優化,極大程度地減少了設備功耗,僅使用硬幣大小的電池就能實現無線操作和通信,運行數年不在話下。
低功耗藍牙現已被廣泛采用。如今很難找到不支持低功耗藍牙的智能手機或平板電腦。健康、運動和健身器材,如運動追蹤設備、以及智能手表等可穿戴設備,都有賴于低功耗藍牙技術。這一款藍牙風格可謂影響深遠。
低功耗藍牙是推動可穿戴設備發展的重要技術
“那么藍牙mesh網絡是藍牙的全新風格呢?還是新特性呢?”
其實兩者都不是。現在就讓我們來深入探討一下這項驚人的、全新的藍牙技術,同時了解mesh與藍牙其他形式之間的關系和自身工作原理。
三大重要技術
藍牙BR / EDR和低功耗藍牙是智能手機等設備上的常用技術,但是它們不會互相依賴對方的服務和功能。針對所有的意圖和目的,這兩款風格的藍牙技術都能彼此獨立工作。事實上,雖然他們能在同一臺設備上很好地共存,但是使用藍牙BR / EDR的設備與低功耗藍牙設備之間卻無法進行通信。對于它們來說,有彼此相伴固然開心,但彼此之間卻沒有對話。
相比之下,藍牙mesh網絡使用、并且依賴于低功耗藍牙。低功耗藍牙技術是藍牙mesh使用的無線通信協議棧。
“藍牙mesh并非無線通信技術,而是一種網絡技術。”
下圖顯示了藍牙BR / EDR、低功耗藍牙和藍牙mesh之間的關系。
藍牙mesh和低功耗藍牙之間的關系
關于拓撲
從最基本的層面來講,藍牙BR / EDR能夠實現一臺設備到另一臺設備的連接和通信,建立“一對一”的關系,大多數人所熟悉的“配對”(pairing)一詞就是這個意思。一些設備能夠與其他設備建立多重“一對一”通信關系,并形成一種稱為“微微網”(piconet)的hub/spoke拓撲 。
藍牙BR / EDR和一對一拓撲
低功耗藍牙設備還能與其他設備形成“一對一”和hub/spoke關系,以無連接方式進行工作,其廣播的數據,位于直接無線電傳輸圍內的任何其他設備都可接收。這是“一對多”(1:m)的拓撲,其中m可以是一個非常大的數量!如果接收廣播的設備本身不進行數據傳輸,那么廣播設備的無線電頻譜就僅僅是針對自己而言的,同時對于能夠接收和利用其廣播的其他設備數量沒有明確的限制。藍牙Beacon是這項功能的一個絕佳案例。
低功耗藍牙和廣播
藍牙mesh能讓我們建立無線設備之間的“多對多”(m:m)關系。此外,設備能夠將數據中繼到不在初始設備直接無線電覆蓋范圍內的其他設備。這樣,mesh網絡就能夠跨越非常大的物理區域,并包含大量設備。
藍牙 mesh網絡和多對多拓撲
mesh網絡的動機
對于滿足日益普及的各種通信需求,mesh拓撲結構能提供最佳的方式,因此藍牙mesh網絡應運而生,典型的應用包括樓宇自動化和傳感器網絡等。這些通信需求包括:
覆蓋面積廣
“直聯互通性”
監測和控制大量設備的能力
經優化的、低功耗的
有效利用無線電資源,有可擴展性
與當前市場上的智能手機、平板電腦和個人電腦產品兼容
符合行業標準,具有政府級安全性
雖然還有其他支持mesh拓撲的低功耗無線通信技術,但我們會員公司的很多反饋顯示,這些技術存在約束和限制,而且對于他們正在嘗試解決的各種問題和希望創建的產品類型來說,也并非最佳選擇。其他類似技術的問題包括低數據傳輸速率、在mesh上中繼數據時的“跳數”限制、通常由無線電信道使用方式引起的可擴展性限制、以及按步驟更改mesh網絡中設備組成的過程中出現的困難和延遲。
通常來說,其他mesh技術無法被標準智能手機、平板電腦和PC設備所支持,這是一個主要的限制因素。
創建符合行業標準的、基于低功耗藍牙的mesh通信技術,就有可能滿足他們的要求,同時沒有相關的限制和約束。畢竟,互通性和能效是低功耗藍牙最突出的特性。
以消息為中心的通信
藍牙mesh網絡使用發布/訂閱 (publish/subscribe)消息系統。
設備可以將消息發送至特定地址,這些地址的名稱和含義與用戶能夠理解的高級概念相對應,如“花園燈”(Garden Lights)。這被稱為“發布”(publishing)。
設備經配置后,可接收由其他設備發送到特定地址的消息。這被稱為“訂閱” (subscribing) 。
當設備向特定地址發布消息時,訂閱該地址的所有其他設備將收到該地址的副本,對其進行處理,并以某種方式作出回應。
想象一下花園里安裝的一套戶外燈, 每盞燈都已經過配置,以便其訂閱“花園燈”消息。現在,想像一個藍牙mesh電燈開關向“花園燈”地址發送了“開”的消息。沒錯,花園里的所有燈都會收到“ON”消息,并做出開燈的回應。
就是這么簡單!
消息和設備狀態
“狀態” (state) 是藍牙mesh網絡中的一個關鍵概念。藍牙mesh網絡中的每臺設備都具有一組獨立的狀態值,表示設備的某些狀態。在花園燈的示例中,每盞燈都有一個狀態值,表示設備當前是處于打開或關閉狀態。通過發布一類在定義上意味著能夠回應“開”或“關”狀態值的消息,來改變狀態值,藍牙mesh電燈開關就能對燈泡進行控制。更改狀態值會修改設備本身的物理狀況,例如打開或關閉設備。
消息、狀態、以及這些和其他概念相關的設備行為已被定義在規格中,稱為“模型”(modules)。模型由藍牙mesh設備實施。
在本系列的后續文章中,我們會繼續更加正式地討論設備、狀態、消息、狀態更改和模型。
藍牙mesh網絡的基本概況
得益于mesh網絡,設備可以在非常廣闊的區域中安裝,同時彼此之間保持通信。想象一下購物中心、機場或辦公大樓的占地空間有多廣闊。因為存在墻壁和其他物理上的障礙物,樓宇中的設備可能無法與安裝在同一樓宇遠側的設備、或臨近樓宇中的設備建立直接的無線連接。而藍牙mesh網絡則能夠將網絡中的某些設備指定為“中繼設備”,進而解決這一難題。
中繼設備能夠轉發從其他設備接收到的消息。在轉發消息時,它們能夠與位于初始消息發布設備無線范圍以外的設備進行通信。消息可多次被中繼,每一次中繼即為一“跳”,最多可進行127跳,足以在一片廣闊的物理區域中進行消息傳輸。
藍牙 mesh網絡在節點之間中繼消息
管理型網絡泛洪(Managed Flooding)
藍牙mesh網絡采用一種稱為“網絡泛洪(flooding)”的方式來發布和中繼消息。這意味著消息不會通過某一進程進行路由, 也不會沿著由一系列特定設備構成的特定路徑來進行傳輸。相反,傳輸范圍內的所有設備都會接收消息,負責中繼的設備能將消息轉發至其傳輸范圍內的所有其他設備。
“網絡泛洪”這項技術在使用中往往是利弊參半。在藍牙mesh網絡的設計中,我們對此進行了針對性的優化,相信能夠揚長避短。
網絡泛洪的優勢
網絡泛洪的優勢在于無需特定設備專門扮演集中式路由器的角色。集中式路由器一旦發生故障,就可能會導致整個網絡無法運行。沒有特定的路由也可能對網絡造成災難性的影響,但這種情況也可以通過在mesh網絡中采用網絡泛洪的方法來避免。
網絡泛洪的方式也意味著消息一般能夠通過多重路徑到達其目的地。這就構建了一個相當可靠的網絡。
優化mesh網絡
藍牙mesh網絡也采取了一系列措施,支持采用網絡泛洪的方式,同時優化每臺設備、甚至整體網絡的能耗。
所有數據包都包含一個稱為TTL的字段,它可用于限制消息中繼的跳數。由設備間歇性發送的心跳消息中包含的信息,能夠讓網絡了解其拓撲結構、以及傳到其他每臺設備之間的跳數。這能夠讓設備將TTL設置為最佳值,從而避免不必要的中繼操作。
每臺設備都包含消息緩存,以確定自身是否已經中繼過該消息。如果是,則會立即丟棄該消息,從而避免上層堆棧進行不必要的處理。
最有趣的是,功率非常受限的設備(例如由小型電池持續供電多年的傳感器)可能被指定為“低功耗節點”。低功耗節點能夠與一個或多個被指定為 “friends” 的設備協同工作。Friends并非功率受限,它可以作為低功耗節點,存儲尋址到這一低功耗節點的消息,并且只有在低功耗節點需要時才傳送消息。低功耗節點和“friends”之間的關系理所當然就稱為“friendship”。
“Friendship”具體如何運轉?
下面我們從節能的角度來進行解讀。
低功耗設備通常將大部分時間用于傳輸數據,例如傳感器。每當溫度低于或高于指定閾值時,傳感器才會發送溫度讀數,這種情況也許每天只會發生兩次。這種不頻繁的傳輸方案本身就使這類設備保持相當低的能耗。
但如果傳感器需要不時地接收數據,又該怎么辦呢?
例如,可能它需要確保網絡中使用的安全密鑰始終處于最新狀態。或許需要根據季節修改這些溫度閾值,采用不同的值。要使傳感器直接接收消息,就需要開啟無線電,以便數據接收。但大多數時候它什么都接收不到,但能量卻會被消耗。
對設備來說,通過與“friends”的合作, 低功耗節點能夠以合理的頻率使用無線電來接收消息,但重要的是,相較于始終“聆聽”所有消息,它能夠以更低的頻率工作,同時確保發送來的罕見事件也不會被遺漏。
“Friends” 能幫助低功耗節點完成大量工作。它們能夠為所服務的低功耗節點存儲消息,并在低功耗節點明確要求的情況下向其提供消息,低功耗節點可按照自身的規劃進行操作,從而最有效地利用無線電。
市場上的藍牙設備支持
藍牙mesh網絡雖然推出不久,但低功耗藍牙(Bluetooth Low Energy)卻面世已久。
那么市場上數十億臺設備呢?智能手機和平板電腦呢?它們能否訪問藍牙mesh網絡?
低功耗藍牙設備和mesh支持
幸運的是,答案是YES!
藍牙mesh網絡會指定一臺設備來扮演代理節點(proxy node)的角色。代理節點包含一項標準:低功耗藍牙GATT服務,具有兩個GATT特性,分別是mesh代理數據輸入(Mesh Proxy Data In)和mesh代理數據輸出(Mesh Proxy Data Out)。諸如智能手機等低功耗藍牙設備均可使用這些特性,與mesh網絡進行數據收發。
這種mesh規格定義了一種代理協議(proxy protocol),同時通過代理節點的兩個GATT特性交換的數據中包含代理協議PDU。
安全性
安全性是藍牙mesh網絡設計的核心,并且強制使用。
藍牙mesh網絡中強制性使用安全性
每個數據包都經過加密和認證。通過合理使用序列號能夠防止中繼攻擊。在重要流程中使用不對稱加密技術可防止中間人(Man-in-the-middle)攻擊。同時針對利用廢棄設備的垃圾桶攻擊提供保護。必要時還會刷新安全密鑰。
“安全分級考量”(Separation of Concerns)是藍牙mesh網絡安全性中體現的重要原則。網絡的安全性,以及諸如照明、供暖、或實體建筑安全等個別應用的安全性彼此獨立。可使用不同的安全密鑰來保護網絡層操作,例如中繼、或保護特定應用的消息內容。論其結果,舉例來說,由于燈泡和照明開關具有相同的應用密鑰,因此燈泡能夠全面訪問照明開關所發送消息中的數據。但是,盡管相同的燈泡能夠將來自藍牙物理訪問令牌的消息中繼到前門中的鎖,卻無法閱讀那些消息應用層的內容。
協議棧
藍牙mesh網絡引入了全新的協議棧。如之前所述,這一協議棧建立在低功耗藍牙技術之上。下圖描繪了協議棧的層級。
藍牙mesh網絡協議棧
該規格是深入了解各層責任的最佳方式。為幫助您更好地了解其工作原理,以下列出了協議棧各層負責的工作:
承載層(bearer layer):承載層定義了如何使用底層低功耗堆棧傳輸PDU。目前定義了兩個承載層:廣播承載層(Advertising Bearer)和GATT承載層。
網絡層(network layer):網絡層定義了各種消息地址類型和網絡消息格式。中繼和代理行為通過網絡層實施。
底層傳輸層(lower transport layer):在需要之時,底層傳輸層能夠處理PDU的分段和重組。
上層傳輸層(upper transport layer):負責對接入層進出的應用數據進行加密、解密和認證。它還負責稱為“傳輸控制消息”(transport control messages)這一特殊的消息,包括與“friendship”相關的心跳和消息。
接入層(access layer):負責應用數據的格式、定義并控制上層傳輸層中執行的加密和解密過程,并在將數據轉發到協議棧之前,驗證接收到的數據是否適用于正確的網絡和應用。
基礎模型(foundation models):基礎模型層負責實現與mesh網絡配置和管理相關的模型。
模型(models):模型層與模型等的實施、以及諸如行為、消息、狀態等的實施有關。
藍牙mesh網絡的未來
我們期待藍牙mesh網絡廣泛應用于各行各業和各種應用,預計最初會從樓宇自動化、商業照明和傳感器網絡等應用開始。尤其令人興奮的是藍牙mesh網絡在商業照明方面的應用。試想一下,有了正確的固件,照明系統能實現的就不僅是無線燈光控制,還能夠成為樓宇中各種藍牙服務的平臺,如物資跟蹤和定位服務!
-
藍牙
+關注
關注
114文章
5812瀏覽量
170215 -
安全性
+關注
關注
0文章
93瀏覽量
19144 -
傳輸層
+關注
關注
0文章
29瀏覽量
10889
發布評論請先 登錄
相關推薦
評論