Zum Inhalt springen
buybitcoinsmart

Glossar / Lightning und Layer 2

Gossip-Protokoll

Was ist das Gossip-Protokoll?
Das Gossip-Protokoll ist die Art und Weise, wie Lightning-Nodes signierte Kanal- und Node-Ankündigungen untereinander verbreiten, sodass jeder Node seine eigene Karte des Netzwerks aufbauen kann, ohne einen Server zu fragen.

Lightning hat kein Verzeichnis, daher teilen die Nodes einander mit, was existiert, und jeder Node führt seine eigene Kopie. BOLT 7 definiert dafür drei Nachrichten, und ein empfangender Node sollte einen Kanal ignorieren, dessen Finanzierungs-Output weniger als 6 Bestätigungen hat. Ihre Wallet findet eine Route, weil sie oder ein Node, dem sie vertraut, zuvor dieses Geplauder mitgehört hat.

So funktioniert es

Das Gossip-Protokoll transportiert drei Nachrichtentypen, und jeder muss etwas on-chain oder per Signatur beweisen, bevor ein Peer ihn weiterleitet.

channel_announcement (Typ 256) behauptet, dass ein Kanal existiert. Ein empfangender Node sucht den Finanzierungs-Output in der Blockchain: Eine Nachricht, deren Output nicht das erwartete P2WSH-Skript ist oder bereits ausgegeben wurde, muss ignoriert werden, und eine, deren Output weniger als 6 Bestätigungen hat, sollte ignoriert werden, es sei denn, sie ist so nah dran, dass der Node einfach bei den Blöcken im Rückstand sein könnte. Einen Kanal anzukündigen kostet daher eine echte On-Chain-Transaktion, und das ist das ganze Anti-Spam-Design: Niemand kann tausend Kanäle kostenlos erfinden.

node_announcement (Typ 257) trägt die eigenen Angaben des Betreibers. Nodes, die keinem bereits bekannten Kanal zugeordnet sind, werden ignoriert, "to avoid trivial denial of service attacks", sodass ein Betreiber ohne Einsatz nie auf die Karte von jemandem gelangt.

channel_update (Typ 258) trägt die Preise, einen pro Richtung, und es ist die Nachricht, die sich tatsächlich ändert. Gebühren und das Ablauf-Delta stehen hier, und wenn ein Betreiber eine Gebühr erhöht, empfiehlt die Spezifikation, dass derselbe Betreiber die alten Parameter noch mindestens 10 Minuten lang akzeptiert, weil die neue erst reisen muss.

Die Verbreitung ist bewusst gemächlich. Ein Node speichert, was er empfängt, ersetzt ältere Aktualisierungen derselben Quelle und sendet den Stapel einmal alle 60 Sekunden aus; die Spezifikation nennt das eine gestaffelte Rundsendung, und sie verhindert, dass ein einzelner ausgelasteter Betreiber die Bandbreite aller füllt.

Auch das Vergessen ist spezifiziert. Sobald der Finanzierungs-Output eines Kanals ausgegeben ist, wartet ein Node 72 Blockbestätigungen ab, bevor er den Kanal verwirft, damit ein Splice Zeit hat, sich anzukündigen, statt wie eine Schließung auszusehen. Wenn außerdem die neueste channel_update in einer der beiden Richtungen älter als zwei Wochen ist (1.209.600 Sekunden), kann ein Node den Kanal ohne Weiteres entfernen.

Wo Sie es sehen

Das Gossip ist der Grund, warum ein frisch gestarteter Lightning-Node eine Weile nutzlos ist und dann plötzlich nicht mehr.

Beim Verbinden fragt ein Node nach dem, was ihm fehlt: query_channel_range (Typ 263), um zu erfahren, welche Kanäle über eine Spanne von Blöcken hinweg existieren, query_short_channel_ids (261), um die konkreten zu holen, die er noch nie gesehen hat, und gossip_timestamp_filter (265), um ein Zeitfenster für alles danach Gesendete zu setzen. Diese letzte Nachricht ist ein Schalter und keine Präferenz: Solange Sie sie nicht senden, leitet ein Peer Ihnen nichts weiter, was er nicht selbst erzeugt hat, und so bleibt ein kleines Gerät klein.

Die Folgen erreichen Ihre Wallet in Form von Gebühren. Ein Routenangebot wird aus den channel_update-Nachrichten zusammengesetzt, die Ihre Wallet gerade hält, sodass eine veraltete Ansicht zu fehlgeschlagenen Versuchen und Preisen führt, die nicht dem entsprechen, was Ihnen angezeigt wurde. Smartphone-Wallets stützen sich auf die Karte von jemand anderem: Phoenix betreibt auf dem Smartphone einen echten selbstverwahrenden Node, verbindet sich aber über die eigenen Nodes von ACINQ, zu dem Preis, den unsere Bewertung festhält: ACINQ kennt das Ziel und den Betrag Ihrer Zahlungen. Ein verwahrendes Konto überspringt das Gossip vollständig, weil das Unternehmen für Sie weiterleitet.

Gossip-Protokoll vs. P2P-Nachrichten

Das Gossip-Protokoll läuft zwischen Lightning-Nodes; die P2P-Nachrichten von Bitcoin laufen zwischen Bitcoin-Nodes, und die beiden teilen nichts außer der Gewohnheit des Flutens.

Ein Bitcoin-Node leitet Transaktionen und Blöcke mit Befehlen wie inv, getdata und tx weiter und weiß nichts über die Kanäle von irgendjemandem. Lightning-Gossip ist ein separates Gespräch, das die Nachrichtentypen 256 bis 265 trägt, und es greift nur auf die Blockchain zurück, um zu prüfen, dass ein angekündigter Finanzierungs-Output echt und nicht ausgegeben ist. Keine Zahlung wird je per Gossip verbreitet: Beträge und Ziele reisen in Zwiebelpaketen, die Zwischen-Nodes nicht lesen können, sodass die öffentliche Karte sagt, wo Kanäle sind, nie, was durch sie geflossen ist.

Nicht zu verwechseln mit

Häufig gestellte Fragen

Gibt das Gossip-Protokoll meine Lightning-Zahlungen preis?

Nein, Gossip transportiert nur Kanal- und Node-Ankündigungen, nie Zahlungen. Der öffentliche Graph sagt, welche Kanäle existieren, wem sie gehören und was sie verlangen, während Betrag und Ziel einer Zahlung in Zwiebelpaketen reisen, die Zwischen-Nodes nicht lesen können.

Warum hat meine Lightning-Wallet eine Gebühr genannt und dann eine andere berechnet?

Meist, weil die Kopie des Graphen in Ihrer Wallet veraltet ist. Preise stehen in channel_update-Nachrichten, die ein Betreiber ändern kann, wann immer er will, und die Spezifikation empfiehlt nur, dass der Betreiber selbst seine alten Parameter noch mindestens 10 Minuten lang weiter beachtet, während die neuen reisen.

Erscheinen private Kanäle im Gossip?

Nein. Ein Kanal wird nur dann per Gossip verbreitet, wenn beide Peers eine channel_announcement signieren, was die Spezifikation als Erklärung wertet, dass sie bereit sind, für das öffentliche Netzwerk Routing zu übernehmen. Ein nicht angekündigter Kanal bleibt daher unsichtbar, und eine Rechnung, die einen solchen verwendet, muss stattdessen einen Routenhinweis enthalten.

Weiterlesen

Quellen

Zuletzt geprüft am 6. September 2026.

Verwandte Begriffe

Mehr zum Thema Lightning und Layer 2

Diese Seite auf Englisch lesen