Integration und Adaption bestehender Dienste, Anwendungen und Protokolle für mobile Ad-hoc-Netze
Final Report Abstract
Ganz grundlegend zeigen die im Projekt angewendeten und neu entwickelten Ansätze, wie den Herausforderungen der sich immer stärker diversifizierenden Kommunikationsnetze und -mechanismen begegnet werden kann. Adapt setzt dabei den Fokus auf den Dienst, den ein Protokollstack erbringt, statt wie heute auf die konkreten Protokolle, aus denen er besteht. Das erlaubt es, Protokolle flexibler einzusetzen und damit robuster gegenüber externen Randbedingungen zu machen, die heute noch aufwändige, manuelle Design- und Implementierungsanpassungen erfordern. Im Projekt wurde dazu eine Wissensbasis entwickelt, die allgemeine Kommunikationsdienste und ihre gegenseitigen Abhängigkeiten modelliert und darstellt. Neben der zentralen Rolle dieser Wissensbasis für Adapt selbst ist sie jedoch allgemeingültig und auch in anderen Projekten einsetzbar. Protokollkomposition. Ein wichtiger Beitrag zum aktuellen Stand der Forschung liefert Adapt im Bereich der Protokollkomposition durch die Serviceorientierung, die so bisher nicht existiert. Zum Einen erlaubt die Modellierung von abstrakten und konkreten Protokollelementen, einheitlich mit verschiedenen Abstraktionsgraden im Kompositionsprozess umzugehen. Dies ist insbesondere für die Entkopplung von allgemeinen Dienstanforderungen und spezifischen Implementierungsdetails wichtig. Zum Anderen ermöglicht das Modell es, bei der Protokollkomposition nicht nur lokale Anforderungen zu betrachten, sondern sie auch mit dem Kommunikationspartner zu koordinieren, was essentiell ist, um Kommunikation überhaupt zu ermöglichen. Entwicklerperspektive. Aus Entwicklersicht reduziert Adapt den Entwicklungsaufwand, Protokolle anzupassen oder neue Protokollvarianten zu erstellen, da Adapt diesen Vorgang stärker automatisiert. Konzeptionell wird dies vor allem durch die deutlich stärkere Trennung von Design-Intention und Protokollservice (also der gewünschten Funktionalitäten des Protokolls) und Implementierungsartefakten (der weniger starren Zusammensetzung aus mehreren Komponenten) eines Protokolls möglich. Somit können einzelne, kleine Komponenten zu einem maßgeschneiderten Service kombiniert werden, sowie solche Anpassungen nach dem Plug-In-Prinzip auch schneller dem Endanwender zur Verfügung gestellt werden. Anwendungsperspektive. Für Anwendungen bietet Adapt den Vorteil, mit wesentlich inhomogeneren Kommunikations- und Netzwerkbedingungen als bisher möglich umgehen zu können. Dazu referenzieren Anwendungen nicht mehr wie heute die konkrete Protokollkombinationen (z.B. HTTP-TCP-IP), die sie erwarten. Stattdessen beschreiben sie präzise die von ihnen benötigten Kommunikationsservices (z.B. Zuverlässigkeit, Verbindungsorientierung, und Vertraulichkeit), die dann nach Bedarf und Nutzungskontext durch unterschiedliche Protokollkomponenten bereit gestellt werden. Somit lassen sich Anwendungen leichter ohne Modifikationen unter verschiedenen Netzwerkbedingungen einsetzen und Protokollinnovationen können ebenso transparent nutzbar werden. Nutzerperspektive. Nicht zuletzt erleichtert Adapt dem Endanwender mit Hilfe seiner Geräte und Anwendungen zu kommunizieren. Vor allem verbergen die entwickelten Ansätzen die zunehmende Heterogenität von Netzen und Protokollen vor dem Nutzer. Zum Einen lassen sich Endsysteme so mit sehr viel weniger technischem Wissen und manuellem Administrationsaufwand in sehr unterschiedlichen Kommunikationsszenarien einsetzen (in denen dann z.B. WLAN-Optimierungen, Kompression, Verschlüsselung oder VPNs automatisch ausgewählt und aktiviert werden). Zum Anderen bleiben heute bereits existierende und dem Benutzer vertraute Anwendungen weiterhin nutzbar. Um solche Anwendungen nicht modifizieren zu müssen, kann eine Proxyschicht statt der Anwendung selbst die Anwendungsanforderungen an die serviceorientierte Kommunikationsarchitektur weitergeben und die erzeugten Protokollstacks der Anwendung zur Verfügung stellen. Die Projektergebnisse von Adapt legen neben den erreichten Zielen noch Forschungsbedarf in weiteren verwandten Gebieten nahe. Zum Einen hängt die erfolgreiche Kommunikation zweier Partner nach der Kompositionsphase auch von der Kompatibilität ihrer Protokollstacks ab. Diese Übereinstimmung durch eine direkte oder indirekte Koordination der Partner herzustellen, ist bisher ein Feld mit nur wenigen untersuchten Ansätzen. Zum Anderen stellen dynamische Anpassungen eines Protokollstacks noch eine Herausforderung dar, die mit heutigen Ansätzen effektiv eine Unterbrechung des Kommunikationsvorgangs erfordert und damit nur unbefriedigend gelöst ist. Hier wäre eine weniger strenge Synchronisation innerhalb so stark komponentisierter Protokollarchitekturen, wie sie in Adapt angenommen wurden, vorstellbar und ein für eine weniger disruptive Umkonfiguration viel versprechender Ansatz. Nicht zuletzt würde die generelle Unterstützung von dynamischen Anpassungen in Protokollstacks den praktischen Nutzen von Kommunikationslösungen wie Adapt noch verstärken. Die Umorientierung von der traditionellen Socket-API hin zu serviceorientierten Schnittstellen wird derzeit auch gerade in der IETF als Forschungs- und Entwicklungsthema aufgegriffen.
Publications
-
ADAPT: A Semantics-Oriented Protocol Architecture. In: Proceedings of the 3rd International Workshop on Self-Organizing Systems, IWSOS ’08, pages 287–292, Berlin, Heidelberg, 2008. Springer-Verlag
Stefan Götz, Christian Beckel, Tobias Heer, and Klaus Wehrle
-
A virtual platform for network experimentation. In: Proceedings of the 1st ACM workshop on Virtualized infrastructure systems and architectures, VISA ’09, pages 45–52, New York, NY, USA, 2009. ACM
Olaf Landsiedel, Georg Kunz, Stefan Götz, and Klaus Wehrle
-
Protocol Factory: Reuse for Network Experimentation. In: 6th USENIX Symposium on Networked Systems Design and Implementation (NSDI’09), Boston, MA, USA, April 2009
Georg Kunz, Olaf Landsiedel, Stefan Götz, and Klaus Wehrle
-
Protocol Factory: Reuse for Network Experimentation. In: NSDI 2009, 2009
Olaf Landsiedel, Stefan Götz, Georg Kunz, Klaus Wehrle
-
Protocol Orchestration: A Semantic Approach to Communication Stacks. In: MobiArch 2009, 2009
Stefan Götz, Tobias Heer, Klaus Wehrle