distribution: handle sqrt peer view updates (#2871)

* distribution: handle sqrt peer view updates

* someone please put rustc into my brain

* guide updates
This commit is contained in:
Andronik Ordian
2021-04-10 00:45:25 +02:00
committed by GitHub
parent 23cfd0edb9
commit e62939ad7a
4 changed files with 45 additions and 12 deletions
@@ -9,3 +9,7 @@ from any validator in that set.
Gossiping subsystems will be notified when a new peer connects or disconnects by network bridge.
It is their responsibility to limit the amount of outgoing gossip messages.
At the moment we enforce a cap of `max(sqrt(peers.len()), 25)` message recipients at a time in each gossiping subsystem.
We also flip a coin with the same probability when handling peer view updates in the distribution subsystems.
Over time the probability of not handling a peer view update converges to zero, so it shouldn't be cause much trouble.
This should be considered as a temporary measure until we implement a more robust solution for gossiping.