自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

物聯(lián)網(wǎng)協(xié)議的王者:MQTT

物聯(lián)網(wǎng)
MQTT 最初由 Andy Stanford-Clark 博士和 Arlen Nipper 博士于 1999 年創(chuàng)建,用于通過衛(wèi)星連接石油管道遙測系統(tǒng)。

?今天跟大家聊一下物聯(lián)網(wǎng)協(xié)議中比較著名的協(xié)議:MQTT。

讓我們直接開始!

什么是MQTT?

  • 英文全稱:Message Quueuing Telemetry Transport
  • 中文術(shù)語:消息隊列遙測傳輸協(xié)議
  • 一種適用于物聯(lián)網(wǎng)設(shè)備之間通信的簡單消息傳遞協(xié)議
  • 專為帶寬受限的設(shè)備而設(shè)計
  • 采用發(fā)布/訂閱通信模式
  • 用于機器對機器( M2M ) 通信
  • MQTT 協(xié)議基于OASIS 標(biāo)準(zhǔn)下的TCP/IP
  • 被廣泛用于無線網(wǎng)絡(luò)通信,具有廣泛的覆蓋面,涵蓋醫(yī)療保健、汽車和其他使用物聯(lián)網(wǎng)應(yīng)用的行業(yè)。

物聯(lián)網(wǎng)協(xié)議的王者:MQTT

MQTT的歷史

MQTT 最初由 Andy Stanford-Clark 博士和 Arlen Nipper 博士于 1999 年創(chuàng)建,用于通過衛(wèi)星連接石油管道遙測系統(tǒng)。

兩位發(fā)明者為未來的協(xié)議指定了幾個要求:

  • 簡單的實現(xiàn)
  • 服務(wù)質(zhì)量數(shù)據(jù)交付
  • 輕量級和帶寬效率
  • 數(shù)據(jù)不可知
  • 持續(xù)的會話

MQTT 于 2013 年在結(jié)構(gòu)化信息標(biāo)準(zhǔn)促進組織 (OASIS) 下被標(biāo)準(zhǔn)化為開源,OASIS 仍然管理 MQTT 標(biāo)準(zhǔn)。

物聯(lián)網(wǎng)協(xié)議的王者:MQTT

MQTT的優(yōu)勢

MQTT有以下優(yōu)勢:

物聯(lián)網(wǎng)協(xié)議的王者:MQTT

簡單

使用 MQTT 啟動和運行起來既快速又簡單。

搭建只需要幾條命令就可以搞定,啟動也是非???,還有專門的管理界面。

物聯(lián)網(wǎng)協(xié)議的王者:MQTT

可靠

許多物聯(lián)網(wǎng)設(shè)備依賴無線電連接來傳輸和收集數(shù)據(jù),這意味著連接并不總是可靠的。

MQTT 通過提供內(nèi)置的 QoS 功能來減少連接問題,該功能可以將消息排隊,將它們保存在 MQTT 代理中,并讓它們等待目標(biāo)設(shè)備全部設(shè)置好接受它,這降低了消息錯位的幾率,因此消息注定要到達目的地。

物聯(lián)網(wǎng)協(xié)議的王者:MQTT

雙向消息傳遞

任何設(shè)備、事物或應(yīng)用程序都可以發(fā)布或訂閱由 MQTT 代理處理的任何主題。

這不是單向的,比如只能發(fā)布或者只能訂閱,是既能發(fā)布又能訂閱,類似于全雙工通信。

大規(guī)模消息傳遞

由于Broker的存在,所以不管是100萬臺設(shè)備,還是100臺設(shè)備,對于MQTT都是一樣的,沒有啥壓力,因為最終消息都是傳遞到Broker中,不管多少個客戶端監(jiān)聽消息,也是從Broker中拿。

MQTT工作原理

MQTT架構(gòu)

