Wie gut skalieren Implementierungen von Proof of Authority (PoA) von Geth (Clique) und Parity (Aura)?

Hat jemand versucht, PoA-Netzwerke mit 100 oder mehr Validatoren zu betreiben? Wie hat sich bei einer festen Blockgröße die Anzahl der Validierer auf den Transaktionsdurchsatz und die Latenz ausgewirkt?

Antworten (1)

Dieses Papier befasst sich mit einem detaillierten Vergleich von Aura, Clique und PBFT.

Der Hauptunterschied in Bezug auf die Latenz laut diesem Artikel ist:

In Aura erfordert jeder Blockvorschlag zwei Nachrichtenrunden: In der ersten Runde sendet der Leiter den vorgeschlagenen Block an alle anderen Behörden, in der zweiten Runde sendet jede Behörde den empfangenen Block an alle anderen Behörden. Ein Block wird festgeschrieben, nachdem eine Mehrheit von Autoritäten ihre Blockierungen vorgeschlagen hat, daher ist die Latenz in Bezug auf Nachrichtenrunden in Aura 2( N/ 2 + 1) , wobei N die Anzahl von Autoritäten ist. In Clique besteht ein Blockvorschlag aus einer einzigen Runde, in der der Leiter den neuen Block an alle anderen Autoritäten sendet. Der Block wird sofort festgeschrieben, daher beträgt die Latenz in Bezug auf Nachrichtenrunden in Clique 1. Ein so großer Unterschied zwischen Aura und Clique ist auf ihre unterschiedlichen Strategien zurückzuführen, um mit böswilligen Behörden fertig zu werden, die darauf abzielen, Forks zu erstellen: Aura wartet, bis genügend andere Blöcke vorgeschlagen wurden, bevor sie sich verpflichten, Clique verpflichtet sich sofort und bewältigt mögliche Forks, nachdem sie auftreten. Clique scheint auch PBFT zu übertreffen, das drei Nachrichtenrunden benötigt, um einen Block festzuschreiben.

Die Anzahl der Autoritäten steht also im Falle von Aura in einem linearen Verhältnis zur Latenz (in Bezug auf Nachrichtenrunden). Wenn die Anzahl der Autoritäten zunimmt, wird die Latenzzeit (hinsichtlich Nachrichtenrunden) zunehmen.

Andererseits bleibt die Latenz (hinsichtlich Nachrichtenrunden) von der Anzahl der Autoritäten unbeeinflusst.

Bitte erläutern Sie einige der wichtigsten Punkte im Link in Ihrer Antwort. Eine Nur-Link-Antwort kann für zukünftige Besucher an Wert verlieren, wenn der Link unterbrochen wird, und es ist besser, die wichtigsten Details in Ihrer Antwort zu teilen.
@RaghavSood danke für deinen Rat! Ich habe meine Antwort geändert.
Danke @RaghavSood! Nur um sicherzugehen, dass ich es richtig verstanden habe, eine Nachrichtenrunde dauert im Durchschnitt so lange wie die Blockzeit, richtig? Wenn also die Blockzeit auf 5 Sekunden eingestellt ist und es 100 Prüfer gibt, würde Aura einen bestimmten Block 500 Sekunden, nachdem der Block vorgeschlagen wurde, festschreiben. Clique würde den Block innerhalb von 5 Sekunden festschreiben, jedoch ohne Garantie hinsichtlich der Endgültigkeit. Aber was ist mit dem Kommunikationsaufwand? 100 Validierer in Aura zu haben, bedeutet ca. N^2 Nachrichten für einen einzelnen Block. Ist es machbar, 100, 1000 oder noch mehr Validierer zu haben?
Über den Kommunikationsaufwand bin ich mir nicht sicher.
Nochmals vielen Dank @asvisosila (Entschuldigung für den Namensfehler). Stimmen Sie meinen Schlussfolgerungen bezüglich der Block-Commit-Zeiten in Aura und Geth mit 100 Validierern zu?
Ja, ich stimme dir zu. Ich denke, es ist nicht machbar, eine große Anzahl von Validatoren (Behörden) zu haben. Die Anzahl der Validatoren (Behörden) ist zu beschränken, wenn ein Blockchain-Netzwerk den Aura-Konsensalgorithmus verwendet.