0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

物聯(lián)網(wǎng)都有哪些通信協(xié)議?

jf_78858299 ? 來源:萬物云 ? 作者:萬物云 ? 2023-03-23 14:38 ? 次閱讀

物聯(lián)網(wǎng)終端的種類非常多,包括物聯(lián)網(wǎng)網(wǎng)關(guān)、通信模塊以及大量的行業(yè)終端,其中尤以行業(yè)終端的種類最為豐富。

通信模塊是物聯(lián)網(wǎng)應(yīng)用終端的基礎(chǔ)。物聯(lián)網(wǎng)的行業(yè)終端種類繁多,體積、處理能力、對外接口等各不相同,通信模塊將成為物聯(lián)網(wǎng)智能服務(wù)通道的統(tǒng)一承載體,嵌入各種行業(yè)終端,為各行各業(yè)提供物聯(lián)網(wǎng)的智能通道服務(wù)。而在通信中,通信協(xié)議尤其重要,是指雙方實體完成通信或服務(wù)所必須遵循的規(guī)則和約定,而且根據(jù)終端環(huán)境的不同對通信協(xié)議的要求完全不一致。

與互聯(lián)網(wǎng)時代TCP/IP,HTTP一統(tǒng)天下的局面不同,物聯(lián)網(wǎng)的通信環(huán)境有Ethernet, Wi-Fi, RFID, NFC(近距離無線通信), Zigbee, 6LoWPAN(IPV6低速無線版本),Bluetooth, GSM, GPRS, GPS, 3G, 4G網(wǎng)絡(luò),而每一種通信應(yīng)用協(xié)議都有一定適用范圍。AMQP、JMS、REST/HTTP都是工作在以太網(wǎng),COAP協(xié)議是專門為資源受限設(shè)備開發(fā)的協(xié)議,而DDS和MQTT的兼容性則強(qiáng)很多。

1.REST(松耦合服務(wù)調(diào)用)

REST即表述性狀態(tài)傳遞(英文:Representational State Transfer,簡稱REST)是Roy Fielding博士在2000年他的博士論文中提出來的一種軟件架構(gòu)風(fēng)格。它是一種針對網(wǎng)絡(luò)應(yīng)用的設(shè)計和開發(fā)方式,可以降低開發(fā)的復(fù)雜性,提高系統(tǒng)的可伸縮性。

而REST被應(yīng)用于物聯(lián)網(wǎng)主要是基于HTTP web服務(wù)的轉(zhuǎn)化,因為REST模式的Web服務(wù)與復(fù)雜的SOAP和XML-RPC對比來講明顯的更加簡潔,越來越多的web服務(wù)開始采用REST風(fēng)格設(shè)計和實現(xiàn)。

特點:

  1. 給一切物體一個ID

2.連接物體在一起

3.使用標(biāo)準(zhǔn)方法

4.資源多重表述

5.無狀態(tài)通信

REST其實是互聯(lián)網(wǎng)中服務(wù)調(diào)用API封裝風(fēng)格,物聯(lián)網(wǎng)中數(shù)據(jù)采集到物聯(lián)網(wǎng)應(yīng)用系統(tǒng)中,在物聯(lián)網(wǎng)應(yīng)用系統(tǒng)中,可以通過開放REST API的方式,把數(shù)據(jù)服務(wù)開放出去,被互聯(lián)網(wǎng)中其他應(yīng)用所調(diào)用,所以它非常利于服務(wù)平臺與物聯(lián)終端的獨立開發(fā),但它的通訊數(shù)據(jù)量與API內(nèi)容密切相關(guān),且是一種無狀態(tài)通信,對安全機(jī)制需要重新設(shè)計。

2.CoAP協(xié)議

由于物聯(lián)網(wǎng)中的很多設(shè)備都是資源受限型的,即只有少量的內(nèi)存空間和有限的計算能力,所以傳統(tǒng)的HTTP協(xié)議應(yīng)用在物聯(lián)網(wǎng)上就顯得過于龐大而不適用。 IETF的CoRE工作組提出了一種基于REST架構(gòu)的CoAP協(xié)議。

CoAP是一種應(yīng)用層協(xié)議,它運行于UDP協(xié)議之上而不是像HTTP那樣運行于TCP之上。CoAP協(xié)議非常的小巧,最小的數(shù)據(jù)包僅為4字節(jié)。

CoAP協(xié)議是否可以替換HTTP協(xié)議?

