日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

MQTT--物联网(IoT)消息推送协议

發布時間:2025/1/21 c/c++ 61 豆豆
生活随笔 收集整理的這篇文章主要介紹了 MQTT--物联网(IoT)消息推送协议 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

簡介

MQTT(Message Queuing Telemetry Transport,消息隊列遙測傳輸協議)是一種構建于TCP/IP協議的"輕量級"消息傳輸協議,它基于發布/訂閱(publish/subscribe)模式,由IBM在1999年發布。對于需要較小代碼占用空間或網絡帶寬有限的遠程連接非常有用,是專為受限設備和低帶寬、高延遲或不可靠的網絡而設計。

基于這些優點,MQTT已成為物聯網智能家居的首選傳輸協議,還被用于通過衛星鏈路與代理通信的傳感器、與醫療服務提供者的撥號連接,以及一系列家庭自動化和小型設備場景。并且它也是移動應用的理想選擇,因為它體積小,功耗低,數據包最小,并且可以有效地將信息分配給一個或多個接收器。

特點

  • 輕量、簡單、網絡開銷小、開放和易于實現
  • 輕量級,
  • 發布/訂閱模式,一對多消息發布
  • 基于TCP/IP網絡連接,提供有序,無損,雙向連接
  • 1字節固定報頭,2字節心跳報文,最小化傳輸開銷和協議交換,有效減少網絡流量
  • 消息QoS支持,可靠傳輸保證,有三種消息發布質量(Qos):
    qos=0:“至多一次”,這一級別會發生消息丟失或重復,消息發布依賴于TCP/IP網絡
    qos=1:“至少一次”,確保消息到達,但消息重復可能會發生
    qos=2:“只有一次”,確保消息到達一次
  • 通知機制,異常中斷時會通知雙方
  • 支持連續的會話控制
  • 把傳輸量降到最低以提高傳輸效率
  • 允許用戶動態創建主題,零運維成本

應用場景

MQTT協議廣泛應用于物聯網、移動互聯網、智能硬件、車聯網、電力能源等領域。

  • 物聯網M2M通信,物聯網大數據采集
  • Android消息推送,WEB消息推送
  • 移動即時消息,例如Facebook Messenger
  • 智能硬件、智能家具、智能電器
  • 車聯網通信,電動車站樁采集
  • 智慧城市、遠程醫療、遠程教育
  • 電力、石油與能源等行業市場

協議實現方式

實現MQTT協議需要客戶端和服務器端通訊完成,在通訊過程中,MQTT協議中有三種身份:發布者(Publish)、代理(Broker)(服務器)、訂閱者(Subscribe)。其中,消息的發布者和訂閱者都是客戶端,消息代理是服務器,消息發布者可以同時是訂閱者。

MQTT傳輸的消息分為:主題(Topic)和負載(payload)兩部分:

  • Topic,可以理解為消息的類型,訂閱者訂閱(Subscribe)后,就會收到該主題的消息內容(payload);
  • payload,可以理解為消息的內容,是指訂閱者具體要使用的內容。

MQTT客戶端

一個使用MQTT協議的應用程序或者設備,它總是建立到服務器的網絡連接。客戶端可以:

  • 發布其他客戶端可能會訂閱的信息;
  • 訂閱其它客戶端發布的消息;
  • 退訂或刪除應用程序的消息;
  • 斷開與服務器連接;

MQTT服務器

MQTT服務器以稱為"消息代理"(Broker),可以是一個應用程序或一臺設備。它是位于消息發布者和訂閱者之間,它可以:

  • 接受來自客戶的網絡連接;
  • 接受客戶發布的應用信息;
  • 處理來自客戶端的訂閱和退訂請求;
  • 向訂閱的客戶轉發應用程序消息;

本文只是基礎的介紹,下篇將正式介紹如何在Qt中調用MQTT,以及如何連接服務器等流程。

參考資料:
https://www.runoob.com/w3cnote/mqtt-intro.html
http://mqtt.p2hp.com/

總結

以上是生活随笔為你收集整理的MQTT--物联网(IoT)消息推送协议的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。