Dotdot:物聯網的語言
作者:Ezra Hale 來源:eettaiwan
Ezra Hale,Silicon Labs軟體系統工程經理暨ZigBee聯盟Mesh IP技術小組委員會主席
Dotdot是智能裝置在任意網路上進行通訊的通用語言。雖然最初的重點在於Dotdot over Thread,但Dotdot基於IP友好協議和IPv6,因此要擴展到Wi-Fi、乙太網絡或其他IP網路也很簡單。那麼,Dotdot如何迎接物聯網IP連接和安全的新時代?
2013年時,有三名工程師(分別來自一家協議堆棧供貨商和兩家彼此競爭的門鎖製造商)坐在波士頓(Boston)一間沒有窗戶的會議室里,針對建構他們的物聯網(IoT)裝置達成協議。兩家製造商的門鎖設計各具特色,都希望能融入ZigBee生態系統,並且以相同的方式進行產品通訊。這次想法交流的衝擊產生了一些具有爭議的地方,但是幾天後,這些工程師們達成了共識,形成了ZigBee叢集庫(ZigBee Cluster Library,ZCL)中的門鎖叢集(Door Lock Cluster)。
物聯網網路標準的關鍵要素:通用應用層
在應用層,ZigBee透過稱為「叢集」(Cluster)的實體提供標準化的通訊協議。叢集定義了裝置能發送或接收什麼命令,以及裝置注意哪些數據或屬性。門鎖叢集定義了包括依照預定時間表的上鎖及解鎖時間以及密碼鎖等所有功能。因此,在ZigBee協議堆棧的絕對頂層,門鎖有著非常明確和標準化的方式,能與ZigBee網路的其餘部份和外部世界進行通訊。
這聽起來乎平淡無奇,但是重要的是,這些工程師進行的工作已經在ZigBee中重現了數百次。在過去的十年中,ZigBee的成員公司已經建構了ZigBee叢集庫,涵蓋範圍從照明到窗戶感測器,從恆溫器到智能電錶等各種應用功能。這是ZCL的核心,當被移植到其他網路傳輸時,它便是ZigBee所提供的真正價值。
在物聯網中,每個智能裝置都必須在應用層中理解和使用相同語言。人們期望智慧中樞(smart hub)知道如何與現成的門鎖或恆溫器進行通訊和控制。少了通用應用層,網路層性能如何其實就不重要了。通用應用層是物聯網網路標準需求的一個關鍵要素,是將ZigBee叢集庫移植為通用、獨立應用語言的核心價值,也是ZigBee為物聯網通用語言——Dotdot所取得的成就。
Dotdot是智能裝置在任意網路上進行通訊的通用標準應用語言。
Dotdot是運行在Thread網路協議上的應用層
採用Thread的理由:IP友好的網路層
Thread網路協議使用6LoWPAN,這是一種IPv6的精簡形式。這使得Thread裝置能夠直接與其他IP裝置進行互動,無需像在ZigBee 3.0中通過網關。Thread網路上的邊界路由器充當了從IPv6數據流量到雲端的通道,反之亦然。因此,Thread網路上的裝置可以直接與其他IP裝置進行互動。
採用Dotdot的原因:IP友好的應用層
Dotdot使用網際網路工程任務組(IETF)定義的通用、IP友好協議規範,例如受限制的應用層協議(CoAP)和簡明二進位對象表示(CBOR)。因此,開放資料庫可用於開發應用,大幅加速了裝置開發進程。
聯合且更進階的安全性
Dotdot over Thread (如圖)需要使用數據封包傳輸層安全(Datagram Transport Layer Security)或DTLS。這使得Thread網路上的裝置能夠確保它們不僅與受信任的裝置通訊,還確保其通訊安全。除了使用DTLS之外,Dotdot還需要在約束環境(ACE)上使用的認證和授權,通常稱為訪問控制(Access Control)。訪問控制允許部署裝置準確的指定一個裝置上哪些資源是可用的,甚至即使恆溫器及門鎖共享DTLS連接,它也不能直接控制鎖,除非它具備適當的訪問許可權。
迄今為止,產品開發人員不得不在以下技術中進行選擇:a)支持可靠的、本地的、裝置對裝置的互操作性,但通常其產品(和他們的數據)在第三方網關上遇到困難,或是b)將這些產品直接連接到網際網路,但是為了採用有效的方式將裝置連接在一起,不得不面對可靠性、互操作性和用戶體驗帶來的挑戰。
Dotdot over Thread提供了兩全其美的解決方案。
裝置對裝置通訊
ZigBee叢集庫是針對低功耗和有損網路(Lossy Network)上裝置到裝置通訊以及電池供電裝置而建構和優化的。這意味著信息被壓縮成精巧、最適於單個127位元組802.15. 4數據封包之內。另外,訊息模式基於最小化裝置之間的通訊和多餘「交流」,而電池供電的裝置開啟其大部份的通訊,這是因為它們在睡眠時無法可靠的接收。Dotdot的開發保持了ZCL中的這些基本原則和經驗,以確保同樣適用於這些低功耗和有損網路,同時轉換到已知IP友好協議。
直接連網至雲端
使用Thread可以消除在網狀網路(mesh network)上通常需要的網關,它直接掌握如何與每個裝置通訊。透過使用通用Thread邊界路由器,就可能從網際網路上的任何位置創建一個DTLS連接本地網狀網路上的裝置,並且與該裝置安全通訊。這允許物聯網系統的「大腦」處於雲端,而能與網路上的裝置直接通訊,而無需擔心網關上的韌體版本。Thread邊界路由器充當一個信道,因此當網狀網路的組成發生變化以及增加新裝置或升級時,它就不需要進行韌體升級。這意味著可以進行一些複雜的事情,例如透過安全信道,從雲端直接更新網狀網路上的裝置韌體,進而大幅簡化網狀網路裝置的管理。
Dotdot到ZigBee通訊
由於Dotdot是從ZCL衍生出來的,因此使用網關在二者之間進行轉換很簡單。這是至關重要的,因為它意味著新的Dotdot裝置可以無縫橋接到現有的ZigBee裝置,確保順暢的用戶體驗和互操作性。這也意味著現有的ZigBee裝置可以使用Dotdot和IP友好的協議橋接到雲端,簡化遠程裝置的控制和管理。
ZigBee已經認證了近十年的應用層功能(ZigBee叢集庫)。ZigBee聯盟(Zigbee Alliance)也在為Dotdot開發一個自動測試環境。該測試環境確保ZigBee及其成員能夠認證Dotdot裝置及其應用層功能,同時確保來自不同供貨商的裝置能夠在同一網狀網路上互通。當您選擇Dotdot作為物聯網裝置的應用層時,就能擁有可靠且通過認證項目所帶來的優點。
其他IP網路上的Dotdot
雖然最初的焦點是Dotdot over Thread,但是擴展到其他IP網路也相對簡單。Dotdot基於IP友好協議和IPv6,因此,其用途可以很容易地擴展到Wi-Fi或乙太網絡(Ethernet)。對於本質上不支持IPv6或IP協議的藍牙(Bluetooth)傳輸技術等,則需要進行一些調整。
關於我們:網站內容更精彩!
※物聯網LPWAN勁敵環伺 LoRa強化優勢求突圍
※如何做好準備迎接即將到來的物聯網熱潮
TAG:物聯之家網 |