What is MQTT?

MQTT Introduction

MQTT stands for Message Queuing Telemetry Transport. It is an Application layer protocol in the ISO/OSI reference model.

Features

  1. Publish/subscribe architecture
  2. Easy to implement because of its light weight, open and simple characteristics

MQTT Architecture

Fig 1 : MQTT Publish / Subscribe Architecture, source : https://mqtt.org/
  • Uses subject-based filtering of messages. MQTT Broker uses topics contained in the message to decide if a subscriber receives the message or not.
  • MQTT client is any device from a microcontroller up to a full fledged server that has an MQTT library running and is connected to an MQTT broker over any kind of network.
  • An MQTT broker can handle up to thousands of concurrently connected MQTT clients.
  • In addition to receiving, filtering and forwarding of messages, the broker also carries out authentication and authorization of clients.

MQTT HTTP Comparison

Fig 2. MQTT HTTP Comparison — Source: Lampkin, Valerie, et al. Building smarter planet solutions with mqtt and ibm websphere mq telemetry. IBM Redbooks, 2012

Links

Official website https://mqtt.org/

MQTT libraries https://github.com/mqtt/mqtt.org/wiki/libraries

--

--