radicle-heartwood-lfs/radicle-node
cloudhead 0834e0fc7d
node: Implement staggered broadcast for gossip
We use the *staggered broadcast* technique when relaying gossip messages
to reduce message amplification. In our basic simulation, it brings
amplification down from 3.5 to 1.5.

The idea is simply to accumulate gossip messages and relay them after a fixed
interval of time. This has two effects:

1) Old messages that haven't been sent yet are replaced by newer ones,
   so only one message is sent after the delay.
2) Because nodes have their own intervals, messages are not all sent at
   the same time, which reduces the chance of messages crossing paths.

For now we only turn this on for inventory messages, since this is the
least likely to be noticed by users, and also the most problematic
currently.
2024-05-24 16:44:22 +02:00
..
src node: Implement staggered broadcast for gossip 2024-05-24 16:44:22 +02:00
Cargo.toml node: Set TCP_KEEPALIVE on sockets 2024-05-22 14:46:08 +02:00
build.rs Update radicle crates to 0.9.0 2024-03-26 11:56:27 +01:00