diff options
| author | tv <tv@krebsco.de> | 2026-11-06 04:15:59 +0100 |
|---|---|---|
| committer | tv <tv@krebsco.de> | 2026-11-06 04:15:59 +0100 |
| commit | 278ca3cd21397ffad07f0874b80b77f41088a3f2 (patch) | |
| tree | e240d5d0874fba9008544c970ce7d26e22c22c2a /docs/peers.md | |
| parent | f4db88178bdf3e8f28cd42502d6e0c6905988687 (diff) | |
swarm neighbours
Diffstat (limited to 'docs/peers.md')
| -rw-r--r-- | docs/peers.md | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/docs/peers.md b/docs/peers.md index 29512a5..2ff10e0 100644 --- a/docs/peers.md +++ b/docs/peers.md @@ -278,8 +278,13 @@ neighbours are its neighbours on each transport it is on: every transport's grap connected, and a member on two transports is in both, so as long as some members are on several, the swarm is connected, and those have about `k` neighbours per transport. With 100 members of which 10 are online, -the 10 form a full mesh; nodes that briefly disagree on who is reachable only add links. `k` is `--neighbours` (default 12), so swarms of up to 13 nodes are a -full mesh. A node *initiates* only towards its neighbours (HELLO, keepalive, dormancy +the 10 form a full mesh; nodes that briefly disagree on who is reachable only add links. `k` is the swarm's: its genesis node records its +`--neighbours` (default 12) in the document (`_continuum/neighbours`), and every node +builds the graph with that value, since every node must build the same one (the +writers' trees are built on it); a protocol writer may change it later, and every node +then recomputes its neighbours and the trees. A swarm from before it was recorded has +none, and each node uses its own `--neighbours`, which must then be the same +everywhere. So swarms of up to `k` + 1 nodes (13 by default) are a full mesh. A node *initiates* only towards its neighbours (HELLO, keepalive, dormancy checks, sync openings, pushing its changes, epoch announcements, the heal, the peer list in HELLO_REPLY) and *answers* anyone. Changes travel over several hops; heads in keepalives tell a node when a neighbour has something it lacks. Until a node is ready |
