Fog-Computing

IoT, das Internet of Things, verändert IT-Landschaften weltweit, und wird schon als Schlüsseltechnologie vieler Zukunftsprojekte gesehen. Doch die klassische IoT-Architektur, wobei Daten zentral zusammengeführt und verarbeitet werden, lässt sich unter anderem aus Bandbreitenlimitationen nicht unendlich skalieren. Im Rahmen des Fog-Computings werden Lösungsansätze für solche Probleme bei der Umsetzung von IoT entwickelt.

IONOS Cloud Compute Engine

Mittelständische und große Unternehmen wählen die Cloud Made in Germany. IaaS und PaaS vom Hidden Champion für Hidden Champions.

Sicher
Zuverlässig
Flexibel

Was ist Fog-Computing? Eine Definition

Als „Fog-Computing“ bezeichnet man eine Cloud-Technologie, bei der durch Endgeräte generierte Daten nicht direkt in die Cloud geladen, sondern zunächst in dezentralen Minirechenzentren (sogenannte „Fog Nodes“) vorverarbeitet werden. Das Konzept umfasst eine Netzwerkstruktur, die sich von den äußeren Rändern des Netzwerks, wo Daten von IoT-Geräten erzeugt werden, bis hin zum zentralen Datenendpunkt in der Public Cloud oder in einem privaten Rechenzentrum (Private Cloud) erstreckt.

Ziel des sogenannten „Foggings“ ist es, Kommunikationswege zu verkürzen und den Datendurchsatz über Fremdnetze zu reduzieren. Fog-Nodes bilden dabei eine Zwischenschicht im Netzwerk, auf der entschieden wird, welche Daten lokal verarbeitet und welche zur weiteren Analyse oder Verarbeitung in die Cloud oder ein zentrales Rechenzentrum weitergeleitet werden.

Folgende Grafik zeigt eine schematische Darstellung der drei Schichten (Layer) einer Fog-Computing-Architektur:

Schematische Darstellung einer IoT-Architektur mit Egde-, Fog- und Cloud-Ebene
Beim Fog-Computing werden Ressourcen zur Datenspeicherung und -vorverarbeitung aus der Public Cloud oder einem zentralen Rechenzentrum ausgelagert und durch Fog-Nodes auf einer Zwischenschicht dezentral im Netzwerk bereitgestellt.
  • Edge-Layer: Der Edge-Layer umfasst alle „intelligenten“ Geräte (Edge-Devices) einer IoT-Architektur. Auf dem Edge-Layer generierte Daten werden entweder direkt am Gerät verarbeitet oder an einen Server (Fog-Node) auf dem Fog-Layer übermittelt.
  • Fog-Layer: Der Fog-Layer umfasst eine Reihe leistungsstarker Server, die Daten vom Edge-Layer entgegennehmen, vorverarbeiten und bei Bedarf in die Cloud hochladen.
  • Cloud-Layer: Der Cloud-Layer ist der zentrale Daten-Endpunkt einer Fog-Computing-Architektur.

Eine Referenzarchitektur für Fog-Systeme wurde im Rahmen des OpenFog Consortiums (jetzt Industry IoT Consortium (IIC)) entwickelt. Weitere White Papers finden Sie auf der Webseite des IIC.

Abgrenzung zum Cloud-Computing

Von Cloud-Computing grenzt sich Fog-Computing vor allem dadurch ab, an welchem Ort Ressourcen bereitgestellt und Daten verarbeitet werden. Cloud-Computing findet in der Regel in zentralisierten Rechenzentren statt. Ressourcen wie Rechenleistung und Speicher werden von Backend-Servern gebündelt zur Verfügung gestellt und von Clients über das Netzwerk in Anspruch genommen. Dabei verläuft die Kommunikation zwischen zwei oder mehr Endgeräten stets über einen Server im Hintergrund.

An ihre Grenzen kommt eine solche Architektur bei Konzepten wie der „intelligenten Fabrik“, bei der Daten kontinuierlich zwischen unzähligen Endgeräten ausgetauscht werden müssen. Fog-Computing setzt hier auf eine Zwischenverarbeitung nah an der Datenquelle, um den Datendurchsatz zum Rechenzentrum zu reduzieren.

Abgrenzung zum Edge-Computing

