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

Fehlertoleranz Analyse mittels Fehlerinjektion - Fallstudie und Vergleich von Werkzeugen

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

Problemstellung

Heutige Programme sind zunehmend transienten Hardwarefehlern ausgesetzt. Soll ein Programm robuster gegenüber solcher Fehler gemacht werden so will man oft wissen welche Teile eines Programms besonders anfällig sind oder wie viel zuverlässiger das Programm wird wenn man es abhärtet. Die Auswirkungen von Hardwarefehlern lassen sich jedoch schwer bestimmen da diese Fehler nur selten auftreten und von klassischen Softwaretests nicht erfasst werden.

Um dennoch Aussagen treffen zu können wie zuverlässig ein Programm ist können Hardwarefehler simuliert werden indem künstlich Fehler in das Programm zur Laufzeit eingebaut werden. Wie genau solche Fehlerinjektionsexperimente durchgeführt werden und welche Aussagekraft sie haben hängt dabei stark von den verwendeten Werkzeugen ab. So ist beispielsweise eine einfache Fehlerinjektion mit einem Debugger möglich. Spezielle für Fehlerinjektion entwickelte Werkzeuge wie FAIL* oder FITIn versprechen jedoch komfortablere Planung großer Fehlerinjektionskampagnen und genauere Ergebnisse. Ob dies exemplarisch für den verteilten dienst Memcached zutrifft soll in dieser Arbeit ermittelt werden.

Aufgabenbeschreibung

Im Rahmen dieser Bachelorarbeit soll mittels Fehlerinjektionsexperimenten untersucht werden wie anfällig eine abgehärtete Version des Key-Value-Store Memcached gegenüber Bit-Fehler im Vergleich zur normalen Version des Dienstes ist.

Dabei soll Evaluiert werden welches Werkzeug sich für die Fehlerinjektion in Memcached am besten eignet. Im Speziellen sollen hierfür Fehlerinjektions-kampagnen mit dem Debugger und mit FITIn durchgeführt werden. Des Weiteren kann auch das Werkzeug FAIL* in Betracht gezogen werden.

Ziel der Arbeit ist es eine Aussage zu treffen zu können wie viel zuverlässiger wird Memcached wenn man es Abhärtet und welches Fehlerinjektionswerkzeug ist für diese Bestimmung am besten geeignet.


aktualisiert am 15.10.2014, 11:45 von Arthur Martens
printemailtop