物联网通信消息队列客户端-MQTT简介

本文介绍了一种轻量级的消息队列遥测传输协议MQTT,详细解析了其工作原理、特性及应用场景。涵盖主题管理、消息服务质量、保留消息与最后遗嘱等功能。

1. MQTT简介

MQTTMessageQueuingTelemetryTransport,消息队列遥测传输协议)是一种基于发布/订阅(publish/subscribe)模式的“轻量级”通讯协议,该协议构建于TCP/IP协议上,由IBM在1999年发布。
MQTT最大优点在于,作为一种低开销、低带宽占用的即时通讯协议,可以以极少的代码和有限的带宽,为连接远程设备提供实时可靠的消息服务。使其在物联网、小型设备、移动应用等方面有较广泛的应用。

TCP/IP参考模型可以分为四层:应用层、传输层、网络层、链路层。TCPUDP位于传输层,应用层常见的协议有HTTPFTPSSH等。**MQTT**协议运行于**TCP****之上,属于应用层协议,**因此只要是支持TCP/IP协议栈的地方,都可以使用MQTT

2. MQTT特性

  • 使用发布/订阅消息模式,提供一对多的消息发布,解除应用程序耦合;
  • 对负载内容屏蔽的消息传输;
  • 使用TCP/IP提供网络连接;
  • 小型传输,开销很小(固定长度的头部是2字节),协议交换最小化,以降低网络流量;
  • 使用LastWillTestament特性(最后遗嘱)通知有关各方客户端异常中断的机制。

3. MQTT术语

3.1 应用消息ApplicationMessage

  • MQTT协议通过网络传输应用数据;
  • 应用消息通过MQTT传输时,它们有关联的服务质量(QoS)和主题(Topic)。

3.2 客户端Client

使用MQTT的程序或设备。客户端总是通过网络连接到服务端。它可以:

  • 发布应用消息给其它相关的客户端;
  • 订阅以请求接受相关的应用消息;
  • 取消订阅以移除接受应用消息的请求;
  • 从服务端断开连接。

3.3 服务端Server

一个程序或设备,作为发送消息的客户端和请求订阅的客户端之间的中介。它可以:

  • 服务端接受来自客户端的网络连接;
  • 接受客户端发布的应用消息;
  • 处理客户端的订阅和取消订阅请求;
  • 转发应用消息给符合条件的已订阅客户端。

3.4 订阅Subscription

  • 订阅包含一个主题过滤器(TopicFilter)和一个最大的服务质量(QoS)等级;
  • 订阅与单个会话(Session)关联;
  • 会话可以包含多于一个的订阅。会话的每个订阅都有一个不同的主题过滤器。

3.5 主题名TopicName

  • 附加在应用消息上的一个标签,服务端已知
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

千里马不常有

整理不易,点滴助力就是不竭动力

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

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

打赏作者

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

抵扣说明:

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

余额充值