天天看点

一文读懂MQTT协议的工作原理

作者:Xzxxxxxx
一文读懂MQTT协议的工作原理

MQTT 协议是一种基于发布/订阅模式的“轻量级”通讯协议,该协议构建于TCP/IP协议上,由IBM在1999年发布。MQTT 协议适用于低带宽、不可靠的网络环境,可以实现设备与设备之间的实时可靠的消息传输。MQTT 协议有以下主要特点:

  • 使用发布/订阅消息模式,提供一对多的消息发布,解除应用程序耦合
  • 对负载内容屏蔽的消息传输
  • 使用TCP/IP提供网络连接
  • 有三种消息发布服务质量:至多一次、至少一次和只有一次
  • 小型传输,开销很小,协议交换最小化,以降低网络流量
  • 使用Last Will和Testament特性通知有关各方客户端异常中断的机制

MQTT 协议的工作原理是:

MQTT 客户端与 MQTT 代理建立连接,然后客户端可以发布消息、订阅特定主题的消息或同时执行这两项操作。MQTT 代理收到一条消息后,会将其转发给对此感兴趣的订阅者。

一文读懂MQTT协议的工作原理

MQTT 协议中有三种身份:发布者(Publish)、代理(Broker)(服务器)、订阅者(Subscribe)。MQTT 协议中定义了一些方法(也被称为动作),来于表示对确定资源所进行操作,主要有 Connect、Disconnect、Subscribe、UnSubscribe 和 Publish。MQTT 协议的数据包结构由固定头(Fixed header)、可变头(Variable header)、消息体(payload)三部分构成。

一文读懂MQTT协议的工作原理

MQTT 的应用场景很多,主要集中在物联网领域,比如智能家居、车联网、工业控制、远程监控等。

一文读懂MQTT协议的工作原理
  • 智能家居系统中的各种设备,如灯、空调、温度传感器等,可以作为 MQTT 客户端,向 MQTT 代理发布或订阅不同的主题,实现设备之间的数据交换和控制。
  • 温度传感器可以向主题 sensors/temperature/out 发布当前的温度数据,空调可以订阅该主题,并根据温度数据调节自己的工作状态。
  • 用户可以通过手机上的智能家居应用程序,向主题 livingroom/light 发布 on 或 off 消息,来控制客厅的灯的开关。
一文读懂MQTT协议的工作原理

继续阅读