触摸传感器之心解读MQTT连接的力量
在工业4.0、物联网(IIoT)、智能工厂和智能设备等前沿概念的推动下,我们正迈向一个全新的自动化未来。设备之间将互联互通,每个节点相互连接,交换数据。为构建智能网络,设备必具备IIoT的关键特性:标准化、可扩展性、与IT和OT系统的兼容性,以及互操作性。同时,确保通信的安全性也是至关重要。
倍加福支持包括MQTT、OPC UA、AMQP和REST API的四种基于TCP的通信协议。本期内容中,我们将首先探索MQTT通信协议,了解它是如何为智能网络提供强大支持,适用于哪些不同应用场景。
什么是MQTT?
它如何工作?
MQTT(消息队列遥测传输)是ISO 标准(ISO/IEC PRF 20922)下基于发布/订阅范式的消息协议。MQTT协议轻量、简单、开放和易于实现,这些特点使它适用范围非常广泛。
自1999年诞生以来,MQTT作为石油管道带宽和电池能效监控问题的技术解决方案。2013年,IBM将其提交给OASIS规范委员会,随后在2014年成为正式的OASIS标准。
MQTT 的普及得益于其在工业领域的广泛应用,特别是在对代码精简、开销减少和网络流量受限的环境中。其基本工作原理如下图所示: MQTT 客户端(包括发布者和订阅者)连接到 MQTT 代理。一些 MQTT 客户端通过订阅一个特定主题,如温度值,以便接收来自代理数据发送者的信息。此过程展示了 publish-subscribe 模型,即客户端可以选择是否参与某一主题,而无需知道其他参与该主题的人数或它们彼此间的情况。
使用这种拓扑结构,可以显著降低复杂性的同时增加灵活性,使得这个模型特别适合那些需要频繁更改服务配置或有大量用户需求变化但不希望影响核心业务流程的地方。
MQQQT 主要特性
1:主题
每条消息都包含一个主题,它定义了发布者应该使用来发送信息,并告诉所有潜在消费者他们应监听哪些类型信息。
主题可以分层,比如“home/sensor1/identification”包含三个层级,“home/sensor1/data/temperature”则包含四个层级。
使用斜杠“/”分隔每个层级并区分大小写,有助于管理复杂结构中的数据。
在创建占位符时,可以使用“+”表示单个层级,如“home/+/data/temperature”,以便捕获多种可能性;或者使用“#”,例如“home/sensor1/#”,以捕获整个路径下的所有可能情况。
2:服务质量
通过服务质量等级(QoS),我们能够确保消息被正确地传递给最终用户。这三种不同的QoS等级分别代表着 至多一次 (QoS 0)、至少一次 (QoS 1) 和仅一次 (QoS 2) 发送策略,其中 QoS2 需要进行额外确认步骤以保证高可靠度,但也会消耗更多资源。
3:会话感知
为了保持稳定的连接状态,我们利用保持活跃状态机制来维持客户端与服务器之间持续有效的事务关系。如果发现断线发生,将尝试重新建立链接,同时还允许设置遗嘱消息(Last Will and Testament, LWT),这样即使客户端突然离线,也能通知其他相关方关于当前状态改变的情况。
4:持久会话
当代理与订阅者之间建立了持久会话时,它们就像守护神一样一直在那里,无论何时何地,当订阅者准备好接收最新更新时,都能从存储好的缓存中获取最新数据,这对于网络环境不稳定的情况尤其有用,因为这可以防止由于失去联系而导致的一致性的破坏,从而提高整体性能表现.
实时性能方面:
虽然不能说MQTT总是提供实时交付,但因为它通常涉及较小数量的人员以及高效率处理,因此,在实际应用中往往表现出很高响应速度。在理论上,如果没有延迟且没有任何阻碍的话,那么理论上可以达到几乎零延迟。但实际上,由于各种因素可能导致信号丢失或重发,所以真正获得实时效果并不常见。不过,对比许多其他选项来说,它还是非常迅速且灵活地能够处理快速反馈所需的大部分需求.
安全方面:
从最初开始,一直到现在,大多数版本都提供用户名密码认证方式来验证身份。当到了版本5的时候,还引入了一系列新的安全功能,如令牌认证,以及质询响应认证机制这样的新工具,以进一步增强安全措施,使得即使面对高度敏感的情报保护要求,其仍然能够满足这些要求.
结语:
尽管只是其中之一,但Mqtt已经证明自己是一个具有极大的潜力工具。在车辆网路、中军事战略、大规模控制系统乃至无人机飞行控制系统中,不同行业不断寻找Mqtt提供解决方案。而倍加福作为一家创新驱动公司,在全球自动化市场取得巨大成功,并继续研究开发前瞻技术,为迎接未来的挑战做好了充分准备.