commit 2c58b5bddaa6ee4f18baf84c3962709d8bd40a11 parent 5c7224a38bbc6cad80ac6d00c051d04631e8c9b5 Author: Christian Grothoff <christian@grothoff.org> Date: Fri, 12 Jul 2024 09:37:22 +0200 clarify distance Diffstat:
| M | draft-schanzen-r5n.xml | | | 23 | ++++++++++++++--------- |
1 file changed, 14 insertions(+), 9 deletions(-)
diff --git a/draft-schanzen-r5n.xml b/draft-schanzen-r5n.xml @@ -823,16 +823,21 @@ Connectivity | |Underlay| |Underlay| | Underlay | ... <section anchor="routing_table"> <name>Routing Table</name> <t> - Whenever a <tt>PEER_CONNECTED</tt> signal is received from the underlay, - the respective peer is considered for insertion into the routing table. - The routing table consists of an array of <tt>k</tt>-buckets. Each + Whenever a <tt>PEER_CONNECTED</tt> signal is received from + the underlay, the respective peer is considered for + insertion into the routing table. The routing table + consists of an array of <tt>k</tt>-buckets. Each <tt>k</tt>-bucket contains a list of <em>neighbors</em>. - The i-th <tt>k</tt>-bucket stores neighbors whose peer public keys are - between distance 2<sup>i</sup> and 2<sup>i+1</sup> from the local peer. - System constraints will typically force an implementation to impose some - upper limit on the number of <em>neighbors</em> kept per <tt>k</tt>-bucket. - Upon insertion, the implementation <bcp14>MUST</bcp14> call - <tt>HOLD</tt> on the respective <em>neighor</em>. + The i-th <tt>k</tt>-bucket stores neighbors whose peer + public keys are between XOR-distance 2<sup>i</sup> and + 2<sup>i+1</sup> from the local peer; <tt>i</tt> can be + directly computed from the two peer identities using the + <tt>GetDistance()</tt> function. System constraints will + typically force an implementation to impose some upper limit + on the number of <em>neighbors</em> kept per + <tt>k</tt>-bucket. Upon insertion, the implementation + <bcp14>MUST</bcp14> call <tt>HOLD</tt> on the respective + <em>neighor</em>. </t> <t> Implementations <bcp14>SHOULD</bcp14> try to keep at least