IoT-Protokolle

In der Netzwerktechnik bestimmen Protokolle den Ablauf der Kommunikation zwischen den Systemen. Ein Netzwerk-Protokoll definiert, wie die Kommunikation aufgebaut wird, wie und über was sich die Systeme austauschen und wie die Kommunikation wieder beendet wird. Es werden also nicht nur Daten übertragen, sondern auch Meta-Informationen und Verwaltungsdaten.

Für IoT-Anwendungen braucht es Protokolle für die Kommunikation, die möglichst geringere Anforderungen an die Hardware stellen, einen hohen Nutzdatenanteil haben und mit Funksystemen funktionieren, die auf Stromsparen ausgelegt sind.

Es gibt sehr viele Kommunikationsprotokolle, die in IoT-Anwendungen zum Einsatz kommen. Manche IoT-Protokolle wurde erst wegen bestimmter Anforderungen entwickelt. Andere Protokolle sind keine typischen IoT-Protokolle, werden aber gerne verwendet. Jedes dieser Kommunikationsprotokolle hat seine eigenen spezifischen Eigenschaften und Einsatzgebiete im Internet of Things. Sie sind deshalb nicht einfach austauschbar. Jedes hat seinen eigenen Anwendungsfall.

Kommunikationsprinzip

Es geht um die Frage, wie ein IoT-Endgerät mit einer Gegenstelle im IoT-Netz kommuniziert.

  • Push und Pull
  • Request und Response
  • Publish und Subscribe
  • Mesh

Prinzip: Push und Pull

BILD: Device —> Server (Pull) / Device <— Server (Push)

Push und Pull beziehen sich darauf, wie ein Teilnehmer in einer Kommunikation Daten oder Informationen erhält.

  • Beim Pull-Prinzip muss der Empfänger aktiv und von sich aus nach spezifischen Informationen suchen und diese abrufen. Er muss die Kommunikation initiieren. Ein Schlüsselaspekt des Pull-Prinzips ist die Selbstbestimmung des Empfängers, der die Kontrolle über den Informationsfluss und die Bedeutung der Relevanz von Informationen hat.
  • Beim Push-Prinzip bekommt der Empfänger die benötigten Daten oder Informationen gesendet, ohne dass er in irgendeiner Weise aktiv werden muss. Hierbei gibt es einen Sender, der Nachrichten und Inhalte an ein breites Publikum sendet, ohne dass die Empfänger diese explizit angefordert haben. Dabei nimmt der Sender keine Rücksicht, ob die Empfänger die Informationen brauchen oder wollen, un ob sie technisch gesehen vielleicht überlastet sind oder werden.

Prinzip: Request und Response

BILD: Request-Response

Die meisten Internet-Protokolle arbeiten nach dem Pull-Prinzip bzw. Client-Server-Modell. Hier sendet der Client einen Request, auf den der Server mit einem Response antwortet. Dabei ist es nicht vorgesehen, dass der Server den Client von sich aus kontaktiert. Der Server reagiert immer nur auf die Anfrage eines Clients.
In diesem Modell ist der Client eine Software, die typischerweise eine Benutzeroberfläche für einen Benutzer hat, während der Server datenverarbeitende Funktionen hat und durch den Client bedient wird.
Die Protokolle HTTP, WebServices, CoAP und XMPP arbeiten nach diesem Prinzip.

Prinzip: Publish und Subscribe

BILD

In diesem Modell gibt es drei Rollen: Publisher, Subscriber und Broker.

  • Der Publisher ist die Komponente, die Informationen oder Nachrichten sendet. Das kann ein Sensor sein, der Daten erfasst, oder sogar eine Schaltfläche in einem Webbrowser, die von einem Benutzer ausgelöst wird. Der Publisher sendet seine Nachrichten jedoch nicht direkt an den Subscriber, sondern an einen sogenannten Message-Broker.
  • Der Subscriber ist die Komponente, die die Nachrichten empfängt und darauf reagiert. das kann ein Aktor sein, der basierend auf den erhaltenen Informationen etwas schaltet oder auslöst. Damit der Subscriber die Nachrichten eines Publishers erhält, muss er sich beim Message-Broker registrieren und die entsprechenden Nachrichten abonnieren.
  • Der Broker ist eine Art Vermittler zwischen Publishern und Subscribern. Er verwaltet eine Liste von Subscribern, die bestimmte Nachrichten erhalten sollen. Wenn ein Publisher eine Nachricht sendet, leitet der Broker diese an alle Subscriber weiter, die diese Nachricht abonniert haben.

