物聯網開發之MQTT通訊

2022-08-29 23:15:23 字數 1116 閱讀 4016

mqtt協議-mqtt協議簡介

mqtt(message queuing telemetry transport,訊息佇列遙測傳輸協議),是乙個客戶端服務端架構的發布/訂閱模式的「輕量級」訊息傳輸協議。mqtt控制報文由三部分組成,依次為:固定報頭(fixed header)、可變報頭(variable header)、有效載荷(payload)。

1、mqtt協議的特點

客戶端client使用mqtt的程式或裝置,客戶端總是通過網路連線到服務端。它可以

(1)發布應用訊息給其它相關的客戶端。

(2)訂閱以請求接受相關的應用訊息,

(3)取消訂閱以移除接受應用訊息的請求。

(4)從服務端斷開連線。

服務端server乙個程式或裝置,作為傳送訊息的客戶端和請求訂閱的客戶端之間的中介。服務端

(1)接受來自客戶端的網路連線。

(2)接受客戶端傳送的應用訊息。

(3)處理客戶端的訂閱和取消訂閱請求。

(4)**應用訊息給符合條件的已訂閱客戶端。

2、mqtt協議的格式

(1)固定報頭,每個mqtt控制報文都包含,用來描述資料報文型別以及指定控制報文型別的標誌位。

byte76

5432

10byte 1

mqtt控制報文型別

指定控制報文型別的標誌位

byte 2

資料報剩餘長度

控制報文的型別:名字值

報文流動方向

描述reserved0禁止

保留connect

1客戶端到服務端

客戶端請求連線服務端

connack

2服務端到客戶端

連線報文確認

publish 

3 兩個方向都允許

發布訊息

subscribe

8客戶端到服務端

客戶端訂閱請求

mqtt 傳送訊息過多 物聯網開發之MQTT協議?

什麼是mqtt?mqtt 訊息佇列遙測傳輸 是iso 標準 iso iec prf 20922 下基於發布 訂閱正規化的訊息協議。它工作在 tcp ip協議族上,是為硬體效能低下的遠端裝置以及網路狀況糟糕的情況下而設計的發布 訂閱型訊息協議,為此,它需要乙個訊息中介軟體 mqtt是乙個基於客戶端 伺...

物聯網通訊協議之MQTT

mqtt 協議翻譯成中文叫訊息佇列遙測傳輸,最早來自於ibm公司,是為硬體效能低下的遠端裝置以及網路狀況糟糕的情況下而設計的發布 訂閱型訊息協議。它工作在tcp ip協議上,具有輕量 簡單 開放和易於實現的特點,廣泛應用在物聯網行業上,如在智慧型家居,智慧型農業,智慧型社群的裝置中。2014年發布的...

物聯網MQTT協議之mosquitto

略 mosquitto pub 訊息發布 mosquitto sub 訊息訂閱 1.將資料重定向到csv或者txt檔案中 mosquitto sub test.csv 2.將文字檔案遍歷逐行存入資料庫 import json import pymysql import os import time ...