CoAP并不能替代HTTP協(xié)議,但是對于那些小設(shè)備(256KB Flash 32KB RAM 20MHz主頻)而言CoAP的確是一個好的解決方案。

CoAP消息類型

CoAP采用和HTTP協(xié)議相同的請求響應(yīng)工作模式。CoAP協(xié)議共有4中不同的消息類型。

CON——需要被確認(rèn)的請求,如果CON請求被發(fā)送,那么對方必須做出響應(yīng)。

NON——不需要被確認(rèn)的請求,如果NON請求被發(fā)送,那么對方不必做出回應(yīng)。

ACK——應(yīng)答消息,如果接受到CON消息的響應(yīng)。

RST——復(fù)位消息,當(dāng)接收者接受到的消息包含一個錯誤,接受者解析消息或者不再關(guān)心發(fā)送者發(fā)送的內(nèi)容,那么復(fù)位消息將會被發(fā)送。

CoAP消息結(jié)構(gòu)

一個CoAP消息最小為4個字節(jié),以下是CoAP協(xié)議不同部分的描述。

【版本Version】:類似于IPv6和IPv6,僅僅是一個版本號。

【消息類型Message Type】:CON,NON,ACK,RST。這些消息類型相當(dāng)于HTTP協(xié)議的PUTGET等

【消息ID Message ID】:每個CoAP消息都有一個ID,在一次會話中ID總是保持不變。但是在這個會話之后該ID會被回收利用。

【標(biāo)記 Token】:標(biāo)記是ID的另一種表現(xiàn)

【選項 Options】:CoAP選項類似于HTTP請求頭,它包括CoAP消息本身,例如CoAP端口號,CoAP主機(jī)和CoAP查詢字符串等。

【負(fù)載Payload】:真正有用的被交互的數(shù)據(jù)。

在當(dāng)前由PC機(jī)組成的世界,信息交換是通過TCP和應(yīng)用層協(xié)議HTTP實現(xiàn)的。但是對于小型設(shè)備而言,實現(xiàn)TCP和HTTP協(xié)議顯然是一個過分的要求。為了讓小設(shè)備可以接入互聯(lián)網(wǎng),CoAP協(xié)議被設(shè)計出來。

3.MQTT協(xié)議(低帶寬)

MQTT(Message Queuing Telemetry Transport,消息隊列遙測傳輸協(xié)議),是一種基于發(fā)布/訂閱(publish/subscribe)模式的“輕量級”通訊協(xié)議,該協(xié)議構(gòu)建于TCP/IP協(xié)議上,由IBM在1999年發(fā)布。MQTT最大優(yōu)點在于,可以以極少的代碼和有限的帶寬,為連接遠(yuǎn)程設(shè)備提供實時可靠的消息服務(wù)。做為一種低開銷、低帶寬占用的即時通訊協(xié)議,使其在物聯(lián)網(wǎng)、小型設(shè)備、移動應(yīng)用等方面有較廣泛的應(yīng)用。

MQTT協(xié)議運行在TCP/IP或其他網(wǎng)絡(luò)協(xié)議,提供有序、無損、雙向連接。其特點包括:

1)使用的發(fā)布/訂閱消息模式,它提供了一對多消息分發(fā),以實現(xiàn)與應(yīng)用程序的解耦。

2)對負(fù)載內(nèi)容屏蔽的消息傳輸機(jī)制。

3)對傳輸消息有三種服務(wù)質(zhì)量(QoS):

? 最多一次,這一級別會發(fā)生消息丟失或重復(fù),消息發(fā)布依賴于底層TCP/IP網(wǎng)絡(luò)。即:<=1

? 至多一次,這一級別會確保消息到達(dá),但消息可能會重復(fù)。即:>=1

? 只有一次,確保消息只有一次到達(dá)。即:=1。在一些要求比較嚴(yán)格的計費系統(tǒng)中,可以使用此級別

4)數(shù)據(jù)傳輸和協(xié)議交換的最小化(協(xié)議頭部只有2字節(jié)),以減少網(wǎng)絡(luò)流量

5)通知機(jī)制,異常中斷時通知傳輸雙方

適用范圍:在低帶寬、不可靠的網(wǎng)絡(luò)下提供基于云平臺的遠(yuǎn)程設(shè)備的數(shù)據(jù)傳輸和監(jiān)控。

協(xié)議實現(xiàn)方式

實現(xiàn)MQTT協(xié)議需要:客戶端和服務(wù)器端

