TU BRAUNSCHWEIG
| Carl-Friedrich-Gauß-Fakultät | Informatik
Informatikzentrum

Aspektorientierte Implementierung einer Objektwiederherstellung für replizierte Anwendungen

BetreuerArthur Martens
ProfessorProf. Dr. Rüdiger Kapitza
Projektdanceos
IBR GruppeDS (Prof. Kapitza)
ArtBachelorarbeit
Statusabgeschlossen

Problemstellung

Aktuelle Trends in der Computerchip-Fertigung wie zunehmende Transistordichte, hohe Taktfrequenzen, und Stromsparmaßnahmen erhöhen zunehmend auch die Anfälligkeit auf transiente Fehler in der Hardware. Als Folge kommt es vermehrt zu Datenschäden welche durch heutige Replikationsmaßnahmen oft nicht erkannt werden können.

Ein Verfahren zur feingranularen Erkennung von Datenschäden in replizierten, verteilten Systemen bietet CrossCheck, welches am IBR entwickelt wird. Zentrales Element dieses Verfahrens ist die Generierung von Prüfsummen bei jedem Objektzugriff. Diese Prüfsummen werden bei jeder Benutzeranfrage gesammelt und vor der Antwortrückgabe zwischen den Replikaten verglichen. Durch einen Mehrheitsentscheid können hiermit defekte Objekte identifiziert werden.

Ein naiver Ansatz mit erkannten Fehlern umzugehen wäre der Neustart und die Wiederherstellung des betroffenen Replikates. Da CrossCheck jedoch von Fehlern betroffene Objekte identifizieren kann lassen sich Fehler viel effizienter beheben, indem die fehlerhaften Objekte durch unbeschädigte Objekte aus den anderen Replikaten ersetzt werden.

Aufgabenbeschreibung

Im Rahmen dieser Bachelorarbeit soll CrossCheck um die Funktionalität fein granularer Objektwiederherstellung erweitert werden.

Hierfür muss zuerst eine Funktion implementiert werden, welche alle Replikate synchronisiert und damit ihre Objekte in gleichen zustand bringt.

Sind die Replikate synchron so sollen alle fehlerfreien Replikate, dem fehlerhaften Replikat eine definierte Menge an Objekten für die Reparatur schicken. Das defekte Replikat wiederum soll bei Erreichen des synchronen Zustands auf die Objekte von den fehlerfreien Replikaten warten. Sobald die fehlerfreien Objekte eintreffen sollen damit die defekten Objekte repariert werden.

Ist diese Objektwiederherstellung abgeschlossen soll die Synchronisation der Replikate aufgehoben werden und der normale Ablauf des Programms wieder aufgenommen werden.

Die implementierte Lösung soll auf korrekte Funktion und Performanz evaluiert werden.


aktualisiert am 27.02.2015, 08:51 von Arthur Martens
printemailtop