create mobile friendly website
Internet der Dinge

Ein Blick auf das Internet der Dinge

Schöne neue vernetzte Welt

Das Internet der Dinge („Internet of Things“ – kurz IoT) ist zur Zeit in aller Munde und man stellt sich wie so oft die Frage, ob es sich dabei nur um eine weitere vorübergehende Modeerscheinung handelt oder ob wir uns damit in Zukunft ernsthaft auseinandersetzen müssen. Laut Gartner befinden wir uns gerade auf dem Höhepunkt des Hypes. Bei genauerem Hin­sehen entpuppt sich das IoT als eine Folgeerscheinung, die durch die konsequente Weiterent­wicklung bestimmter Technologien ermöglicht wird. Der folgende Artikel soll dies ein wenig genauer beleuchten und erklären, welche Ideen dem IoT zugrunde liegen und welche Folgen wir zu erwarten haben.

Begriff

Der Begriff Internet of Things ist gar nicht so neu. Er tauchte bereits in den 90er Jahren im Zusammenhang mit Über­legungen zum Aufbau von RFID-Netzwerken auf. Schon damals stand die Idee im Mittelpunkt, Gegenstände elektronisch zu erfassen und miteinander zu vernetzen.

Im heutigen Sprachgebrauch verbindet man damit konkret die Vernetzung der alltäglichen Dinge unseres Lebens, insbesondere deren Integration in die bereits bestehenden Infrastrukturen, allen voran das Internet. Dies ist nur die konsequente Umsetzung und Weiterführung des Vorgehens, wie wir es in jüngster Vergangenheit bei Smartphones und Tablets beobachten konnten.

Das Szenario des „Ubiquitious Computing“, der allgegen­wärtigen und computergestützten Informationsverarbeitung in unserem alltäglichen Leben, wird damit immer mehr Realität.

Die Zukunft des IoT sieht aber weit über das bloße Vernetzen von Dingen hinausgehende Fähigkeiten vor (siehe Abbildung 1). So sollen die Daten nicht nur ausgetauscht, sondern auch analysiert und mit einer Semantik versehen werden, die dann ihrerseits zur konkreten Entscheidungsfindung heran­gezogen werden kann und automatisierte Aktionen aus­lösen soll.

Technologie

Ermöglicht wird das IoT im Wesentlichen durch techno­logische Fortschritte in den Bereichen, die auch bisher als die üblichen Verdächtigen galten. Die Miniaturisierung in Verbindung mit der Entwicklung von energiesparender Hardware und entsprechenden Funktechnologien wie z.B. Bluetooth Low Energy sind hier der entscheidende Treiber.

Hinzu kommen effiziente Produktionsprozesse, die sehr leistungsfähige Hardware extrem günstig herstellbar machen. So sind neben den eigentlichen rechnenden Einheiten wie z.B. Microcontroller auch relativ komplizierte Sensoren wie z.B. für GPS, Luftdruck, Neigung oder Beschleunigung sehr kostengünstig verfügbar (Beispiel siehe Abbildung 2, Preis ca. 4 Euro). Gerade dieser letzte Aspekt trägt dazu bei, dass sich in letzter Zeit eine florierende Crowdfounding- und Maker-Szene ent­wickelt hat, die mit ihren kreativen Ideen diese Entwicklung noch weiter beschleunigt.

Anwendungsszenarien

Der jüngste Trend der Smartwatches und Fitness-Tracker ist vielleicht eins der bekannteren Beispiele für eine Ausprägung des IoT. Auf einer mit dem Smartphone vernetzten Armbanduhr werden Informationen zu E-Mails und sonstigen Ereignissen angezeigt. Fitnessarmbänder messen die Herzfrequenz und überwachen die Schlaf­phasen seines Trägers, um die Daten zu liefern, die andere Geräte zur Analyse und Visualisierung des Fitness­zustandes benötigen (siehe Abbildung 3).