MQTT協(xié)議中有三種身份:發(fā)布者(Publish)、代理(Broker)(服務(wù)器)、訂閱者(Subscribe)。其中,消息的發(fā)布者和訂閱者都是客戶端,消息代理是服務(wù)器,消息發(fā)布者可以同時是訂閱者。

MQTT傳輸?shù)南⒎譃椋褐黝}(Topic)和負(fù)載(payload)兩部分

? Topic,可以理解為消息的類型,訂閱者訂閱(Subscribe)后,就會收到該主題的消息內(nèi)容(payload)

? payload,可以理解為消息的內(nèi)容,是指訂閱者具體要使用的內(nèi)容

MQTT協(xié)議一般適用于設(shè)備數(shù)據(jù)采集到端(Device-》Server,Device-》Gateway),集中星型網(wǎng)絡(luò)架構(gòu)(hub-and-spoke),不適用設(shè)備與設(shè)備之間通信,設(shè)備控制能力弱,另外實時性較差,一般都在秒級。

4.DDS協(xié)議(高可靠性、實時)

數(shù)據(jù)分發(fā)服務(wù)DDS(Data Distribution Service)是對象管理組織(OMG)在HLA及CORBA等標(biāo)準(zhǔn)的基礎(chǔ)上制定的新一代分布式實時通信中間件技術(shù)規(guī)范,DDS采用發(fā)布/訂閱體系架構(gòu),強(qiáng)調(diào)以數(shù)據(jù)為中心,提供豐富的QoS服務(wù)質(zhì)量策略,能保障數(shù)據(jù)進(jìn)行實時、高效、靈活地分發(fā),可滿足各種分布式實時通信應(yīng)用需求。DDS信息分發(fā)中間件是一種輕便的、能夠提供實時信息傳送的中間件技術(shù)。

特點:

  1. 靈活的發(fā)布/訂閱模式
  2. 完整DDS規(guī)范QoS服務(wù)質(zhì)量策略
  3. 已擴(kuò)展的QoS服務(wù)質(zhì)量策略
  4. 互操作
  5. 強(qiáng)實時
  6. 跨平臺
  7. 支持多種底層物理通信協(xié)議
  8. 仿真→測試→實裝的全生命周期支持

DDS很好地支持設(shè)備之間的數(shù)據(jù)分發(fā)和設(shè)備控制,設(shè)備和云端的數(shù)據(jù)傳輸,同時DDS的數(shù)據(jù)分發(fā)的實時效率非常高,能做到秒級內(nèi)同時分發(fā)百萬條消息到眾多設(shè)備。DDS在服務(wù)質(zhì)量(QoS)上提供非常多的保障途徑,這也是它適用于國防軍事、工業(yè)控制這些高可靠性、可安全性應(yīng)用領(lǐng)域的原因。但這些應(yīng)用都工作在有線網(wǎng)絡(luò)下,在無線網(wǎng)絡(luò),特別是資源受限的情況下,沒有見到過實施案例。

5.AMQP協(xié)議(互操作性)

AMQP,即Advanced Message Queuing Protocol,一個提供統(tǒng)一消息服務(wù)的應(yīng)用層標(biāo)準(zhǔn)高級消息隊列協(xié)議,是應(yīng)用層協(xié)議的一個開放標(biāo)準(zhǔn),為面向消息的中間件設(shè)計?;诖藚f(xié)議的客戶端與消息中間件可傳遞消息,并不受客戶端/中間件不同產(chǎn)品,不同的開發(fā)語言等條件的限制。Erlang中的實現(xiàn)有 RabbitMQ等。

AMQP協(xié)議是一個二進(jìn)制協(xié)議,擁有一些現(xiàn)代特點:多信道、協(xié)商式、異步、安全、跨平臺、中立、高效。

? 模型層定義了一套命令(按功能分類),客戶端應(yīng)用可以利用這些命令來實現(xiàn)它的業(yè)務(wù)功能。

? 會話層負(fù)責(zé)將命令從客戶端應(yīng)用傳遞給服務(wù)器,再將服務(wù)器的應(yīng)答傳遞給客戶端應(yīng)用,會話層為這個傳遞過程提供可靠性、同步機(jī)制和錯誤處理。

? 傳輸層提供幀處理、信道復(fù)用、錯誤檢測和數(shù)據(jù)表示。

實現(xiàn)者可以將傳輸層替換成任意傳輸協(xié)議,只要不改變AMQP協(xié)議中與客戶端應(yīng)用程序相關(guān)的功能。實現(xiàn)者還可以使用其他高層協(xié)議中的會話層。

