What Is MQTT?
The MQTT messaging protocol was first developed in 1999 by IBM and Cirrus Link, and was accepted as an ISO standard in 2013, starting with version 3.1. MQTT uses a publish-subscribe pattern (see Figure 2) to exchange messages. As illustrated in the figure, an MQTT system comprises one broker and several clients, where clients can either be publishers or subscribers. Publishers send data to the broker in the form of MQTT packets, which consist of a “topic” and “payload.” The broker then distributes the data to subscribers based on which topics they have expressed interest in.
The MQTT protocol does not specify a standard format for transmitting data, although it is common for applications to use either the JSON protocol or plain text. Compared with other protocols, MQTT has advantages that make it a perfect match for IoT applications.