tng.dot (1190B)
1 // house = application 2 // circle (default) = service 3 // box = daemon 4 // diamond = library 5 // black line = dependency 6 // blue line = extension via plugin 7 // red line = possibly useful 8 // dashed = in planning 9 10 // this is what we have...o 11 digraph tng { 12 // splines = true; 13 compound=true; 14 subgraph cluster0 { 15 label="Our peer"; 16 style=dashed; 17 color=black; 18 subgraph cluster1 { 19 style=solid; 20 color=black; 21 tcp; 22 udp; 23 others [style=dotted]; 24 label="Communicators"; 25 } 26 subgraph cluster2 { 27 style=solid; 28 color=black; 29 dht; 30 fs; 31 cadet; 32 label="Applications"; 33 } 34 cadet -> core [ltail=cluster2,label="Communicate with peers"]; 35 dht -> transport [ltail=cluster2,label="Suggest connection to peer"]; 36 core -> transport [label="Send/receive messages via secure channel"]; 37 transport -> tcp [lhead=cluster1,dir=both,label="Offer connectivity/channel to other peer"]; 38 udp -> nat [label="Get addresses"]; 39 tcp -> nat; 40 } 41 subgraph cluster3 { 42 rank = sink; 43 style=dashed; 44 color=black; 45 peer3; 46 peer1; 47 peer2; 48 label="Other peers"; 49 } 50 51 52 tcp -> peer1 [dir=both]; 53 udp -> peer2; 54 transport->peer1 [style=invis]; 55 }