OPC UA协议与MQTT协议

Aza*_*sai 10 communication protocols mqtt iot opc-ua

我想根据两种协议的一般特征比较OPC UA和MQTT,例如Overhead(数据包),安全性,信息建模和可靠性.我在哪里可以找到每个协议的Overhead和其他特征的一些示例数据,以便我对它们进行比较.我需要你的建议.您可以建议任何工具来比较这些协议.

小智 17

MQTT是基于代理的消息传递协议,其中有效负载编码和内容完全是特定于应用程序的.因此,如果您想在由您开发的两个应用程序之间发送消息,那将非常有用.

OPC UA是一种架构(OPC统一架构),其中通信协议只是所讨论主题的一部分.OPC UA应用程序能够以面向对象的方式公开对象,变量,方法和数据结构的全网状网络.今天的通信基于客户端/服务器模型,其中服务器公开一组标准服务以浏览可用对象,读取和写入数据,调用方法或订阅数据更改或事件.

主要目标是通过定义关于如何使信息可用的元元模型,通过定义用于访问信息的标准服务以及通过定义服务调用的不同传输协议和数据编码来提供来自不同供应商的应用程序之间的互操作性.协议包括优化的OPC UA二进制协议,提供端到端安全性以及Web服务或基于HTTPS的协议.

OPC UA工作目前正在开发第二个基于发布订阅的通信模型,该模型允许在OPC UA应用程序之间进行消息传递.除了基于UDP的对等协议之外,此PubSub扩展还将使用基于代理的消息传递协议,如AMQP和MQTT.

因此很难将OPC UA(包括MQTT和MQTT等协议)作为独立协议进行比较.

其他答复已包括对MQTT材料的参考.

以下是OPC UA材料的一些链接:

OPC UA的一些高级介绍手册:https: //opcfoundation.org/resources/brochures/

OPC UA规范:https: //opcfoundation.org/developer-tools/specifications-unified-architecture

免费评估和测试工具:

测试/演示客户端:https: //www.unified-automation.com/downloads/opc-ua-clients.html

测试/演示服务器:https: //www.unified-automation.com/downloads/opc-ua-servers.html

用于不同编程语言的开发工具:https: //www.unified-automation.com/downloads/opc-ua-development.html


Dom*_*ier 9

我还没有看到OPC UA与MQTT的比较.请记住,OPC-UA对SCADA系统的影响最大,MQTT非常适合在移动网络等不可靠网络上发布/订阅消息.

如果低开销对您来说很重要,那么MQTT可能比OPC-UA更合适.这当然在很大程度上取决于您的使用案例.

如果您对MQTT开销感兴趣,可能会发现此链接很有用:http://stephendnicholas.com/archives/1217

如果您对MQTT和安全性感兴趣,这篇博文系列可能对您有所帮助:http://www.hivemq.com/introducing-the-mqtt-security-fundamentals/

如果您开始使用MQTT,这篇深入的博客文章系列可能对您有价值:http://www.hivemq.com/mqtt-essentials-wrap-up/


小智 5

OPC UA 和 MQTT 是正交的,因为它们试图解决不同的问题。

OPC UA WG 目前正在开发 PubSub 扩展 OPC UA,它指定如何通过 MQTT、AMQP 或 XMPP 发送 OPC UA 有效负载。

MQTT 的最大问题之一是有效负载的格式留给应用程序,这意味着未经专门编码以相互协作的应用程序之间没有真正的互操作性。OPC UA PubSub 扩展通过定义 OPC UA 有效负载的语法来解决此限制。