MQTT Protokoll: Unterschied zwischen den Versionen

Aus xinux.net
Zur Navigation springen Zur Suche springen
(Die Seite wurde neu angelegt: „;Leichtgewichtigkeit: * MQTT funktioniert auf Geräten mit geringen Systemressourcen, wie Mikrocontrollern und Mini-Computern (z.B. Arduino, Raspberry Pi). ;Ef…“)
 
Zeile 1: Zeile 1:
;Leichtgewichtigkeit:
+
=Grunsätzliches=
* MQTT funktioniert auf Geräten mit geringen Systemressourcen, wie Mikrocontrollern und Mini-Computern (z.B. Arduino, Raspberry Pi).
+
Hier ist eine klare und zusammenhängende Zusammenfassung des MQTT-Protokolls basierend auf deinen Anforderungen:
;Effiziente Datenübertragung:
+
 
* MQTT nutzt ein Binärformat für eine kompakte Datenübertragung.
+
* **Entwicklung und Zweck:** MQTT wurde von IBM als "Message Queueing Telemetry Transport" entwickelt und ist besonders für das IoT geeignet.
;Servicequalitätslevel (QoS):
+
* **Protokollart:** Es ist ein Pub/Sub-Protokoll, bei dem sich Clients mit einem Broker verbinden, um Nachrichten zu senden oder zu empfangen.
* MQTT unterstützt verschiedene QoS-Level, die je nach Netzwerkstabilität gewählt werden können (QoS = 0, 1, 2).
+
* **Ports und Kommunikation:** Verwendet TCP-Port 1883 und TLS-TCP-Port 8883, keine Client-Polling notwendig, was die Bandbreite spart und Latenz minimiert.
;Sessions:
+
* **Client und Broker Beziehung:** Unbekannter Inhalt der Nachrichten für den Broker, der nur die Zustellung verwaltet. Ermöglicht entkoppelte Kommunikation zwischen Geräten.
* MQTT kann mit Verbindungsabbrüchen umgehen, indem Nachrichten, die während eines Abbruchs nicht zugestellt werden konnten, gespeichert und später übertragen werden.
+
* **Topics und Nachrichtenhandling:** Nachrichten sind mit Topics verbunden, die wie hierarchische Pfade strukturiert sind, unterstützen Wildcards zur flexiblen Abonnementverwaltung.
;Publish / Subscribe:
+
* **Payloads und Daten:** Unterstützt bis zu 256 MByte große Payloads, oft verwendet für einfache Datenstrings oder JSON-verpackte Daten.
* MQTT basiert auf dem Publish/Subscribe (Pub/Sub) Messaging-Prinzip.
+
* **Letzter Wille und Retained-Flag:** Ermöglicht das Setzen von Nachrichten, die gespeichert und bei Bedarf an Subscriber gesendet werden.
** Publisher und Topics: MQTT-Clients (Publisher) senden Nachrichten unter definierten Topics an den Broker. Topics sind hierarchisch strukturierte Zeichenketten.
+
 
** Subscriber: Clients, die sich für bestimmte Topics registrieren, um Nachrichten zu empfangen, werden Subscriber genannt.
+
Dieses Format sollte eine klare und direkte Übersicht bieten, die leicht zu verstehen und anzuwenden ist.
** Broker als Mediator: Der MQTT-Broker empfängt Nachrichten von Publishern und leitet sie an die entsprechenden Subscriber weiter.
 
** Wildcards: Subscriber können Wildcards nutzen, um sich für eine Vielzahl von Topics zu registrieren, was die Flexibilität erhöht.
 
;MQTT-Broker:
 
* Zu den bekanntesten MQTT-Brokern gehört Eclipse Mosquitto.
 
** Verfügbarkeit: Mosquitto wird unter einer Open-Source-Lizenz von der Eclipse Foundation bereitgestellt und von Cedalo AG entwickelt.
 
** Installation: Mosquitto kann über Docker installiert werden, wobei offizielle Docker Images zur Verfügung stehen.
 
** Erweiterung mit Tools: Es gibt Möglichkeiten, Mosquitto zusammen mit anderen Open-Source-Tools zu installieren, wie zum Beispiel Eclipse Streamsheets oder eine graphische Weboberfläche für
 

Version vom 14. April 2024, 08:14 Uhr

Grunsätzliches

Hier ist eine klare und zusammenhängende Zusammenfassung des MQTT-Protokolls basierend auf deinen Anforderungen:

  • **Entwicklung und Zweck:** MQTT wurde von IBM als "Message Queueing Telemetry Transport" entwickelt und ist besonders für das IoT geeignet.
  • **Protokollart:** Es ist ein Pub/Sub-Protokoll, bei dem sich Clients mit einem Broker verbinden, um Nachrichten zu senden oder zu empfangen.
  • **Ports und Kommunikation:** Verwendet TCP-Port 1883 und TLS-TCP-Port 8883, keine Client-Polling notwendig, was die Bandbreite spart und Latenz minimiert.
  • **Client und Broker Beziehung:** Unbekannter Inhalt der Nachrichten für den Broker, der nur die Zustellung verwaltet. Ermöglicht entkoppelte Kommunikation zwischen Geräten.
  • **Topics und Nachrichtenhandling:** Nachrichten sind mit Topics verbunden, die wie hierarchische Pfade strukturiert sind, unterstützen Wildcards zur flexiblen Abonnementverwaltung.
  • **Payloads und Daten:** Unterstützt bis zu 256 MByte große Payloads, oft verwendet für einfache Datenstrings oder JSON-verpackte Daten.
  • **Letzter Wille und Retained-Flag:** Ermöglicht das Setzen von Nachrichten, die gespeichert und bei Bedarf an Subscriber gesendet werden.

Dieses Format sollte eine klare und direkte Übersicht bieten, die leicht zu verstehen und anzuwenden ist.