AESOP's TALE - Applying and Extending the Service-Oriented Paradigm to Sensor NeTwork AppLication Engineering

Eine Vielzahl technischer und algorithmischer Probleme in Sensornetzen wurde inzwischen umfassend gelöst, allerdings blieb ein wesentlicher Aspekt dabei weitestgehend unberücksichtigt. Die Programmierung einer Sensornetzanwendung kann heute ausschließlich von Senornetzexperten durchgeführt werden, weil die besonderen Randbedingungen (Ressourcenbeschränkungen, hohe Ausfallwahrscheinlichkeiten einzelner Geräte usw.) sehr spezielle Konzepte und Algorithmen erfordern. Ziel von AESOP'S TALE ist die Übertragung des Konzepts der Service Oriented Architecture (SOA) auf Sensornetzwerke. Eine SOA ist ein etablierter Ansatz, der die Entwicklung komplexer verteilter Anwendungen stark vereinfacht: Durch die schrittweise Komposition von selbstbeschreibenden Diensten (Services) entsteht ein immer komplexeres System, das schließlich die gewünschte Aufgabe erfüllt. Durch diese abstraktere Sicht wird die Sensornetztechnologie auch für Anwender wie Biologen oder Ingenieure nutzbar. Allerdings muss das Konzept der SOA hier grundlegend angepasst werden, weil einerseits die Ressourcenknappheit der Geräte andere Anforderungen an die Software stellt und andererseits ein Dienst wegen der inhärent hohen Ausfallwahrscheinlichkeit der Geräte redundant ausgelegt sein muss. Ein Dienst muss folglich seine physikalische Position im Sensornetzwerk dynamisch ändern können, und zwar ohne seinen aktuellen Zustand zu verlieren. Im Rahmen eines Selbstorganisationsprozesses muss das Sensornetzwerk durch Replikation und Migration von Daten und Diensten selbst dafür sorgen, dass alle Dienste stets verfügbar sind und dennoch die knappen Ressourcen im Sensornetzwerk nicht zu stark belastet werden.

Das IFIS Institut konzentriert sich innerhalb des Projektes insbesondere auf die folgenden Themenschwerpunkte:

XML: Gängige XML Tools können zur Zeit nicht im Umfeld von Sensorennetzwerken wegen ihres Speicherplatzbedarfes eingesetzt werden. Durch die Einbettung von XML und XML Anfragesprachen in gängige Programmiersprachen für Sensorennetzwerke sowie durch statische Programmanalysen wollen wir den Speicherplatzbedarf von XML so verringern, dass im Idealfall der XML Overhead ganz eliminiert wird und somit die Benutzung von XML in Sensorennetzwerken ermöglicht wird.

Kontinuierliche Anfragen: Anfragen an Sensornetze werden meist über einen bestimmten Zeitraum gestellt. Man spricht hierbei von kontinuierlichen Anfragen. Bei der Beantwortung kontinuierlicher Anfragen müssen die allgemeinen Rahmenbedingungen von Sensornetzen, wie z.B. beschränkte Übertragungsbandbreite, begrenzter Energievorrat sowie limitierte Speicher- und Rechenkapazität, berücksichtigt werden. Unser Ziel ist es, ein ressourcenoptimiertes XML-basiertes Anfragesystem zu entwickeln, welches dem Nutzer eine deklarative Anfrageschnittstelle zum Sensornetzwerk bietet und somit auch für Fachfremde einfach zu erlernen ist. Dabei bieten sich durch die Beschränkung der Anzahl an Antwortnachrichten pro kontinuierlicher Anfrage und die Nutzung von Indizes sowie Resultatzwischenspeicher (Caches) wichtige Möglichkeiten zur Energieeinsparung.

Redundanzinfrastruktur: Die zuverlässige Bereitstellung und Ausführung von Diensten im Sensornetz erfordert, dass ein logisch vorhandener Dienst den Ausfall eines physikalischen Knotens überlebt. Aus diesem Grund ist eine kontinuierliche Replikation der Dienste samt ihrer in benachbarte Knoten erforderlich. Ein Kriterium für die Auswahl des Knotens, auf den die Replikation erfolgen soll, ist die noch vorhandene Restenergie, aus der sich die noch zu erwartende Lebensdauer ergibt. Ein weiteres Kriterium ist die räumliche Entfernung der Knoten voneinander, da eine Replikation eines Dienstes auf einen sehr weit entfernten Knoten das Nachrichtenaufkommen unnötig stark erhöhen kann. Wir entwickeln in diesem Projekt eine möglichst effiziente, ressourcenschonende Redundanzinfrastruktur, die ein hohes Maß an Zuverlässigkeit garantieren kann.

Transaktionen: Transaktionen in Sensornetzen sind ein relativ neuer Forschungsbereich. Die ersten Anwendungen in Sensornetzen benötigten nur Funktionalitäten zum Abfragen und Sammeln von gemessenen Sensordaten, das konsistente Ändern von redundant gehaltenen Daten war nicht erforderlich.  Die Anwendungen in Sensornetzen werden jedoch komplexer und die Anforderungen an das Datenmanagement steigen. Mit dem Auffassen von Sensornetzen als Datenbanken und der Einführung einer Redundanzinfrastruktur entsteht analog zum Aufkommen von Datenbanksystemen in den 70'ern ein Bedarf am Transaktionsmodell. Dieses entwickeln wir hier speziell für ressourcenbeschränkte Sensornetze.

Migrierbare Web Services: Migrierbare Web Services vereinigen Ansätze von Service-orientierten Architekturen, mobilen Agenten und Grid-Computing. Da sie selbstorganisierende Prozesse unterstützen und neuartige Methoden zur Programmierung von Sensornetz-Anwendungen ermöglichen, werden wir das Konzept nun auf Sensornetzwerke übertragen. Somit wird es z.B. möglich sein, einen neuen Dienst zu programmieren und in ein existierendes Netz zu migrieren, ohne dass Änderungen der einzelnen Sensorknoten erforderlich sind. Der Dienst wiederum kann selbstorganisierend entscheiden, auf welchen Knoten er ausgeführt werden möchte, um seine Funktionalität zu erbringen und Ressourcenproblemen im Netz auszuweichen.

Projektpartner

Die Projektpartner sind die Institute IFIS und ITM der Universtät zu Lübeck.

Projektleiter im IFIS

Prof. Dr. rer. nat. Volker Linnemann

Projektkoordinator im IFIS

Dr. rer. nat. Sven Groppe

Wissenschaftliche Mitarbeiter

Dipl.-Inf. Jana Neumann

Dipl.-Inf. Nils Höller (Berater)

Dipl.-Inf. Christoph Reinke (Berater)

Verweise 

AESOP'S TALE Homepage