EP Basics: IoT-Protokolle Was ist MQTT und was macht man damit?

Von Sebastian Human

Anbieter zum Thema

Bei MQTT handelt es sich um ein offenes Netzwerkprotokoll zur Übertragung von Nachrichten. Diese übertragen wichtige Informationen im Internet of Things. Es kommt vor allem dann zum Einsatz, wenn Verbindungen nur einen kleinen Verwaltungsdatenanteil zulassen.

MQTT ist für IoT-Geräte konzipiert und somit leichtgewichtig, was eine kostengünstige Gerätekommunikation ermöglicht.
MQTT ist für IoT-Geräte konzipiert und somit leichtgewichtig, was eine kostengünstige Gerätekommunikation ermöglicht.
(Bild: frei lizenziert / Pixabay)

Die Abkürzung MQTT steht für Message Queuing Telemetry Transport. Dabei handelt es sich um ein leichtgewichtiges Kommunikationsprotokoll, das speziell für drahtlose Sensornetzwerke entwickelt wurde. Aus diesem Grund wird häufig in der Automatisierungstechnik, in der industriellen Kommunikation und nicht zuletzt im Internet of Things (IoT) verwendet. Ursprünglich voneinander entkoppelte Geräte können so direkt miteinander kommunizieren. Es handelt sich um ein offenes Protokoll, das von OASIS und ISO standardisiert ist (ISO/IEC 20922:2016).

Es folgt dem Prinzip eines Publish Subscribe Modells und läuft dabei auf läuft auf TCP/IP. In dieser Funktion ermöglicht es einem Gerät, Informationen an einen Broker zu senden und dann an andere Geräte weiterzuleiten, die sich für diese Informationen interessieren.

Es ist ein einfaches, aber leistungsfähiges Protokoll. In seiner Kernfunktion erleichtert es die Kommunikation zwischen verschiedenen Geräten. Somit spielt es eine wichtige Rolle in der Machine-to-Machine-Kommunikation oder dem Internet der Dinge.

Wie sieht die MQTT-Architektur aus?

Die MQTT-Architektur besteht aus einem Server, den man auch Broker nennt, einem oder mehreren Clients und einem Netzwerk. Der Broker ist der zentrale Vermittler, der die Kommunikation zwischen den Clients ermöglicht. Er ist dafür verantwortlich, die Nachrichten zu empfangen, zu speichern und an die Clients zu senden.

Die Clients sind die Endgeräte, die mit dem Broker kommunizieren. Sie können Nachrichten an den Broker senden und Nachrichten vom Broker empfangen. Diese Nachrichten nennt man auch MQTT Message.

Das Netzwerk stellt die Verbindung zwischen dem Broker und den Clients dar. Dabei kann es sich sowohl um ein lokales Netzwerk als auch das Internet handeln. Der sogenannte Quality of Service lässt sich in drei Abstufungen unterteilen. Hierdurch kann man den individuell besten Kompromiss zwischen kleinstmöglicher Datenübertragung und größtmöglicher Zuverlässigkeit für die eigenen Anwendungen finden.

Die Quality of Service beginnt auf Stufe 0. Diese übernimmt lediglich einen minimalen Datentransfer. Um das Datenvolumen so gering wie möglich zu halten, setzt diese Stufe auf maximal einmalige Zustellung. Eine Bestätigung über die erfolgreiche Zustellung ist hier nicht vorgesehen.

Auf Stufe 1 versucht der Broker die Nachricht erfolgreich zu übermitteln und wartet danach auf eine Bestätigung des Abonnenten. Bleibt diese innerhalb eines definierten Zeitraums aus, sendet der Broker die Informationen erneut. Man spricht daher auch von mindestens einmaliger Zustellung.

Bei Stufe 2 nutzen Broker und Client einen vierstufigen Handshake. Hierüber garantieren beide Instanzen, dass die Nachricht exakt einmal gesendet beziehungsweise empfangen wird. Hier spricht man daher von der genau einmaligen Zustellung.

Was tut ein MQTT-Broker?

