MQTT协议的内容有哪些

发布时间:2021-12-07 09:42:13 作者:iii
来源:亿速云 阅读:144

这篇文章主要讲解了“MQTT协议的内容有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“MQTT协议的内容有哪些”吧!

从周一初见MQTT

一年之季始于春,本着这样的精神,我们在博客开始讨论广泛的MQTT主题。从该新的要点系列到深入了解安全性和客户端库,有很多非常好的内容。接下来的每个周一,我们将发布一篇新的关于MQTT的博客文章。 因此,如果你对MQTT感兴趣,请经常访问我们的博客。更好的方法是订阅我们的新闻信件,当我们有新的文章发布时,会立即投递到你的邮箱。

我们希望这一系列的文章能够帮助你更加轻松快速并且成功地了解和实施MQTT。

MQTT要点: 为什么, 是什么和不是什么

在进入今天的主题之前,让我解释下我们为什么要开始这个系列,谁是受众目标,以及我们在接下来的日子将介绍什么。HiveMQ团队已经MQTT工作了很长一段时间,我们的专家每天在会议和线上向客户回答关于MQTT核心概念的问题。 这些问题涉及发布/订阅,服务质量,以及其他很多主题。在这个MQTT要点系列,我们想说明MQTT的主要概念,以及为各种类型的用户提供易于访问的参考指南。MQTT是一个开放的协议,因此我们认为如何使用它的信息也应该是开放的。 我们对这项技术感到非常兴风,也希望你能从中获得有用的内容。

首先我们探索下MQTT的基础概念(发布/订阅,客户端/服务代理 )以及基础功能(连接,发布,订阅)。然后,我们了解一下这些特性: 服务质量,保留消息,持久会话,最后遗愿,保持活跃,以及更多。

该要点系列不包括安全信息,在MQTT中,安全是一个大的主题。实际上,这是一个非常重要的主题,因此在该系列之后,我们开发了一个关于MQTT和安全的完整系列。

介绍MQTT

MQTT是一个客户端/服务器(C/S),发布/订阅消息传输协议。轻量级,开放,简单以及非常容易实现得设计模式。这些特性使得MQTT非常适用于许多场景,包括受限制的环境,比如机器与机器(M2M)间的通信和物联网(IoT),
在这些环境下,需要小的代码占用空间以及非常昂贵的网络带宽。  

引文自官方的[MQTT 3.1.1规范](http://docs.oasis-open.org/mqtt/mqtt/v3.1.1/mqtt-v3.1.1.html)

MQTT规范的摘要很好地描述了MQTT的全部内容。它是一个非常轻量级和二进制协议,犹豫其最小的数据包开销,与HTTP协议相比,MQTT在线路传输数据时表现优异。该协议另一个重要的方面是MQTT在客户端及其好实现。 易用性是MQTT在开发中的一个关键点,使它非常适合当今资源有限的受限设备。

一点点历史

MQTT协议在1999年被 Andy Stanford-Clark (IBM) 和 Arlen Nipper (Arcom, now Cirrus Link) 发明。他们需要一种协议,以最小电池损耗和最小带宽通过卫星与石油管道连接。两位发明者为未来的协议规定了几个要求:

这些目标依然是MQTT的核心。然而,该协议的主要关注点已经从专有的嵌入式系统转向了开放得物联网场景。这个转移给MQTT的缩写意义带来了很大的困扰,简短的回答就是MQTT已 再认为是一个缩写,MQTT只是协议的简单名称。

长一点的回答,原来的缩写表示MQ遥测传输(MQ Telemetry Transport)。

“MQ”是指MQ系列,一个IBM开发支持消息队列遥测传输的产品。当Andy和Arlen在1999年创建他们的协议时,他们以IBM产品来命名。许多资料错误地将MQTT标记为消息队列协议 显然是不对的。MQTT不是传统的消息队列解决方案(虽然在某些情况下也可以队列传输消息,我们将在后面的博客文章里详细讨论这一情况)。接下来的十年,IBM一直在内部使用该 ,直到2010年他们发布了MQTT 3.1作为版权自由的版本。从那时开始,所有人都受欢迎来实现和使用该协议。

我们在2012年熟悉了MQTT协议,在同一年构建了HiveMQ的第一个版本。2003年,我们公开发布了HiveMQ,随着协议规范的发布,我们还贡献了客户端实现给Eclipse基金会新 的Paho项目。对于协议来说,这些事件无疑是很重要的,因为没有支持的生态系统,协议是很难被广泛采用的。

OASIS标准和当前版本

首次发布后大概三年,宣布了MQTT将在OASIS的旗帜下进行标准化,OASIS是一个推进标准的开放组织。AMQP,SAML和DocBook都是OASIS之前发布的一些标准。标准化过程进行了大概一年,在2014年10月29号,MQTT成为了官方认可的OASIS标准。MQTT 3.1.1是最新的协议版本,次要版本从3.1改变为3.1.1表明了对以前的版本修改很小。

我们强烈推荐使用MQTT 3.1.1版本。

感谢各位的阅读,以上就是“MQTT协议的内容有哪些”的内容了,经过本文的学习后,相信大家对MQTT协议的内容有哪些这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!

推荐阅读:
  1. 如何用MQTT协议实现消息的订阅接收?
  2. 使用JMeter测试MQTT协议

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

mqtt

上一篇:怎么使用MapReduce

下一篇:Hyperledger fabric Chaincode开发的示例分析

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》