commit 75f21360b27f8707ffc49c4a32f10948d2f2778f
parent a3015eabf4e87eeedaab1a41972c897189872561
Author: Martin Schanzenbach <schanzen@gnunet.org>
Date: Wed, 12 Jan 2022 21:54:09 +0100
separate procedures from signals
Diffstat:
1 file changed, 32 insertions(+), 25 deletions(-)
diff --git a/draft-schanzen-r5n.xml b/draft-schanzen-r5n.xml
@@ -461,29 +461,11 @@ Connectivity | |Underlay| |Underlay|
It is expected that there are basic mechanisms available to
manage node connectivity and addressing.
The required functionality are abstracted through the following
- procedures and events:
+ procedures:
</t>
<!-- FIXME separate procedures from events -->
<dl>
<dt>
- <tt>PEER_CONNECTED(P)</tt>
- </dt>
- <dd>
- is a signal that allows the DHT to react to a newly connected peer
- <tt>N</tt>.
- Such an event triggers, for example, updates in the
- routing table.
- </dd>
- <dt>
- <tt>PEER_DISCONNECTED(P)</tt>
- </dt>
- <dd>
- is a signal that allows the DHT to react to a recently disconnected
- peer.
- Such an event triggers, for example, updates in the
- routing table.
- </dd>
- <dt>
<tt>TRY_CONNECT(N, A)</tt>
</dt>
<dd>
@@ -522,26 +504,51 @@ Connectivity | |Underlay| |Underlay|
If call to SEND fails, the message has not been sent.
</dd>
<dt>
- <tt>NETWORK_SIZE_ESTIMATE(S)</tt>
+ <tt>ESTIMATE_NETWORK_SIZE() -> S</tt>
</dt>
<dd>
- A function or event that provides estimates on the network size
+ A procedure that provides estimates on the network size
<tt>S</tt> for use in the DHT routing algorithms.
FIXME: What is S and give an example.
</dd>
+ </dl>
+ <t>
+ In addition to the above procedures, which can only be actively
+ triggered by the implementation, the following callbacks or signals
+ drive updates of the routing table:
+ </t>
+ <dl>
+ <dt>
+ <tt>PEER_CONNECTED -> P</tt>
+ </dt>
+ <dd>
+ is a signal that allows the DHT to react to a newly connected peer
+ <tt>P</tt>.
+ Such an event triggers, for example, updates in the
+ routing table.
+ </dd>
+ <dt>
+ <tt>PEER_DISCONNECTED -> P</tt>
+ </dt>
+ <dd>
+ is a signal that allows the DHT to react to a recently disconnected
+ peer.
+ Such an event triggers, for example, updates in the
+ routing table.
+ </dd>
<dt>
- <tt>ADDRESS_ADDED(A)</tt>
+ <tt>ADDRESS_ADDED -> A</tt>
</dt>
<dd>
The underlay signals us that an address <tt>A</tt> was added for our
- local node.
+ local peer.
This information is used to advertise
- connectivity information to the local node.
+ connectivity information to the local peer.
<tt>A</tt> is a string suitable for inclusion in a HELLO payload
<xref target="hello_block"/>.
</dd>
<dt>
- <tt>ADDRESS_DELETED(A)</tt>
+ <tt>ADDRESS_DELETED -> A</tt>
</dt>
<dd>
The underlay signals us that an address <tt>A</tt> was removed.