MQTT 使用 PUSH/SUBSCRIBE(發(fā)布訂閱) 模型在 TCP/IP 之上運行,在 MQTT 架構(gòu)中,有兩種類型的系統(tǒng):

  • 客戶端
  • 代理

物聯(lián)網(wǎng)協(xié)議的王者:MQTT

代理是客戶端與之通信的服務(wù)器,代理接收來自客戶端的通信并將這些通信發(fā)送給其他客戶端,客戶端之間不直接通信,而是連接到代理,每個客戶端可以是發(fā)布者、訂閱者或兩者兼而有之。

MQTT 是一種事件驅(qū)動的協(xié)議,沒有定期或持續(xù)的數(shù)據(jù)傳輸,這使傳輸保持在最低限度。客戶端僅在有信息要發(fā)送時發(fā)布,代理僅在新數(shù)據(jù)到達時向訂閱者發(fā)送信息。

發(fā)布/訂閱

在發(fā)布和訂閱系統(tǒng)中,設(shè)備可以在某個主題上發(fā)布消息,也可以訂閱特定主題以接收消息。

物聯(lián)網(wǎng)協(xié)議的王者:MQTT

如圖,設(shè)備 1 在某個主題上發(fā)布消息,設(shè)備 2 訂閱了與設(shè)備 1發(fā)布的主題相同的主題,隨后設(shè)備 2 就能接收到消息。

消息

消息是設(shè)備之間交換的信息,比如一些指令,或者設(shè)備的一些信息,或者是其他需要交換的信息。

物聯(lián)網(wǎng)協(xié)議的王者:MQTT

主題

如圖所示,我用一張圖一句話解釋一下:主題就是你微信訂閱公眾號的類型。

物聯(lián)網(wǎng)協(xié)議的王者:MQTT

以公眾號為例,創(chuàng)作者是一個個發(fā)布者,公眾號的服務(wù)器是Broker,讀者是訂閱者,不同領(lǐng)域的發(fā)布者向不同的主題(領(lǐng)域)發(fā)布文章,比如瑞哥一般都是朝科技領(lǐng)域發(fā)布文章,那么所有讀者(訂閱者)訂閱了科技領(lǐng)域的都可以看到我的文章。

這個領(lǐng)域就可以大致理解為主題。

主題用正斜杠分隔的字符串表示,每個正斜杠表示一個主題級別。

如圖在公眾號 文章類型中科技領(lǐng)域創(chuàng)建網(wǎng)絡(luò)類型的主題:

物聯(lián)網(wǎng)協(xié)議的王者:MQTT

物聯(lián)網(wǎng)協(xié)議的王者:MQTT

注意:主題區(qū)分大小寫,兩個主題不同:

物聯(lián)網(wǎng)協(xié)議的王者:MQTT

如果讀者想要看網(wǎng)絡(luò)方向的文章:

物聯(lián)網(wǎng)協(xié)議的王者:MQTT

  • 發(fā)布者在article/technology/network主題發(fā)布OSPF相關(guān)的文章
  • 訂閱者訂閱了主題article/technology/network
  • 發(fā)布者在主題article/technology/network上有新消息發(fā)出的時候,訂閱者都能訂閱到。

Broker 經(jīng)紀(jì)人

經(jīng)紀(jì)人其實就是代理。

MQTT 代理負(fù)責(zé)接收所有消息, 過濾消息, 決定誰對它們感興趣,然后將消息發(fā)布給所有訂閱的客戶端。

物聯(lián)網(wǎng)協(xié)議的王者:MQTT

MQTT訂閱

MQTT 客戶端不直接相互連接,而是訂閱主題以接收消息。

要訂閱主題,客戶端必須首先向代理發(fā)送訂閱請求,SUBSCRIBE 請求可以包含多個主題,代理使用 SUBACK(確認(rèn)訂閱)響應(yīng)來響應(yīng) SUBSCRIBE 請求,訂閱還具有 QoS 設(shè)置,可用于降級已發(fā)布消息的 QoS。在這種情況下,消息總是以較低的 QoS 設(shè)置發(fā)布。

