MQTT stands for MQ Telemetry Transport and it is a specification for a publish-subscribe protocol for communication between devices.
When we are talking about Lightweight and Efficient, MQTT Protocol is a very good example. MQTT clients are very small, require minimal resources so can be used on small microcontrollers. MQTT message headers are small to optimize network bandwidth.
Another very important point is the Reliability of message delivery for many IoT use cases. This is why MQTT has 3 defined quality of service levels: 0 – at most once, 1- at least once, 2 – exactly once.
MQTT also provides Bi-directional Communications. To be more specific it allows for messaging between device to cloud and cloud to device. This makes for easy broadcasting messages to groups of things.
Supporting Unreliable Networks is tough. Many IoT devices connect over unreliable cellular networks. MQTT’s support for persistent sessions reduces the time to reconnect the client with the broker.
Another important feature of MQTT is scaling to Millions of Things. It can scale to connect with millions of IoT devices.
With the best Security enabled, MQTT makes it easy to encrypt messages using TLS and authenticate clients using modern authentication protocols, such as OAuth.
If you want to try the Delphi MQTT library, please follow the link below: