summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Schanzenbach <mschanzenbach@posteo.de>2021-09-29 11:31:13 +0200
committerMartin Schanzenbach <mschanzenbach@posteo.de>2021-09-29 11:31:13 +0200
commit1b6ce015a562684970a648972216e03200e2b148 (patch)
tree14382c24136e599ead81d2391f195833523be32c
parent8153f62a68fd2fa19deb7f57944d60db388ad311 (diff)
downloadlsd0004-1b6ce015a562684970a648972216e03200e2b148.tar.gz
lsd0004-1b6ce015a562684970a648972216e03200e2b148.zip
add architecture
-rw-r--r--draft-schanzen-r5n.xml112
1 files changed, 112 insertions, 0 deletions
diff --git a/draft-schanzen-r5n.xml b/draft-schanzen-r5n.xml
index c4e1780..481e429 100644
--- a/draft-schanzen-r5n.xml
+++ b/draft-schanzen-r5n.xml
@@ -107,6 +107,84 @@
107 107
108 </t> 108 </t>
109 </section> 109 </section>
110 <section anchor="architecture" numbered="true" toc="default">
111 <name>Architecture</name>
112 <t>
113 R5N is an overlay network with a pluggable transport layer.
114 The following figure shows the R5N architecture.
115 </t>
116 <figure>
117 <artwork name="" type="" align="left" alt=""><![CDATA[
118 +-----------------+ +-------+
119 | GNU Name System | | CADET | ...
120 +-----------------+ +-------+
121 ------------------------------------ Overlay Interface
122 ^
123 | +---------------+
124 | | Block Storage |
125 | +---------------+
126 | ^
127 v v
128 +--------------------+ +---------+
129 | Message Processing |<-->| Routing |
130 +--------------------+ +---------+
131 ^ ^
132 v v
133 ------------------------------------ Underlay Interface
134 +--------+ +--------+
135 |GNUnet | |IP | ...
136 |Underlay| |Underlay|
137 |Link | |Link |
138 +--------+ +--------+
139
140 ]]></artwork>
141 </figure>
142 <dl>
143 <dt>Applications</dt>
144 <dd>
145 Applications are components which directly use the DHT overlay
146 interfaces. Possible applications include the GNU Name System
147 <xref target="I-D.draft-schanzen-gns" /> or the CADET transport system
148 <xref target="cadet" />.
149 </dd>
150 <dt>Overlay Interface</dt>
151 <dd>
152 The Overlay Interface exposes the core operations of the DHT overlay
153 to applications.
154 This includes querying and retrieving data from the DHT.
155 </dd>
156 <dt>Block Storage</dt>
157 <dd>
158 The Block Storage component is used to persist and manage data
159 by peers. It includes logic for quotas, caching stragegies and
160 data validation.
161 </dd>
162 <dt>Message Processing</dt>
163 <dd>
164 The Message Processing component processes requests from and responses
165 to applications as well as messages from the underlay network.
166 </dd>
167 <dt>Routing</dt>
168 <dd>
169 The Routing component includes the routing table as well as
170 routing and peer selection logic. It facilitates the R5N routing
171 algorithm with required data structures and algorithms.
172 </dd>
173 <dt>Underlay Interface</dt>
174 <dd>
175 The DHT Underlay Interface is an abstraction layer on top of the
176 supported links of a peer. Peers may be linked by a variety of
177 different transports, including "classical" protocols such as
178 TCP, UDP and TLS or advanced protocols such as GNUnet, L2P or Tor.
179 </dd>
180 </dl>
181 </section>
182 <section anchor="underlay" numbered="true" toc="default">
183 <name>Underlay</name>
184 <t>
185 Discuss the DHT underlay concept here.
186 </t>
187 </section>
110 <section anchor="connectivity" numbered="true" toc="default"> 188 <section anchor="connectivity" numbered="true" toc="default">
111 <name>Connectivity and addressing</name> 189 <name>Connectivity and addressing</name>
112 <t> 190 <t>
@@ -699,6 +777,40 @@ Purpose | Name | References | Description
699 <date year="2011"/> 777 <date year="2011"/>
700 </front> 778 </front>
701 </reference> 779 </reference>
780 <reference anchor="cadet" target="https://doi.org/10.1109/MedHocNet.2014.6849107">
781 <front>
782 <title>CADET: Confidential ad-hoc decentralized end-to-end transport</title>
783 <author initials="B." surname="Polot" fullname="Bartlomiej Polot">
784 <organization>Technische Universität München</organization>
785 </author>
786
787 <author initials="C." surname="Grothoff"
788 fullname="Christian Grothoff">
789 <organization>Technische Universität München</organization>
790 </author>
791 <date year="2014"/>
792 </front>
793 </reference>
794 <reference anchor="I-D.draft-schanzen-gns" target="https://datatracker.ietf.org/doc/draft-schanzen-gns/">
795 <front>
796 <title>The GNU Name System</title>
797 <author initials="M." surname="Schanzenbach" fullname="Martin Schanzenbach">
798 <organization>GNUnet e.V.</organization>
799 </author>
800
801 <author initials="C." surname="Grothoff"
802 fullname="Christian Grothoff">
803 <organization>GNUnet e.V.</organization>
804 </author>
805 <author initials="B." surname="Fix"
806 fullname="Bernd Fix">
807 <organization>GNUnet e.V.</organization>
808 </author>
809 <date year="2021"/>
810 </front>
811 </reference>
812
813
702 814
703 815
704 816