How to Send Critical Data Over Constrained Networks with MQTT


MQTT’s publish/subscribe and report by exception method improves response times and dramatically reduces bandwidth usage and costs.

There are two trends converging to shape the way industrial data is handled today. First, ubiquitous networks are widespread thanks to the combination of wired and wireless technologies that support Industrial IoT communications. Second, the demands for data have increased rapidly as companies work to improve operations based on that data. The combination of these two trends means many companies are trying to figure out how to send critical data over constrained networks to accomplish their goals. MQTT can play a role.

Networks Can’t Match the Need for Data

Implementing Industrial IoT in distributed environments such as oil and gas, manufacturing, agriculture, smart cities, and others means sending more data efficiently, securely and with context over constrained and/or costly networks. No matter how limited the network may be, companies need to know how their machines are functioning, when they might break down, their metrics for efficiency, and more.

Both machines and sensors can provide endless data points, and the industry has applications – both at the edge and in the cloud – to process that data, build AI models, and ultimately use the data for better decision-making. More and more applications need the data than ever before so sending data is no longer one-to-one. It’s one-to-many. The demand for data will only continue to increase – the challenge is capturing that data and sharing it efficiently.

Let’s look at some of the reasons Industrial IoT networks are often constrained. First is the sheer magnitude of devices. According to IoT Analytics, there are now 12.2 billion connected IoT devices globally, expected to grow to 14.4 billion by the end of 2022. Some IoT devices operate wirelessly, others are connected, and many are remote assets with intermittent connectivity.

Networks are trying to manage, with the same report from IoT Analytics indicating that low-power wide-area networks (LPWN) have expanded along with 4G/5G Internet usage. However, due to cost or remote locations, many IoT devices are using satellite, 2G/3G cellular, or even IP radio networks. As a result, low bandwidth, high costs, and intermittent connection continues to be a challenge in distributed Industrial IoT.

The question is – how do you transport data across these limited bandwidth, high-cost networks? And how do you make that data easily consumable and with the proper context needed by data consumers? Finding a solution to manage the data in a way that is both efficient and effective is critical to Industrial IoT success today.

See also: Supercharging the Data Flowing into Advanced Analytics

MQTT for Sending Data Over Constrained Networks

MQTT is the one protocol that enables not only the efficient utilization of the network architectures but also provides the ability to push the data into modeling and data arrangements that can be easily consumed.

MQTT is an open-standard publish/subscribe, extremely simple, and lightweight messaging protocol designed for constrained devices and low-bandwidth, high-latency, or unreliable networks. MQTT minimizes network bandwidth and device resource requirements while ensuring reliability and some degree of assurance of delivery.

MQTT solves the problems created by poll/response protocols with the publish/subscribe method (Figure 1). Instead of the host asking for the same data points repeatedly, correctly implemented MQTT clients with Sparkplug only report the data if it changes – report by exception. Replacing a poll/response network with an MQTT-based network drastically reduces network utilization, saving 80 to 95% of bandwidth. That means changes can be sent faster, and data availability is increased overall.

The basic MQTT architecture allows for unlimited clients to connect to the MQTT server over a publish/subscribe protocol

Once MQTT publishes the data, any number of applications, or clients, can consume the data. It is highly secure with TLS security, with remote originated connection, eliminating the use of VPNs. While it provides an excellent and trusted engine for delivering IIoT data, MQTT doesn’t make the data usable across the enterprise. That’s where Sparkplug B comes in to provide an effective and secure mechanism to send data outbound.

Sparkplug is an open-source software specification that provides MQTT clients with a framework to integrate data with an auto-discovery mechanism. Consumers can subscribe to the data and inherently learn all the information being sent. Sparkplug B is binary communication which is critical for efficiency. It has mechanisms for store and forward, for data modeling, and Sparkplug makes interoperability fast, secure, and open standard from the Eclipse Foundation so anyone can make use of the framework.

Utilizing MQTT with the open-standard Sparkplug data representation provides the tools to build a cost-effective solution for sending data across constrained networks. Data is sent with minimal risk and cost and can be consumed with the contextual information needed for big data analytics, machine learning, and AI to gain insights and increase productivity and profit. Let’s look at a few energy use cases to see how these technologies are being implemented.

Use Case: Modernizing Vessel Control Systems

A multinational energy corporation has been working to increase efficiency and improve data-driven decision-making throughout its fleet of vessels. Network bandwidth was a major challenge since the vessels use a VSAT (very small aperture terminal), which is a highly expensive satellite communication channel. The company was looking for a solution to limit the amount of bandwidth used to send data while consolidating data into a single repository on each vessel and sending it once to a cloud environment where it could be made available for internal and external use.

The company adopted a SCADA system with MQTT to move data securely and efficiently from the OT layer upstream to the cloud. MQTT was ideal for this use case as it is designed for intermittent connection with a queuing system baked in and remedies for unexpected disconnects. Since MQTT only sends data on exception, the solution greatly reduced the amount of bandwidth required to get the needed data from the vessels to the cloud.

The customer has been able to consolidate useful OT system data for use cases both onboard and off-board the ship. They have begun to look at engine management data, for instance, and analyzed it for better predictive maintenance, improved operations, and fuel savings. Data is available all the time and sent on exception to drastically reduce the communications over the limited network while still providing the data applications need to drive cloud analytics and efficiencies.

Use Case: Energy Company Uses MQTT for Efficient Image Data Transfer

A multinational energy corporation sought a modern solution to efficiently monitor and collect OT data, including images, at more than 150 pipeline facilities. They needed an OT-first solution to maintain, manage and control their assets, along with a way to unify and make OT data available to both operators and Azure cloud systems for company-wide visibility into site and machine behavior.

The company needed to improve the monitoring of their field assets in remote locations suffering from unreliable networks, so they needed to access the latest in IoT technology to overcome bandwidth challenges. The solution needed to be able to handle image data transfer, packaging images in a small footprint.

MQTT was ideal for this use case because it provides a file transfer mechanism to send files from the remote assets over an MQTT channel efficiently. Utilizing this feature, the client installed remote cameras alongside the standard OT data connectivity to capture images as needed, with some sites having multiple cameras. MQTT could handle images from on-site cameras tested up to a rate of up to 2000 images of 600k file size per minute using the same secure transport method as real-time OT data. The images can be sent at a set time interval or triggered by an alarm or event to provide crucial information as it happens.

The solution has been extremely successful for the image data transfer use case. MQTT packets and validates the image data using much less bandwidth than would typically be needed to send an image. One to three images are being captured and shared at every site, and the customer now has a more accurate picture of what is going on at all the remote facilities.


The initial key benefit of MQTT for sending data over constrained networks is the publish/subscribe and report by exception method. These features not only improve response times because OT operations can get the data immediately and make decisions based on that data rather than waiting for poll/response, but it dramatically reduces bandwidth usage and costs. MQTT with Sparkplug enables more data to be accessed cost-effectively with context, providing mobility of data to the enterprise for continuous, marked operational improvement.

Any industry with remote assets over wide area networks can benefit from MQTT: vessels in the ocean, oil and gas rigs, wastewater pump life stations, small manufacturing sites in remote areas, and others. Even where bandwidth is not as much of an issue, such as in a typical factory with 4G/5G connectivity, MQTT provides cost savings in sending only change data to the cloud versus all data. No matter the use case, MQTT provides data to the consumers who need it efficiently and with the context needed for operational improvements. 

Arlen Nipper

About Arlen Nipper

Arlen Nipper brings over 42 years of experience in the SCADA industry to Cirrus Link as President and CTO.

Leave a Reply

Your email address will not be published. Required fields are marked *