MQTT (Message Queue Telemetry Transport) ist das wichtigste Protokoll für die machine-to-machine-Kommunikation im Internet der Dinge (IoT). Es ist ein schlankes, open-source-basiertes Protokoll, das sich optimal für den Versand und Empfang von Sensordaten eignet.

Betrachtet man die Entstehungsgeschichte von MQTT, wird einem die Stärke des Protokolls bewusst: Es wurde 1999 von IBM und Eurotech (heute Cirrus Link) für die Überwachung einer Ölpipeline in der Wüste entwickelt. Für die Anbindung der Pipeline an ein Satellitennetz wurde ein Protokoll benötigt, das möglichst energieeffizient und unter minimaler Bandbreite zuverlässig arbeitet. Das Produkt, das dabei entstand, zeichnete sich durch seine einfache Implementierung bei der Vernetzung von Geräten mit minimalen Ressourcen aus und wurde anschließend für weitere Einsatzzwecke verwendet. Mittlerweile hat sich der Schwerpunkt des Protokolls von proprietären eingebetteten Systemen zu offenen Anwendungsfällen gewandelt. Seit 2010 ist MQTT open-source und mittlerweile zum meist verwendeten IoT-Protokoll geworden.

Als Client-Server-Protokoll hat MQTT eine Publish/Subscribe Architektur mit drei Komponenten zugrunde liegen: Broker, Publisher und Subscriber. Der Broker ist ein zentraler Server, der Daten sammelt und versendet. Geräte (Clients), die auf dem Broker Daten veröffentlichen, werden Publisher genannt und Geräte, die Daten von dem Broker empfangen, heißen Subscriber. Die Daten, die über den Broker veröffentlicht und empfangen werden, sind immer einem bestimmten Thema (Topic) zugeordnet. Die Topics spielen für MQTT eine entscheidende Rolle. In der Regel werden an einen einzigen Broker mehrere Geräte angebunden. Diese melden sich für ein bestimmtes Topic an. So kann zum Beispiel ein Luftdrucksensor ein Publisher für das Topic „Luftdruck“ sein und ein mobiles Endgerät ein Subscriber für dieses Topic sein. Sobald neue Daten für das Topic „Luftdruck“ auf den Broker gepusht werden, werden diese auf dem abonnierten Device veröffentlicht.

Im Vergleich zu HTTP hat MQTT den großen Vorteil, dass es keinen Request geben muss, um die Daten vom Broker zu erhalten. Stattdessen werden die Daten, sobald sie vom Broker empfangen werden, auf das Device weitergeleitet, welches das jeweilige Topic abonniert hat. Gleichzeitig ist das TCP-Protokoll aktiv und der mit dem Broker verbundene Port immer für eine lückenlose Datenübertragung verbunden. Sollte es einmal zu einer Unterbrechung im Datenstrom kommen, puffert der Broker alle Daten. Sobald die Verbindung wieder hergestellt ist sendet er die Daten an den Subscriber. Dies ermöglicht die Verwendung eines MQTT-Server als Zustandsdatenbank. Kleine, unperformante Devices können mit dem Broker verbunden werden und Daten liefern beziehungsweise abholen, während komplexe Log-Files nur auf dem Server entstehen. Dadurch ist MQTT in der Handhabung sehr schlank und auch optimal für die Automatisierung geeignet.

Wie im Bild sichtbar, senden der Temperaturfühler und der Bewegungssensor Daten an den MQTT-Broker zu einem bestimmten Topic, nämlich „Temperatur“ und „Bewegung“. Alle Geräte, die dieses Topic abonniert haben, erhalten die Messwerte dieser Sensoren. Somit ist keine direkte Kommunikation zwischen den Sensoren und den Empfängern erforderlich.

Die Gründe, weshalb MQTT mittlerweile zum Standardprotokoll in der machine-to-machine Kommunikation in der IoT geworden ist liegen auf der Hand: Die Anzahl der Geräte, die vernetzt werden können, kann sehr groß sein und problemlos skaliert werden. Außerdem arbeitet das Protokoll selbst bei großen Datenmengen zuverlässig sowie fehlertolerant und funktioniert sehr gut in ressourcenbeschränkten Netzwerken und niedrigen Bandbreiten.

Wenn es darum geht, Sensordaten zu visualisieren, bietet Peakboard eine optimale All-in-One-Lösung für das IoT. Die Peakboard-Box kann Topics direkt vom MQTT-Broker abonnieren und die Daten über einen Monitor als Datenvisualisierung ausgeben. Die Visualisierungen, die mit Peakboard erstellt werden können, sind flexibel anpassbar und decken viele Use Cases ab, die in Industrie, Fertigung, Logistik und Verwaltung auftreten.

Teilen:
FacebookTwitter