Dieser MQTT – Message Queuing Telemetry Transport Kurs behandelt detailliert das Protokoll selbst, seine speziellen Features, sowie existierende Produkte.
MQTT – Message Queuing Telemetry Transport Seminar
Message Queuing Telemetry Transport (MQTT): Das Messaging-Protokoll für IoT und mehr
Bei MQTT handelt es sich regelrecht um ein „wiederentdecktes“ Kommunikations-/Messaging-Protokoll. Das Protokoll wurde in seiner Ur-Form zwar bereits 1999 entwickelt, erlebt aber seit einigen Jahren insbesondere durch die aktuellen Entwicklungen im Bereich IoT einen regelrechten neuen Boom. Es ermöglicht, Millionen von Clients (Geräte oder Applikationen) effizient miteinander kommunizieren zu lassen und ist darauf ausgelegt, insbesondere auch in Umgebungen zu funktionieren, in denen man nicht mit einer zuverlässigen Netzinfrastruktur bzw. zuverlässigen Geräten rechnen kann. Über ein zentrales Element, den sogenannten Broker, können Milliarden von Nachrichten effizient ausgetauscht werden. Das Protokoll kann daher ohne Übertreibung als eines der wichtigsten Protokolle für das IoT bezeichnet werden, ist aber nicht auf IoT-Anwendungen beschränkt.
Lernziele MQTT Seminar
Inhalte MQTT Seminar
MQTT und das IoT
- Was ist IoT?
- Anwendungsbereiche des IoT
- Neue Technologie im IoT?
- Schichtenmodelle für das IoT – Beispiel
- Entstehung und Geschichte von MQTT
- MQTT – DAS IoT Protokoll
- Einsatzmöglichkeiten von MQTT
- Alternativen zu MQTT
Das Protokoll
- MQTT 3.1.1
- Das Protokoll
- MQTT-Server/-Broker und Clients
- Subscriptions, Topics, Topic Filter, Session
- Datenformat in Paketen
- Flags im Fixed Header
- Variabler Header CONNECT-Nachricht (1)
- CONNACK (Acknowledge connection request)
- MQTT Nachrichtentypen: CONNECT, CONNACK
- CONNACK – Return Codes
- MQTT PUBLISH Fixed Header
- MQTT PUBLISH Variable Header
- MQTT Nachrichtentypen PUBLISH, PUBACK, PUBREC, PUBREL und PUBCOMP
- MQTT SUBSCRIBE
- MQTT Nachrichtentypen SUBSCRIBE, SUBACK, UNSUBSCRIBE, UNSUBACK
- MQTT Nachrichtentypen PINGREQ, PINGRESP, DISCONNECT
- QoS in MQTT
- QoS in – QoS 0
- QoS in – QoS 1
- QoS in – QoS 2
- Retained Messages
- Last Will Messages
- Session State
- Änderungen / Neuerungen in MQTT 5
- Shared Subscriptions
- Subscription Identifier
- Statuscodes und -strings in CONNACK-Nachrichten
- Statuscodes und -strings in PUBACK-Nachrichten
- Statuscodes und -strings in PUBREC-Nachrichten
- Statuscodes und -strings in PUBREL- und PUBCOMP-Nachrichten
- Statuscodes und -strings in SUBACK-Nachrichten
- Statuscodes und -strings in UNSUBACK-Nachrichten
- Statuscodes und -strings in DISCONNECT-Nachrichten
- MQTT über Websockets
- MQTT im Embedded Umfeld: MQTT-SN
- MQTT-SN Architektur
- Unterschiede MQTT-SN – MQTT
Wichtige MQTT-Produkte, Hilfsmittel und Werkzeuge
- MQTT-Broker
- mosquitto
- HiveMQ
- VerneMQ
- MQTT-Clients
- HiveMQ MQTT-Client (Java) und Websockets-Client
- mosquitto_pub
- mosquitto_sub
- Eclipse Paho Javascript Client
- Eclipse Paho Java Client
- Eclipse Paho – Sonstige Implementierungen
Security
- IoT-Security und die fünf Säulen der (klassischen) Informationssicherheit
- Sicherheitsaspekte
- Absicherung des Messaging-Protokolls
- Authentifizierung
- Clientauthentifizierung mit Username und Passwort in mosquitto
- TLS-Konfiguration in mosquitto
- Autorisierung in mosquitto
MQTT Schulung: Zielgruppe MQTT Seminar
Dieser MQTT Kurs wendet sich an alle, die sich für das Messaging-Protokoll MQTT interessieren.
MQTT Schulung: Voraussetzungen MQTT Seminar
Grundkenntnisse in einer Skript-/Programmiersprache (Javascript, Python, etc.) sind hilfreich, aber nicht zwingend erforderlich. Solide Grundkenntnisse der Netzwerktechnik (OSI-Schichtenmodell etc.) sollten vorhanden sein.
Message Queuing Telemetry Transport Hintergrund: MQTT Seminar
Message Queuing Telemetry Transport (MQTT) ist ein leichtgewichtiges, auf dem Publish/Subscribe-Prinzip basierendes Messaging-Protokoll, das speziell für die Übertragung von Nachrichten in Umgebungen mit eingeschränkten Ressourcen entwickelt 1 wurde. Es wird häufig in IoT-Anwendungen (Internet der Dinge) eingesetzt, da es eine effiziente und zuverlässige Kommunikation zwischen Geräten mit geringer Bandbreite und hoher Latenz ermöglicht.
Vorteile de Messaging-Protokolls:
- Effiziente Kommunikation: Ideal für Umgebungen mit begrenzten Ressourcen.
- Flexible Architektur: Ermöglicht eine einfache Integration von vielen Geräten.
- Zuverlässige Nachrichtenübertragung: Bietet verschiedene QoS-Stufen zur Gewährleistung der Zuverlässigkeit.
- Offener Standard: Es handelt sich um ein offenes Protokoll, das von vielen Herstellern und Plattformen unterstützt wird.
Zusammenfassend lässt sich sagen, dass das Tool ein leichtgewichtiges und effizientes Messaging-Protokoll ist, das sich ideal für den Einsatz in IoT-Anwendungen eignet. Es ermöglicht eine zuverlässige Kommunikation zwischen Geräten mit begrenzten Ressourcen und unterstützt eine flexible und skalierbare Architektur.