訂閱通配符

訂閱通配符有兩種:

物聯(lián)網(wǎng)協(xié)議的王者:MQTT

單級

單級通配符替換一個主題級別:

物聯(lián)網(wǎng)協(xié)議的王者:MQTT

此通配符將涵蓋以下主題:

  • 文章/娛樂/網(wǎng)絡(luò)
  • 文章/科技/網(wǎng)絡(luò)
  • 文章/三農(nóng)/網(wǎng)絡(luò)
  • 文章/新聞/網(wǎng)絡(luò)

多級

多級通配符替換多個主題級別:

物聯(lián)網(wǎng)協(xié)議的王者:MQTT

此通配符將涵蓋以下主題:

  • 文章/娛樂/網(wǎng)絡(luò)
  • 文章/科技/java
  • 文章/三農(nóng)/美食
  • 文章/新聞/航天

服務(wù)質(zhì)量 QoS

QoS 0(最多一次):客戶端的消息只發(fā)送一次,不管它是否已經(jīng)到達代理。

QoS 1(至少一次):客戶端的消息被一遍又一遍地發(fā)送,直到代理以確認(rèn)接收來響應(yīng),這可能導(dǎo)致消息多次到達代理。

QoS 2(恰好一次):客戶端發(fā)送一次消息,同時確保它已到達代理,QoS 2 通信需要比服務(wù)質(zhì)量 0 或 1 更多的帶寬。

MQTT幾個重要的網(wǎng)站

  • mqtt官網(wǎng):https://mqtt.org/

物聯(lián)網(wǎng)協(xié)議的王者:MQTT

  • emqx官網(wǎng):https://www.emqx.com/

物聯(lián)網(wǎng)協(xié)議的王者:MQTT

總結(jié)

MQTT是一種輕量級的開放式消息傳遞協(xié)議,它為資源受限的網(wǎng)絡(luò)客戶端提供了一種在低帶寬環(huán)境中分發(fā)遙測信息的簡單方法,采用發(fā)布/訂閱通信模式,用于機器對機器 ( M2M ) 通信。?

責(zé)任編輯:武曉燕 來源: 今日頭條
相關(guān)推薦

2024-03-26 11:52:13

2023-03-20 16:16:40

MQTT傳輸協(xié)議

2023-09-24 23:18:50

2018-08-17 06:13:16

物聯(lián)網(wǎng)協(xié)議MQTTMQTT-SN

2023-09-07 14:59:42

物聯(lián)網(wǎng)MQTTCoAP

2013-04-28 10:29:07

MQTT物聯(lián)網(wǎng)消息隊列遙測傳輸

2023-04-19 15:02:01

MQTT人工智能物聯(lián)網(wǎng)

2023-07-18 10:38:09

2020-11-19 09:19:42

物聯(lián)網(wǎng)物聯(lián)網(wǎng)標(biāo)準(zhǔn)物聯(lián)網(wǎng)協(xié)議

2019-12-27 10:42:45

HTTPMQTT物聯(lián)網(wǎng)

2023-09-27 14:32:44

2023-06-20 14:04:59

2022-05-17 11:06:52

車聯(lián)網(wǎng)通信協(xié)議MQTT

2024-01-12 07:46:07

MQTT協(xié)議物聯(lián)網(wǎng)應(yīng)用.NET

2018-03-29 10:13:54

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

2019-10-17 09:07:49

TCPUDPHTTP

2023-04-18 16:12:14

2019-11-26 09:16:09

物聯(lián)網(wǎng)通訊協(xié)議IOT

2019-11-20 10:04:21

物聯(lián)網(wǎng)通訊協(xié)議IOT

2019-11-20 22:52:49

物聯(lián)網(wǎng)通訊協(xié)議IOT
點贊
收藏

51CTO技術(shù)棧公眾號