Aber auch im eigenen Heim nimmt des IoT bereits Formen an. Elektrogeräte weit über die Entertainment-Kompo­nenten hinaus, wie z.B. Kühlschränke und Waschma­schinen bekommen Netzwerkschnittstellen. Heizung, Licht und Rollladen lassen sich fernsteuern und eine Einbruch­überwachung mit Notruf ist ebenfalls keine Zukunftsvision mehr. Ähnliches gilt für die intelligenten Brandmelder, die untereinander vernetzt und mit einer Brandmeldezentrale verbunden sind. Welche Bedeutung diesem Thema zugemessen wird, kann man unter anderem daran erkennen, dass Google vor kurzem für über drei Milliarden Dollar Nest Labs, eine auf Thermostate und Brandmelder spezialisierte Firma, übernommen hat.

Auch des Deutschen liebstes Kind, das Automobil ist längst im Fokus des IoT. Die Integration von Informations- und Entertainmentsystemen schreitet immer weiter voran. Der Sensorik kommt im Automobil prinzipiell eine hohe Bedeutung zu, schließlich müssen Fahrerassistenzsysteme überwacht und gesteuert werden. Der Schritt zum autonom fahrenden Fahrzeug ist nicht mehr weit. Navigationssysteme liefern ebenfalls eine Vielzahl von Daten. Diese können neben der Wegbestimmung im Falle eines Unfalls z.B. zusammen mit den Airbag-Daten dazu genutzt werden, einen Notruf auszulösen und einen Rettungshubschrauber zum Unfallort zu leiten.

Potenzial

Aus den vorgestellten Anwendungsszenarien wird das enorme Poten­zial des IoT deutlich. Es ist damit zu rechnen, dass durch die zunehmende Anzahl auch kleinster vernetzter Geräte das weltweit anfallende Datenvolumen noch einmal deutlich steigen wird. Juniper Research rechnet einer Studie nach bis 2020 mit weltweit 50 Milliarden vernetzten Geräten je­glicher Art. Das stellt die IT, welche die anfallenden Daten­ speichern und verarbeiten soll vor große Herausforderungen und wird enorme Anstrengungen für die Weiter­entwicklung z.B. in den Bereichen Mobile- und Cloud-Computing benötigen. Das haben auch viele Firmen erkannt und versuchen sich zurzeit entsprechend zu positionieren.

Einer der wichtigsten Aspekte dabei wird die Gewinnung und Kontrolle der anfallenden Daten sein. Denn nur der, der Zugriff auf die Daten besitzt, kann sie analysieren und daraus die richtigen Schlüsse ziehen. Hier wird es im IoT nicht anders sein, als heute bereits in den sozialen Netzwerken. Vereinfacht gesagt ist das Unternehmen im Vorteil, welches die Bestellung für die Nachlieferung bekommt, wenn der intelligente Kühlschrank meldet, dass die Milch aus ist.

Risiken

An dieser Stelle werden auch die Risiken deutlich. Was passiert, wenn die Alarmanlage meines Hauses durch einen Hackerangriff von außen lahmgelegt wird? Bekomme ich noch eine Lebensversicherung, wenn die Daten meines Fitnesstrackers in die Hände der Versicherung gelangen und ein gesundheitliches Problem offenbaren? Möchte ich durch den für die Zukunft angedachten Fahrten­schreiber (Blackbox für Unfallauswertung) in meinem Auto prinzipiell verfolgbar oder ortbar sein?

Diese Fragen zeigen, dass wir es beim IoT nicht nur mit technischen Problemen zu tun haben werden. Das IoT wird mehr als alles bisher Dagewesene, tief in unser privates Leben eindringen und es beeinflussen. Wir werden nicht um die Klärung der damit verbundenen sozialen und rechtlichen Frage­stellungen herumkommen. Dem Datenschutz wird zukünftig eine noch wichtigere Rolle als bislang zukommen müssen.

Anforderungen und Randbedingungen

