chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

物聯(lián)網(wǎng)協(xié)議MQTT協(xié)議的實現(xiàn)

汽車玩家 ? 來源:IT知識課堂 ? 作者:IT知識課堂 ? 2020-05-05 23:07 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

概述

MQTT是IBM開發(fā)的一個即時通訊協(xié)議,有可能成為物聯(lián)網(wǎng)的重要組成部分。該協(xié)議支持所有平臺,幾乎可以把所有聯(lián)網(wǎng)物品和外部連接起來,被用來當做傳感器和制動器之間通信的橋梁。

MQTT協(xié)議是為大量計算能力有限,且工作在低帶寬、不可靠的網(wǎng)絡的遠程傳感器和控制設備通訊而設計的協(xié)議。有以下特點:

使用發(fā)布/訂閱消息模式,提供一對多的消息發(fā)布

使用TCP/IP提供網(wǎng)絡連接

小型傳輸,開銷很?。ü潭ㄩL度的頭部是 2 字節(jié)),協(xié)議交換最小化,以降低網(wǎng)絡流量,傳輸?shù)膬热葑畲鬄?56MB。

使用 Last Will 和 Testament 特性通知有關各方客戶端異常中斷的機制。

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

MQTT系統(tǒng)由與服務器通信的客戶端組成,通常稱服務器為“代理Broker”??蛻艨梢允切畔l(fā)布者Publish或訂閱者Subscribe。每個客戶端都可以連接到代理。

信息按主題層次結構組織。當發(fā)布者具有要分發(fā)的新數(shù)據(jù)時,它會將包含數(shù)據(jù)的控制消息發(fā)送到連接的代理。然后,代理將信息分發(fā)給已訂閱該主題的任何客戶端。發(fā)布者不需要有關于訂閱者數(shù)量或位置的任何數(shù)據(jù),而訂閱者又不必配置有關發(fā)布者的任何數(shù)據(jù)。

MQTT傳輸?shù)南⒎譃椋褐黝}(Topic)和負載(payload)兩部分: (1)Topic,可以理解為消息的類型,訂閱者訂閱(Subscribe)后,就會收到該主題的消息內容(payload); (2)payload,可以理解為消息的內容,是指訂閱者具體要使用的內容。

2. MQTT協(xié)議中的訂閱、主題、會話

2.1訂閱(Subscription)

訂閱包含主題篩選器(Topic Filter)和最大服務質量(QoS)。訂閱會與一個會話(Session)關聯(lián)。一個會話可以包含多個訂閱。每一個會話中的每個訂閱都有一個不同的主題篩選器。

2.2會話(Session)

每個客戶端與服務器建立連接后就是一個會話,客戶端和服務器之間有狀態(tài)交互。會話存在于一個網(wǎng)絡之間,也可能在客戶端和服務器之間跨越多個連續(xù)的網(wǎng)絡連接。

2.3主題名(Topic Name)

連接到一個應用程序消息的標簽,該標簽與服務器的訂閱相匹配。服務器會將消息發(fā)送給訂閱所匹配標簽的每個客戶端。 系統(tǒng)主題:通過定義$SYS開頭的主題可以查看一些系統(tǒng)信息,如客戶端連接數(shù)量等, 詳細介紹:https://github.com/mqtt/mqtt.github.io/wiki/SYS-Topics

2.4主題篩選器(Topic Filter)

一個對主題名通配符篩選器,在訂閱表達式中使用,表示訂閱所匹配到的多個主題。 多級匹配符 # 單級匹配符 + 更多主題討論,請移步github wiki https://github.com/mqtt/mqtt.github.io/wiki/topic_format

2.5負載(Payload)

消息訂閱者所具體接收的內容。

3.保留消息和最后遺囑

保留消息 Retained Messages

MQTT中,無論是發(fā)布還是訂閱都不會有任何觸發(fā)事件。 1個Topic只有唯一的retain消息,Broker會保存每個Topic的最后一條retain消息。 發(fā)布消息時把retain設置為true,即為保留信息。每個Client訂閱Topic后會立即讀取到retain消息。如果需要刪除retain消息,可以發(fā)布一個空的retain消息,因為每個新的retain消息都會覆蓋最后一個retain消息。

最后遺囑 Last Will & Testament

MQTT本身就是為信號不穩(wěn)定的網(wǎng)絡設計的,所以難免一些客戶端會無故的和Broker斷開連接。 當客戶端連接到Broker時,可以指定LWT,Broker會定期檢測客戶端是否有異常。 當客戶端異常掉線時,Broker就往連接時指定的topic里推送當時指定的LWT消息。

4.消息服務質量

有三種消息發(fā)布服務質量qos(Quality of Service):

4.1“至多一次”

物聯(lián)網(wǎng)協(xié)議MQTT協(xié)議的實現(xiàn)

至多一次

