diff options
Diffstat (limited to 'draft-schanzen-r5n.xml')
-rw-r--r-- | draft-schanzen-r5n.xml | 45 |
1 files changed, 30 insertions, 15 deletions
diff --git a/draft-schanzen-r5n.xml b/draft-schanzen-r5n.xml index 9b5aece..58f5e2b 100644 --- a/draft-schanzen-r5n.xml +++ b/draft-schanzen-r5n.xml | |||
@@ -484,20 +484,28 @@ Connectivity | |Underlay| |Underlay| | |||
484 | <section> | 484 | <section> |
485 | <name>Bootstrapping</name> | 485 | <name>Bootstrapping</name> |
486 | <t> | 486 | <t> |
487 | It is assumed that the node is already connected to at least | 487 | Initially, the implementation depends upon the Underlay to provide at |
488 | one other node. | 488 | least one initial connection to a peer signalled through |
489 | First, those initial nodes are sorted into their respective buckets. | 489 | <tt>PEER_CONNECTED</tt>. |
490 | The initial set of peers is stored in the routing table component | ||
491 | <xref target="routing_table"/>. | ||
490 | </t> | 492 | </t> |
491 | <t> | 493 | <t> |
492 | In order to find the closest nodes in the network to itself, an | 494 | Further, the Underlay must provide the implementation with one or more |
493 | implementation MUST now periodically send HELLO GET queries for its own | 495 | addresses signalled through <tt>ADDRESS_ADDED</tt>. |
494 | node address. | 496 | The implementation then proceeds to periodically advertise all |
495 | Both the "record route" and "find node" message options are set in the | 497 | active addresses in a HELLO block <xref target="hello_block"/>. |
496 | GET queries in order to learn nodes and network topology from the | 498 | </t> |
497 | message route and in order to receive approximate replies to the | 499 | <t> |
498 | query key (the node address). | 500 | In order to find more close nodes in the network, an |
501 | implementation MUST now periodically <xref target="find_peer"/> messages. | ||
502 | </t> | ||
503 | <t> | ||
504 | In both cases the frequency of advertisements and peer discovery | ||
505 | MAY be adapted according to network conditions, connected peers, | ||
506 | workload of the system and other factors which are at the discretion of | ||
507 | the developer. | ||
499 | </t> | 508 | </t> |
500 | <t>FIXME: Periodically -> more specific? No. Frequency may be adapted depending on network conditions, known nodes, busy/idle etc.</t> | ||
501 | <t> | 509 | <t> |
502 | Any implementation encountering a HELLO GET request initially | 510 | Any implementation encountering a HELLO GET request initially |
503 | sends its own node address if it. | 511 | sends its own node address if it. |
@@ -527,6 +535,12 @@ Connectivity | |Underlay| |Underlay| | |||
527 | follows an XOR-based node distance calculation. | 535 | follows an XOR-based node distance calculation. |
528 | </t> | 536 | </t> |
529 | </section> | 537 | </section> |
538 | <section anchor="find_peer"> | ||
539 | <name>Peer Discovery</name> | ||
540 | <t> | ||
541 | FIXME: Elaborate on FindPeer here | ||
542 | </t> | ||
543 | </section> | ||
530 | <section anchor="routing_table"> | 544 | <section anchor="routing_table"> |
531 | <name>Routing Table</name> | 545 | <name>Routing Table</name> |
532 | <t> | 546 | <t> |
@@ -1263,10 +1277,11 @@ tor+onionv3://rasdflkjasdfliasduf.onion/ | |||
1263 | </t> | 1277 | </t> |
1264 | <figure anchor="figure_btypenums"> | 1278 | <figure anchor="figure_btypenums"> |
1265 | <artwork name="" type="" align="left" alt=""><![CDATA[ | 1279 | <artwork name="" type="" align="left" alt=""><![CDATA[ |
1266 | Number | Name | Contact | References | Description | 1280 | Number| Name | Contact | References | Description |
1267 | -------+--------+---------+------------+------------------------- | 1281 | ------+--------+---------+------------+------------------------- |
1268 | 0 ANY N/A [This.I-D] Reserved | 1282 | 0 ANY N/A [This.I-D] Reserved |
1269 | 7 HELLO N/A [This.I-D] Type of a block that contains a HELLO for a node | 1283 | 7 HELLO N/A [This.I-D] Type of a block that contains |
1284 | a HELLO for a node | ||
1270 | 11 GNS N/A GNS Block for storing record data | 1285 | 11 GNS N/A GNS Block for storing record data |
1271 | ]]></artwork> | 1286 | ]]></artwork> |
1272 | </figure> | 1287 | </figure> |
@@ -1277,7 +1292,7 @@ Number | Name | Contact | References | Description | |||
1277 | <figure anchor="figure_purposenums"> | 1292 | <figure anchor="figure_purposenums"> |
1278 | <artwork name="" type="" align="left" alt=""><![CDATA[ | 1293 | <artwork name="" type="" align="left" alt=""><![CDATA[ |
1279 | Purpose | Name | References | Description | 1294 | Purpose | Name | References | Description |
1280 | --------+-----------------+------------+-------------------------- | 1295 | --------+-----------------+------------+--------------- |
1281 | ]]></artwork> | 1296 | ]]></artwork> |
1282 | </figure> | 1297 | </figure> |
1283 | </section> | 1298 | </section> |