AMQP協(xié)議最早應(yīng)用于金融系統(tǒng)之間的交易消息傳遞,在物聯(lián)網(wǎng)應(yīng)用中,主要適用于移動手持設(shè)備與后臺數(shù)據(jù)中心的通信和分析。

6.XMPP協(xié)議(即時通信)

XMPP是一種基于標(biāo)準(zhǔn)通用標(biāo)記語言的子集XML的協(xié)議,它繼承了在XML環(huán)境中靈活的發(fā)展性。因此,基于XMPP的應(yīng)用具有超強(qiáng)的可擴(kuò)展性。經(jīng)過擴(kuò)展以后的XMPP可以通過發(fā)送擴(kuò)展的信息來處理用戶的需求,以及在XMPP的頂端建立如內(nèi)容發(fā)布系統(tǒng)和基于地址的服務(wù)等應(yīng)用程序。而且,XMPP包含了針對服務(wù)器端的軟件協(xié)議,使之能與另一個進(jìn)行通話,這使得開發(fā)者更容易建立客戶應(yīng)用程序或給一個配好系統(tǒng)添加功能。

特點:

1.客戶機(jī)/服務(wù)器通信模式

2.分布式網(wǎng)絡(luò)

3.簡單的客戶端,將大多數(shù)工作放在服務(wù)器端進(jìn)行

4.標(biāo)準(zhǔn)通用標(biāo)記語言的子集XML的數(shù)據(jù)格式

XMPP協(xié)議是自由、開放、公開的,并且易于了解。而且在客戶端、服務(wù)器、組件、源碼庫等方面,都已經(jīng)各自有多種實現(xiàn)。但隨著通常超過70%的XMPP協(xié)議的服務(wù)器的數(shù)據(jù)流量的存在和近60%的被重復(fù)轉(zhuǎn)發(fā),XMPP協(xié)議目前擁有一個大型架空中存在的數(shù)據(jù)提供給多個收件人。適用于即時通信的應(yīng)用程序,還能用在網(wǎng)絡(luò)管理、內(nèi)容供稿、協(xié)同工具、檔案共享、游戲、遠(yuǎn)端系統(tǒng)監(jiān)控等。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 物聯(lián)網(wǎng)
    +關(guān)注

    關(guān)注

    2900

    文章

    44065

    瀏覽量

    370257
  • GSM
    GSM
    +關(guān)注

    關(guān)注

    9

    文章

    835

    瀏覽量

    122769
  • nfc
    nfc
    +關(guān)注

    關(guān)注

    59

    文章

    1617

    瀏覽量

    180299
  • TCP
    TCP
    +關(guān)注

    關(guān)注

    8

    文章

    1347

    瀏覽量

    78934
  • MQTT
    +關(guān)注

    關(guān)注

    5

    文章

    647

    瀏覽量

    22392
