Core Concepts
Der Algorithmus NRP FD priorisiert die Konsistenz gegenüber der Verfügbarkeit, um das Problem der Doppelsteuerung in redundanten Steuerungssystemen zu lösen.
Abstract
Der Artikel beschreibt die Modellierung und formale Verifikation des NRP FD-Algorithmus, der darauf abzielt, die Konsistenz in redundanten Steuerungssystemen zu erhalten.
Der Algorithmus verwendet einen externen Netzwerk-Referenzpunkt (NRP), um zu unterscheiden, ob ein Ausfall des primären Controllers oder des Netzwerks vorliegt. Wenn der primäre Controller den NRP nicht erreichen kann, gibt er die Steuerung an den Backup-Controller ab, um die Konsistenz zu wahren.
Der Artikel zeigt, dass der ursprüngliche NRP FD-Algorithmus in seltenen Fällen zu einer Doppelsteuerung führen kann. Daher wird eine erweiterte Version, Leasing NRP FD, vorgestellt, die diese Schwachstelle behebt und die Konsistenz in allen Fehlerfällen gewährleistet.
Die Modellierung und Verifikation erfolgt mit Timed Rebeca, einer Sprache für die Modellierung und Überprüfung reaktiver, verteilter Systeme. Verschiedene Fehlerfälle wie Ausfälle von Controllern und Netzwerkkomponenten werden untersucht. Die Ergebnisse zeigen, dass Timed Rebeca gut geeignet ist, um das System zu modellieren und mögliche Inkonsistenzen aufzudecken.
Stats
Die Anzahl der maximal tolerierbaren verpassten Heartbeats ist auf 2 gesetzt (max_missed_heartbeats = 2).
Die Heartbeat-Periode beträgt 1000 Zeiteinheiten.
Die Zeitüberschreitung für das Pingen des NRP (ping_timeout) und das Warten auf eine Antwort vom NRP (nrp_timeout) ist auf 500 Zeiteinheiten gesetzt.
Die Netzwerkübertragungsverzögerung beträgt 1 Zeiteinheit.
Quotes
"Der Algorithmus NRP FD priorisiert die Konsistenz gegenüber der Verfügbarkeit, um das Problem der Doppelsteuerung in redundanten Steuerungssystemen zu lösen."
"Um die Eindeutigkeit des primären Controllers zu garantieren, müssen folgende Fragen beantwortet werden: Wie soll der Backup-Controller über einen Ausfall informiert werden? Wann soll der Backup-Controller zum primären Controller werden?"