Was ist MQTT?
MQTT (Message Queuing Telemetry Transport) ist ein leichtgewichtiges Messaging-Protokoll, das speziell für die Kommunikation zwischen Maschinen (M2M) und IoT-Geräten entwickelt wurde. Es ist bandbreitenschonend, zuverlässig und eignet sich für instabile Netzwerkverbindungen.
Funktionsweise: Publish/Subscribe
MQTT basiert auf dem Publish/Subscribe-Muster:
- Publisher: Ein Gerät sendet eine Nachricht zu einem bestimmten Topic (z.B.
sensor/temperatur) - Broker: Der MQTT-Broker (Server) empfängt die Nachricht und verteilt sie an alle Abonnenten
- Subscriber: Geräte oder Anwendungen, die ein Topic abonniert haben, empfangen die Nachricht
Diese Entkopplung ermöglicht flexible, skalierbare Architekturen – Sender und Empfänger müssen sich nicht kennen.
Quality of Service (QoS)
| QoS-Level | Beschreibung |
|---|---|
| QoS 0 | At most once – Nachricht wird einmal gesendet, ohne Bestätigung |
| QoS 1 | At least once – Nachricht wird mindestens einmal zugestellt |
| QoS 2 | Exactly once – Nachricht wird exakt einmal zugestellt |
Einsatzgebiete
- Smart City: Sensordaten von Straßenlaternen, Mülleimern und Umweltsensoren sammeln und auswerten
- Industrieautomation: Maschinendaten an Cloud-Plattformen übermitteln
- Gebäudeautomation: Heizung, Lüftung und Beleuchtung steuern
- Fahrzeugtelematik: Fahrzeugpositionen und Betriebsdaten übertragen
MQTT-Broker
Bekannte MQTT-Broker:
- Mosquitto: Open Source, leichtgewichtig, weit verbreitet
- HiveMQ: Enterprise-Broker mit Clustering und Monitoring
- EMQX: Hochperformant, skalierbar, Open Source
Vorteile
- Geringer Overhead: Minimale Paketgröße – ideal für batteriebetriebene Geräte
- Zuverlässig: QoS-Level garantieren Nachrichtenzustellung
- Skalierbar: Ein Broker kann Millionen von Verbindungen verwalten
- Standardisiert: OASIS-Standard mit breiter Tool- und Bibliotheksunterstützung
