24小時聯系電話:18217114652、13661815404
中文
行業資訊
物聯網約束應用協議(CoAP)的基礎
并非所有連接的設備都相等。盡管有些功能更強大且技術先進,但其他功能卻是簡單的傳感器和家庭自動化設備,其能量,內存,計算能力和帶寬有限。為了補償這種資源受限和低功耗的設備,開發人員可以選擇約束應用協議(CoAP)作為其IoT協議,以更有效地在兩個對等方之間進行通信。
這種輕量級的RESTful協議專門針對網絡中具有大量終端設備的部署進行了優化。CoAP能夠在設備上創建和管理資源,發布和訂閱數據,管理數據多播,在請求時提供設備描述,以及提供機制以告知設備是否通電(同時節省能源并簡化客戶端與客戶端之間的通信)。設備。更好的是,CoAP和HTTP REST之間的基礎設施相似性使設計人員能夠將對RESTful模式的理解運用到他們的IoT解決方案中。
讓我們探討一下這種獨特的請求/響應通信類型的內容和原因。
CoAP一目了然
就像HTTP用于在客戶端和服務器之間傳輸數據和命令一樣,CoAP允許相同的命令傳輸功能,但是不需要相同數量的資源,因此非常適合當今的物聯網(IoT)設備。
服務層協議是由Internet工程任務組(IETF)設計的,即使在受限的低帶寬網絡中也可以使簡單的設備加入IoT。
從開發人員的角度來看,CoAP感覺非常像HTTP。從傳感器獲取值與從Web API獲取值沒有太大區別。兩種協議之間的相似性極大地簡化了開發,因為設備開發人員可以在其基礎架構中使用傳統客戶端/服務器HTTP REST服務中的知名模式。此外,由于HTTP和CoAP共享REST模型,因此可以使用與應用程序無關的跨協議代理輕松連接它們。例如,在CoAP vs MQTT方面,這是一個主要優勢,因為后者不是基于RESTful的。
更快的通訊,更好的電池
CoAP旨在滿足多播支持,低開銷和簡單性等特殊要求,這是物聯網設備的三個重要元素,它們深深地嵌入并且比傳統的互聯網設備具有更少的內存和電源。因此,效率是不可或缺的,而這正是CoAP所能提供的。
例如,由于其開銷低且簡單,CoAP降低了功耗要求。該協議例如通過UDP和BLE進行操作,而UDP和BLE所需的通信開銷最小,并允許更快的喚醒時間和延長的睡眠狀態。兩者合計,這意味著電池使用壽命更長。此外,UDP和BLE所提供的較小的數據包大小可導致更快的通信周期,再次使電池使用壽命更長。
實際上,在控制智能家居設備時,更快的通信周期和更長的電池使用時間是極好的好處。CoAP允許與例如智能鎖,警報器或加熱系統的直接交互,就像在傳統HTTP REST服務中公開時那樣。同樣,工業設備用戶也可以從發送控制命令,查詢寄存器和更改配置的功能中受益。
遠程訪問注意事項
但是,與此同時,設備設計人員必須意識到CoAP的局限性。
CoAP本身不提供遠程訪問,因此,如果連接位于防火墻后面,則用戶將無法訪問其設備。因此,由于按照標準在CoAP中沒有安全的傳輸,因此用戶將需要自帶。
答案可能是HTTPS,TLS,DTLS或第三方平臺。但是,無論選擇如何,設備用戶和設計人員都必須承認這一局限性并做出相應的準備,這是不可或缺的。同樣,不要忽略此方程式中的訪問控制。用戶必須非常確定在穿越任何防火墻時允許誰進入,因此,用戶有責任確保在正確的客戶端和設備之間進行數據傳輸。或者,他們可以選擇具有內置安全傳輸和訪問控制的第三方遠程訪問平臺。
都是關于節點的
隨著傳感器數量逐月增長,很明顯,連接物聯網數十億個節點將需要同時廉價且高效。實現該協議是CoAP最為令人興奮的元素之一,因為該協議已設計為可在內存低至10 kb(KiB),代碼空間為100 KiB的微控制器上運行。
本質上,CoAP采用了HTTP
REST的最佳元素并縮小了它們的尺寸。REST主要在HTTP上運行,并且通常在Web API中使用。基于REST體系結構的應用程序符合一些指導原則和約束,因此生成的協議性能良好,并且具有高度可伸縮性,簡單性,并且易于修改和擴展。由于CoAP基于REST,但著重于縮小協議的大小,因此它是熟悉RESTful模式的小型設備和設計人員的理想解決方案。
再次,設備和網絡設計人員必須考慮訪問和安全性,并通過第三方平臺的實現來實現對等(P2P)遠程連接,這可能是最好的選擇。總體而言,CoAP通過使IoT設備能夠經濟高效且安全地在遠距離傳輸數據的同時又僅消耗很少的電量,從而幫助最小化了云設備連接的成本。同時,對于設計者而言,與HTTP REST的相似性使任何設備向CoAP的過渡在2021年都更加誘人。