Ein Thread, der die Forschung zur guten Falllatenz und Resilienz von teil-synchronen Protokollen zusammenfasst. Untergrenze 1 (DLS): Es ist unmöglich, unter teil-synchroner Bedingung eine Einigung gegen einen byzantinischen Gegner zu erreichen, wenn f >= n/3. ( Untergrenze 2 (Gute Falllatenz): Für teilweise synchronen byzantinischen Broadcast mit f byzantinischen Parteien sind 3 Runden notwendig und ausreichend, wenn 3f +1 <= n <= 5f-1 ( Obergrenze: z.B. PBFT, Tendermint, Simplex tolerieren f < n/3 Fehler und erreichen eine 3-Runden gute Falllatenz (Link:
Zwei Möglichkeiten zur Verbesserung: (A) mehr Abstürze tolerieren, (B) bessere gute Fall-Latenz erreichen, wenn es weniger byzantinische Fehler gibt Möglichkeit (A): mehr Abstürze tolerieren Untergrenze 3: Wir benötigen n >= 3f + 2c + 1, um f byzantinische Fehler und c Absturzfehler unter partieller Synchronität zu tolerieren (Folklore?) Obergrenze: Verallgemeinern Sie eines der zuvor genannten Protokolle, z. B. PBFT, mit einer Quorumgröße von 2f+c+1 anstelle von 2f+1 (Folklore?)
Avenue (B): bessere Good-Case-Latenz erreichen, wenn es weniger byzantinische Fehler gibt Untergrenze 4: Wir benötigen n >= 3f + 2p - 1, um f byzantinische Fehler zu tolerieren und eine 2-Runden-Good-Case-Latenz zu erreichen, wenn p <= f ( Obergrenze: FaB, SBFT, Kudzu, Alpenglow, Minimmit (einige davon setzen f = p ~= n/5) (
Kombination der Wege (A) und (B): Hydrangea, unser neues Papier () mit @nibeshrestha2 und @aniketpkate Untergrenze 5: Es gibt kein teilweise synchrones byzantinisches Broadcast-Protokoll, das f byzantinische Fehler und c Absturzfehler für n = 3f + 2c + k + 1 toleriert und eine optimistische gute Fall-Latenz von zwei Runden erreicht, während mehr als p = (c+k+2) / 2 fehlerhafte Parteien (byzantinisch oder Absturz) toleriert werden; k ist ein einstellbarer Parameter mit einigen Einschränkungen. Obergrenze: Hydrangea präsentiert ein Protokoll für n = 3f+2c+k+1, um f byzantinische Fehler und c Absturzfehler zu tolerieren, und wir können (i) eine optimistische 2-Runden gute Fall-Latenz erreichen, während wir p = (c+k)/2 Fehler tolerieren, und (ii) eine 3-Runden gute Fall-Latenz ansonsten.
4,13K