Byzantinischer Fehler
aus Wikipedia, der freien Enzyklopädie
In Mehrprozessor-Systemen bezeichnet ein byzantinischer Fehler eine Fehlerklasse. Gemeint ist damit, dass eine Anzahl Prozessoren an einem Problem arbeiten, von denen einer falsch arbeitet, jedoch weiterhin Informationen sendet (also keine Protokollfehler oder ähnliches, die man einfach erkennen könnte).
Byzantinische Algorithmen dienen dazu, mit solchen Fehlern umgehen zu können. D.h. jeder Prozessor bekommt die Daten der anderen und wenn nicht mehr als x Prozessoren fehlerhaft sind, dann kann man mit 3x+1 Prozessoren ein korrektes Ergebnis bestimmen.
[Bearbeiten] Warum byzantinisch?
Das Adjektiv byzantinisch bezieht sich auf das Problem byzantinischer Generäle, ein Problem der Übereinkunft, welches darin besteht, dass die Heerführer einstimmig beschließen müssen, ob sie eine feindliche Armee angreifen sollen oder nicht. Kompliziert wird das Problem durch die räumliche Trennung der Befehlshaber, sie müssen also Boten hin- und herschicken. Dazu kommt noch die Möglichkeit, dass sich unter den Generälen Verräter befinden können.
[Bearbeiten] Byzantinische Fehler
Ohne Annahmen über das Verhalten bei Fehlern in Komponenten sind 3x + 1 redundante Komponenten erforderlich um gleichzeitige Fehler in x Komponenten auszugleichen. Dabei müssen jeweils x + 1 mal Informationen ausgetauscht werden (wirkt sich negativ auf das Echtzeitverhalten des Systems aus).