MQTT系列—(1)MQTT 协议介绍

目录

一、概述

二、设计目标与特点

三、MQTT 通信架构

四、主题(Topic)机制

五、QoS(服务质量等级)

六、MQTT 报文类型

七、常见端口与安全机制

八、应用示例

例:智能锁系统

九、常用 MQTT Broker

十、MQTT 与其他协议对比

十一、总结


一、概述

MQTT(Message Queuing Telemetry Transport) 是一种轻量级、基于 发布/订阅(Publish/Subscribe) 模式的消息传输协议,专为 低带宽、高延迟或不可靠网络环境 而设计。 它广泛应用于 物联网(IoT)智能家居车联网工业监控远程医疗 等场景。


二、设计目标与特点

特点 说明
🔹 轻量高效 报文头部最小仅 2 个字节,适合带宽受限的设备(如 ESP32、MCU)。
🔹 发布/订阅模型 客户端之间通过 Broker(代理服务器) 进行通信,发送者与接收者解耦。
🔹 可靠传输 支持 3 种 QoS(服务质量)等级,保障消息可靠性。
🔹 长连接 基于 TCP 长连接,支持心跳保活(Keep Alive)。
🔹 跨平台支持 支持 C、Python、Java、Node.js、Go 等多语言实现。
🔹 安全机制 可通过 TLS/SSL 加密传输,支持用户名密码或证书认证。

三、MQTT 通信架构

+------------+        +-----------+        +------------+
| Publisher  | -----> |           | -----> | Subscriber |
| (发布者)   |        |   Broker  |        | (订阅者)   |
+------------+        +-----------+        +------------+
  • Broker(代理服务器): 负责接收消息、过滤、转发给对应订阅者(常见实现:Mosquitto、EMQX、HiveMQ)。

  • Publisher(发布者): 向特定主题(Topic)发布消息。

  • Subscriber(订阅者): 订阅主题并接收消息。


四、主题(Topic)机制

主题是 MQTT 消息的 分类通道,使用类似路径的格式:

home/livingroom/temperature
device/lock/123/status
  • #:多层通配符 例如:home/# 可匹配 home/livingroom/temperaturehome/kitchen/humidity

  • +:单层通配符 例如:home/+/temperature 可匹配 home/livingroom/temperature 但不匹配 home/livingroom/sensor/temperature


五、QoS(服务质量等级)

等级 名称 适用场景 含义
0 至多一次 (At most once) 温度上报、心跳数据 不保证送达,类似 UDP
1 至少一次 (At least once) 日志、状态更新 可重复但不会丢失
2 仅一次 (Exactly once)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

34号树洞

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值