1 Einführung

1.1 Motivation

Der Einsatz leistungsfähiger mobiler Endgeräte - Mobiltelefone, persönlicher digitaler Assistenten (PDAs) oder Notebooks - im Alltag bietet unzählige neue Möglichkeiten. Neben ihrer originären Aufgabe will Heywow1 ein Kommunikations- und Navigationssystem basierend auf mobilen Handcomputern anbieten [ARS2000a] und mit ihnen z.B. die Reiseplanung unterstützen. Eine detailliertere Beschreibung von Heywow findet sich in Abschnitt 2.4.

Für einen umfassenden, persönlichen Reiseassistenten ist neben dem Angebot zentraler Dienste auch der Zugriff auf lokale Dienstgeber in Gebäuden, U-Bahnstationen oder z.B. Flughäfen nötig. Die lokalen Dienste ermöglichen eine zielgenaue Navigation und den Zugriff auf zusätzliche lokale Dienstleistungen, von Kauf bis Fahrplanauskunft. Die lokalitätsabhängigen Dienste können in Kombination mit dem direkten Zugriff auf Termine und Daten der Benutzer eine personalisierte Dienstleistung erbringen.

Architekturen für den Einsatz zentraler Dienstgeber sind heute bereits durch die Entwicklung im Festnetz bekannt und erprobt. Auch der Zugriff von mobilen Endgeräten ist in der Kommunikation üblich. Aus Benutzersicht ist es irrelevant, ob der Dienst von einem zentralen Dienstgeber oder lokal erbracht wird. Für den Dienstnehmer muss ein transparenter Zugriff auf beliebige Dienstleistungen mit dem mobilen Handcomputer möglich werden. Diese Anforderung ist besonders relevant, weil das Endgerät in Heywow kein bisher üblicher autonomer Handcomputer mit eigenständigen Applikationen ist. Die Dienstleistung für den Benutzer kann durch die direkte Interaktion des Dienstnehmers (Handcomputer) mit dem Dienstgeber erbracht werden. Hier bieten lokale Dienste inhärent die zusätzliche Ortsinformation ohne Notwendigkeit zusätzlicher Kommunikation.

Die Mobilität der verwendeten Handcomputer und die geringen Reichweiten bei der Funkverbindung zwischen Handgeräten und lokalen Kommunikationsstationen stellt besondere Anforderungen an das verwendete Netzwerk und die angebotenen Dienstleistungen. Solange ein Dienstgeber in funkweiter Entfernung zu erreichen ist, muss der Dienst eine Garantie für den Zugriff auf seine Leistung geben können. Wenn solche Garantien nicht vorhanden sind, darf der Handcomputer dem Benutzer die Dienstleistung nicht länger anbieten.

Der Einsatz von mobilen, batteriebetriebenen Geräten erfordert von den Diensten einen stromsparenden Betrieb auf dem Handcomputer. Dienste müssen dort besonders den stromintensiven Funksendebetrieb reduzieren. Durch die Verwendung offener Standards muss der Einsatz zukünftiger, vielleicht energiesparenderer Hardware-Entwicklungen möglich sein.

So ist auch die Anforderung an den Betrieb mit sehr unterschiedlichen Systemkomponenten zu beachten. Zwischen den verschiedenen Teilnehmern muss bei der Kommunikation die Sicherheit und Vertraulichkeit privater Daten garantiert werden können.

Da heute leider noch nicht der gesamte Funktionsumfang von zukünftigen lokal und zentral angebotenen Diensten fest bestimmt werden kann, muss ein möglichst offener Systemansatz gewählt werden, über den alle erdenklichen Anwendungen verfügbar gemacht werden können.

1.2 Zielsetzung

In dieser Arbeit wird das von Heywow benötigte Rahmensystem für lokale Dienstangebote modelliert.

Es wird eine Infrastruktur entworfen, die die Entwicklung von Diensten und Programmen für die Benutzung lokalitätsabhängiger Dienstleistungen ermöglicht.

Die Implementierung ist 100% pures Java, und mit der Verwendung von Jini als Basistechnologie kann das Rahmensystem auf einer beliebigen lokalen IP-Netzinfrastruktur aufbauen. Die konsequente Verwendung des Jini-Dienste-Entwurfsmusters ermöglicht eine transparente Integration auch globaler Dienstleistungen in das lokale System von Heywow.

Durch Erweiterung der Jini-Protokolle um eine zusätzliche Kommunikation über IP-Multicast können auf dem mobilen Handcomputer energiesparende Anwendungen, die Daten nur empfangen und nicht senden müssen, eingesetzt werden.

1.3 Verwandte Arbeiten

Die weitere Verbreitung von mobilen Handcomputern im Alltag und der Wunsch nach allgegenwärtigem Rechnen (Ubiquitous Computing), der Möglichkeit an jedem Ort auf IT-Dienstleistungen und eine personalisierte Systemumgebung zugreifen zu können, fördert die Entwicklung von System-Architekturen, die dies unterstützen.

Im Folgenden wird ein knapper überblick und Vergleich mit bereits existierenden oder geplanten Systemen gegeben:

Im Rahmen eines Projekts an der Universität Saarbrücken, IRREAL2, wurde ein Gebäude-Informations- und Navigationssystem entworfen. Durch die Installation leistungsstarker Infrarotsender können lokal Informationen gesendet werden [BBK2000]. Diese werden über die IrDA-Schnittstelle handelsüblicher PDAs empfangen und verarbeitet. Derzeit wird ein System, basierend auf IRREAL, von der Firma eyeled3 unter dem Namen Redboard für den Einsatz in großen Gebäudekomplexen vertrieben.

