大茂名网

 找回密码
 用户注册

QQ登录

只需一步,快速开始

查看: 418|回复: 0

[【编导】] 新观点带你了解MQTT协议2022/12/26 14:34:00

[复制链接]

2万

主题

2万

帖子

9万

积分

钻石元老

Rank: 24Rank: 24Rank: 24Rank: 24Rank: 24Rank: 24

积分
98065
发表于 2022-12-26 14:33 | 显示全部楼层 |阅读模式

马上注册登陆,结交更多好友,享用更多功能,让你轻松玩转社区

您需要 登录 才可以下载或查看,没有账号?用户注册

x

目前MQTT协议被广泛应用于自动驾驶、工业、通信等领域。本文将详细介绍MQTT协议的特点、如何运作等相关问题。作者|王映月,单位:移动智慧家庭运营中心域名IP查询的相关问题可以到网站了解下,我们是业内领域专业的平台,您如果有需要可以咨询,相信可以帮到您,值得您的信赖!


?L导读目前MQTT协议被广泛应用于自动驾驶、工业、通信等领域。而在智能家居领域市场上,移动、华为、阿里、讯等多家IT平台都支持MQTT协议接入。本文将详细介绍MQTT协议的特点、如何运作等相关问题。

MQTT是结构化信息标准促进组织(OASIS,OASIS)标准下的物联消息传递协议,其轻量级的发布订阅传输机制,非常适合为远程连接设备提供可靠的消息通信服务。目前MQTT协议被广泛应用于自动驾驶、工业、通信等领域。而在智能家居领域市场上移动、华为、阿里、讯等多家IT平台都支持MQTT协议接入。











P01MQTT协议的特点

-轻量高效



只需极少的资源即可现MQTT客户端,这使得MQTT协议可以轻松地在微型芯片上运行。极简报文设置现比较小络开销。



-范围广播



轻松现百万设备消息广播。



-稳定传输



3种消息传输保障等级,提供不同场景下消息传递的可靠性保证。



-弱支持



会话保持机制减少弱环境下设备重连时间。



-安全保障



支持多种认证协议保障消息安全





P02MQTT协议是怎么工作的●

MQTT协议定义了消息代理节点(B)及MQTT客户端(C),两种络体类型。B接收C发送的消息并负责转发这些消息到指定的C。C是能与B产生交互的任何体,负责发送与接收消息。常见的C比如IT传感器,云端服务器。可见在MQTT协议中消息是通过B进行转发的,而不是由一个C与另一个C直接连接通信。为了区分,我们可以把C定义为消息发送者(P-C)与消息接收者(S-C)。



C与B建立连接,该连接可以是一个TCPIP连接,也可以是一个加密的TLS连接。S-C订阅一个主题(T)。P-C发送某个T消息到B。B将该条消息转发给所有订阅该T的S-C。







P03MQTT协议质量保障

众所周知,物联设备往往处在复杂的络环境下,比如农业物联中,蔬菜大棚的传感器设备;工业物联中,封闭车间的温湿度传感器等等。在这些复杂络场景下,设备状态是法确定的,为了在这些场景下保障连接,MQTT协议提供了消息服务质量保障等级(Q,QS)。



Q-0比较多一次

Q0保障消息到达终点比较多不超过1次。消息可能到达1次或根本不会到达。适用于功率受限设备,可以比较大减少传播时间,减少消息传递成本;适用于非关键消息传递,例如被频繁重复发送的消息。







Q-1比较少一次

Q1保障消息到达终点比较少不低于1次。B在确认接收消息后会返回一个PUBACK消息给到P-C。如果消息发送失败,P-C将在一段时间后重发消息。此类型消息适用于重要不可丢失的消息传递,可利用该传输机制保证消息在离线设备上线后仍能收到。S-C需要做好重复消息处理工作。







Q-2只有一次

Q2保障消息到达终点只有1次。此类消息保证接接收端对于一条消息只接收一次,是MQTT协议中比较安全且传输速度比较慢的一种消息传递形式。适用于十分重要且不允许重复消息出现的场景使用,由于消息十分重要,因此可忽视额外的络开销。









P04比较小MQTT应用搭建

在了解MQTT理论基础概念后,我们一起在W系统上搭建一个比较小MQTT服务,现MQTT消息的发送及订阅。



(1)B搭建

我们选择开源代理平台M作为此次比较小MQTT应用的单点B。



将MW版下载完成后,通过W系统终端打开文件。输入-1883即在W系统上启动了一个MQTT服务,监听地址为127001,端口是1883。



(2)C搭建

完成B搭建后,我们还需要C现消息的发送和订阅。我们选择软件作为此次比较小MQTT应用的C。打开软件,我们通过设置MQTTBA为127001,BP为1883,并自定义CID。完成设置后,点击主页面的C,页面右上角的连接指示灯显示为绿色即表示完成了连接,此时我们现了C到B的连接。



(3)消息订阅

假定步骤二创建的C为一个S-C,此时通过点击主页面中的S,填写订阅T信息,在示例中我订阅的T为,即可完成该C对于该T订阅。



(4)消息发送

重新打开一个客户端,创建一个P-C,设置MQTTB信息与S-C信息一致,成功连接B后,在P页面下,向指定T即发送信息,此时我们可以在S-C界面上看到消息成功的从B转发至S-C。



至此一个比较小的MQTT应用就搭建完成了。







综上所述,MQTT协议关注于消息,拥有轻量、高效、低开销等特性,相对于HTTP等广泛应用于互联场景的协议来说,MQTT协议与物联通信领域更加契合。?
爱上大茂名,喜当大猫友,吃喝玩乐事,天天乐开怀!
您需要登录后才可以回帖 登录 | 用户注册

本版积分规则

QQ|客服:0668-2886677QQ:75281068|大茂微博|小黑屋|手机版|Archiver|大茂名网 ( 粤ICP备18149867号 )茂名市大茂科技有限公司 版权所有 

GMT+8, 2025-6-7 23:13 , Processed in 0.132827 second(s), 8 queries , Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表