本文作者
Zaiming(Stone)Shi:EMQX 歐洲研發中心負責人,擁有多年大規模分布式 MQTT 消息系統開發經驗,致力于與 EMQ 斯德哥爾摩研發團隊一起將 EMQX 打造成為全球最優秀的 MQTT broker。
MQTT 是物聯網消息傳輸標準協議,其采用極其輕量級的發布訂閱消息模型,以可擴展、可靠且高效的方式連接物聯網設備。
自 1999 年 IBM 發布 MQTT 以來已經過去了二十多年,而自 2012 年 EMQ 在 GitHub 上發布開源 MQTT 消息服務器 EMQX,也已經過去了十年。如今,我們來到了各類新興技術飛速進步的 2023 年,隨著 MQTT 在物聯網中的使用規模不斷增長,場景更加多樣化,我們可以預見在 MQTT 技術領域中將會出現以下 7 個發展趨勢。
MQTT over QUIC
QUIC(Quick UDP Internet Connections)是由 Google 開發的一種新的傳輸協議,運行于 UDP 之上,旨在減少建立新連接所帶來的延遲,提高數據傳輸速率,并解決 TCP 的一些限制。
下一代互聯網協議 HTTP/3 使用了 QUIC 作為底層傳輸協議,為網絡應用帶來了比 HTTP/2 更低的時延和更好的加載體驗。
MQTT over QUIC是自 2017 年 MQTT 5.0 規范發布以來 MQTT 協議中最具創新性的進展。憑借多路復用、更快的連接建立和遷移等優勢特性,其具有成為下一代 MQTT 協議標準的潛力。
MQTT 5.0 定義了三種傳輸類型:TCP、TLS 和 WebSocket。在物聯網安全最佳實踐中,MQTT over TLS/SSL 廣泛用于生產環境以保護客戶端和 Broker 之間的通信。然而它速度慢、延遲高,需要 3.5 個 RTT,即 TCP 3 次握手以及 TLS 4 次握手才能建立新的MQTT 連接。
與 MQTT over TLS/SSL 相比,MQTT over QUIC 更快且延遲更低,在初次建立連接時僅需 1 RTT,并可以利用 0 RTT 連接恢復的特性來加速重連。QUIC 協議棧可以針對各種用例進行定制,例如在不穩定網絡環境下,或是客戶端到服務器更低延遲通信的場景。它能夠在諸如移動網絡下的車聯網(IoV)以及要求極低時延的工業物聯網(IIoT)場景下發揮重要作用,并有效提升其使用體驗。
開源 MQTT 消息服務器 EMQX 在其最新的5.0 版本中引入了MQTT over QUIC 支持,是全球首個支持 MQTT over QUIC 的 MQTT 消息服務器。目前 EMQ 正以 OASIS MQTT 技術委員會成員身份積極推進 MQTT over QUIC 的標準化落地,可以預見在不久的將來,MQTT 也將和 HTTP/3 一樣使用 QUIC 作為其主要傳輸層。
MQTT Serverless
云計算中 Serverless 模式的興起標志著應用的設計、開發、部署和運行方式發生了突破性的范式轉變。這種模式下開發者將能夠專注于應用的業務邏輯,無需管理基礎設施,從而提高敏捷性、可擴展性和成本效益。
Serverless 模式的 MQTT 消息服務器將是 2023 年的一種前沿架構創新。傳統的物聯網應用需要數分鐘甚至數小時才能在云上或在企業私有環境中部署 MQTT 消息服務,相比之下,Serverless MQTT 只需點擊幾下就能快速完成 MQTT 服務的部署。
除了極快的部署速度,Serverless MQTT 更大的價值在于其無可比擬的靈活性:根據用戶需求對資源進行無縫擴展,以及與這種彈性架構相匹配的按量計費定價模式。Serverless MQTT 有望推動 MQTT 更廣泛的應用,降低運營成本,激發不同行業的創新協作。我們甚至可能看到每個物聯網和工業物聯網開發者都能擁有一個免費的 Serverless MQTT 消息服務器。
2023 年 3 月,EMQX Cloud 推出了全球首個Serverless MQTT 服務,為用戶提供了 5 秒極速部署和更靈活的計費方式,幫助用戶以更低的成本高效開發物聯網應用。
MQTT 多租戶架構
多租戶架構是實現 Serverless MQTT 服務的一個重要基礎。來自不同用戶或租戶的物聯網設備可以連接到同一個大規模的 MQTT 集群,同時保持其數據和業務邏輯與其他租戶隔離。
在 SaaS 應用中多租戶架構很常見,即一個應用為多個客戶或租戶服務。其通常有兩種以下不同的實現方式:
租戶隔離: 向每個租戶提供一個單獨的應用實例,在服務器或虛擬機上運行。
數據庫隔離: 多個租戶共享一個應用實例,但每個租戶有自己的數據庫模式,以確保數據隔離。
在 MQTT Broker 的多租戶架構中,每個設備和租戶都有一個單獨的、隔離的命名空間,包括一個獨特的主題前綴和訪問控制列表(ACL),用來定義用戶可以發布或訂閱哪些主題。
多租戶 MQTT 消息服務器能夠減少管理開銷,并靈活支持復雜場景或大規模物聯網應用場景。例如,一個大型組織中的部門和應用可以作為不同的租戶使用同一個 MQTT 集群。
MQTT Sparkplug 3.0
MQTT Sparkplug 是由 Eclipse 基金會設計的開放標準規范,其最新版本為 MQTT Sparkplug 3.0,它定義了工業設備的統一數據接入規范,能夠通過 MQTT 協議連接各類工業傳感器、動作執行器、可編程邏輯控制器(PLC)和網關。
MQTT Sparkplug 3.0 于 2022 年 11 月發布,具有以下關鍵的新功能和改進:
MQTT 5.0 支持:增加了對 MQTT 5.0 的支持,包括共享訂閱、消息過期和流量控制等新功能。
優化的數據傳輸:對數據傳輸進行了優化,使用更緊湊的數據編碼和壓縮算法。
擴展的數據模型:引入了一個擴展的數據模型,它允許更詳細的設備信息通信,還支持配置數據和設備元數據等其他信息的傳輸。
更高的安全性:包括對安全性的若干改進,如支持雙向 TLS 認證、優化的訪問控制機制等。
簡化的設備管理:包括自動設備注冊和發現,簡化設備配置,以及改進診斷等。
MQTT Sparkplug 旨在簡化不同工業設備間的連接和通信,實現高效的工業數據采集、處理和分析。隨著新版本的發布,MQTT Sparkplug 3.0 將會在工業物聯網領域得到更廣泛的應用。
MQTT 統一命名空間
統一命名空間(Unified Namespace)是一個建立在面向工業物聯網和工業 4.0 的MQTT Broker上的解決方案架構。它為 MQTT 主題提供了一個統一的命名空間,并為消息和結構化數據提供了一個集中的存儲庫。
統一命名空間使用中央 MQTT Broker ,以星形拓撲結構連接工業設備、傳感器和應用程序,如 SCADA、MES 和 ERP。統一命名空間以事件驅動的架構極大簡化了工業物聯網應用的開發。
在傳統的工業物聯網系統中,OT 和 IT 系統通常是分開的,其數據、協議和工具均獨立運行。通過采用統一命名空間,可以讓 OT 和 IT 系統更有效地交換數據,最終實現物聯網時代 OT 和 IT 的統一。
如今,通過 EMQ 提供的開源 MQTT 消息服務器 EMQX或NanoMQ,結合工業協議網關軟件 Neuron,用戶將可以構建一個由 IT 界最先進技術支持的統一命名空間架構。
MQTT 跨域集群
MQTT 跨域集群(MQTT Geo-Distribution)是一個創新架構,允許部署在不同地區或云上的 MQTT Broker 作為一個單集群一起工作。通過跨域集群,MQTT 消息可以在不同地區的 MQTT Broker 之間自動同步和傳輸。
有兩種方法可以實現 MQTT 跨域集群:
單集群,多地區: 單個 MQTT 集群,每個節點在不同地區運行。
多集群,多云: 分布在不同云中的多個 MQTT 集群連接在一起。
我們可以將這兩種方法結合,在跨區域部署的 MQTT Broker 之間創建一個可靠的物聯網數據基礎設施。通過 MQTT 跨域集群,企業可以建立一個跨多云的全球 MQTT 接入網絡。不管所處的物理位置在哪里,設備和應用都能從最近的節點接入實現相互通信。
MQTT Streams
MQTT Streams 是 MQTT 協議備受期待的一項擴展能力,能夠在 MQTT Broker 內實時處理海量、高頻的數據流。這在發布訂閱模式消息傳輸的基礎上進一步增強了傳統 MQTT Broker 的能力。通過 MQTT Streams,客戶端可以像 Apache Kafka 一樣將 MQTT 消息以流的形式進行生產和消費,從而實現歷史消息回放。這對事件驅動的處理尤為重要,可以確保最終的數據一致性、可審計和合規性。
流處理對于從物聯網設備產生的大量數據中實時挖掘商業價值至關重要。以前,這一過程通過一個過時且復雜的大數據堆棧實現,需要 MQTT Broker 與 Kafka、Hadoop、Flink 或 Spark 進行集成。
而通過內置的流處理,MQTT Streams 簡化了物聯網數據處理架構,提高了數據處理效率和響應時間,并為物聯網提供了一個統一的消息傳遞和流處理平臺。通過消息去重、消息重放和消息過期等功能,MQTT Streams 實現了高吞吐量、低時延和容錯,使其成為基于 MQTT 的物聯網應用中實時數據流處理的強大工具。
結語
總的來說,MQTT 的這 7 個技術趨勢反映了新興技術的進步以及它們在推動物聯網發展進程中的重要作用。
作為一個發展了二十多年的標準消息傳輸協議,MQTT 的重要性正在持續增長。隨著物聯網在各行業被越來越廣泛地應用,MQTT 協議也在不斷發展以應對新的挑戰,滿足更低延遲的連接、更便捷的 MQTT 服務部署、復雜場景或大規模物聯網應用下靈活管理以及工業設備接入的需求。作為龐大物聯網的神經系統,在 2023 年及更遠的未來,MQTT 必將在工業物聯網和車聯網等關鍵領域中發揮重要作用。
審核編輯黃宇
-
物聯網
+關注
關注
2909文章
44557瀏覽量
372790 -
MQTT
+關注
關注
5文章
650瀏覽量
22487 -
EMQX
+關注
關注
0文章
8瀏覽量
271
發布評論請先 登錄
相關推薦
評論