From 83223ea442960ca67bdac18c6c9add79e45e6b84 Mon Sep 17 00:00:00 2001 From: Martin Schanzenbach Date: Mon, 1 Mar 2021 17:57:57 +0100 Subject: -handbook: add TNG graphics. Minor fixes --- doc/handbook/chapters/developer.texi | 30 +++++-------------- doc/handbook/images/tng.dot | 55 +++++++++++++++++++++++++++++++++++ doc/handbook/images/tng.png | Bin 0 -> 75821 bytes 3 files changed, 63 insertions(+), 22 deletions(-) create mode 100644 doc/handbook/images/tng.dot create mode 100644 doc/handbook/images/tng.png (limited to 'doc') 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 Binary files /dev/null and b/doc/handbook/images/tng.png differ -- cgit v1.2.3