0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

什么是MQTT 有哪些特点

454398 来源:工程师吴畏 2019-07-26 10:39 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

消息队列遥测传输(MQTT)是一种ISO标准消息传递协议,旨在通过不可靠的网络连接传感器。它在TCP/IP互联网协议之上工作。

两位工程师Andy Stanford-Clark和Arlen Nipper在1999年创建了协议。他们正在开发一个系统来监控不可靠卫星上的远程石油管道网络,并且需要低功耗,易于实现且非常可靠的消息传递系统。

自开发以来,MQTT已发展成为许多物联网系统中使用的关键消息传递协议,是家庭自动化,水培或远程气象站的理想选择。

MQTT的主要优势

效率

MQTT消息带宽小,设计合理在低功率系统上实施。这使其成为任何电池供电传感器的理想选择。使用MQTT作为消息传递协议可以延长项目的电池寿命。

轻松实现

实现MQTT非常简单远程传感器系统上的消息。由于大部分复杂工作都是在中央服务器上实现的,因此远程系统可以在其他地方使用其资源。

可靠性

MQTT用于任务关键型传感器系统,其中发送的任何消息都得到确认和接收至关重要。 MQTT允许您通过声明其服务质量(QOS)级别来定义消息的重要性。在项目中使用MQTT可以让您高枕无忧,即可以收到所有重要信息。

数据不可知

此协议允许您以消息,数字,单词,甚至可扩展标记语言(XML)或JavaScript对象表示法(JSON)发送任何类型的文本数据。

MQTT如何工作

MQTT遵循发布/订阅原则,由两个元素组成:经纪人和客户。

什么是MQTT 有哪些特点

MQTT包含两个元素:经纪人和客户。

任何MQTT系统的核心都是一个名为broker的应用程序,它可以接收和传输MQTT消息。当代理从客户端收到消息时,它可以将消息发送到订阅该消息主题的任何其他客户端。常用的MQTT代理是Mosquitto,可用于许多平台,如Windows,Linux或Raspberry Pi。甚至还有一个可供任何人使用的在线经纪人。

MQTT系统的第二个组件是客户端,它连接到代理并可以发布或订阅MQTT消息。对于基于ESP8266的项目,PubSubClient经常被用作MQTT客户端的基础。

MQTT消息按主题分类,主题是编码到每个消息中的字符串。客户端订阅主题,当代理收到消息时,它会将其传输给订阅它的任何客户端。 MQTT主题具有与文件系统类似的结构,并使用/字符作为分隔符。一些示例主题是:

home/kitchen/light

home/lounge/lamp

home/lounge/light

