Simulationsstudie zum FPC

22. Nov'19

Übersetzung des Blogartikel vom Autor Sebastian Mueller, IOTA Foundation.

 

Die IOTA Forschungsabteilung hat kürzlich den Fast Probabilistic Consensus Simulator veröffentlicht.

Heute freuen wir uns, Ihnen die entsprechende Forschungsarbeit auf arxiv zur Verfügung zu stellen, die verschiedene Eigenschaften des FPC untersucht. Wir laden Sie ein, einen Blick auf diese Forschungsarbeit zu werfen. Wir möchten Ihnen auch einen kurzen Überblick darüber geben, welche Art von Ergebnissen wir erzielt haben.

 

Die Kurzfassung sagt es uns:

Dieses Papier untersucht führerlose binäre Mehrheits-Konsensus-Protokolle mit geringer Berechnungskomplexität in unruhigen byzantinischen Infrastrukturen. Mit Hilfe von Computersimulationen zeigen wir, dass die explizite Zufälligkeit des Konsensus-Protokolls die Robustheit gegenüber fehlerhaften und bösartigen Nodes deutlich erhöhen kann. Wir identifizieren das optimale Maß an Zufälligkeit für verschiedene byzantinische Angriffsstrategien auf verschiedene Arten von Netzwerktopologien.

 

Lasst uns sehen, was all diese "ausgefallenen" Begriffe bedeuten. Im aktuellen IOTA-Tangle wird ein Konsens durch den Koordinator vollendet. Ein Kernmodul von Coordicide ist FPC, ein Distributed Konsens Protokoll. Distributed Konsensus Protokolle ermöglichen es vernetzten Systemen, sich auf eine gemeinsame Meinung zu einigen, wenn eine zentrale Entscheidungsfindung schwierig, unmöglich oder unerwünscht ist.

Da verteiltes Computing von Natur aus unzuverlässig ist, ist es notwendig, einen Konsens in unruhigen oder byzantinischen Infrastrukturen zu erreichen. Letzteres entspricht dem Vorhandensein von bösartigen Nodes, die versuchen, das Protokoll anzugreifen. Das Wort unruhig bezieht sich auf Nodes, die fehlerhaft sein können oder auf einen möglichen Nachrichtenverlust.

Der FPC ist führerlos, da er keinen (gewählten) Führer benötigt. Ein Vorteil dabei ist, dass jeder Node seine Meinung lokal aktualisieren kann, ohne auf die Koordination des Führers warten zu müssen. In FPC fragt jeder Node eine zufällige Stichprobe anderer Nodes ab und nimmt die Meinung der Mehrheit an. In der Basisversion gibt es nur zwei mögliche Meinungen, so dass wir von einem Konsens mit binärer Mehrheit sprechen.

Frühere Protokolle in der Klasse der führerlosen binären Mehrheits-Konsensus-Protokolle sind: der einfache Mehrheitskonsens und der zufällige Mehrheitskonsens. Diese Protokolle können jedoch selten die letztendliche Einigkeit der Nodes in der byzantinischen Infrastruktur garantieren.

Aus diesem Grund schlägt FPC eine zusätzliche Zufälligkeit vor, die als "Nebel des Krieges" für potenzielle bösartige Angreifer dient und es dem Angreifer im besten Fall unmöglich macht, die ehrlichen Nodes effektiv zu beeinflussen. Die zusätzliche Zufälligkeit ist das Schlüsselelement, das es ermöglicht, das byzantinische Versagen zu überwinden. Die Zufälligkeit wird durch einen Parameter β parametrisiert; je größer β, desto weniger zufällig ist das Protokoll. Ein Hauptinteresse war es, die β's zu identifizieren, die den maximalen Anteil an gegnerischen Nodes erlauben. Im folgenden Diagramm zeichnen wir die Vereinbarungsrate als Funktion von β und den Anteil der gegnerischen Nodes.

Eine Einigungsrate von 1 bedeutet, dass in 100% der Simulationen alle ehrlichen Nodes schließlich die gleiche Meinung hatten. Eine Einigungsrate von 0,9 bedeutet, dass in 90% der Simulationen alle ehrlichen Nodes dieselbe Meinung hatten und dass in 10% der Fälle mindestens zwei ehrliche Nodes das Protokoll mit unterschiedlichen Ansichten beendeten. Wir sehen, dass in der obigen Situation das Protokoll mit β=0.3 den höchsten Anteil an gegnerischen Nodes erlaubt.

Unser Fokus liegt auf der Leistungsfähigkeit des FPC in byzantinischen Infrastrukturen. Zu diesem Zweck schlagen wir explizite gegensätzliche Strategien vor, die entweder auf die Integrität der resultierenden Meinung, die Übereinstimmung der Nodes über die Meinung oder die Beendigung des Protokolls insgesamt abzielen. Einige dieser Strategien sind auch im Abschnitt Konsens im Iota-Tangle - FPC beschrieben. Die Leistungen werden anhand von Integritätsrate, Vereinbarungsrate und Abbruchrate gemessen.

Darüber hinaus haben wir die Dynamik des Protokolls während eines Angriffs untersucht. Das nächste Diagramm zeigt die Entwicklung unentschlossener Nodes über mehrere Angriffsszenarien hinweg. Wir sehen in a), dass der FPC auch ohne die zusätzliche Zufälligkeit (β=0.5) robust gegen bestimmte bösartige Angreifer ist. Um Berserker-Angriffe zu bewältigen, ist jedoch die zusätzliche Zufälligkeit entscheidend, wie der Vergleich von b) und c) zeigt.

 

Im FPC-Papier wird davon ausgegangen, dass jeder Node eine vollständige Sicht auf das Netzwerk hat. Wir schwächen diese Annahme, indem wir mehrere Netzwerk Topologien berücksichtigen und analysieren. wie das Fehlen von vollständigem Wissen über alle anderen Nodes die Fähigkeit zur Konsensfindung beeinflusst. Sie können auch einen Blick auf den vorherigen Post Fast Probabilistic Consensus Simulator werfen, um weitere Details zu erfahren.

 

Eines unserer Hauptergebnisse ist daher im letzten Satz der Zusammenfassung gut zusammengefasst:

Wir identifizieren das optimale Maß an Zufälligkeit für verschiedene byzantinische Angriffsstrategien auf verschiedene Arten von Netzwerktopologien.

 

Wie immer begrüßen wir Ihre Kommentare und Fragen entweder hier in den Kommentaren, in #tanglemath auf unserem Discord-Server oder im IOTA.cafe. Sie können auch intensivere wissenschaftliche Kooperationen mit uns eingehen und sich um ein Stipendium bewerben.

Der Autor Sebastian Mueller ist nicht Mitglied der IOTA-Stiftung. Er schrieb diesen Blogbeitrag in Zusammenarbeit mit den Mitgliedern der IOTA-Forschungsgruppe.