Erst mit der Entwicklung eines speziellen übertragunsprotokolls wird, trotz des geringen Datendurchsatzes über Infrarot, mit leistungsstarken Sendern eine eindirektionale Kommunikation zu mehr als einem mobilen Handcomputer möglich. Das Heywow-System baut auf ein vollwertiges IP-Netzwerk auf. Hier kann der Handcomputer auch selbst aktiv mit einem lokalen Dienstgeber kommunizieren. So wird es auch möglich, komplexe Dienstleistungen auf dem mobilen Handgerät anzubieten.

In einem weiteren europäischen Gemeinschaftsprojekt, Moby Dick4, wird seit 1995 eine System-Architektur für mobile Multimedia-Computer entwickelt [HS2000]. Mit dem Bau von verschiedenen experimentellen Computersystemen wurden im Rahmen der Forschung verschiedene Aspekte eines Gesamtsystems näher untersucht [Mob1997].

Die Forschungsergebnisse mit Moby Dick können die gesamte System-Architekur einer neuen Generation von mobilen Handcomputern beinflussen. Der hier vorgestellte Ansatz von Heywow versucht durch Verwendung bestehender Standards, mit einer Implementierung in 100% purem Java und aufbauend auf das abstrakte Netzwerkprotokoll Jini schon jetzt auch für zukünftige Entwicklungen offen zu bleiben. Insbesondere die Ergebnisse der stromsparenden Verwendung von Multicast-Kommunikation (vgl. Abschnitt 2.1.6) sind in das Konzept für das Heywow-System aufgenommen worden.

Ebenfalls mit Interesse an allgegenwärtigem Rechnen wird in den Forschungslabors von Hewlett-Packard an der Idee für zukünftige Computer- und Informationssysteme gearbeitet. Mit einer eigenen Implementierung der Java Entwicklungsumgebung 1.1, Chai, wird ein auf offenen Web-Standards aufbauendes System entwickelt [KEa2000]. HP CoolTown5 ist derzeit noch eine Vision von Hewlett-Packard. In Zukunft sollen alle Geräte und Dienste Teil des World Wide Web (WWW) werden und können mit einer eindeutigen Adresse (URL) identifiziert und verwendet werden. Hewlett-Packard strebt eine Komplettlösung für die Anbindung kleiner Geräte in einen Diensteverbund an. Im Vergleich zum bei Heywow verwendeten Jini sollen hier insbesondere auf Dienstgeberseite Ressourcen eingespart werden können. Für den Einsatz komplexerer Dienste muss für die Kommunikation zwischen Dienstgeber und Stellvertreter ein zusätzlicher Kontrolldienstgeber eingesetzt werden, der in Jini durch Einsatz von verteilten Ereignissen, Zeitzusicherungen (vgl. Abschnitt 2.2.4) und Transaktionen auf Basis von Java obsolet ist [Keh2000].

Ein Konzept außerhalb der Ideen für mobile Geräte und lokaler Dienstleistungserbringung stellt eine Arbeitsgruppe am Massachusetts Institute of Technology (MIT) vor. Mit Hive6, einer Infrastruktur für die intelligente Küche [Gra1999], wird eine dezentrale, verteilte Plattform für mobile Agenten beschrieben. ähnlich wie der Jini-Programmieransatz soll es mit Hive möglich sein, Anwendungen durch Verwendung von lokalen Diensten [MEa1999] zu implementieren. Der wesentliche Unterschied von Hive zu Jini liegt im erweiterten Ansatz der Mobilität bei Hive. Anders als bei Jini können nicht nur die Dienstnehmer, sondern auch die Dienstgeber (im Sprachgebrauch von Hive: Agenten) ihren Ort wechseln. Dies ermöglicht die Migration von Agenten, abhängig von den Leistungsanforderungen und Systemressourcen innerhalb des Netzwerks. Für das Heywow-System ist dieses allgemeine Konzept nicht notwendig. Die in den Dienst integrierte Ortsinformation der dezentralen Diensteanbieter widerspricht einer beliebigen Migration der Agenten.

1.4 überblick

Im Kapitel 2 der Arbeit werden zunächst einige Grundlagen erläutert, die im Zusammenhang mit der Entwicklung eines serviceorientierten, plattformunabhängigen und drahtlosen Informationssystems für tragbare Handcomputer nötig sind. Oft stellen diese Informationen nur einen Einstieg in umfassendere Problembereiche dar und mit Literaturverweisen wird eine speziellere Vertiefung ermöglicht.

Das Kapitel 3 beschreibt alle Anforderungen an das Heywow-System. Ausgehend von den Problemen wird ein Konzeptvorschlag für das System von Heywow genauer dargestellt. Hier werden die nötigen Software- und Kommunikationskomponenten für die Plattform beschrieben und eine Implementierung nahe gelegt.

Als Java Klassenbibiothek wird dies in Kapitel 4 realisiert und besonders die Erweiterungsmöglichkeiten und die übertragbarkeit näher beleuchtet. Neben einer ausführlichen Beschreibung des Rahmensystems für die Entwicklung von Diensten in Heywow wird anhand einiger einfacher Beispiele und einer einfachen Benutzer-Schnittstelle die Leistungsfähigkeit verdeutlicht.


1) http://www.heywow.com/
2) http://w5.cs.uni-sb.de/irreal/
3) http://www.eyeled.com
4) http://wwwhome.cs.utwente.nl/~havinga/mobydick.html
5) http://www.cooltown.hp.com
6) hive.sourceforge.net/

----------------------------------------------------------------
[home] [TOC] [next] [guestbook] [contact]                 (c) SM