diff options
| author | tv <tv@krebsco.de> | 2026-11-06 14:29:42 +0100 |
|---|---|---|
| committer | tv <tv@krebsco.de> | 2026-11-06 14:29:42 +0100 |
| commit | d6f6c7aad904e650e6c7371dbd4776f6f0be2388 (patch) | |
| tree | c4cf94b5099e3ea31faddc7356459337127eb3f3 /docs/peers.md | |
| parent | 43305f5a0e2a87c68405989600b33e33c1ab70df (diff) | |
indirect probes
Diffstat (limited to 'docs/peers.md')
| -rw-r--r-- | docs/peers.md | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/docs/peers.md b/docs/peers.md index dd3186f..79f2abb 100644 --- a/docs/peers.md +++ b/docs/peers.md @@ -366,9 +366,17 @@ its neighbours by the graph it doesn't reach (`unreached`), once down for four k intervals, and its neighbours it reaches that the graph doesn't link it to (`reached`: a ring going round a member it doesn't reach, a member reaching out from behind NAT), once up for one; each comes out again after the -other hold. On a stable swarm the entry has none. A member that went away is recorded +other hold; a link the other end records as unreached already isn't recorded again. +On a stable swarm the entry has none. A member that went away is recorded as unreached by its neighbours (they can't tell it from a link that broke), and taken -out once they reach it again. +out once they reach it again: so a node first asks up to three +of the member's own neighbours it reaches whether they reach it (a PROBE, answered from +what they know, contacting nobody: an active session that answers; a session that +doesn't, held dormant or unanswered HELLOs; or can't tell): if some don't and none does, the member is away and nothing is recorded +(asked again after another hold); otherwise, or with no answer within 10 s, the link +is recorded. A node that reaches nobody at all is the one away, and +records nothing. PROBEs are their own message, apart from the dashboard's +LINKS, which a node may leave unanswered. A writer's changes pass on along its tree ([`swarm/tree.rs`](../src/swarm/tree.rs)), the same on every node: built on the graph the member list gives (as if every member reached every other), less |