Bei der Publish-Subscriber-Architektur sind Sender und Empfänger voneinander entkoppelt. Das bedeutet, dass sie nicht direkt miteinander kommunizieren können. Erst durch den Broker können die unabhängig voneinander arbeitenden Komponenten miteinander kommunizieren.
Die Protokolle MQTT, AMQP, DDS und XMPP arbeiten nach diesem Prinzip.

LINK: Weitere Informationen

Prinzip: Mesh

BILD

Ein Mesh-Protokoll ermöglicht es den Geräten, als sogenannte "Knoten" zu fungieren. Jeder Knoten kann Daten empfangen und weiterleiten. Dadurch entsteht ein Netzwerk, das flexibel und widerstandsfähig ist, da die Daten auf verschiedenen Wegen über mehrere Knoten zum Ziel gelangen können. Vermaschte Netze verlassen sich nicht auf wenige zentrale Knoten, sondern setzen auf möglichst viele redundante Pfade.
Die Protokolle ZigBee, Bluetooth LE und Thread haben Mesh-Funktionen.

IoT-Kommunikationsprotokolle

Die folgende Liste ist unvollständige und fast beliebig erweiterbar. Es handelt sich um die Protokolle, die in vielen IoT-Anwendungen verwendet werden.

  • TCP/IP
  • HTTPS
  • REST
  • MQTT
  • CoAP
  • AMQP
  • DDS
  • XMPP
  • OPC UA
  • LoRaWAN
  • Matter

TCP/IP

TCP/IP ist eine Protokollfamilie um in einem dezentralen Netzwerk Datenpakete netzübergreifend zwischen Hosts zu übertragen. In einer IoT-Architektur könnte man TCP/IP verwenden, allerdings geht das zu Lasten der Übertragungskapazität. Denn TCP/IP ist für ein großes Netzwerk ausgelegt, und hat einen vergleichsweise großen Overhead mit Verwaltungsdaten, die mit den Nutzdaten mitübertragen werden müssen. Wenn es nur darum geht, kurze Datensätze und Zustände zu übertragen, dann ist das ineffizient. Aus diesem Grund arbeiten einige IoT-Protokolle ohne TCP/IP. Dann ist allerdings eine IoT-Architektur mit einem IoT-Funksystem erforderlich, in dem ein Gateway oder ein Network Server den Übergang ins Internet bildet.

HTTP/HTTPS - Hypertext Transfer Protocol/Secure

HTTP bzw. HTTPS sind keine typischen IoT-Protokolle, sondern dienen eigentlich dazu im Internet Daten zwischen einem Client und Server nach dem Request/Response-Modell auszutauschen. Sofern die IoT-Architektur auf einem TCP/IP-Netzwerk basiert, ist HTTP oder HTTPS eine beliebte Lösung, weil man mit einem einfachen Webserver eine Gegenstelle bauen und mit jedem Webbrowser testen kann. Außerdem haben praktisch alle Programmiersprachen Funktionen, mit denen Programme als Server oder Client per HTTP kommunizieren können.

REST - Representational State Transfer

REST beschreibt die Interaktion zwischen Client und Server in verteilten Systemen und wird bei der Entwicklung von Webdiensten verwendet. REST wird oft in Kombination mit HTTP und HTTPS verwendet.
Auch REST ist kein typisches IoT-Protokoll, ist aber oft in Umgebungen zu finden, wo Maschinen miteinander kommunizieren.

MQTT - Message Queuing Telemetry Transport

MQTT ist ein Kommunikationsprotokoll, das nach dem Publish-Subscribe-Prinzip arbeitet. Es wurde ursprünglich von IBM entwickelt und ist mittlerweile ein offener Standard. Es wird typischerweise für die Übertragung von Nachrichten zwischen Geräten mit begrenzten Ressourcen im Internet of Things (IoT) verwendet.

CoAP - Constrained Application Protocol

CoAP ist ein speziell für das Internet of Things (IoT) entwickeltes Kommunikationsprotokoll. Es wurde entworfen, um in Umgebungen mit begrenzten Ressourcen energieeffizient zu arbeiten.

AMQP - Advanced Message Queuing Protocol

