What is Lightning Network Gossip?
Lightning Network nodes need to know about each other to route payments. They learn about the network through a gossip protocol defined in BOLT #7 — a peer-to-peer mechanism where nodes share information about channels and other nodes.
The Three Gossip Message Types
| Message | Purpose | Triggered by |
|---|---|---|
channel_announcement | Declares a new channel exists between two nodes | Channel opening (confirmed on-chain) |
channel_update | Updates a channel’s routing policy (fees, HTLC limits, enabled/disabled) | Node operator changes, periodic refresh |
node_announcement | Advertises a node’s metadata (alias, color, addresses) | Node coming online, config changes |
How Gossip Propagates
Gossip works as a flood-fill: when a node receives a new gossip message it hasn’t seen before, it validates the message and then forwards it to all of its connected peers. This means a single channel_update from one node will eventually reach every other node in the network, hopping peer-to-peer across the graph.
Node A (origin)
├──→ Peer 1 ──→ Peer 4 ──→ ...
├──→ Peer 2 ──→ Peer 5 ──→ ...
└──→ Peer 3 ──→ Peer 6 ──→ ...
The speed at which this happens depends on network topology, peer connectivity, implementation details, and geographic distance between nodes.
Why It’s Interesting
This flood-fill is efficient but not instantaneous. There are measurable propagation delays — some nodes receive messages in milliseconds, others take seconds. These timing differences are the signal our visualizer is built to explore.