消息發(fā)布完全依賴底層TCP/IP網(wǎng)絡。會發(fā)生消息丟失或重復。這一級別可用于如下情況,環(huán)境傳感器數(shù)據(jù),丟失一次讀記錄無所謂,因為不久后還會有第二次發(fā)送。

4.2“至少一次”

物聯(lián)網(wǎng)協(xié)議MQTT協(xié)議的實現(xiàn)

至少一次

PUBACK消息是對QoS級別為1的PUBLISH消息的響應.PUBACK消息由服務器發(fā)送以響應來自發(fā)布端的PUBLISH消息,訂閱端也會響應來自服務器的PUBLISH消息。當發(fā)布端收到PUBACK消息時,它會丟棄原始消息,因為它也被服務器接收(并記錄)。

如果一定時間內,發(fā)布端或服務器沒有收到PUBACK消息,則會進行重發(fā)。這種方式雖然確保了消息到達,但消息重復可能會發(fā)生。

4.3“只有一次”

物聯(lián)網(wǎng)協(xié)議MQTT協(xié)議的實現(xiàn)

只有一次

PUBREC消息是對QoS級別為2的PUBLISH消息的響應。它是QoS級別2協(xié)議流的第二個消息。 PUBREC消息由服務器響應來自發(fā)布端的PUBLISH消息,或訂閱端響應來自服務器的PUBLISH消息。發(fā)布端或服務器收到PUBREC消息時,會響應PUBREL消息。

PUBREL消息是從發(fā)布端對PUBREC的響應,或從服務器對訂閱端PUBREC消息的響應。 這是QoS 2協(xié)議流中第三個消息。當服務器從發(fā)布者收到PUBREL消息時,服務器會將PUBLISH消息發(fā)送到訂閱端,并發(fā)送PUBCOMP消息到發(fā)布端。 當訂閱端收到來自服務器的消息PUBREL時,使得消息可用于應用程序并將PUBCOMP消息發(fā)送到服務器。

PUBCOMP消息是服務器對來自發(fā)布端的PUBREL消息的響應,或訂閱者對來自服務器的PUBREL消息的響應。 它是QoS 2協(xié)議流程中的第四個也是最后一個消息。當發(fā)布端收到PUBCOMP消息時,它會丟棄原始消息,因為它已經(jīng)將消息發(fā)給了服務器。