AMQP ist ein Protokoll für die asynchrone Nachrichtenübermittlung zwischen Anwendungen in einem verteilten System. Es gewährleistet eine zuverlässige, flexible und erweiterbare Kommunikation. Es definiert Regeln und Konventionen für den Nachrichtenaustausch, einschließlich der Nachrichtenstruktur, Warteschlangen und Austauschmechanismen.

DDS - Data Distribution Service

DDS ist ein Datenverteilungsprotokoll für echtzeitfähige Systeme und verteilte Anwendungen. Es definiert Datenmodelle, Dienste und Schnittstellen für den Austausch von Informationen in Echtzeit, wodurch sich DDS besonders für Anwendungen in den Bereichen Industrieautomation, autonomes Fahren und eingebettete Systeme eignet.

XMPP - Extensible Messaging and Presence Protocol

XMPP ist ein offenes, dezentrales Kommunikationsprotokoll, das ursprünglich für Instant Messaging entwickelt wurde. Es ist ein vielseitiges Protokoll für Echtzeitkommunikation und soziale Interaktion. Es ermöglicht den Austausch von Nachrichten, Präsenzinformationen, Dateien und mehr zwischen verschiedenen Endgeräten über das Internet. Darüber hinaus eignet es sich auch für die Kommunikation zwischen Geräten im Internet der Dinge (IoT).

OPC UA - Open Platform Communications Unified Architecture

OPC UA ist ein Kommunikationsprotokoll für die Maschine-zu-Maschine-Kommunikation. Für das Protokoll OPC UA gibt es auch eine IEC-Norm. OPC basiert zum Teil auf Microsofts DCOM-Spezifikation. Außerhalb der Windows-Welt existiert OPC UA eher nicht.
Die Spezifikationen sind nur den Mitgliedern der OPC Foundation vollständig zugänglich. Nur Teile davon sind als Open-Source auch Nicht-Mitgliedern zugänglich. Es gibt auch nur wenige OPC-Clients und -Server, weil deren Zertifizierung durch die OPC Foundation Geld kostet. Freie Software zu entwickeln und zertifizieren zu lassen ist bei Open-Source eher unüblich, weshalb man OPC UA eigentlich nur in der IT-fremden Automatisierungsbranche findet, wo die Zertifizierung von Systemen, Bauteilen und ganzer Anlagen sehr wichtig ist.
OPC wird dort eingesetzt, wo sich Sensoren, Regler und Steuerungen verschiedener Hersteller in einem gemeinsamen Netzwerk befinden und ein universelles Protokoll zum Verständigen benötigen.

LoRaWAN - Long Range Wide Area Network

LoRaWAN ist ein Kommunikationsprotokoll auf Basis der Funktechnik LoRa. Es ermöglicht eine energiesparsame Datenübertragung zwischen batteriebetriebenen IoT-Geräten und der Netzwerkinfrastrukturen.

Matter

Matter ist ein einheitlicher und lizenzfreier Smart-Home-Standard, der Geräte unterschiedlicher Hersteller miteinander verbindet. Als Kommunikationsprotokoll soll er eine plattformübergreifende Steuerung von Smart-Home-Komponenten ermöglichen.

Weitere IoT-Protokolle

  • MTConnect
  • Siemens S7

Weitere verwandte Themen:

Frag Elektronik-Kompendium.de

Kommunikationstechnik-Fibel

Alles was Sie über Kommunikationstechnik wissen müssen.

Die Kommunikationstechnik-Fibel ist ein Buch über die Grundlagen der Kommunikationstechnik, Übertragungstechnik, Netze, Funktechnik, Mobilfunk, Breitbandtechnik und Voice over IP.

Das will ich haben!

Artikel-Sammlungen zum Thema Kommunikationstechnik

Collection: Internet of Things

Was du über das Internet of Things wissen solltest.

eBook kaufen

Collection: Mobilfunk und 5G

Was du über Mobilfunk und 5G wissen solltest.

eBook herunterladen

Kommunikationstechnik-Fibel

Alles was Sie über Kommunikationstechnik wissen müssen.

Die Kommunikationstechnik-Fibel ist ein Buch über die Grundlagen der Kommunikationstechnik, Übertragungstechnik, Netze, Funktechnik, Mobilfunk, Breitbandtechnik und Voice over IP.

Das will ich haben!