隨著(zhù)物聯(lián)網(wǎng)技術(shù)的發(fā)展與普及,越來(lái)越多的智能設備具備了網(wǎng)絡(luò )連接與數據傳輸能力。由于物聯(lián)網(wǎng)場(chǎng)景復雜多樣,設備端硬件條件、網(wǎng)絡(luò )穩定性、流量限制、設備功耗以及設備連接數量等多方面因素造成物聯(lián)網(wǎng)設備的消息傳遞與傳統互聯(lián)網(wǎng)場(chǎng)景有著(zhù)很大不同,也因此產(chǎn)生了多種物聯(lián)網(wǎng)通訊協(xié)議。 本文將選取幾種主流的物聯(lián)網(wǎng)協(xié)議,從協(xié)議的技術(shù)特性、適用場(chǎng)景、相對優(yōu)勢以及市場(chǎng)情況等方面一一進(jìn)行介紹,為物聯(lián)網(wǎng)從業(yè)者提供參考,幫助大家在實(shí)際項目中選擇合適的物聯(lián)網(wǎng)協(xié)議。 協(xié)議分類(lèi)在介紹之前,我們對物聯(lián)網(wǎng)協(xié)議進(jìn)行一個(gè)簡(jiǎn)單分類(lèi),方便讀者理解其應用場(chǎng)景。 從功能角度從功能角度來(lái)劃分,我們可以將其分為兩大類(lèi),一類(lèi)是物理層/數據鏈路層協(xié)議,一類(lèi)是應用層協(xié)議。 物理層/數據鏈路層協(xié)議一般負責設備間的組網(wǎng)及通信,比如 2G/3G/4G/5G、NB-IoT、WiFi、ZigBee、LoRa 這些遠距離通信,也有近距離的比如 RFID、NFC、藍牙協(xié)議無(wú)線(xiàn)協(xié)議和 RS232、USB 等有線(xiàn)協(xié)議。 應用層協(xié)議則主要是運行在傳統互聯(lián)網(wǎng) TCP/IP 協(xié)議之上的設備通訊協(xié)議,這類(lèi)協(xié)議通過(guò)互聯(lián)網(wǎng),支撐設備到云端平臺的數據交換及通信,常見(jiàn)的有 HTTP、MQTT、CoAP、LwM2M 以及 XMPP 等協(xié)議。 從應用角度從協(xié)議在物聯(lián)網(wǎng)系統中的應用角度來(lái)看,我們可以將協(xié)議劃分為云端協(xié)議和網(wǎng)關(guān)協(xié)議。 云端協(xié)議是建立在 TCP/IP 上的協(xié)議,傳感器、控制設備等物聯(lián)網(wǎng)數據通常都需要傳輸上云,通過(guò)云端連通用戶(hù)并與企業(yè)系統進(jìn)行集成。 支持 TCP/IP 的物聯(lián)網(wǎng)設備,可以通過(guò) WIFI、蜂窩網(wǎng)絡(luò )以及以太網(wǎng),使用 HTTP、MQTT、CoAP、LwM2M 以及 XMPP 等應用層協(xié)議協(xié)議接入云端。 網(wǎng)關(guān)協(xié)議是適用于短距通信無(wú)法直接上云的協(xié)議,比如藍牙、ZigBee、LoRa 等。此類(lèi)設備需要接入網(wǎng)關(guān)轉換之后,通過(guò) TCP/IP 協(xié)議進(jìn)行上云。 ZigBee Zigbee 是一種網(wǎng)狀網(wǎng)絡(luò )無(wú)線(xiàn)協(xié)議,專(zhuān)為建筑和家庭自動(dòng)化應用而設計,是物聯(lián)網(wǎng)環(huán)境中最流行的網(wǎng)狀協(xié)議之一。目前主要用于局域網(wǎng)內連接,在設備側以網(wǎng)關(guān)的身份接入控制各類(lèi)設備。 協(xié)議特性
Zigbee 技術(shù)具有低功耗、大節點(diǎn)容量、短時(shí)延、安全可靠等突出優(yōu)點(diǎn),可滿(mǎn)足智能家居應用需求,是智能家居核心無(wú)線(xiàn)組網(wǎng)連接技術(shù)。得益于中國智能家居市場(chǎng)快速發(fā)展,應用 Zigbee 技術(shù)的智能家居設備數量不斷增長(cháng),Zigbee 技術(shù)應用推廣步伐日益加快。 相比同為無(wú)線(xiàn)局域網(wǎng)技術(shù)體系的 WiFi、藍牙技術(shù),Zigbee 技術(shù)在功耗、節點(diǎn)容量、自組網(wǎng)能力、安全性方面具有突出優(yōu)勢,應用規模不斷擴大。 NB-IoTNB-IoT 是由 3GPP 標準化組織制定的一種新型蜂窩技術(shù),屬于低功率廣域 (LPWA) 物聯(lián)網(wǎng)連接的一種,主要用于連接帶寬資源受限的終端,允許終端以比 GRPS、3G、LTE 等技術(shù)更少的資源收集和交換數據。 NB-IoT 在 2017-2018 年發(fā)展迅速,全球眾多運營(yíng)商陸續實(shí)現了商用部署。NB-IoT 的低成本、低功耗和廣覆蓋使得用戶(hù)能夠實(shí)現傳統蜂窩網(wǎng)絡(luò )無(wú)法支持的新場(chǎng)景新應用。 2020 年 7 月 9 日,3GPP 宣布 5G R16 標準凍結,NB-IoT 正式納入 5G 標準,成為 5G mMTC 海量物聯(lián)網(wǎng)連接場(chǎng)景核心技術(shù)。 協(xié)議特性
當前,NB-IoT 已進(jìn)入億級連接時(shí)代,后續隨著(zhù)全球運營(yíng)商對商用 NB-IoT 5G 網(wǎng)絡(luò )的全覆蓋建設,NB-IoT 將在智能家居、智慧農業(yè)、工業(yè)制造、能源表計、消防煙感、物流跟蹤、金融支付等各領(lǐng)域中持續爆發(fā)。 以中國電信物聯(lián)網(wǎng)開(kāi)放平臺為例,該平臺實(shí)現了對中國電信 NB-IoT 以及其他網(wǎng)絡(luò )物聯(lián)網(wǎng)設備的集中接入,并為政企用戶(hù)提供物聯(lián)網(wǎng)設備管理、數據接口以及應用使能等服務(wù)。 EMQ 從該平臺建設之初即已參與,配合天翼物聯(lián)為該平臺研發(fā) NB-IoT 設備接入與消息路由能力,并同時(shí)支持電信 TLINK、MQTT 等協(xié)議設備的接入,平臺整體設計接入能力達億級。 LoRaLoRa 協(xié)議是一個(gè)低功耗、遠距離、無(wú)線(xiàn)廣域網(wǎng)的標準協(xié)議,其名稱(chēng)來(lái)自于「遠距離(Long Range)」的簡(jiǎn)稱(chēng)。 LoRa 相比其他無(wú)線(xiàn)傳播協(xié)議如 ZigBee、藍牙、WIFI 最大的特點(diǎn)是同功耗下傳播距離更遠,實(shí)現了低功耗和遠距離的統一,它在同樣的功耗下比傳統的無(wú)線(xiàn)射頻通信距離擴大 3-5 倍。 LoRa 在物聯(lián)網(wǎng)應用中的無(wú)線(xiàn)技術(shù)有多種,可組成局域網(wǎng)或廣域網(wǎng)。LoRa 網(wǎng)絡(luò )主要由終端(可內置 LoRa 模塊)、網(wǎng)關(guān)(或稱(chēng)基站)、Server 和云四部分組成。 LoRaWAN 的數據傳輸速率范圍為 0.3 kbps 至 37.5 kbps,為了最大化終端設備電池的壽命和整個(gè)網(wǎng)絡(luò )容量,LoRaWAN 網(wǎng)絡(luò )服務(wù)器通過(guò)一種速率自適應(Adaptive Data Rate , ADR)方案來(lái)控制數據傳輸速率和每一終端設備的射頻輸出功率。 協(xié)議特性
對于智慧農業(yè)、智慧城市、工業(yè)物聯(lián)網(wǎng) (IIoT)、智能環(huán)境、智能家居和樓宇、智能公用事業(yè)和計量以及智能供應鏈和物流中的農村或室內應用場(chǎng)景,LoRa 具有極高的靈活性。 LoRa 組網(wǎng)方便,利用 LoRa 極強的穿透力,可以低成本實(shí)現對較大范圍內的設備連接,相比通過(guò) NB-IoT 和運營(yíng)商 SIM 卡接入,LoRa 不需要每年換卡或繳費,長(cháng)期使用擁有較低的成本。 MQTTMQTT 協(xié)議是基于發(fā)布/訂閱模式的物聯(lián)網(wǎng)通信協(xié)議,憑借簡(jiǎn)單易實(shí)現、支持 QoS、報文小等特點(diǎn),占據了物聯(lián)網(wǎng)協(xié)議的半壁江山。 MQTT 協(xié)議廣泛應用于物聯(lián)網(wǎng)、移動(dòng)互聯(lián)網(wǎng)、智能硬件、車(chē)聯(lián)網(wǎng)、電力、能源等領(lǐng)域,既能作為網(wǎng)關(guān)在設備側接入通信,也能作為設備-云端的通信協(xié)議。ZigBee、LoRa 等絕大多數網(wǎng)關(guān)協(xié)議最終都轉換為 MQTT 協(xié)議接入上云。 協(xié)議特性
MQTT 采用發(fā)布訂閱模式通信,發(fā)布訂閱模式區別于傳統的客戶(hù)端-服務(wù)器模式,它使發(fā)送消息的客戶(hù)端(發(fā)布者)與接收消息的客戶(hù)端(訂閱者)分離,發(fā)布者與訂閱者不需要建立直接聯(lián)系。我們既可以讓多個(gè)發(fā)布者向一個(gè)訂閱者發(fā)布消息,也可以讓多個(gè)訂閱者同時(shí)接收一個(gè)發(fā)布者的消息。 市場(chǎng)狀況 MQTT 是 IoT 領(lǐng)域的最重要的標準協(xié)議之一,廣泛用于物聯(lián)網(wǎng)、車(chē)聯(lián)網(wǎng)、工業(yè)物聯(lián)網(wǎng)、智能家居、智慧城市、電力石油能源等行業(yè)。 MQTT 是 AWS IoT Core、 Azure IoT Hub、阿里云物聯(lián)網(wǎng)平臺等頂級云廠(chǎng)商物聯(lián)網(wǎng)平臺標準通信協(xié)議,是工業(yè)互聯(lián)網(wǎng)、車(chē)聯(lián)網(wǎng)、智能家居等各個(gè)行業(yè)以及諸多網(wǎng)關(guān)協(xié)議上云的首選協(xié)議。 EMQX 作為全球最熱門(mén)、最成熟的 MQTT Broker 之一,提供了「隨處運行,無(wú)限連接,任意集成」云原生分布式物聯(lián)網(wǎng)接入平臺,一體化的分布式 MQTT 消息服務(wù)和強大的 IoT 規則引擎,為高可靠、高性能的物聯(lián)網(wǎng)實(shí)時(shí)數據移動(dòng)、處理和集成提供動(dòng)力,助力企業(yè)快速構建關(guān)鍵業(yè)務(wù)的 IoT 平臺與應用。 CoAPCoAP 是一種在物聯(lián)網(wǎng)世界的類(lèi) HTTP 的協(xié)議,使用在資源受限的物聯(lián)網(wǎng)設備上,它的詳細規范定義在 RFC 7252。 由于物聯(lián)網(wǎng)設備大多都是資源限制型的,比如 CPU、RAM、Flash、網(wǎng)絡(luò )寬帶等。對于這類(lèi)設備來(lái)說(shuō),想要直接使用現有網(wǎng)絡(luò )的TCP和HTTP來(lái)實(shí)現設備實(shí)現信息交換是不現實(shí)的。為了讓這部分設備能夠順利接入網(wǎng)絡(luò ),CoAP 協(xié)議應運而生。 協(xié)議特性CoAP 參考了很多 HTTP 的設計思路,同時(shí)也根據受限資源限制設備的具體情況改良了諸多的設計細節,增加了很多實(shí)用的功能。
相比于 MQTT,CoAP 更加輕量、開(kāi)銷(xiāo)更低,在某些特定的設備和網(wǎng)絡(luò )環(huán)境下更為合適。EMQX 以及部分公有云物聯(lián)網(wǎng)平臺都提供提供了 CoAP 接入能力 。 LwM2MLwM2M 是適用于資源有限的終端設備管理的輕量級物聯(lián)網(wǎng)協(xié)議。LwM2M 協(xié)議誕生于 2013 年底,由 OMA(Open Mobile Alliance)提出并定義。目前的成熟版本號依然是 1.0,OMA 的專(zhuān)家們正為 1.1 版而努力。 協(xié)議特性LwM2M 協(xié)議最主要的實(shí)體包括 LwM2M Server 和 LwM2M Client。
此外,根據需要還可以加入LwM2M引導服務(wù)器(Bootstrap Server)或智能卡(SmartCard),對客戶(hù)端完成初始的引導。 LwM2M 協(xié)議有以下幾個(gè)突出特點(diǎn):
考慮到與時(shí)俱進(jìn),實(shí)現簡(jiǎn)潔易懂的風(fēng)格,LwM2M 協(xié)議采用了 REST。 但由于協(xié)議的服務(wù)對象是資源有限的終端設備,傳統的 HTTP 數據傳輸方式顯得過(guò)分笨重,難以支持受限資源,因此選擇了具備 REST 風(fēng)格的 CoAP 來(lái)完成消息和數據傳遞。一方面 CoAP 基于 UDP,與 TCP 相比,在網(wǎng)絡(luò )資源有限及無(wú)法確保設備始終在線(xiàn)的環(huán)境里更加游刃有余(出于安全性考慮,使用了基于 UDP 的 DTLS 安全傳輸協(xié)議)。另一方面 CoAP 本身的消息結構非常簡(jiǎn)單,報文壓縮,主要部分可以做到特別小巧,無(wú)需占用過(guò)多資源。 出于類(lèi)似的考慮,協(xié)議的數據結構必須足夠簡(jiǎn)單。LwM2M 協(xié)議定義了一個(gè)以資源(Resource)為基本單位的模型,每個(gè)資源可以攜帶數值,可以指向地址,以表示 LwM2M 客戶(hù)端中每一項可用的信息。資源都存在于對象實(shí)例中(Object Instance),即對象(Object)的實(shí)例化。LwM2M 協(xié)議預定義了 8 種對象(Object)來(lái)滿(mǎn)足基本的需求,分別是: [td]
考慮到擴展性,協(xié)議也允許根據實(shí)際需要自定義更多的對象。在這樣的數據模型中,資源、對象實(shí)例以及對象都是用數字對應的ID來(lái)表示的,以實(shí)現最大程度的壓縮,因此任何資源都可以用最多 3 級的簡(jiǎn)潔方式表示,例如 /1/0/1 表示服務(wù)器對象(Server Object)第 1 個(gè)實(shí)例中的服務(wù)器短 ID 資源。 在注冊階段,LwM2M 客戶(hù)端把攜帶了資源信息的對象實(shí)例傳遞給 LwM2M 服務(wù)器,以通知服務(wù)器自身設備所具備的能力。 EMQ 也實(shí)現了 EMQX 服務(wù)器上的 LwM2M 接入能力,實(shí)現了 LwM2M 協(xié)議的大部分功能,LwM2M 設備可以注冊至 EMQX-LWM2M 上,從而通過(guò) EMQX-LWM2M 訪(fǎng)問(wèn)并管理設備,設備也可以向 EMQX-LWM2M 上報信息,并使用 EMQ 后端的服務(wù)來(lái)采集數據。 XMPPXMPP 可拓展消息處理現場(chǎng)協(xié)議是基于 XML 的即時(shí)通訊協(xié)議,協(xié)議將通信上下文信息嵌入到 XML 結構化數據中,使得人與人之間、應用系統之間以及人與應用系統之間能即時(shí)通訊。 協(xié)議特性
XMPP 特點(diǎn)在于協(xié)議和擴展協(xié)議成熟,功能完善,專(zhuān)門(mén)為即時(shí)聊天(IM)場(chǎng)景設計。XMPP 是老牌的即時(shí)聊天協(xié)議,像 Google Hangouts, WhatsApp Messenger 等即時(shí)聊天程序都是基于 XMPP 的。 但由于 XMPP 依賴(lài) XML 協(xié)議,放在 IoT 場(chǎng)景里過(guò)重,因此基本不適合物聯(lián)網(wǎng)傳輸使用。 結語(yǔ)橫向來(lái)看,物聯(lián)網(wǎng)在幾乎所有行業(yè)都有廣泛的應用場(chǎng)景,每個(gè)行業(yè)有不同的工況和組網(wǎng)模式;從縱向來(lái)看,物聯(lián)網(wǎng)系統涵蓋了傳感器/控制設備,數據接入、傳輸、路由交換組件以及數據的存儲處理整個(gè)軟硬件鏈條,每個(gè)環(huán)節都有需要合理、高效的技術(shù)方案。 當前物聯(lián)網(wǎng)協(xié)議呈現多元化發(fā)展,不同行業(yè)和場(chǎng)景適用不同的協(xié)議,在相同的場(chǎng)景下也能夠有多個(gè)協(xié)議可供選擇,沒(méi)有任何協(xié)議能夠在市場(chǎng)上占有統治地位,各種協(xié)議之間存在一定的互補效應。因此,要實(shí)現物聯(lián)網(wǎng)設備和數據的互聯(lián)互通,關(guān)鍵點(diǎn)并不在與協(xié)議的統一,而在于不同協(xié)議之間的互聯(lián)互通、上層業(yè)務(wù)應用層協(xié)議的統一。 EMQ 致力于解決物聯(lián)網(wǎng)設備數據連接問(wèn)題。核心產(chǎn)品 EMQX 物聯(lián)網(wǎng)消息服務(wù)器可以通過(guò)開(kāi)放標準的 MQTT、CoAP 和 LwM2M 協(xié)議連接任何設備,對于諸如工業(yè)場(chǎng)景中工業(yè)協(xié)議復雜多樣的情況,也可通過(guò)邊緣工業(yè)協(xié)議網(wǎng)關(guān)軟件 Neuron 轉換成統一的 MQTT 協(xié)議接入,滿(mǎn)足絕大多數物聯(lián)網(wǎng)場(chǎng)景下的數據采集需求,為企業(yè)的物聯(lián)網(wǎng)業(yè)務(wù)提供高效可靠的數據接入層。 原創(chuàng )文章,作者:EMQ,如若轉載,請注明出處:https://www.emqx.com/zh/blog/iot-protocols-mqtt-coap-lwm2m |