MQ Telemetry Transport or MQTT has been called by its inventor and originator IBM, “a lightweight and flexible network protocol that strikes the right balance for IoT developers.” Since it became an open standard almost 10 years ago, MQTT has made a lot of headlines.
While MQTT is a commonly used protocol for machine-to-machine communication, it does not have a defined payload format. In fact, as of this writing, there are no industry-standardized payloads for MQTT. Instead, MQTT’s payload remains undefined.
Keep in mind that payload is the term used for the data structure exclusive of the MQTT protocol information. For example, MQTT protocol information includes such details as ClientID and UserName. Payload includes such data attributes as type and object.
So, back to the topic of payloads … who defines the MQTT payload?
We do—and so do other organizations and product developers like us.
As a leading IIoT and Cloud gateway provider who understands the value of MQTT as a transport protocol, we developed our own MQTT payload for the FieldServer™ BACnet IoT Gateway. Of course, in keeping with our organization’s commitment to innovation, we also have plans to offer additional MQTT payloads for such major Cloud services as AWS, Microsoft Azure, and Ignition. (We’ll keep you informed here on our blog as we roll out our MQTT payloads.)
With no industry-standardize payload, then, perhaps you’re left wondering why MQTT has become so ubiquitous. To help answer that question, let’s take a closer look at what MQTT is, what it does, and, more importantly, what’s next for MQTT payload standardization.
What is MQTT?
MQTT is a publish-subscribe transport protocol designed to connect data between machines. Organizations may use MQTT to get data into their Cloud infrastructure, however, MQTT does NOT define the data itself.
MQTT’s benefits as a transport protocol include the following:
- MQTT moves data in a binary format that minimizes bandwidth requirements.
- It uses a Quality of Service or QoS system to transfer messages with little to no data loss.
- MQTT can reliably handle millions of IoT device connections at any given time.
- It is bidirectional, allowing data to flow to and from devices using the same TCP connection.
How does MQTT work?
MQTT offers fast, efficient message delivery. In fact, if you dig into technical articles on MQTT, you’ll nearly always find some mention of Facebook and its adoption of MQTT in 2011 for powering its popular Messenger app. Like others, Facebook chose MQTT for what it does really well, which is quickly publish information so it can be received by the correct subscribers.
Here’s how MQTT transport works in industrial automation:
- An IIoT gateway or sensor publishes data to an MQTT broker.
- The MQTT broker acts as an intermediary to receive the data.
- The MQTT broker collects and stores data for subscribers.
- Subscribers that are registered with the broker can receive published data.
What’s next for MQTT and its payloads?
As we’ve said, MQTT’s publish-subscribe model enables simple and efficient machine-to-machine communication. So, it would be no surprise if MQTT continues to dominate the industrial automation arena.
As for developing industry-standardized payloads, the future is unclear. For now, MQTT payloads are typically customized per the company or product that supports MQTT. So, while these companies have defined their own MQTT payload for mainstream Cloud services, few products use these custom standards—and it’s highly unlikely that they ever will.
Frankly, it’s too soon to come to a consensus on standardized MQTT payloads. In fact, we ascribe to the belief that shaping the future of industrial automation MQTT payloads should be carefully and thoughtfully considered by an independent standards development organization.
When and how that will happen remains to be seen. Until then, we’ll continue to offer MSA-developed MQTT payloads for our edge computing devices, as well as enable Cloud architecture using Webhooks, RESTful API standards, and MQTT.
As always, if you’re looking for help and information about edge gateways, MQTT payloads, or third-party Cloud connectivity, please reach out to one of our representatives.