A publish/subscribe messaging model that facilitates one-to- many distribution. The sending applications or devices do not need to know anything about the receiver, not even its address.
Ideal for constrained networks (low bandwidth, high latency, data limits, fragile connections). MQTT message headers are kept as small as possible; the fixed header is just 2 bytes. Its on demand, push-style message distribution keeps network utilization low.
Multiple service levels allows flexibility in handling different types of messages. Developers can designate that messages will be delivered “at most once”, “at least once”, or “exactly once”
Designed specifically for remote devices with little memory or processing power. Minimal headers, a small client footprint and limited reliance on libraries make MQTT ideal for constrained devices.
Easy to use and implement with a simple set of command messages. Many applications of MQTT can be accomplished using just CONNECT, PUBLISH, SUBSCRIBE and DISCONNECT.
Built-in support for loss of contact between client and server. The server is informed when a client connection breaks abnormally, allowing the message to be re-sent or preserved for later delivery.
MQTT uses a single TCP/IP port connection from client to server. This allows easier firewall and security implementation.
Decouple device protocols from applications.
Dramatically improves critical data update times
Reduces network bandwidth consumption up to 80%
Enable “one to many” information exchange.
Unlocks "Intelligence” stranded in field devices
Enhances network security
What is MQTT?
Message Queueing Telemetry Transport (MQTT) is a simple publish/subscribe lightweight messaging protocol.
MQTT rides on top of IP and leverages all of the advantages that IP provides
MQTT was developed for for constrained environments where network bandwidth is low and when remote devices may have limited processing capabilities. This design allows thousands of remote clients to be interconnected.
The design principles are to minimize network bandwidth and device resource requirements, while also attempting to ensure reliability and some degree of assurance of delivery. These principles make the protocol ideal for SCADA and IIoT applications, and for mobile applications where bandwidth and battery power are at a premium.