libp2p / specs

Technical specifications for the libp2p networking stack
https://libp2p.io
1.56k stars 273 forks source link

gossipsub v1.1: Validation queue protection with Random Early Drop #292

Closed vyzo closed 4 years ago

vyzo commented 4 years ago

Updates the specification for the circuit breaker implemented in https://github.com/libp2p/go-libp2p-pubsub/pull/384

vyzo commented 4 years ago

@raulk done -- moved it to an extension spec and left the original spec unmolested.

raulk commented 4 years ago

cc Interest Group: @yusefnapora, @raulk, @whyrusleeping, @Stebalien, @daviddias, @protolambda, @djrtwo, @dryajov, @mpetrunic, @AgeManning, @Nashatyrev, @mhchia.

This is a functional extension to gossipsub 1.1 (does not affect the protocol) to introduce a circuit-breaker-like feature to defend against spam attacks.

It's a working draft, and we're testing it out in the Filecoin Space Race network. Might be worth to adopt in Eth2 too.

Reference implementation here: https://github.com/libp2p/go-libp2p-pubsub/pull/384 Expect it to be fine-tuned over the next days.