Bluetooth SIG 的 Bluetooth® v5.4 核心規(guī)范為支持 Bluetooth 的物聯(lián)網(wǎng)設(shè)備帶來了多項優(yōu)勢,重點是增強了通信能力、安全性和效率。這些改進尤其適用于涉及大量設(shè)備的應用,如零售、資產(chǎn)跟蹤和智慧家居環(huán)境。
主要優(yōu)勢包括:
• 與數(shù)千個終端節(jié)點進行雙向通信
• 帶響應的周期性廣播 (PAwR)
• 加密廣播數(shù)據(jù) (EAD)
• 范圍更廣,能效更高
• 提高資產(chǎn)跟蹤的準確性和精確度
• 基于標準的 ESL 和其他應用方法
藍牙 v5.4 的兩項主要改進是帶響應的周期性廣播(PAwR)和加密廣播數(shù)據(jù)。它們共同實現(xiàn)了在星型拓撲結(jié)構(gòu)中與數(shù)千個功耗極低的終端節(jié)點進行無連接、雙向、安全通信。
PAwR 和加密廣播數(shù)據(jù)適用于涉及眾多設(shè)備傳輸少量數(shù)據(jù)的應用。這些應用可以接受更長的延遲,以換取更長的電池壽命。例如,不需要立即響應或監(jiān)控非動態(tài)系統(tǒng)的大規(guī)模傳感器網(wǎng)絡可以從 PAWR 和加密廣播數(shù)據(jù)中受益。
PAwR 和加密廣播數(shù)據(jù)的第一個標準化藍牙用例是電子貨架標簽 (ESL) 配置文件。該配置文件的出臺將為 ESL 用例提供一個標準,因此我們預計基于藍牙的應用和生態(tài)系統(tǒng)將在不久的將來迅速出現(xiàn)。
藍牙 v5.4 中帶響應的周期性廣播(PAwR)
迄今為止,藍牙 LE 一直無法在無連接模式下實現(xiàn)應用數(shù)據(jù)的雙向通信,而 PAwR 實現(xiàn)了這一點。這是該功能的主要優(yōu)勢。
為了解釋其工作原理,我們將使用廣播者和觀察者的命名規(guī)則。廣播并不新鮮,數(shù)據(jù)由廣播者發(fā)送,觀察者掃描接收。PAwR 的新穎之處在于,廣播數(shù)據(jù)是在確定的時間段內(nèi)以小數(shù)據(jù)包的形式組織起來的,觀察者可以精確地與之同步并作出響應。數(shù)據(jù)在 PAwR 事件中發(fā)送,而 PAwR 事件由 PAwR 子事件組成。每個觀察者可與一個或多個子事件同步,在同步后,觀察者只在這些特定的時間段內(nèi)主動接收數(shù)據(jù)。
雙向通信在子事件中實現(xiàn)。廣播者在子事件開始時傳輸數(shù)據(jù),然后經(jīng)過響應時隙延遲后,觀察者可以發(fā)送響應。響應的協(xié)調(diào)工作在應用層面上進行。
這種解決方案之所以高效,是因為觀察者能夠只掃描特定的子事件。因此,終端節(jié)點(觀察者)只在極小的特定時間段內(nèi)進行掃描。這就是該解決方案在功耗方面如此高效的原因。
PAwR 的另一項功能是建立 ACL 連接,因為子事件可能包含連接請求。有了這項功能,設(shè)備就不必遵循傳統(tǒng)的連接方案,進行額外的掃描和廣播。事實上,這樣做毫無意義,因為設(shè)備已經(jīng)同步。在某些情況下可能需要連接,因為 PAwR 只能傳輸少量數(shù)據(jù)。要傳輸更多數(shù)據(jù),設(shè)備可以建立 ACL 連接。
支持加密的廣播數(shù)據(jù)(EAD)
PAwR 在滿足可擴展性和超低功耗要求的同時,還必須滿足所有現(xiàn)代物聯(lián)網(wǎng)系統(tǒng)的一個關(guān)鍵要求,即安全性。ESL 接入點和設(shè)備之間的數(shù)據(jù)交換必須加密,以保持機密性、避免篡改并確保網(wǎng)絡安全。
在藍牙 v5.4 之前,沒有對廣播數(shù)據(jù)進行加密的標準化方法。這種定義只存在于面向連接的通信中。由于 ESL 應用程序的大部分數(shù)據(jù)交換都是通過 PAwR 進行的,因此有必要增加加密廣播數(shù)據(jù)功能。這就為廣播數(shù)據(jù)加密以及共享密鑰材料(數(shù)據(jù)加密所需的密鑰材料)引入了一種標準化方法。值得注意的是,加密廣播數(shù)據(jù)不僅可以通過 PAwR 進行,還可以使用其他廣播傳輸方式。
該功能通過添加一種名為加密廣播數(shù)據(jù)(類型 0x31)的新 AD 類型,封裝了所有要加密的 AD 字段,從而允許對給定廣播數(shù)據(jù)包的全部或部分有效載荷進行加密。這意味著廣播數(shù)據(jù)包有效載荷的概念如下所示。
廣播數(shù)據(jù) 0 封裝 AD 1-3,這些數(shù)據(jù)是加密的。隨后是 AD 4 和 AD 5,它們是未加密的。這樣就可以靈活地保留一些非關(guān)鍵的廣播數(shù)據(jù),供任何觀察者解讀,例如 AD 類型 0x01(標志)或 0x09(完整本地名稱)。
要在兩臺設(shè)備之間共享加密數(shù)據(jù),需要它們有一個用于加密和解密數(shù)據(jù)的共享密鑰。為實現(xiàn)這一目標,可選擇將名為 "加密數(shù)據(jù)密鑰材料 "的新 GATT 特性作為 GAP(通用訪問配置文件)服務的一部分。已連接的 GATT 客戶端可通過加密和驗證鏈接讀取該特性,然后通過廣播交換加密數(shù)據(jù)。
電子貨架標簽配置文件
電子貨架標簽(ESL)是一種顯示零售店貨架上產(chǎn)品價格信息的設(shè)備。其目的是遠程管理所顯示的產(chǎn)品信息,包括產(chǎn)品名稱、條形碼、價格等。ESL 還可配備傳感器,如電池電壓監(jiān)控或環(huán)境光感應。這類系統(tǒng)需要多功能性,而且對成本敏感,因此數(shù)字標簽通常由電池驅(qū)動。在這種情況下,耗電量是關(guān)鍵要求,因為頻繁充電或更換電池是不可取的。
藍牙 5.4 版中的 ESL 配置文件為這種特定的使用情況提供了手段,通過使用 PAwR,新的加密廣播提供了盡可能低的功耗和安全性。面向連接的通信用于配置、交換加密廣播數(shù)據(jù)的密鑰材料以及發(fā)送大塊信息(如圖像)。然后,基于 PAwR 的無連接通信用于常規(guī)命令和響應。
ESL 配置文件中的角色定義為接入點 (AP) 和電子貨架標簽 (ESL)。AP 相當于 PAwR 環(huán)境中的廣播者,ESL 相當于觀察者。為了管理網(wǎng)絡,引入了一個簡單的尋址方案。每個 ESL 都有一個 8 位 ESL ID。設(shè)備用 7 位組 ID 分組。接入點最多可管理 32 640 臺設(shè)備。
對于從 AP 到 ESL 的通信,PAwR 的子事件與 ESL 的組直接相關(guān)。分配到 0 號組的設(shè)備同步接收 0 號子事件,以此類推。傳輸?shù)矫總組的數(shù)據(jù)包包含針對后續(xù) ESL ID 的命令序列。
如前所述,響應協(xié)調(diào)是在應用層面進行管理的。在 ESL 配置文件中,響應是動態(tài)管理的。每個 ESL 都會接收指向其組的所有命令。設(shè)備必須忽略發(fā)給其他設(shè)備的所有命令,但必須使用與接收到的命令順序相對應的響應槽。例如,ESL ID #1 收到以下信息:[ESL ID #0,cmd],[ESL ID #1,cmd],[ESL ID #3,cmd]。它將在響應槽 #1 中做出響應。
藍牙 v5.4 中引入的加密廣播數(shù)據(jù)為 ESL 提供了安全性。ESL 設(shè)備通常需要與接入點進行初始連接以進行調(diào)試,此時也可讀取和分配密鑰材料,以便隨后交換受 LE 安全連接保護的加密廣播數(shù)據(jù)。
ESL 配置文件提供了對角色、狀態(tài)和消息序列的完整描述,以及描述加密廣播數(shù)據(jù)如何用于通信的安全要求。如需深入了解,我們建議您閱讀規(guī)范或 5.4 版本的技術(shù)指南(請參閱頁面底部的鏈接)。
隨著藍牙 5.4 版的增強,引入了超低功耗、雙向、無連接通信,許多新的應用案例成為可能,ESL 就是其中之一。
藍牙 v5.4核心規(guī)范中的其他功能
新的核心規(guī)范還提供了另外兩項功能。
LE GATT 安全等級特征 (SLC)
其目的是限制因安全條件而造成的用戶體驗流程中斷,因為安全條件可能會延遲對屬性的訪問。通過 SLC,客戶端可以預先確定足夠的安全模式和級別,以訪問所有需要的 GATT 屬性。如有必要,可在嘗試訪問 GATT 屬性之前升級鏈接安全性,以滿足訪問要求。
廣播編碼選擇
S 參數(shù)定義前向糾錯(FEC),有兩種取值:S=2 或 S=8。它控制著糾錯數(shù)據(jù)的生成量以及通信范圍的擴大程度。有了廣播編碼選擇功能,主機就能確定性地選擇控制器在傳輸廣播 PDU 時應使用的編碼方案。例如,設(shè)備可以接收 S8 編碼的 PDU,但會以 S2 編碼做出響應,因此對等設(shè)備可能無法接收這些 PDU。在這種情況下,主機可以指示控制器也使用 S8 發(fā)送。
總結(jié)
藍牙 5.4 版帶來了一些新的有趣功能,這些功能必將擴大藍牙應用的范圍,并有助于實現(xiàn)更多市場的標準化。我們期待看到生態(tài)系統(tǒng)的發(fā)展和您新想法的實現(xiàn)。我們的技術(shù)支持團隊將為您的項目提供評估和支持。請關(guān)注 Nordic 產(chǎn)品新聞,了解 nRF Connect SDK 中這些功能的可用性更新。 |