In der Kenntnis, dass die Vision des IoT natürlich weit­reichendere Ziele als nur die Vernetzung hat, wollen wir uns aber zunächst auf diese beschränken, da die Vernetzung quasi den Grundstein für die Funktionsfähigkeit legt. Aus der technischen Sicht betrachtet ist dementsprechend zu klären, auf welcher Basis ein IoT aufgebaut sein könnte. Dazu stellt ein Softwarearchitekt in der Regel die Frage nach den Anforderungen (funktionale und nicht-funk­tionale), sowie nach den Randbedingungen und sonstigen Einflussfaktoren, um daraus eine passende Architektur zu entwickeln. Schauen wir uns im Folgenden also einige Anforderungen an:

Zunächst ist klar, dass wir es in der Problemdomäne mit verteilten Systemen (distributed systems) zu tun haben. Zur Verdeutlichung: Wir wollen eine große Anzahl an sehr unterschiedlichen (heterogenen) Systemen miteinander Daten austauschen lassen. Dabei handelt es sich fast ausschließlich um M2M-Kommunikation (machine to machine), also um ein klassisches Integrationsszenario.

Bezüglich der zu vernetzenden Systeme oder Geräte können folgende Annahmen gemacht werden:

  • Ein Gerät kann sowohl Datenproduzent als auch Datenkonsument sein.
  • Die Geräte sind u.U. extrem beschränkt bzgl. ihrer Ressourcen (Rechenleistung, Speicher, ...), z.B. Sensoren.
  • Die Netze, in denen sich die Geräte befinden, haben u.U. sehr beschränkte Bandbreiten (seriell, ISDN, mobile Verbindungen, ...).
  • Aufgrund der begrenzten Stabilität der Netze sind die Geräte u.U. nicht ständig erreichbar (z.B. mobile Verbindungen).
  • Das Netz soll skalierbar sein, d.h. zusätzliche Geräte sollen einfach hinzuzufügen sein.

Architektur

Natürlich sind die Probleme aus dem Bereich der verteilten Systeme nicht grundsätzlich neu. Es gibt viele Parallelen zu Systemen, die in der Vergangenheit mit erprobten Lösungsmustern umgesetzt wurden. Man spricht über­greifend von nachrichtenbasierten Systemen (message oriented systems), denen gemein ist, dass sie die Kommunikation zwischen den Systemen auf den Austausch abstrakter Nachrichtenobjekte herunterbrechen.

Zwei Aspekte spielen dabei eine zentrale Rolle. Das ist zum einen der interne Status der einzelnen Systeme, über den andere Systeme Informationen benötigen. Zum anderen sind die Kommunikationsmuster von entscheidender Bedeutung, da sie die Topologie des Netzes mitbestimmen und Einfluss auf die konkreten Kommunikationsmechanismen und -aufwände haben.

Zur Lösung der Statusproblematik wird oft ein „Publish-Subscribe“-Muster angewandt. Dies ist mit einem Abonnement-Modell vergleichbar. Ein System A, das Statusinformationen von einem anderen System B benötigt, abonniert einfach dessen Status. System A registriert (subscribe) ein Interesse an den Statusänderungen von System B. Ändert sich in System B jetzt tatsächlich der Status, veröffentlicht (publish) System B diesen und alle Abonnenten (Subscriber) werden darüber benachrichtigt.

Ein Architekturpattern, das den zweiten Aspekt der Kommunikationsmuster adressiert und sehr häufig eingesetzt wird, ist der Broker (Vermittler). Er macht die Kommunikation für die beteiligten Systeme transparent und abstrahiert von den konkreten Implementierungen des Nachrichtenaustausches. Er sorgt dafür, dass nicht jedes System alle anderen kennen muss. Dadurch verhindert es ausufernde Kommunikationsaufwände und reduziert die Abhängigkeiten zwischen den Systemen, was bei Punkt-zu-Punkt-Verbindungen häufig zu Problemen führt.

