Ein kurzer Blick auf die Protokolle MQTT und CoAP – das IoT verbinden
Jeden Tag stoßen etwa 5,5 Millionen neue Geräte zum Internet der Dinge (IoT) hinzu. Das Marktforschungsunternehmen Gartner ging davon aus, dass bis 2020 etwa 20,8 Milliarden vernetzte Geräte im Einsatz sein werden. Diese reichen von DVD-Rekordern und Heimthermostaten bis hin zu Embedded-Fabriksteuerungen.
Die Interaktion zwischen diesen Milliarden von Geräten ist keine Kleinigkeit, vor allem wenn man bedenkt, dass es sich bei vielen IoT-Geräten um kleine Geräte handelt. Diese werden häufig dezentral aufgestellt und nur selten gewartet. Außerdem sind diese Geräte oft netzwerkgebunden und verfügen nur über begrenzte Rechenressourcen. Darüber hinaus ist die Stromversorgung eingeschränkt. Daher muss jedes System, das für die Interaktion von IoT-Geräten konzipiert ist, intelligent, effizient und wirtschaftlich sein. Heute gibt es zwei weit verbreitete Protokolle für die IoT-Datenkonnektivität: Message Queuing Telemetry Transport (MQTT) und Constrained Application Protocol (CoAP). Werfen wir einen Blick auf einige der Stärken und Schwächen der beiden Protokolle MQTT und CoAP.
Was ist MQTT?
MQTT ist ein Nachrichtenprotokoll. Es wurde für die einfache Kommunikation von Maschine zu Maschine entwickelt. MQTT wurde 1999 von IBM entwickelt, um ein SCADA-System (Supervisory Control and Data Acquisition) für ein Pipeline-Projekt zu ermöglichen. Seitdem hat es sich zu einem offenen Standard entwickelt. Dieser wird von der OASIS-Standardisierungsorganisation gepflegt. MQTT folgt einem Veröffentlichungs-/Abonnement-Muster für den Nachrichtenaustausch. Dabei erstellen Geräte Themen bei einem zentralen Broker, die Client-Geräte dann abonnieren können. Wenn ein Gerät eine Nachricht in Bezug auf ein bestimmtes Thema sendet, wird die Nachricht an jeden Client weitergeleitet, der dieses Thema abonniert hat. Die zentralisierte Broker-Architektur kann die Verwaltung vereinfachen, die Zustellung sicherstellen und die Kommunikation von IoT-Geräten über Firewalls hinweg erleichtern. Außerdem laufen MQTT-Konversationen über Transmission Control Protocol (TCP) und können mit demselben SSL/TLS-Schema gesichert werden, das auch für Websites verwendet wird. Allerdings wird es für viele eingeschränkte Szenarien als zu schwerfällig angesehen.
Was ist CoAP?
Dagegen ist CoAP ein neuer Standard, der von der IETF Constrained Resource Environments (CoRE)-Gruppe entwickelt wurde. Oft wird er als ein leichtgewichtiges Analogon zu HTTP beschrieben. CoAP ist hochgradig skalierbar und REST-fähig. Zudem tauscht es die Übertragungsgarantien von TCP (das von MQTT verwendet wird) gegen die kleineren Pakete und den geringeren Aufwand von User Datagram Protocol (UDP). Dazu verwendet CoAP ein Client-Server-Modell und ein Anfrage/Antwort-Muster, bei dem Client-Geräte Informationsanfragen direkt an Server-Geräte senden. Daraufhin antworten diese. Durch die Unterstützung eines Observer-Meldungsmusters können Clients eine Aktualisierung erhalten, wenn sich ein angeforderter Zustand ändert. Beispielsweise das Öffnen oder Schließen eines Ventils, während eine bestätigte Meldungszustellung ein gewisses Maß an Sicherheit im Rahmen des verbindungslosen UDP-Transports bietet.
Letztendlich hängt die Entscheidung für ein bestimmtes Protokoll ganz von den Besonderheiten Ihrer speziellen Gerätebereitstellung ab. In einigen Fällen kann die Hub-and-Spoke-Architektur von MQTT Vorteile bieten, während in anderen Fällen der dezentralisierte Ansatz von CoAP die beste Lösung sein kann. Gleichzeitig ist die UDP-Grundlage von CoAP im Allgemeinen besser für batteriebetriebene Geräte geeignet, während MQTT auf der Basis von TCP eine größere Sicherheit bei der Zustellung von Nachrichten bieten kann.
Hier sind einige der wichtigsten Unterschiede zwischen diesen beiden beliebten Protokollen auf einen Blick.
MQTT | CoAP | |
erstellt | 1999 (2013 OASIS-Standard) | 2014 |
Benachrich tigungs- muster | Veröffentlichen/Abonnieren über Meldungsbroker | Anfrage/Antwort (Client/Server) |
Transport | Transmission Control Protocol (TCP) | User Datagram Protocol (UDP) |
Sicherheit | SSL/TLS über TCP | DTLS über UDP |
Stärken | Die Broker-Architektur kann die Verwaltung vereinfachen; TCP- und Quality-of-Service-Optionen ermöglichen eine stabile Nachrichtenübermittlung. | schnell und effizient aufgrund der Verwendung von UDP mit geringem Aufwand; das RESTful-Modell ist entwicklerfreundlich und ermöglicht eine integrierte Ressourcenerkennung |
Schwächen | Ständig aktive TCP-Verbindungen schränken den Nutzen für Geräte mit geringem Stromverbrauch ein; SSL/TLS-Verschlüsselung ist für eingeschränkte Clients nicht geeignet. | Die Zuverlässigkeit und Servicegarantien von TCP-basiertem MQTT sind nicht gegeben. |
Ganz gleich, ob Sie sich für MQTT- oder CoAP-IoT-Protokolle entscheiden, benötigen Sie die richtige Hardware. Entdecken Sie unten unser komplettes Sortiment an vielseitigen, äußerst verlässlichen Industrie-PCs. SIe eignen sich ideal für IIoT-Implementierungen.
Tech-Updates & neue Einblicke
Abonnieren Sie unseren Newsletter und die neuesten Mitteilungen von OnLogic kommen direkt in Ihren Posteingang. News und Einblicke von unserem Team aus Fachleuten sind nur einen Klick entfernt. Über den Button gelangen Sie zu unserer Abo-Seite.
Teilen
TEILEN
Sie haben ein Projekt? Lassen Sie uns darüber sprechen.