Dieses MQTT-Glossar erklärt die 60 Begriffe, denen Sie in Spezifikationen, Broker-Dokumentationen und den APIs von Client-Bibliotheken begegnen, von ACL bis Will Delay Interval. Jeder Eintrag ist eine kurze, verständliche Definition mit einem Verweis auf einen vertiefenden Artikel, sofern es einen gibt. So können Sie jedes MQTT-Gespräch entschlüsseln und wissen, wo Sie weiterlesen.
So nutzen Sie dieses MQTT-Glossar
Die Begriffe sind alphabetisch gruppiert und stehen unter ihrem englischen Fachbegriff, wie er in Spezifikation und Bibliotheken verwendet wird. Gilt ein Begriff nur für MQTT 5.0, ist er mit „(MQTT 5)“ gekennzeichnet. Die Beispiele nutzen den kostenlosen öffentlichen MQTT-Broker unter broker.connectmq.com und Topics unter einem Präfix wie connectmq/demo/ab12/. Alles, was dort veröffentlicht wird, ist für jeden lesbar; der öffentliche MQTT-Broker ist für Tests und Prototypen gedacht, halten Sie Testdaten also harmlos. Industrie-Begriffe wie ISA-95, Sparkplug B und Unified Namespace (UNS) sind bewusst so formuliert, dass sie zu den Konzepten passen, die in Industrie-4.0-Projekten im DACH-Raum üblich sind. Wenn Sie ganz neu im Protokoll sind, ist das vollständige MQTT-Tutorial der bessere Einstieg; kommen Sie hierher zurück, wenn Sie über einen Begriff stolpern.
MQTT-Glossar: A bis C
ACL (Access Control List). Regeln auf einem Broker, die festlegen, welche Clients auf welchen Topics publizieren oder abonnieren dürfen. Die Umsetzung variiert je nach Broker.
Authentication (Authentifizierung). Der Nachweis der Identität eines Clients gegenüber dem Broker, meist mit Benutzername und Passwort im CONNECT-Paket, einem Client-Zertifikat oder einem Token.
Authorization (Autorisierung). Die Entscheidung, was ein authentifizierter Client tun darf. Unterscheidet sich von der Authentifizierung, wird aber oft damit verwechselt.
AUTH-Paket (MQTT 5). Ein Steuerpaket für erweiterte Authentifizierungsabläufe wie Challenge/Response-Verfahren.
Bridge. Eine Verbindung, bei der ein Broker als Client eines anderen agiert, sodass ausgewählte Topics zwischen beiden fließen. Siehe MQTT-Bridging.
Broker. Der Server, der jede veröffentlichte Nachricht empfängt und an passende Subscriber weiterleitet. Unser Artikel darüber, was ein MQTT-Broker tut, geht tiefer.
Clean Session (MQTT 3.1.1). Ein CONNECT-Flag. Ist es gesetzt, verwirft der Broker jeden vorherigen Session-Zustand für die Client-ID; ist es nicht gesetzt, bleibt der Zustand erhalten.
Clean Start (MQTT 5). Der Ersatz für Clean Session in MQTT 5. Er steuert nur, ob eine bestehende Session wiederverwendet wird; wie lange eine Session lebt, wird separat über das Session Expiry Interval festgelegt.
Client. Jedes Programm oder Gerät, das sich mit einem Broker verbindet, egal ob es publiziert, abonniert oder beides.
Client ID. Die Kennung, die ein Client im CONNECT sendet. Der Broker findet darüber die Session, daher muss sie pro Verbindung eindeutig sein. Bei privaten ConnectMQ-Brokern sind Client-IDs an die ausgegebenen Zugangsdaten gebunden.
Control Packet (Steuerpaket). Einer der festen MQTT-Nachrichtentypen wie CONNECT, PUBLISH oder SUBSCRIBE.
Correlation Data (MQTT 5). Bytes, die ein Anfragender an eine Nachricht anhängt, um die zurückkommende Antwort zuordnen zu können.
B wie Birth: Sparkplug-Begriffe
Birth Certificate (Sparkplug). NBIRTH- und DBIRTH-Nachrichten, die einen Node oder ein Gerät samt vollständiger Liste seiner Metriken ankündigen, sobald es online geht.
Death Certificate (Sparkplug). NDEATH- und DDEATH-Nachrichten, die einen Node oder ein Gerät als offline markieren; NDEATH wird typischerweise als MQTT-Will registriert.
Edge of Network (EoN) Node (Sparkplug). Ein Gateway, das Sparkplug-Daten im Namen der dahinterliegenden Geräte publiziert.
Host Application (Sparkplug). Der primäre Konsument, oft ein SCADA-System, der den Zustand der Nodes verfolgt und Befehle senden kann.
Sparkplug B. Eine Eclipse-Spezifikation, die Topic-Struktur, Protobuf-Payloads und Zustandsverwaltung auf Basis von MQTT definiert. Lesen Sie Sparkplug B und Unified Namespace für das Gesamtbild.
MQTT-Glossar: D bis M
DUP-Flag. Wird bei einem PUBLISH gesetzt, das erneut gesendet wird, weil die ursprüngliche Bestätigung nicht empfangen wurde.
Fixed Header (fester Header). Die ersten zwei bis fünf Bytes jedes MQTT-Pakets: Pakettyp, Flags und verbleibende Länge.
Inflight Window. Die Anzahl der QoS-1- und QoS-2-Nachrichten, die ein Client oder Broker gesendet, deren Bestätigung er aber noch nicht erhalten hat.
ISA-95. Ein Industriestandard (international als IEC 62264) für die Integration von Unternehmens- und Steuerungsebene. Seine Equipment-Hierarchie (Enterprise, Site, Area, Line, Cell, also Unternehmen, Standort, Bereich, Linie, Zelle) bildet in einem UNS die Topic-Struktur auf dem Broker, etwa acme/werk-stuttgart/montage/linie-1/zelle-3/temperatur.
Keep Alive. Das maximale Intervall in Sekunden zwischen Paketen eines Clients. Sendet er sonst nichts, schickt der Client PINGREQ; hört der Broker das Anderthalbfache des Intervalls lang nichts, schließt er die Verbindung.
Last Will and Testament (LWT). Eine Nachricht, die der Broker im Namen des Clients veröffentlicht, wenn dieser unerwartet die Verbindung verliert. Wird häufig für Online-/Offline-Status genutzt.
Maximum Packet Size (MQTT 5). Ein Limit, das jede Seite für das größte Paket ankündigen kann, das sie akzeptiert.
Message Expiry Interval (MQTT 5). Eine Lebensdauer in Sekunden, nach der eine nicht zugestellte Nachricht verworfen wird.
MQTT. Ein schlankes Publish/Subscribe-Messaging-Protokoll über TCP, von OASIS in den Versionen 3.1.1 und 5.0 standardisiert.
MQTT-SN. MQTT for Sensor Networks, eine Variante für UDP und nicht IP-basierte Datagramm-Netze, die ein Gateway benötigt. Siehe MQTT-SN erklärt.
mTLS (Mutual TLS). TLS, bei dem auch der Client ein Zertifikat vorlegt, damit der Broker ihn authentifizieren kann.
N bis Q
Payload. Die Anwendungsdaten in einem PUBLISH. MQTT behandelt sie als undurchsichtige Bytes; JSON, Protobuf und Klartext sind gleichermaßen üblich.
Payload Format Indicator (MQTT 5). Ein Flag, das angibt, ob die Payload UTF-8-Text oder unspezifizierte Bytes ist.
Persistent Session (persistente Session). Session-Zustand (Subscriptions, wartende Nachrichten), den der Broker über Verbindungsabbrüche hinweg aufbewahrt.
PINGREQ / PINGRESP. Die Heartbeat-Pakete für Keep Alive.
PUBACK. Bestätigung für ein PUBLISH mit QoS 1.
PUBREC, PUBREL, PUBCOMP. Die drei zusätzlichen Pakete des vierstufigen QoS-2-Handshakes.
PUBLISH. Das Paket, das eine Nachricht zum oder vom Broker transportiert.
Publisher. Ein Client, der Nachrichten an ein Topic sendet.
QoS (Quality of Service). Die Zustellgarantie pro Nachricht: 0 höchstens einmal, 1 mindestens einmal, 2 genau einmal. Details in MQTT-QoS-Stufen erklärt.
Quota (Kontingent). Ein vom Broker durchgesetztes Limit, etwa für Verbindungen, Nachrichtenrate oder Nachrichtengröße. MQTT-5-Broker können eine Überschreitung mit Reason Code 0x97 melden.
R bis S
Reason Code (MQTT 5). Ein Ein-Byte-Status in Bestätigungen und DISCONNECT, der Erfolg oder Fehler erklärt, etwa 0x87 Not authorized.
Receive Maximum (MQTT 5). Wie viele unbestätigte QoS-1/2-Nachrichten eine Seite gleichzeitig verarbeiten will; eine Form der Flusskontrolle.
Response Topic (MQTT 5). Ein in einer Anfrage genanntes Topic, auf dem der Antwortende seine Antwort publizieren soll.
Retained Message. Eine Nachricht, die der Broker als letzten bekannten Wert eines Topics speichert und jedem neuen Subscriber zustellt. Probieren Sie es aus: mosquitto_pub -h broker.connectmq.com -i gl-ab12 -t connectmq/demo/ab12/state -m on -r.
Session. Der Zustand, den der Broker für eine Client-ID hält: Subscriptions, Inflight-Nachrichten und wartende Nachrichten.
Session Expiry Interval (MQTT 5). Wie viele Sekunden der Broker eine Session nach dem Trennen aufbewahrt. Der öffentliche MQTT-Broker erlaubt bis zu 30 Minuten.
Shared Subscription (MQTT 5). Eine Subscription der Form $share/group/topic, die Nachrichten per Lastverteilung auf die Mitglieder einer Gruppe verteilt.
SUBACK. Die Antwort des Brokers auf SUBSCRIBE, die pro Topic-Filter eine QoS gewährt oder einen Fehler zurückgibt.
Subscriber. Ein Client, der Nachrichten zu den Topic-Filtern empfängt, die er abonniert hat.
SUBSCRIBE / UNSUBSCRIBE. Pakete zum Hinzufügen oder Entfernen von Topic-Filtern.
Subscription Identifier (MQTT 5). Eine Zahl, die an eine Subscription angehängt und bei passenden Nachrichten zurückgegeben wird, damit der Client weiß, welche Subscription die Zustellung ausgelöst hat.
$SYS-Topics. Vom Broker reservierte Topics, meist mit dem Präfix $SYS/, die Statusinformationen bereitstellen. ConnectMQ veröffentlicht beispielsweise den Verbindungszustand unter $SYS/broker/connection/{clientId}/state.
T bis Z
TLS (Transport Layer Security). Verschlüsselung der TCP-Verbindung, normalerweise auf Port 8883. Behandelt in MQTT-Ports erklärt.
Topic. Ein UTF-8-String mit durch / getrennten Ebenen, etwa plant1/line2/temp, über den Nachrichten geroutet werden.
Topic Alias (MQTT 5). Eine kleine Ganzzahl, die in späteren PUBLISH-Paketen derselben Verbindung einen langen Topic-Namen ersetzt, um Bandbreite zu sparen.
Topic Filter. Das in einer Subscription verwendete Muster, das Wildcards enthalten kann.
Topic Level (Topic-Ebene). Ein Segment zwischen Schrägstrichen. Der öffentliche MQTT-Broker unter broker.connectmq.com erlaubt bis zu 8 Ebenen.
Unified Namespace (UNS). Eine Architektur, in der alle Industriedaten in einen einzigen hierarchischen Topic-Baum auf einem MQTT-Broker als Single Source of Truth publiziert werden. Die Struktur folgt meist der ISA-95-Hierarchie, sodass SPS, MES, ERP und Analysewerkzeuge Daten am selben, vorhersehbaren Ort finden, statt über Punkt-zu-Punkt-Schnittstellen verbunden zu werden.
User Properties (MQTT 5). Eigene Schlüssel/Wert-Paare in Paket-Headern, ähnlich wie HTTP-Header.
WebSocket-Transport. MQTT in WebSocket-Frames, damit Browser sich verbinden können, typischerweise auf 8083 (ws) oder 8084 (wss) mit einem Pfad wie /mqtt.
Wildcard. + passt auf genau eine Topic-Ebene; # passt auf alle verbleibenden Ebenen und muss am Ende stehen.
Will Delay Interval (MQTT 5). Die Sekunden, die der Broker vor dem Veröffentlichen des Will wartet, damit der Client zuerst die Chance hat, sich neu zu verbinden.
Kurzreferenz-Tabelle
| Sie hören | Es bedeutet | Version |
|---|---|---|
| QoS 1 | Mindestens-einmal-Zustellung mit PUBACK | 3.1.1 und 5 |
| Retained | Letzter Wert pro Topic gespeichert | 3.1.1 und 5 |
| LWT | Nachricht bei unerwartetem Verbindungsabbruch | 3.1.1 und 5 |
| Clean Start | Session beim Verbinden wiederverwenden oder verwerfen | 5 |
| Session Expiry | Wie lange der Broker den Zustand behält | 5 |
$share/ |
Präfix für Shared Subscriptions | 5 |
| 0x97 | Kontingent überschritten | 5 |
Setzen Sie das Vokabular in die Praxis um
Definitionen bleiben hängen, sobald Sie sie auf der Leitung sehen. Verbinden Sie einen beliebigen Client mit broker.connectmq.com auf Port 1883 und einer eindeutigen Client-ID, abonnieren Sie connectmq/demo/<your-id>/# und probieren Sie Retained Messages, einen Last Will und QoS-1-Publishes selbst aus. Wenn Sie bereit für Authentifizierung, TLS und einen isolierten Namespace sind, unterstützt ein verwalteter MQTT-Broker wie ConnectMQ sowohl MQTT 3.1.1 als auch 5.0, sodass sich fast jeder Begriff oben auf etwas abbilden lässt, das Sie einschalten können.
Starten Sie mit ConnectMQ
Öffnen Sie app.connectmq.com, wählen Sie den kostenlosen Serverless-Plan (ohne Kreditkarte), erstellen Sie einen Broker und kopieren Sie den generierten Benutzernamen, das Passwort und die Client-ID. Der MQTT-Client von ConnectMQ im Browser ist der schnellste Weg, Retained Messages, LWT und Session Expiry beim Lernen zu testen.
Häufig gestellte Fragen
Was ist der Unterschied zwischen einem Topic und einem Topic-Filter?
Ein Topic ist der exakte Name, unter dem eine Nachricht veröffentlicht wird. Ein Topic-Filter ist das Muster, das ein Subscriber verwendet, und kann die Wildcards + und # enthalten.
Ist Clean Session dasselbe wie Clean Start?
Sie sind verwandt, aber nicht identisch. Clean Session in MQTT 3.1.1 steuert sowohl die Wiederverwendung als auch die Lebensdauer einer Session, während MQTT 5 das in Clean Start und Session Expiry Interval aufteilt.
Welche Glossarbegriffe gibt es nur in MQTT 5?
Reason Codes, User Properties, Topic Aliases, Shared Subscriptions, Message Expiry, Session Expiry, Response Topic, Correlation Data und das AUTH-Paket sind allesamt Neuerungen von MQTT 5.
Gehören Sparkplug-Begriffe zum MQTT-Standard?
Nein. Sparkplug B ist eine separate Eclipse-Spezifikation, die Konventionen auf Basis von MQTT definiert; jeder konforme Broker kann sie transportieren.



