Gossip Protocols and Epidemic Algorithms Lab (Interactive)
Infect one node, gossip k peers per round, and time logarithmic spread across the cluster. Run push-gossip rounds over clusters from 8 to 256 nodes, comparing measured convergence rounds against the log(k+1) bound and per-node constant load.
Gossip Convergence Field
Node 0 just learned a new member died. Each round, every informed node pings a random few. Watch epidemic spread reach the whole cluster in logarithmic time — with constant per-node load.
- Round
- 0 / 5
- Informed nodes
- 1/64
- Theoretical ⌈log₍ₖ₊₁₎N⌉
- 3 rounds
- Load per node / round
- 3 msgs
Doubling spread means 64 nodes converge in ~5 rounds and 10,000 nodes need only a handful more — that is why Cassandra, Consul, and SWIM choose gossip over a central registry. The price: convergence is probabilistic (stale views for a few rounds), so gossip is for membership and failure suspicion, never for locking or ordering. Gossip traffic this round ≈ 3 messages, and it never concentrates on one node.
How It Works Under the Hood
Gossip protocols spread state the way rumors travel: each informed node contacts a few random peers per round, so the informed population roughly multiplies by (k+1) each round and reaching the whole cluster takes O(log N) rounds — 64 nodes in a handful of steps, a million in twenty-something. Critically, load stays constant per node regardless of cluster size, unlike central heartbeats that crush one coordinator. Cassandra, Consul, memberlist, and SWIM use it for membership and failure suspicion where eventual truth is good enough. This lab advances rounds manually so you can watch the infection curve and count messages per round against the bound.
Core Architectural Principles
- Push-gossip rounds advance deterministically from seeded random peers for reproducibility.
- Measured convergence versus theoretical ceil(log(k+1) N) rounds validates the model.
- Per-node fan-out load is independent of cluster size — the scaling property central registries lack.
Choose gossip for membership and failure detection when decentralization and steady load matter; say the cost out loud: “views converge probabilistically, so a node may look alive for two more rounds — unacceptable for locks, fine for ring membership.” Pair it with SWIM’s indirect probes for fast accurate suspicion.
Constant per-node gossip load and no single point of failure, bought with stale views between rounds.