MQTT协议规范
MQTT是基于TCP/IP协议栈构建的异步通信消息协议,是一种轻量级的发布、订阅信息传输协议。MQTT在时间和空间上,将消息发送者与接受者分离,可以在不可靠的网络环境中进行扩展,适用于设备硬件存储空间有限或网络带宽有限的场景。物联网平台支持设备使用MQTT协议接入。
组成和基本概念
MQTT是有以下几部分组成:
- 发布(Publish)/订阅(Subscribe)
- 消息(Message)
- 主题(Topics)
- 代理(Broker)
发布(Publish)/订阅(Subscribe)
发布-订阅是一种消息范式,消息的发送者(称为发布者)不会将消息直接发送给特定的接收者(称为订阅者)。而是将发布的消息分为不同的类别,无需了解哪些订阅者(如果有的话)可能存在。同样的,订阅者可以表达对一个或多个类别的兴趣,只接收感兴趣的消息,无需了解哪些发布者(如果有的话)存在。主题(Topics)
主题通过字符串“/“进行划分,主题有2个作用:
- 对感兴趣的主题进行分类
- 具体说明你想发布消息到哪里
例子:
home/office/lamp
代理(Broker)
(代理)Broker有三个主要作用:
- 接受所有的消息
- 过滤消息
- 发布消息到所有订阅的客户端
官方地址:https://mqtt.org/