Doctoral Thesis DIS-2002-03

BibliographyStraßer, Markus: Fehlertoleranz mobiler Agenten.
University of Stuttgart, Faculty of Computer Science, Electrical Engineering, and Information Technology, Doctoral Thesis (2002).
232 pages, german.
CR-SchemaC.2.4 (Distributed Systems)
C.4 (Performance of Systems)
D.4.5 (Operating Systems Reliability)
Abstract

Mobile Agenten sind Programme, die sich zur Ausführung ihrer Aufgabe autonom zwischen Ausführungsumgebungen in einem Rechnernetz bewegen können, um die jeweiligen lokalen Ressourcen der Rechner zu nutzen. Neben Lösungen im Bereich der Sicherheit und der Kontrolle mobiler Agenten ist die Zuverlässigkeit der Ausführung von mobilen Agenten eine der Grundvoraussetzungen für die breite Anwendung dieser Technologie. Die vorliegende Arbeit erarbeitet Lösungen für die zuverlässige Ausführung mobiler Agenten und das zuverlässige, partielle Rücksetzen der Agentenausführung. Um den Ausfall von Rechnern, auf denen ein Agent einen Teil seiner Aufgabe ausführen möchte, einfacher tolerieren zu können ist es vorteilhaft, wenn dem Agenten Alternativen zur Auswahl stehen. Als Basisbaustein für die fehlertolerante Ausführung wird daher ein flexibles Reiseroutenkonzept entwickelt. Dieses Konzept erlaubt nicht nur die Spezifikation alternativer Ausführungsrechner sondern erlaubt auch, die einer Anwendung inhärenten Alternativen der Ausführungsreihenfolge der einzelnen Aufgabenteile offenzulegen. Für die fehlertolerante Ausführung werden zwei Mechanismen entwickelt. Der Basismechanismus stellt die genau-einmal Ausführung eines Agenten durch transaktionale Ausführung des Agenten sicher. Die blockierungsfreie Ausführung von Agenten wird durch eine Erweiterung dieses Basismechanismus sichergestellt, bei der die Ausführung des Agenten durch mehrere Rechner überwacht und im Fehlerfalle weitergeführt wird. Die Korrektheit der Mechanismen wird in einem informalen Beweis nachgewiesen und eine analytische Bewertung der Mechanismen durchgeführt. Da für das partielle Rücksetzen der Agentenausführung ein einfaches Rücksetzen auf einen alten Zustand nicht ausreicht, kommen hierfür Kompensationsoperationen zum Einsatz. Die zuverlässige Ausführung der Kompensation wird durch transaktionale Ausführung sichergestellt. Um den Anwendungsentwickler möglichst stark zu entlasten, werden die Daten des Agenten in zwei unterschiedliche Klassen aufgeteilt. Ein Teil der Daten des Agenten kann von der Ausführungsumgebung durch eine Kopie des alten Zustandes zurückgesetzt werden. Für den anderen Teil der Agentendaten und für die Ressourcen müssen Kompensationsoperationen zur Verfügung gestellt werden. Eine Klassifizierung der Kompensationsoperationen erlaubt Optimierungen bei der Kompensation.

Department(s)University of Stuttgart, Institute of Parallel and Distributed Systems, Distributed Systems
Entry dateSeptember 29, 2004
   Publ. Computer Science