通配符(#)可用于订阅级别上的所有消息。例如,订阅home/lounge/#的客户将收到家庭/休息室/灯和家庭/休息室/灯光消息。订阅home/#的客户将收到以上所有订阅。

MQTT提供简易消息系统

MQTT可以为制造商提供强大的功能,易于实现,可靠的消息系统。它适用于需要在设备之间进行通信的任何项目,例如家庭监控系统,并且可以在以后阶段轻松调整以合并其他传感器。

有关基于MQTT的系统的示例ESP8266客户端和运行Mosquitto代理的Raspberry Pi,请查看如何在Raspberry Pi上安装Mosquitto MQTT Broker。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • MQTT
    +关注

    关注

    5

    文章

    747

    浏览量

    25337
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    瑞芯微(EASY EAI)RV1126B mqtt

    1.MQTT简介MQTT(MessageQueuingTelemetryTransport,消息队列遥测传输协议),是一种基于发布/订阅(publish/subscribe)模式的“轻量级”通讯协议
    的头像 发表于 04-13 17:22 1230次阅读
    瑞芯微(EASY EAI)RV1126B <b class='flag-5'>mqtt</b>

    基于LuatOS的MQTT物联网通信全解

    在构建物联网终端设备时,通信协议的选择直接决定系统的稳定性与扩展性。LuatOS通过内置MQTT客户端支持,使开发者能以极少代码实现设备上云。本文将从协议原理到代码实现,全面解析基于LuatOS
    的头像 发表于 01-29 19:42 430次阅读
    基于LuatOS的<b class='flag-5'>MQTT</b>物联网通信全解

    MQTT网关支持5G通信吗

    MQTT网关可以支持5G通信 ,且在实际应用中,5G与MQTT协议的结合为物联网领域带来了显著优势,以下为具体分析: 一、5G与MQTT协议的结合优势 高速数据传输 :5G网络提供了极高的数据传输
    的头像 发表于 12-08 11:13 1249次阅读

    北向MQTT工业物联网网关是什么

    北向MQTT工业网关是工业物联网中连接底层设备与上层云平台的核心设备,其核心功能是通过MQTT协议实现设备数据的高效、可靠上传,并支持云端对设备的远程监控与管理。 以下从定义、功能、应用场
    的头像 发表于 12-02 11:13 794次阅读

    使用paho-mqtt里例程连接服务器失败怎么解决?

    【rt-thread】【paho-mqtt】最近由于学习需要,了解了关于rt-thread软件包paho-mqtt的使用,但是使用官方例程时,出现连接不上服务器的情况。具体报错如下: msh
    发表于 09-18 06:38

    MQTT_协议中文资料

    电子发烧友网站提供《MQTT_协议中文资料.pdf》资料免费下载
    发表于 09-02 16:19 1次下载

    物联网MQTT网关是什么

    ,适用于智能家居、工业物联网、环境监测等多个领域。 一、核心定义与定位 MQTT(Message Queuing Telemetry Transport)是一种基于发布/订阅模式的轻量级通信协议,专为低带宽、不稳定网络环境设计,具有消息头部小、资源消耗低的特点
    的头像 发表于 08-29 15:24 1399次阅读

    揭秘Air8000对讲黑科技:AirTalk+MQTT开发示例深度解析

    Air8000的AirTalk对讲方案如何实现设备间无缝通信?答案藏在MQTT协议的高效架构中。本文通过完整开发示例,层层剖析代码逻辑:从初始化Air8000模块到MQTT主题配置,再到对讲数据
    的头像 发表于 08-06 17:16 1027次阅读
    揭秘Air8000对讲黑科技:AirTalk+<b class='flag-5'>MQTT</b>开发示例深度解析

    MQTT物联网数据解析的难点哪些?

    MQTT物联网数据解析的难点主要源于物联网场景中设备的多样性、数据的复杂性以及系统的高要求,具体可归纳为以下几个方面。
    的头像 发表于 08-05 18:13 1093次阅读

    GraniStudio :MQTT 协议的深度剖析

    在工业物联网(IIoT)的通信协议体系中,MQTT(Message Queuing Telemetry Transport)凭借其轻量级、发布 - 订阅模式和低带宽占用等特性,成为连接边缘设备与云端
    的头像 发表于 08-04 09:48 1270次阅读
    GraniStudio :<b class='flag-5'>MQTT</b> 协议的深度剖析

    第二十三章 W55MH32 MQTT_OneNET示例

    本文讲解了如何在 W55MH32 芯片上实现 MQTT 协议并连接 OneNET 平台,通过实战例程展示了从准备工作、连接配置到消息订阅、发布及接收处理的完整过程。文章详细介绍了 MQTT 协议
    的头像 发表于 07-24 14:59 1485次阅读
    第二十三章 W55MH32 <b class='flag-5'>MQTT</b>_OneNET示例

    MQTT网关具备边缘计算功能吗?什么功能?

    现代MQTT网关通常具备边缘计算功能,尤其是为适应物联网(IoT)场景中低延迟、高可靠、带宽优化等需求而设计的新一代网关。传统MQTT网关的核心功能是协议转换(如将Modbus、ZigBee等设备
    的头像 发表于 07-15 15:01 1193次阅读
    <b class='flag-5'>MQTT</b>网关具备边缘计算功能吗?<b class='flag-5'>有</b>什么功能?

    MQTT介绍

    一、什么是MQTT 物联网(IoT)发展迅猛,传感器、网关、云平台之间如何高效通信成了核心问题。MQTT(Message Queuing Telemetry Transport)作为一种轻量级
    的头像 发表于 07-14 09:34 3893次阅读
    <b class='flag-5'>MQTT</b>介绍

    精通 MQTT:消息队列遥测传输指南!

    引言MQTT(消息队列遥测传输)是一种轻量级消息协议,专为低带宽、高延迟和不可靠的网络环境设计。它广泛应用于物联网(IoT)应用、消息系统以及实时数据通信领域。本指南深入探讨了MQTT的工作原理
    的头像 发表于 06-16 16:56 1191次阅读
    精通 <b class='flag-5'>MQTT</b>:消息队列遥测传输指南!

    MQTT 回调处理程序中遇到了随机 MQTT 断开连接的问题,怎么解决?

    MCU:CYW55913。 MQTT Broker 端点:Amazon AWS 云。 保持活动超时:60 秒 ping 响应超时:5 秒 我们在 MQTT 回调处理程序中遇到了随机 MQTT
    发表于 06-05 07:14