Ich habe diesen Abschnitt über Kadcast gelesen und dabei die ganze Zeit die Gossip-Protokolle von Ethereum im Kopf verglichen. Gossip ist logisch sehr einfach: Du erhältst eine Nachricht und leitest sie an alle Nachbarn weiter, die du kennst. Diese Nachbarn leiten sie wiederum an ihre Nachbarn weiter, bis das gesamte Netzwerk die Nachricht erhalten hat. Aber hier gibt es ein Problem: Mit steigender Anzahl von Knoten wächst die Menge der wiederholt weitergeleiteten Nachrichten exponentiell.
Kadcast macht das anders. Es basiert auf Kademlias DHT und schichtet die Knoten nach XOR-Distanzen. Jeder Knoten leitet die Nachricht nicht an alle Nachbarn weiter, sondern nur an ausgewählte Knoten mit zunehmender XOR-Distanz. Dieses Mechanismus habe ich zweimal lesen müssen, um seine Raffinesse zu verstehen – er erzeugt eine Kaskadierung statt einer Flutung.
Zum Beispiel: Knoten A sendet eine Nachricht. Er leitet sie nur an einige wenige Knoten weiter, die ihm am nächsten sind. Diese Knoten leiten sie dann an weiter entfernte Knoten weiter. Die Anzahl der Zielknoten pro Ebene ist kontrolliert und nicht unbegrenzt. Das Whitepaper sagt, dadurch sinkt die gesamte Anzahl der benötigten Übertragungen für die Netzwerkverbreitung deutlich.
Und was hat dieses Design mit dem Finanzszenario $DUSK zu tun? Nach meinem Verständnis sind Finanzszenarien besonders empfindlich gegenüber zwei Dingen: erstens Latenz, zweitens Bandbreite. Wenn es für eine Transaktions-Broadcast über zehn oder sogar mehrere Dutzend Sekunden dauert, bis sie das gesamte Netzwerk erreicht, dann ist eine finale Konsistenz auf Sekundenniveau kaum von Bedeutung. Kadcast bringt die Nachricht durch eine baumartige Struktur mit den wenigsten Weiterleitungs-Schritten zu allen Knoten; die Ausbreitungszeit wird auf das Äußerste komprimiert.
Außerdem gibt es noch einen Punkt, den ich anfangs nicht beachtet habe: Das Whitepaper erwähnt, dass Kadcast die Ursprungsquelle einer Nachricht natürlich verwischt. Da Knoten nur mit ausgewählten Peers kommunizieren und keine Broadcasts an das gesamte Netzwerk senden, ist es für Angreifer schwer, nachzuvollziehen, von welchem Knoten eine Transaktion ausgegangen ist. Das ist für die Datenschutz-Erzählung von Dusk@Dusk ein zusätzlicher Pluspunkt.
Allerdings habe ich noch eine Frage: Das Whitepaper vergleicht Gossip und Kadcast, liefert aber nur eine qualitative Beschreibung, ohne konkrete Daten zur Bandbreiteinsparung. Wie viel wird gespart – 30% oder 90%? Ohne diese Zahlen kann ich schwer einschätzen, wie groß der Effizienzvorteil tatsächlich ist. Vielleicht lässt sich dieses Ausmaß erst nach dem Go-Live im Mainnet mit echten Netzwerkmessdaten beantworten. #dusk
Kadcast macht das anders. Es basiert auf Kademlias DHT und schichtet die Knoten nach XOR-Distanzen. Jeder Knoten leitet die Nachricht nicht an alle Nachbarn weiter, sondern nur an ausgewählte Knoten mit zunehmender XOR-Distanz. Dieses Mechanismus habe ich zweimal lesen müssen, um seine Raffinesse zu verstehen – er erzeugt eine Kaskadierung statt einer Flutung.
Zum Beispiel: Knoten A sendet eine Nachricht. Er leitet sie nur an einige wenige Knoten weiter, die ihm am nächsten sind. Diese Knoten leiten sie dann an weiter entfernte Knoten weiter. Die Anzahl der Zielknoten pro Ebene ist kontrolliert und nicht unbegrenzt. Das Whitepaper sagt, dadurch sinkt die gesamte Anzahl der benötigten Übertragungen für die Netzwerkverbreitung deutlich.
Und was hat dieses Design mit dem Finanzszenario $DUSK zu tun? Nach meinem Verständnis sind Finanzszenarien besonders empfindlich gegenüber zwei Dingen: erstens Latenz, zweitens Bandbreite. Wenn es für eine Transaktions-Broadcast über zehn oder sogar mehrere Dutzend Sekunden dauert, bis sie das gesamte Netzwerk erreicht, dann ist eine finale Konsistenz auf Sekundenniveau kaum von Bedeutung. Kadcast bringt die Nachricht durch eine baumartige Struktur mit den wenigsten Weiterleitungs-Schritten zu allen Knoten; die Ausbreitungszeit wird auf das Äußerste komprimiert.
Außerdem gibt es noch einen Punkt, den ich anfangs nicht beachtet habe: Das Whitepaper erwähnt, dass Kadcast die Ursprungsquelle einer Nachricht natürlich verwischt. Da Knoten nur mit ausgewählten Peers kommunizieren und keine Broadcasts an das gesamte Netzwerk senden, ist es für Angreifer schwer, nachzuvollziehen, von welchem Knoten eine Transaktion ausgegangen ist. Das ist für die Datenschutz-Erzählung von Dusk@Dusk ein zusätzlicher Pluspunkt.
Allerdings habe ich noch eine Frage: Das Whitepaper vergleicht Gossip und Kadcast, liefert aber nur eine qualitative Beschreibung, ohne konkrete Daten zur Bandbreiteinsparung. Wie viel wird gespart – 30% oder 90%? Ohne diese Zahlen kann ich schwer einschätzen, wie groß der Effizienzvorteil tatsächlich ist. Vielleicht lässt sich dieses Ausmaß erst nach dem Go-Live im Mainnet mit echten Netzwerkmessdaten beantworten. #dusk