Die Wege des geringsten Widerstands: Einführung in WFR-Gossip Kurzfassung: WFR-Gossip wendet Prinzipien des optimalen Transports auf die Gossip-Schicht von Ethereum an. Es bewahrt die Widerstandsfähigkeit von Gossipsub, während die Bandbreite um 50 % reduziert und die Latenz im 90. Perzentil in Simulationen um 40 % gesenkt wird.
Die Gossipsub-Technologie von Ethereum ist robust, aber ineffizient. Knoten erhalten oft dieselbe Nachricht viele Male. Gut für die Resilienz, kostspielig in Bezug auf Bandbreite/Latenz. WFR-Gossip verfolgt einen anderen Ansatz: Inspiriert von der optimalen Transporttheorie leitet es Nachrichten entlang schnellerer Wege weiter. 👇
Klassisches Gerede behandelt die Verbreitung als einen zufälligen Prozess. WFR-Gossip stellt es als Massentransport um: Eine Nachricht ist wie ein Sandhaufen, und die Latenz ist die Kosten, um sie zu bewegen. Dies verbindet sich natürlich mit der optimalen Transporttheorie.
In einem Gerüchte-Netzwerk: • bewegende Masse = eine Nachricht weiterleiten • Masse erzeugen = eine Nachricht duplizieren • Masse zerstören = ein Duplikat fallen lassen Die Wasserstein-Fisher-Rao (WFR) Metrik erfasst dies und ermöglicht es uns, den Nachrichtenfluss mit physikalischer Intuition zu modellieren.
Jeder Knoten verwendet eine einfache Regel: • Weiterleiten an einige Peers mit geringer Latenz (D₍robust₎ ≈ 3) • Für andere nur dann vorspulen, wenn RTT_out < RTT_in Diese Heuristik "bergab" erfordert keine globale Koordination. Nur lokale Round-Trip Times (RTTs), bereits in libp2p.
Bei D_robust = 3 erreicht WFR-Gossip: • ~98% Netzwerkabdeckung • 50% weniger Bandbreite • 40% niedrigere Latenz im 90. Perzentil Der IHAVE/IWANT-Fallback kümmert sich um die verbleibenden 2% der verpassten Knoten.
WFR-Gossip leitet nicht nur an den schnellsten Peer weiter. Es kombiniert Redundanz mit Filterung: robuste zufällige Verbreitung + selektives Beschneiden langsamer Pfade. Dies vermeidet Engpässe und ist weniger anfällig für Manipulation.
Es ist auch minimal invasiv: • Keine neuen Topologien • Kompatibel mit Peer-Bewertungen • Funktioniert gut mit CHOKE, IDONTWANT usw. • Verwendet nur lokale Regeln und Daten (RTTs)
Was kommt als Nächstes? • Implementierung in libp2p-Simulatoren • Testen unter realistischeren/feindlichen Bedingungen earliest Arbeiten von @open_sourcery hier:
Link zum Beitrag: Link zum GitHub-Repo für den Simulationscode: Danke an Leo Monsaingeon, @casparschwa, @_julianma, @weboftrees, @raulvk, @yannvon, @cskiraly und @open_sourcery für das Feedback und die Bewertungen!
11,74K