Der Verzicht auf eine synchrone Request-Response-Kommunikation führt in diesem Fall zu einer ereignisorientierten, asynchronen Kommunikation. Die einzelnen beteiligten Systeme kennen sich nicht direkt und wenden sich immer an den Broker (z.B. für die „Publish-Subscribe“-Aktionen, siehe Abbildung 4), während der Broker den Nachrichtenaustausch zwischen den Systemen vermittelt. Der Broker ist in Kenntnis aller beteiligten Systeme und bildet die zentrale Vermittlungsstelle, was ihn gleichzeitig zu einem potenziellen Problem (single point of failure) macht. Fällt er aus, bricht das Gesamtsystem zusammen. Um dies zu verhindern, werden Broker meist so implementiert, dass sie horizontal skalierbar werden. Dies bedeutet, dass sich in der Regel mehrere Instanzen eines Brokers in einem Gesamtsystem befinden, die sich gegenseitig synchronisieren. So ist gewährleistet, dass beim Ausfall eines Brokers eine andere Instanz dessen Aufgaben übernehmen kann.

Beispiel MQTT

Das IoT kränkelt zurzeit noch an vielen verschiedenen, untereinander inkompatiblen Standards. Hier existiert geradezu ein Zoo von Protokollen, die unterschiedliche Aspekte adressieren. Mit MQTT (Message Queue Telemetry Transport) existiert allerdings ein Protokoll, das bereits 2013 bei der OASIS zur Standardisierung eingereicht wurde und dessen Verabschiedung noch für 2014 vorge­sehen war. MQTT wurde bereits Ende der 90er Jahre von den Firmen IBM und Eurotech im Zusammenhang mit einem Projekt zur Überwachung einer Öl-Pipeline entwickelt. Es wurde unter einer freien Lizenz veröffentlicht und Eurotech hat seine API-Implementierung der Eclipse Foundation zur Verfügung gestellt, woraus das Eclipse-Paho-Projekt [1] entstanden ist. Auch für den dazuge­hörigen Broker existieren bereits Implementierungen - wie z.B. HiveMQ [2].

MQTT ist ein reines Transport-Protokoll und besitzt keinerlei Semantik, welche die speziellen Anwendungen im IoT unter­stützt. Mit seinen spezifischen Mechanismen ist es aber extrem gut für die Bedingungen des IoT aufgestellt. Es implementiert die o.g. Muster und zeichnet sich weiter u.a. durch folgende Merkmale aus:

Quality of Service (QoS)

MQTT setzt auf dem TCP-Protokoll auf und bietet von daher bereits recht zuverlässige Verbindungen. Das ist jedoch z.B. für naturgemäß instabile Mobilfunkverbindungen nicht ausreichend. Deshalb werden zusätzliche Garantien für die Nachrichtenzustellung definiert. So können die Teilnehmer festlegen, ob versendete Nachrichten höchstens einmal, genau einmal oder mindestens einmal zugestellt werden. Für den Fall von Verbindungsausfällen sorgt das Protokoll mit inhärenten Persistierungsmechanismen dafür, dass keine Nachrichten verloren gehen können.

Last will and testament / Retained message

Zusätzlich zu den QoS-Leveln können weitere Maßnahmen getroffen werden, die sich auf unerwartete Verbindungsabbrüche beziehen. So kann ein Client bei der Verbindung mit einem Broker eine Nachricht beim Broker hinterlegen, welche dieser versendet, sobald er bemerkt, dass die Verbindung zum Client abgebrochen ist (Last will and testament). Des Weiteren kann ein Datenproduzent (Publisher) beim Broker eine Nachricht hinterlegen, die ein neuer Datenkonsument (Subscriber) erhält, sobald beim Verbinden des Subscriber die Verbindung zum Publisher abgebrochen ist (Retained message).

Topic-Adressierung

Das Senden (publish) und Empfangen (subscribe) von Daten wird über sogenannte Topics geregelt. So könnte der Temperatursensor im Wohnzimmer eines Hauses seine Daten über das Topic /Haus/Wohnzimmer/Temperatur bereitstellen. Für die Küche wäre dies analog das Topic /Haus/Kueche/Temperatur. Wenn wir davon ausgehen, dass jeder Raum auch noch Sensoren für die Luftfeuchtigkeit und den Zustand des Lichtschalters bereitstellt, können alle Daten des Schlafzimmers über das Topic /Haus/Schlafzimmer/# abonniert werden. Neben dem Platzhalter „#“, der nur am Ende eines Topic stehen darf, existiert noch ein Platzhalter „+“. Mittels /Haus/+/Licht können alle Lichtschaltersensoren des gesamten Hauses abonniert werden. Für MQTT existieren APIs für die wichtigsten Sprachen wie C/C++, Java oder JavaScript. Das Protokoll wird bereits produktiv genutzt und skaliert auch bei mehreren tausend Geräten noch ausreichend gut. Ein weiterer Vorteil sind die geringen Ressourcenanforderungen, die MQTT an die jeweiligen Clients stellt.

