Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

gossipsub: An extensible baseline pubsub protocol

Gossipsub logo

Gossipsub is an extensible baseline pubsub protocol, based on randomized topic meshes and gossip. It is a general purpose pubsub protocol with moderate amplification factors and good scaling properties. The protocol is designed to be extensible by more specialized routers, which may add protocol messages and gossip in order to provide behaviour optimized for specific application profiles.

If you are new to Gossipsub and/or PubSub in general, we recommend you to first:

Specification

  • gossipsub-v1.0: v1.0 of the gossipsub protocol. This is a revised specification, to use a more normative language. The original v1.0 specification is here, still a good read.
  • gossipsub-v1.1: v1.1 of the gossipsub protocol.
  • gossipsub-v1.2: v1.2 of the gossipsub protocol. This includes the aggregation of the IDONTWANT control messages to the specs.
  • (not in use) episub: a research note on a protocol building on top of gossipsub to implement epidemic broadcast trees.

Implementation status

Legend: ✅ = complete, 🏗 = in progress, ❕ = not started yet

Additional tooling: