By Bob McIlvride, Director, Communications, Skkynet Cloud Systems
In the rapidly-evolving space of Industrial IoT (IIoT), we are seeing some growth in understanding about what makes a good IIoT protocol. Several years ago there was talk about OPC UA serving as an IIoT protocol, which seemed reasonable. After all, OPC UA is a flexible and secure protocol for industrial systems, and in 2015 it was recommended as a reference architecture for Industrie 4.0. And yet, more recently the trend seems to be towards using OPC UA at the plant level only, and then connecting outside the plant with another protocol, such as MQTT or AMQP.
Those suggesting this approach claim that despite OPC UA’s strength on the factory floor, its client/server architecture was not designed for IIoT. Keeping a plant secure from intruders on the Internet requires all firewalls on the plant to be closed, but a traditional client/server architecture cannot function that way. The client needs access to the server through an open firewall port. This is where MQTT or AMQP have been introduced. Connected to OPC UA via a gateway, these protocols are able to make outbound connections through the firewall, and thus send industrial data out of the plant via the IIoT.
And yet neither MQTT nor AMQP are ideally suited for IIoT. True, they are able to provide low-latency, low-bandwidth connections, which are essential to good IIoT data flow. And they can to scale up to meet the needs of hundreds of interconnected data sources and users. So they have gained some initial popularity as add-on protocols to OPC UA for IIoT. But MQTT and AMQP have some serious drawbacks that cannot be ignored.
Not Designed for Multi-Hop Reliability
MQTT and AMQP were not designed with multiple-hop reliability in mind. They do not propagate failure information well along a chain of broker/client connections, a common feature of many IIoT scenarios. This lack can lead to uncertainty between the data source and data users.
Connections that are not reliable over multiple hops lead to uncertainty about the state of the system.
For example, if a light is switched on at the data source and then the Internet connection goes down, users at the other end of the connection may not be informed of the break and thus that the data is no longer current. They would assume that their data is valid, and would not know if the light at the source actually gets switched off.
In the context of OPC UA, this becomes important. MQTT and AMQP do not impose a data format on the information they carry, but OPC UA does. So logically it should be possible to carry OPC UA messages over MQTT and AMQP. This is in fact the basis for the OPC UA pub/sub specification. However, OPC UA over MQTT/AMQP becomes a fire-and-forget scenario where a publisher emits a data set but does not know whether a subscriber is listening. A subscriber does not know whether a publisher is still operational and can’t necessarily infer that from the age of the data. You can no longer be certain about the state of your system. That may be fine for consumer applications, but not for industrial systems.
9 Criteria for Good IIoT Data Communication
This example is just one of 9 criteria for good IIoT communication. Other criteria include real-time performance, intelligent overload handling, consistency of data guarantees, and more. Skkynet has recently published a free white paper, IIoT Protocol Comparison that lists all 9 criteria, and shows how well some of the currently available protocols meet the criteria. If you are using OPC UA, and need to connect remotely or want to get your data out of your plant securely, this guide can help you choose the best IIoT protocol to meet your needs.
The IIoT holds great promise for enhancing the value of industrial systems and bringing ample returns to the companies that operate those systems. For IIoT to work well, the tools you employ must suit the unique requirements. Rather than ignoring these requirements and risk using an inappropriate technology, we suggest knowing what makes a good IIoT protocol, and then choosing one that best meets the criteria.
About the Author
Bob McIlvride is Director of Communications at Skkynet Cloud Systems, Inc., a global leader in real-time data information systems. He has been working as a professional technical writer in the industrial process control sector for over 15 years, and can be reached at [email protected]