Fazit

Das IoT wird eine nochmalige Steigerung des Datenaufkommens bedeuten und für begleitende Paradigmen wie Mobile- und Cloud-Computing einen weiteren Schub bewirken. Technisch wird sich wahrscheinlich ein Trend verstärken, der schon seit einiger Zeit zu beobachten ist. Hier spielen leichtgewichtige Systeme, die sehr gut horizontal skalieren eine große Rolle. Dies bedeutet, dass wir uns zunehmend mit sehr reaktiven, asynchronen Programmiermodellen beschäftigen werden müssen. Der Hype um das „Internet of Things“ ist auf seinem Höhepunkt. Das bedeutet aber auch, dass es noch einige Zeit dauern wird, bis mit produktionsreifen standardisierten Produkten zu rechnen ist. Aber auch zum jetzigen Zeitpunkt existieren bereits Ansätze, mit denen Teilaspekte des IoT in ausreichender Qualität realisiert werden können.

Das IoT wird nicht aufzuhalten sein. Die IT wird noch weiter in alle Lebensbereiche vordringen, was nicht nur technische, sondern auch soziale und rechtliche Probleme verursachen wird. Spannend bleibt die Frage, wie wir damit umgehen werden.

Insbesondere die Frage nach der Nutzung und Verwertung der anfallenden Daten könnte uns dazu zwingen, unseren Umgang damit grundsätzlich zu überdenken. Es wird sich zeigen, ob evtl. Ideen wie die des amerikanischen Informatikers und diesjährigen Trägers des Friedenspreises des Deutschen Buchhandels Jaron Lanier hoffähig werden. Er plädiert dafür, Daten zu einem Handelsgut zu deklarieren, wonach sich private Nutzer für die Zurverfügungstellung ihrer Daten entlohnen lassen sollen. Dass sich diesbezüglich etwas bewegen muss, scheint unstrittig. Ob die Zeit bereits reif für alternative Ansätze wie die Laniers ist, wird sich allerdings erst noch zeigen müssen.

Andreas Flügge
()

ORDIX aktuell

ORDIX sucht Nachwuchs auf der hobit 2017
Mit der hobit 2017 hat die ORDIX AG vom 24. bis 26.01.2017 das erste Mal an der Darmstädter Ausbildungsmesse teilgenomme...
Weiterlesen ...
Lesestoff zum Weihnachtsfest: ORDIX®   news 2/2016
​Die aktuelle ORDIX® news 2/2016 hält zum Ende des Jahres wieder interessante Artikel rund um die IT bereit. Ob Big Data...
Weiterlesen ...
ORDIX auf der DOAG Konferenz und beim Schulungstag
Gefüllte Zuhörerplätze bei unseren Vorträgen und höchste Teilnehmerzahlen beim Schulungstag zeugen vom Erfolg und der Be...
Weiterlesen ...

Kostenloses Kundenmagazin

Abbildungen

Die vollständigen Artikel mit allen Abbildungen finden Sie im blätterbaren PDF.
Eine Übersicht über alle Artikel sowie das PDF zum Download finden Sie im Inhaltsverzeichnis.

Impressum

Impressum der ORDIX® news 1/2015

Links

[1] Webseite des Eclipse-Projektes „Paho“
[2] Webseite von HiveMQ
[3] Webseite der Object Systems GmbH

Quellen

[1] Gartner
[2] Juniper Research

Bildnachweis

© freepik.com | Technology background with planet
© vectoropenstock.com | Computer functions circle icons