收藏 人收藏

    評論

    相關(guān)推薦

    聯(lián)網(wǎng)通信協(xié)議的詳解及選擇建議

    通信聯(lián)網(wǎng)來說十分關(guān)鍵,無論是近距離無線傳輸技術(shù)還是移動通信技術(shù),甚至是LPWAN都影響著聯(lián)網(wǎng)
    發(fā)表于 05-23 14:23 ?6.7w次閱讀
    <b class='flag-5'>物</b><b class='flag-5'>聯(lián)網(wǎng)通信協(xié)議</b>的詳解及選擇建議

    8種聯(lián)網(wǎng)通信協(xié)議介紹

    聯(lián)網(wǎng)生態(tài)系統(tǒng)的核心組成部分是連接和通信。聯(lián)網(wǎng)使遠(yuǎn)程和分散物體(設(shè)備,傳感器節(jié)點,網(wǎng)關(guān)單元,云服務(wù)器)之間的連接和
    發(fā)表于 12-24 06:13

    聯(lián)網(wǎng)常見通信協(xié)議 精選資料分享

    1概述在上一篇文章《聯(lián)網(wǎng)常見通信協(xié)議與通訊協(xié)議梳理【上】-通訊協(xié)議》中,對
    發(fā)表于 07-30 06:02

    聯(lián)網(wǎng)常見的通信協(xié)議有哪些?

    聯(lián)網(wǎng)常見的通信協(xié)議有哪些?
    發(fā)表于 11-05 09:12

    常見的聯(lián)網(wǎng)通信協(xié)議藍(lán)牙簡單對比

    @TOC淺析聯(lián)網(wǎng)(智能家居)無線通信協(xié)議聯(lián)網(wǎng)無線傳輸方案產(chǎn)品開發(fā),通信協(xié)議(生態(tài))選擇至關(guān)重
    發(fā)表于 01-11 07:24

    深挖聯(lián)網(wǎng)大數(shù)據(jù)背后的六大通信協(xié)議,DDS/MQTT/CoAP誰更強(qiáng)

    那么聯(lián)網(wǎng)都有哪些通信協(xié)議? 你都了解嗎? 他們適用的環(huán)境又是如何? 與互聯(lián)網(wǎng)時代TCP/IP,HTTP一統(tǒng)天下的局面不同,
    發(fā)表于 11-12 11:11 ?5次下載

    聯(lián)網(wǎng)開發(fā)的各種通信協(xié)議的功能了解

    了解聯(lián)網(wǎng)開發(fā)的各種通信協(xié)議的功能。
    的頭像 發(fā)表于 11-13 06:51 ?4127次閱讀

    工業(yè)4.0聯(lián)網(wǎng)通信協(xié)議你了解多少

    聯(lián)網(wǎng)連接是整個工業(yè)聯(lián)網(wǎng)(IIOT)系統(tǒng)的主干,因此在選擇將要使用的聯(lián)網(wǎng)通信協(xié)議類型時,應(yīng)該
    發(fā)表于 06-21 09:54 ?4758次閱讀

    聯(lián)網(wǎng)都有哪些通信協(xié)議,該如何去選擇

    我們將聯(lián)網(wǎng)協(xié)議分為兩類,一類是傳輸協(xié)議,另一類是通信協(xié)議。 傳輸協(xié)議通常負(fù)責(zé)子網(wǎng)中設(shè)備之間的
    的頭像 發(fā)表于 11-22 16:15 ?4592次閱讀

    最常用的聯(lián)網(wǎng)通信協(xié)議有哪些

    隨著聯(lián)網(wǎng)設(shè)備數(shù)量的持續(xù)增加,這些設(shè)備之間的通信或連接已成為一個重要的思考課題。根據(jù)Gartner的研究,到2020年,聯(lián)網(wǎng)設(shè)備數(shù)量將達(dá)到
    的頭像 發(fā)表于 01-20 09:29 ?8851次閱讀

    聯(lián)網(wǎng)通信協(xié)議的種類與其區(qū)別

    聯(lián)網(wǎng)通信協(xié)議種類繁多,不同層次的通信協(xié)議因硬件和連接設(shè)置而異,但在某些功能上是相同的,很多人很難區(qū)分。我們來比較一下這些通信協(xié)議的區(qū)別。
    發(fā)表于 06-25 09:42 ?3275次閱讀

    聯(lián)網(wǎng)7大典型通信協(xié)議簡要介紹

    聯(lián)網(wǎng)7大典型通信協(xié)議簡要介紹
    發(fā)表于 11-24 09:50 ?6次下載

    聯(lián)網(wǎng)通信協(xié)議基礎(chǔ)知識合集

    本文介紹了幾個可用的聯(lián)網(wǎng)通信協(xié)議,它們具有不同的性能、數(shù)據(jù)速率、覆蓋范圍、功率和內(nèi)存,而且每一種協(xié)議都有各自的優(yōu)點和或多或少的缺點。其中一些通信協(xié)
    的頭像 發(fā)表于 03-23 14:32 ?1122次閱讀

    聯(lián)網(wǎng)通信協(xié)議知多少

    尤其重要,是雙方實體完成通信或服務(wù)所必須遵循的規(guī)則和約定。本文介紹了幾個可用的聯(lián)網(wǎng)通信協(xié)議,它們具有不同的性能、數(shù)據(jù)速率、覆蓋范圍、功率和內(nèi)存,而且每一種協(xié)議
    的頭像 發(fā)表于 03-11 09:55 ?1265次閱讀
    <b class='flag-5'>物</b><b class='flag-5'>聯(lián)網(wǎng)通信協(xié)議</b>知多少

    聯(lián)網(wǎng)應(yīng)用場景中常見的通信協(xié)議

    聯(lián)網(wǎng)協(xié)議是指在聯(lián)網(wǎng)環(huán)境中用于設(shè)備間通信和數(shù)據(jù)傳輸?shù)?b class='flag-5'>協(xié)議
    的頭像 發(fā)表于 09-11 17:18 ?1264次閱讀
    <b class='flag-5'>物</b><b class='flag-5'>聯(lián)網(wǎng)</b>應(yīng)用場景中常見的<b class='flag-5'>通信協(xié)議</b>