MQTT

角色

通信模型

sequenceDiagram    participant Pub as 发布者(Publisher)    participant Broker as 代理(Broker)    participant Sub as 订阅者(Subscriber)    Sub ->> Broker: 订阅主题 (home/livingroom/temperature)    Broker -->> Sub: 确认订阅成功    Pub ->> Broker: 发布消息 (主题: home/livingroom/temperature, 消息: 23℃, QoS=1)    Broker -->> Pub: 确认收到 (QoS 流程)    Broker ->> Sub: 转发消息 (主题: home/livingroom/temperature, 消息: 23℃)    Sub -->> Broker: 确认收到 (QoS 流程)

包格式

主题

层级式路径,用斜杠分隔

如:home/livingroom/temperature

消息

发布订阅机制

特性

Qos

会话

遗嘱消息

客户端异常断开时,Broker 会帮它发一条预先定义的“遗言”

保活

保活间隔

由客户端在 CONNECT 报文里指定。在这个时间间隔内,客户端必须和 Broker 至少有一次交互(可以是 PUBLISH、SUBSCRIBE,也可以是专门的 PINGREQ)。如果超过这个时间没有交互,Broker 会认为客户端掉线

心跳报文

安全机制

认证

加密

授权