TODO
Definition: Das MQTT (Message Queuing Telemetry Transport) IoT-Netzwerkprotokoll ist eine Funktechnologie zur Machine-to-Machine-Kommunikation und wird für IoT-Anwendungen verwendet.
Standard
ISO/IEC 20922:2016
Übertragungsmedium
Nutzt bestehende Protokolle, wie WLAN, Ethernet, Mobilfunk, Bluetooth LE und LoRaWAN für die Kommunikation.
Vorteile
- Geringer Bandbreitennutzung (Overhead)
- Lightweight
- Möglichkeit der Wahrnehmung von Dienstverlustes
- Flexibel und Skalierbar
- Einfach zu implementieren und zu verwenden
- geringer Integrationsaufwand
Nachteile
- Nicht verschlüsselte Kommunikation
- Eingeschränkte Funktionen
- Benötigt Broker als zentralen Punkt
Kommunikationsparadigma

Sensor
Das ist der Sensor, welcher einen Wert auslesen kann. Dabei kommuniziert dieser ausschließlich mit dem MQTT-Broker.
MQTT-Broker
Der MQTT-Broker ist der Publisher in diesem Prinzip. Er hält eine Verbindung mit dem Sensor und leitet den Subscribern den ausgelesenen Wert, unter einem bestimmten Topic, weiter.
Subscriber
Ein Subscriber kann jegliches empfangendes Endgerät sein. Dieses Endgerät kann unter Angabe des Topics den Wert in dem angegebenen Topic erhalten, indem es diesem Topic subscribed.
Topic und Filterung
- Topic ist eine UTF-8-Zeichenkette
- Hierarchiestufen sind Level und sind optional und dienen der Strukturierung.
- Durch diese Struktur ist Filterung möglich (z. B. Auswahl des Subscribers oder Umsetzung eines Berechtigungskonzepts auf dem Broker)
- Level werden durch
/getrennt. Diese werden Topic Level Separator (TLS) genannt. - Jedes Topic besteht mindestens aus einem Zeichen
- Auch Leerzeichen sind möglich
- Schreibweise ist case-sensitive
+und#innerhalb eines Levels haben eine besondere Bedeutung
Beispiel
Im Folgenden wird bei jedem Topic mindestens das im ersten Beispiel spezifisch genannte Topic abgefragt.
BS_FFB/Block_A/OG_1/146/Temp1BS_FFB/Block_A/+/+/Temp1 # Ein + ist eine single-level-wildcardBS_FFB/Block_A/#/Temp1 # Ein # ist eine multi-level-wildcard