在一些要求比較嚴格的計費系統(tǒng)中,可以使用此級別。在計費系統(tǒng)中,消息重復或丟失會導致不正確的結果。這種最高質量的消息發(fā)布服務還可以用于即時通訊類的APP的推送,確保用戶收到且只會收到一次。

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

    關注

    2938

    文章

    46924

    瀏覽量

    402500
  • MQTT
    +關注

    關注

    5

    文章

    708

    瀏覽量

    24424
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    如何理解工業(yè)聯(lián)網(wǎng)網(wǎng)關的協(xié)議解析功能

    工業(yè)聯(lián)網(wǎng)網(wǎng)關的協(xié)議解析功能是其核心能力之一,它通過將不同工業(yè)設備使用的多樣化通信協(xié)議轉換為統(tǒng)一格式,實現(xiàn)異構設備間的無縫互聯(lián)與數(shù)據(jù)交互。以
    的頭像 發(fā)表于 10-15 11:40 ?34次閱讀

    不同品牌PLC如何接入云平臺?御控多協(xié)議聯(lián)網(wǎng)網(wǎng)關一站式集成方案

    御控工業(yè)聯(lián)網(wǎng)網(wǎng)關提供強大協(xié)議轉換能力,免編程實現(xiàn)PLC數(shù)據(jù)采集、MQTT協(xié)議轉換與云平臺(阿里
    的頭像 發(fā)表于 09-22 12:04 ?216次閱讀
    不同品牌PLC如何接入云平臺?御控多<b class='flag-5'>協(xié)議</b><b class='flag-5'>物</b><b class='flag-5'>聯(lián)網(wǎng)</b>網(wǎng)關一站式集成方案

    聯(lián)網(wǎng)MQTT網(wǎng)關是什么

    聯(lián)網(wǎng)MQTT網(wǎng)關是一種采用MQTT聯(lián)網(wǎng)協(xié)議的智能
    的頭像 發(fā)表于 08-29 15:24 ?450次閱讀

    通過MQTT協(xié)議能接入工業(yè)聯(lián)網(wǎng)云平臺中嗎

    通過MQTT協(xié)議完全可以接入工業(yè)聯(lián)網(wǎng)云平臺,且因其輕量、高效、可靠等特性,已成為工業(yè)聯(lián)網(wǎng)場景
    的頭像 發(fā)表于 08-26 18:03 ?390次閱讀

    GraniStudio :MQTT 協(xié)議的深度剖析

    在工業(yè)聯(lián)網(wǎng)(IIoT)的通信協(xié)議體系中,MQTT(Message Queuing Telemetry Transport)憑借其輕量級、發(fā)布 - 訂閱模式和低帶寬占用等特性,成為連接
    的頭像 發(fā)表于 08-04 09:48 ?647次閱讀
    GraniStudio :<b class='flag-5'>MQTT</b> <b class='flag-5'>協(xié)議</b>的深度剖析

    工業(yè)聯(lián)網(wǎng)(IIoT)時代:工控一體機如何實現(xiàn) OPC UA、MQTT協(xié)議的無縫對接?

    在工業(yè)聯(lián)網(wǎng)(IIoT)蓬勃發(fā)展的浪潮中,設備之間高效、穩(wěn)定的通信成為實現(xiàn)智能制造的關鍵基石。OPC UA 和 MQTT 作為工業(yè)通信領域的重要協(xié)議
    的頭像 發(fā)表于 06-07 15:00 ?779次閱讀

    MQTT為何成為聯(lián)網(wǎng)協(xié)議

    MQTT(Message Queuing Telemetry Transport)即消息隊列遙測傳輸協(xié)議,已成為聯(lián)網(wǎng)領域廣泛應用的協(xié)議,這
    的頭像 發(fā)表于 05-20 09:54 ?426次閱讀

    KaihongOS操作系統(tǒng):MQTT聯(lián)網(wǎng)通訊協(xié)議

    @ohos.net.khMqtt (MQTT聯(lián)網(wǎng)通訊協(xié)議) 說明: 本模塊首批接口從API version 8開始支持。后續(xù)版本的新增接口,采用上角標單獨標記接口的起始版本。 目前
    發(fā)表于 05-08 07:51

    工業(yè)智能網(wǎng)關與MQTT聯(lián)網(wǎng)云平臺的關系

    工業(yè)智能網(wǎng)關與 MQTT 聯(lián)網(wǎng)云平臺在聯(lián)網(wǎng)架構中是互補協(xié)作的關系,具體可歸納為以下幾點: 數(shù)據(jù)交互橋梁 工業(yè)智能網(wǎng)關負責采集現(xiàn)場設備(如
    的頭像 發(fā)表于 03-21 09:44 ?700次閱讀

    MQTT聯(lián)網(wǎng)平臺有哪些?有哪些功能?

    (IoT)。關于MQTT聯(lián)網(wǎng)平臺及其功能,可以歸納如下: MQTT聯(lián)網(wǎng)平臺
    的頭像 發(fā)表于 03-15 14:23 ?1095次閱讀
    <b class='flag-5'>MQTT</b><b class='flag-5'>物</b><b class='flag-5'>聯(lián)網(wǎng)</b>平臺有哪些?有哪些功能?

    基于MQTT協(xié)議的車云通信設計

    Queuing Telemetry Transport)是由OASIS發(fā)布的應用層協(xié)議,采用訂閱/發(fā)布的通信模式,下層基于TCP/IP進行傳輸。該標準在工業(yè)聯(lián)網(wǎng)、車聯(lián)網(wǎng)等領域有廣泛
    的頭像 發(fā)表于 01-08 10:24 ?1427次閱讀
    基于<b class='flag-5'>MQTT</b><b class='flag-5'>協(xié)議</b>的車云通信設計

    百問MQTT協(xié)議分析 - MQTT簡述及協(xié)議報文格式組成

    )1字節(jié)固定報頭,2字節(jié)心跳報文,報文結構緊湊 e)消息QoS支持,可靠傳輸保證 16.1.3 應用 ?MQTT協(xié)議廣泛應用于聯(lián)網(wǎng)、移動互聯(lián)網(wǎng)
    發(fā)表于 12-13 09:29

    ipc協(xié)議聯(lián)網(wǎng)中的應用

    聯(lián)網(wǎng)概述 聯(lián)網(wǎng)是一個由互聯(lián)網(wǎng)、傳統(tǒng)電信網(wǎng)、傳感器網(wǎng)絡等多種網(wǎng)絡組成的網(wǎng)絡,它允許物體與物體、物體與人、人與人之間的智能互聯(lián)。
    的頭像 發(fā)表于 11-15 14:19 ?1719次閱讀

    聯(lián)網(wǎng)常用協(xié)議及應用場景

    聯(lián)網(wǎng)協(xié)議是指在聯(lián)網(wǎng)環(huán)境中用于設備間通信和數(shù)據(jù)傳輸?shù)?b class='flag-5'>協(xié)議。根據(jù)不同的作用,
    的頭像 發(fā)表于 11-12 11:01 ?2026次閱讀

    【教程】設備通過MQTT協(xié)議接入OneNET平臺,建立可視化界面

    聯(lián)網(wǎng)領域,傳感器與服務器的通信、信息的收集以及MQTT協(xié)議都是可以考慮的方案之一。MQTT通常用于需要低功耗和低帶寬的場景,如
    的頭像 發(fā)表于 10-25 08:06 ?3529次閱讀
    【教程】設備通過<b class='flag-5'>MQTT</b><b class='flag-5'>協(xié)議</b>接入OneNET平臺,建立可視化界面