Warum nimmt das MQTT-Protokoll im Embedded-Bereich eine unersetzliche Stellung ein?
MQTT , vollständiger Name (Message Queuing Telemetry Transport), ist ein Kommunikationsprotokoll, das noch nicht allzu alt ist. Es wurde ursprünglich für Umgebungen mit begrenzten Netzwerkbedingungen entwickelt und weist daher die Merkmale einer geringen Bandbreite und eines geringen Overheads auf. Die Codemenge ist ebenfalls gering, und MQTT selbst basiert auf dem TCP-Protokoll und bietet einen tieferen Schutz für die Zuverlässigkeit von Informationsübertragung.

Daher nimmt das MQTT-Kommunikationsprotokoll im Embedded-Bereich bereits einen unersetzlichen Teil ein, da die meisten Embedded-Geräte ein solches Protokoll für den Datenaustausch benötigen. Es stehen nicht viele Ressourcen für eingebettete Geräte und verschiedene Plug-Ins zur Verfügung. Auch die Methode zur Verbindung mit dem Internet ist gewöhnlichen Mobiltelefonen und PCs unterlegen. Es handelt sich um eine Kommunikationsmethode mit niedriger Geschwindigkeit, und der hohe Datenverkehrsverbrauch ist zu hoch für 4G/NB-IOT-Geräte, die Datenverkehr verbrauchen.
MQTT-Protokoll

Umfangreiche Funktionen des MQTT-Protokolls
Als nächstes sollten wir über die tiefgreifenden Funktionen des MQTT-Protokolls sprechen.

1. Eins-zu-viele-Informationsfreigabe

Erstens handelt es sich um ein Protokoll, das auf Abonnements und Veröffentlichungen basiert, sodass Nachrichten eins zu viele veröffentlicht werden können. Es gibt viele Anwendungsszenarien für diese Funktion. Durch die eingeschränkte Übertragung kann der Server das Gerät, das er steuern möchte, flexibel steuern, und die Bereitstellung mehrerer Themen, die abonniert werden können, ist äußerst wichtig.

Denn für den Server ist das Empfangen und Verarbeiten von Daten die Kernaufgabe. Mit zunehmender Anzahl von Geräten und Gerätefunktionszeilen nimmt jedoch die Serververarbeitungslogik exponentiell zu. Die gleichen empfangenen Daten können vollständig von verschiedenen Gerätetypen hochgeladen werden. Unterschiedliche Informationen. Wenn also mehrere Abonnementthemen und Veröffentlichungsthemen bereitgestellt werden können, kann dieser logische Unterschied unterschieden werden, was für Entwickler großen Komfort bietet.
Empfang von MQTT-Protokolldaten
MQTT-Protokolldatenempfang 2

2. Verschiedene zugrunde liegende Protokolle
Das zweite Merkmal des MQTT-Protokolls besteht tatsächlich darin, dass es auf TCP/IP basiert. Es soll ein Protokoll sein, das auf der oberen Schicht basiert. Die meisten Leute, mit denen wir jetzt in Kontakt kommen, sind tatsächlich auf Basis des TCP-Protokolls entwickelt, es gibt jedoch tatsächlich eine Version, die auf UDP basiert. , genannt MQTT-SN, aber jeder weiß, dass TCP verbindungsorientiert ist, während UDP nicht verbindungsorientiert ist. Daher müssen die Eigenschaften von MQTT basierend auf verschiedenen zugrunde liegenden Protokolltypen unterschiedlich sein.

Für das häufig verwendete MQTT- Protokoll (basierend auf TCP) verfügt es über eine sehr wichtige Funktion zur Gewährleistung der Nachrichtenzuverlässigkeit: QoS .

QoS ist in drei Ebenen unterteilt:

QoS 0 entspricht eigentlich MQTT ohne zusätzlichen Informationsschutz. Da es auf dem TCP-Protokoll basiert, hängt die Nachrichtenzuverlässigkeit vollständig vom TCP-Protokoll ab. QoS 1 bedeutet, dass versprochen wird, es mindestens einmal an den Empfänger zu senden. Dies ist Informationsschutz auf der MQTT-Ebene und nicht nur auf der TCP-Protokollebene. Schließlich stellt QoS 2 sicher, dass die Nachricht nur einmal an das Ziel zugestellt wird.

Denn bei QoS 1 kann es sein, dass die Nachricht mehrfach gesendet wird, da keine Rückmeldung erfolgt, und der Empfänger die Nachricht möglicherweise auch mehrmals empfängt. Aus diesem Grund hat die von QoS 2 übertragene Nachricht eine eindeutige ID und die Nachricht mit der eindeutigen Nachrichten-ID wird zweimal gespeichert, zuerst vom Sender und dann vom Empfänger. QoS Level 2 hat den höchsten Overhead im Netzwerk, da zwei Flüsse vorhanden sind zwischen Sender und Empfänger erforderlich sind.
Dem MQTT-Protokoll zugrunde liegendes Protokoll

Derzeit ist das MQTT-Protokoll tatsächlich weit verbreitet. Es ist in den Bereichen eingebettete Landwirtschaft, Industrie und Infrastrukturausrüstung zu finden, aber es ist ein Protokoll für sich.

Tatsächlich spielt es als Teil der Datenübertragung in Internet-of-Things-Anwendungen eine ebenso wichtige Rolle wie die drahtlose Datenübertragungsmethode. Ob es sich um ein 4G-Funkmodul, ein NB-IOT-Modul, ein WiFi-Modul , ein Lora-Modul , ein Bluetooth-Modul , ein Zigbee-Modul usw. handelt, die Datenübertragung gehört zur Datenübertragung, aber Protokolle sind die Seele der oberen Schicht. Unterschiedliche Protokolle haben unterschiedliche Anwendungsszenarien und spielen unterschiedliche Rollen.