diff options
Diffstat (limited to 'docs/peers.md')
| -rw-r--r-- | docs/peers.md | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/docs/peers.md b/docs/peers.md index c2f1ddb..8b58df0 100644 --- a/docs/peers.md +++ b/docs/peers.md @@ -281,8 +281,9 @@ backbone (with 20 stable of 250 members and k = 12: about 65 links per stable me Changes travel through a partial mesh by announcement and pull ([`swarm/relay.rs`](../src/swarm/relay.rs)): a node pushes its own writes to its neighbours; after applying changes from one neighbour it sends its other neighbours a STATUS with its new heads (marked as an announcement: no -keepalive, and answered only by a neighbour whose heads differ, so one that has the -changes already sends nothing back; nor is a neighbour told whose latest heads, as its +keepalive, and answered only by a neighbour that lacks some of those heads, so one that +has the changes already sends nothing back, even if its heads differ, as they do while +writes go on and newer changes are still on their way to it; nor is a neighbour told whose latest heads, as its own announcement or STATUS brought them, are this node's: announcements wait 200 to 400 ms, at random, so of two neighbours with the same news one is usually first, and the other skips it), and a neighbour that lacks those heads pulls them (it sets them as the peer's heads in its sync state, so Automerge asks |