Nicht nur der Datendurchsatz bei groß angelegten IoT-Architekturen bringt das Cloud-Computing an seine Grenzen. Ein weiteres Problem ist die Latenz. Die zentralisierte Datenverarbeitung ist in jedem Fall durch die langen Übertragungswege mit einer Zeitverzögerung verbunden. Endgeräte und Sensoren müssen stets den Server im Rechenzentrum ansprechen, um miteinander zu kommunizieren, und sowohl die externe Verarbeitung der Anfrage als auch die Antwort abwarten. Zum Problem werden Latenzzeiten dieser Art beispielsweise bei IoT-gestützten Fertigungsprozessen, bei denen eine Informationsverarbeitung in Echtzeit sichergestellt werden muss, damit Maschinen unmittelbar auf Vorfälle reagieren können.

Einen Lösungsansatz für das Latenzproblem bietet Edge-Computing, ein Konzept im Rahmen des Fog-Computings, bei dem die Datenverarbeitung nicht nur dezentralisiert wird, sondern direkt im Endgerät und damit am Rand („Edge“) des Netzwerks erfolgt. Dabei wird jedes „intelligente Gerät“ mit einem eigenen Micro-Controller ausgestattet, der eine grundlegende Datenverarbeitung sowie die Kommunikation mit anderen Geräten und Sensoren im IoT ermöglicht. Dies reduziert nicht nur die Latenz, sondern auch den Datendurchsatz an dem zentralen Rechenzentrum.

Fog-Computing und Edge-Computing hängen sehr eng zusammen, aber sind nicht gleich. Der entscheidende Unterschied ist, wo bzw. zu welchem Zeitpunkt die Daten verarbeitet werden. Bei Edge-Computing werden die generierten Daten direkt an der Quelle verarbeitet und meistens direkt weitergeschickt. Dahingegen werden beim Fog-Computing die Rohdaten aus mehreren Quellen in einem Zwischen-Rechenzentrum gesammelt und verarbeitet. Daraus erwächst die Möglichkeit, nichtrelevante Daten bzw. Ergebnisse nicht an das zentrale Rechenzentrum weiterzuleiten. Ob Edge- oder Fog-Computing (oder eine Kombination der beiden) die bessere Lösung ist, hängt also sehr stark von dem individuellen Einsatzbereich ab.

Vorteile von Fog-Computing

Fog-Computing bietet Lösungsansätze für diverse Probleme cloudbasierter IT-Infrastrukturen. Im Vordergrund stehen Ansätze, die kurze Kommunikationswege versprechen und den Upload in die Cloud auf ein Minimum beschränken. Hier eine Liste der wichtigsten Vorteile:

  1. Weniger Netzwerk-Traffic: Fog-Computing reduziert den Traffic zwischen IoT-Geräten und der Cloud.
  2. Kostenersparnis bei der Nutzung von Fremdnetzen: Netzbetreibende lassen sich den schnellen Upload in die Cloud teuer bezahlen – Kosten, die man durch Fog-Computing einsparen kann.
  3. Offline-Verfügbarkeit: IoT-Geräte stehen in einer Fog-Computing-Architektur auch offline zur Verfügung.
  4. Geringere Latenz: Fog-Computing verkürzt Kommunikationswege und führt somit zu einer Beschleunigung automatisierter Analyse- und Entscheidungsprozesse.
  5. Datensicherheit: Beim Fogging erfolgt die Vorverarbeitung von Gerätedaten oft schon im lokalen Netzwerk. Dies ermöglicht eine Implementierung, bei der sensible Daten im Unternehmen verbleiben oder vor dem Upload in die Cloud verschlüsselt oder anonymisiert werden können.

Nachteile von Fog-Computing

Die dezentrale Verarbeitung in Minirechenzentren birgt jedoch auch Nachteile. Diese ergeben sich vor allem aus dem Aufwand für die Wartung und Administration eines verteilten Systems. Die Nachteile von Fog-Computing-Systemen sind:

  1. Höhere Hardware-Kosten: IoT-Endgeräte und Sensoren in der Fog-Computing-Architektur müssen mit einer zusätzlichen Recheneinheit ausgestattet werden, um eine lokale Datenverarbeitung und die Kommunikation von Gerät zu Gerät bewerkstelligen zu können.
  2. Steigender Wartungsbedarf: Eine dezentrale Datenverarbeitung ist mit einem höheren Wartungsaufwand verbunden. Der Grund dafür: Verarbeitungs- und Speicherelemente sind über das ganze Netzwerk verteilt und können anders als bei Cloud-Lösungen nicht zentral gewartet oder administriert werden.
  3. Zusätzliche Anforderungen an die Netzwerksicherheit: Fog-Computing ist anfällig für Man-in-the-Middle-Angriffe.