Ein MQTT-Broker ist ein Server, der als Mittelsmann zwischen den MQTT-Clients fungiert. Man kann daher auch von einem MQTT-Server sprechen. Er empfängt die Nachrichten von den Clients und leitet sie an die Clients weiter, die sich für die Nachrichten interessieren. Der Broker ist für die Verwaltung der Nachrichten und die Verbindung zwischen den Clients verantwortlich.

Welche Rolle übernimmt ein MQTT-Client?

Ein MQTT-Client ist ein Programm, dass das Protokoll verwendet, um Nachrichten zwischen einem Server und einem oder mehreren Clients zu übertragen. Es kann verwendet werden, um Daten zwischen verschiedenen Geräten zu übertragen. Es übermittelt also zum Beispiel Informationen zwischen einem Smartphone und einem Computer oder zwischen einem Sensor und einem Server.

Welche Aufgaben übernimmt MQTT?

Dieses Protokoll ist beispielsweise für den Einsatz in drahtlosen Sensornetzen geeignet, da es mit einer geringen Bandbreite und einem geringen Energieverbrauch auskommt. Auch wird MQTT verwendet, um unzuverlässigen Netzwerken entgegenzuwirken. Dabei gilt es auch als sehr zuverlässig und gewährleistet eine sichere Informationsübertragung. Es kann auch als Kommunikationsprotokoll zwischen verschiedenen Geräten und Systemen verwendet werden. In dieser Funktion übermittelt es Daten zwischen diesen Instanzen.

Wer setzt MQTT ein?

MQTT wird hauptsächlich von Unternehmen und Organisationen eingesetzt, die eine schnelle, zuverlässige und skalierbare Kommunikation zwischen Geräten benötigen. Daher kommt es häufig im Internet of Things zum Einsatz, um Daten zwischen Geräten zu übertragen. Naheliegenderweise wird es auch in der Automatisierungsindustrie, im Gesundheitswesen, im Verkehrswesen, im Einzelhandel und in anderen Branchen eingesetzt.

Jetzt Newsletter abonnieren

Verpassen Sie nicht unsere besten Inhalte

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung.

Aufklappen für Details zu Ihrer Einwilligung

Wie kann man einen MQTT-Broker auf einem Raspberry Pi installieren?

Um einen MQTT-Broker auf einem Raspberry Pi zu installieren, muss man zuerst das Betriebssystem auf dem Einplatinencomputer installieren. Anschließend muss man ein Terminal öffnen und die folgenden Befehle eingeben:

  • 1. sudo apt-get update
  • 2. sudo apt-get install mosquitto
  • 3. sudo apt-get install mosquitto-clients

Danach solle sich der MQTT-Broker mit dem Befehl "mosquitto -v" starten lassen. Auch ist es möglich, die Konfigurationsdatei zu bearbeiten, um den Broker an individuelle Anforderungen anzupassen.

Wie sicher ist MQTT?

MQTT gilt als sehr sicheres Protokoll. Es verwendet TLS-Verschlüsselung, um alle Nachrichten zu verschlüsseln, die zwischen Client und Broker übertragen werden. Dabei verwendet es auch Authentifizierung und Autorisierung, um sicherzustellen, dass nur autorisierte Clients auf den Broker zugreifen können. Darüber hinaus können Benutzerinnen und Benutzer auch eigene Sicherheitsmaßnahmen wie zum Beispiel Firewalls oder VPN verwenden, um die Kommunikation zusätzlich zu schützen.

Was ist MQTT-Standard 5.0?

Der MQTT-Standard 5.0 ist die neueste Version des Message Queuing Telemetry Transport Protokolls. Es wurde entwickelt, um eine sichere und zuverlässige Kommunikation zwischen Geräten zu ermöglichen. Dabei bietet es eine Reihe von Verbesserungen gegenüber früheren Versionen. Hirzu zählen beispielsweise verbesserte Sicherheitsfunktionen, eine erweiterte Nachrichtenkontrolle und eine Unterstützung für mehr Nachrichtenformate. Diese neuen Funktionen ermöglichen es Entwicklern und Entwicklerinnen, sichere und zuverlässige Anwendungen zu erstellen, die auf dem MQTT-Protokoll basieren.

(ID:48984583)