summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorMartin Schanzenbach <mschanzenbach@posteo.de>2021-03-01 17:57:57 +0100
committerMartin Schanzenbach <mschanzenbach@posteo.de>2021-03-01 17:57:57 +0100
commit83223ea442960ca67bdac18c6c9add79e45e6b84 (patch)
tree8804fdf8418cf2d5525353af170b1ed654b28753 /doc
parentc666bf95d0ba0a6eddcf0e6953b05ef375f6a75e (diff)
-handbook: add TNG graphics. Minor fixes
Diffstat (limited to 'doc')
-rw-r--r--doc/handbook/chapters/developer.texi30
-rw-r--r--doc/handbook/images/tng.dot55
-rw-r--r--doc/handbook/images/tng.pngbin0 -> 75821 bytes
3 files changed, 63 insertions, 22 deletions
diff --git a/doc/handbook/chapters/developer.texi b/doc/handbook/chapters/developer.texi
index 0d3b4739b..8bc8c8005 100644
--- a/doc/handbook/chapters/developer.texi
+++ b/doc/handbook/chapters/developer.texi
@@ -9485,18 +9485,6 @@ of using plugins for the actual transmission operations and the ATS subsystem
to select a plugin and allocate bandwidth. The following key issues have been
identified with this design:
-@menu
-* Issues with TRANSPORT::
-* Design goals of TNG::
-* HELLO-NG::
-* Priorities and preferences::
-* Communicators::
-@end menu
-
-@node Issues with TRANSPORT
-@subsection Issues with TRANSPORT
-
-
@itemize @bullet
@item Bugs in one plugin can affect the TRANSPORT service and other plugins.
There is at least one open bug that affects sockets, where the origin is
@@ -9531,6 +9519,13 @@ identified with this design:
@end itemize
+@menu
+* Design goals of TNG::
+* HELLO-NG::
+* Priorities and preferences::
+* Communicators::
+@end menu
+
@node Design goals of TNG
@subsection Design goals of TNG
@@ -9564,17 +9559,8 @@ In order to address the above issues, we want to:
The new architecture is planned as follows:
-@verbatim
-
- APPLICATIONS
- |
- |
-CORE -- TRANSPORT -- COMMUNICATOR(S) -- NAT
- \ /
- \ /
- PEERSTORE
-@end verbatim
+@image{images/tng,5in,,TNG architecture.}
TRANSPORT's main objective is to establish bi-directional virtual links using a
variety of possibly uni-directional communicators. Links undergo the following
diff --git a/doc/handbook/images/tng.dot b/doc/handbook/images/tng.dot
new file mode 100644
index 000000000..14e72ee04
--- /dev/null
+++ b/doc/handbook/images/tng.dot
@@ -0,0 +1,55 @@
+// house = application
+// circle (default) = service
+// box = daemon
+// diamond = library
+// black line = dependency
+// blue line = extension via plugin
+// red line = possibly useful
+// dashed = in planning
+
+// this is what we have...o
+digraph tng {
+ // splines = true;
+ compound=true;
+ subgraph cluster0 {
+ label="Our peer";
+ style=dashed;
+ color=black;
+ subgraph cluster1 {
+ style=solid;
+ color=black;
+ tcp;
+ udp;
+ others [style=dotted];
+ label="Communicators";
+ }
+ subgraph cluster2 {
+ style=solid;
+ color=black;
+ dht;
+ fs;
+ cadet;
+ label="Applications";
+ }
+ cadet -> core [ltail=cluster2,label="Communicate with peers"];
+ dht -> transport [ltail=cluster2,label="Suggest connection to peer"];
+ core -> transport [label="Send/receive messages via secure channel"];
+ transport -> tcp [lhead=cluster1,dir=both,label="Offer connectivity/channel to other peer"];
+ udp -> nat [label="Get addresses"];
+ tcp -> nat;
+ }
+ subgraph cluster3 {
+ rank = sink;
+ style=dashed;
+ color=black;
+ peer3;
+ peer1;
+ peer2;
+ label="Other peers";
+ }
+
+
+ tcp -> peer1 [dir=both];
+ udp -> peer2;
+ transport->peer1 [style=invis];
+}
diff --git a/doc/handbook/images/tng.png b/doc/handbook/images/tng.png
new file mode 100644
index 000000000..3b93b77cc
--- /dev/null
+++ b/doc/handbook/images/tng.png
Binary files differ