(OK)  Graphviz - MANET - multiple interfaces multiple paths_Android


/*
dot example3.dot -Tpng -o example3.png
*/

digraph G {

size="10,10";

rankdir=LR // set graph direction rankdir="TB", "LR", "BT", "RL"

//ranksep="1.0 equally"
//splines=line
nodesep=0.4;
//node [label=""];

subgraph cluster_1 {
color=white;
node [style=solid, color=black, shape=circle, width=.4 height=.4, fixedsize=true];
M1;
//label = "layer 1";
}

subgraph cluster_2 {
color=white;
node [style=solid, color=black, shape=circle, width=.4 height=.4, fixedsize=true];
M2;
//label = "layer 2";
}

subgraph cluster_3 {
color=white;
node [style=solid, color=black, shape=circle, width=.4 height=.4, fixedsize=true];
M3;
//label = "layer 2";
}

subgraph cluster_4 {
color=white;
node [style=solid, color=black, shape=circle, width=.4 height=.4, fixedsize=true];
M4;
//label = "layer 2";
}

subgraph cluster_5 {
color=white;
node [style=solid, color=black, shape=circle, width=.4 height=.4, fixedsize=true];
M5;
//label = "layer 3";
}

//At present, the recognized style names are "dashed", "dotted", "solid", "invis" and "bold" for nodes and edges, "tapered" for edges only, and "filled", "striped", "wedged", "diagonals" and "rounded" for nodes only. The styles "filled", "striped" and "rounded" are recognized for clusters. The style "radial" is recognized for nodes, clusters and graphs, and indicates a radial-style gradient fill if applicable.


//-------------------------------------------------------------------------------------------------
// original MPTCP
/*
M1 -> M2 [style=bold, dir="both", arrowhead=none, arrowtail=none, color=red]
M1 -> M2 [style=bold, dir="both", arrowhead=none, arrowtail=none, color=red]
M1 -> M2 [style=bold, dir="both", arrowhead=none, arrowtail=none, color=red]

M1 -> M3 [style=solid, dir="both", arrowhead=none, arrowtail=none]
M1 -> M3 [style=solid, dir="both", arrowhead=none, arrowtail=none]
M1 -> M3 [style=solid, dir="both", arrowhead=none, arrowtail=none]

M1 -> M4 [style=solid, dir="both", arrowhead=none, arrowtail=none]
M1 -> M4 [style=solid, dir="both", arrowhead=none, arrowtail=none]
M1 -> M4 [style=solid, dir="both", arrowhead=none, arrowtail=none]

M2 -> M5 [style=bold, dir="both", arrowhead=none, arrowtail=none, color=red]
M2 -> M5 [style=bold, dir="both", arrowhead=none, arrowtail=none, color=red]
M2 -> M5 [style=bold, dir="both", arrowhead=none, arrowtail=none, color=red]

M3 -> M5 [style=solid, dir="both", arrowhead=none, arrowtail=none]
M3 -> M5 [style=solid, dir="both", arrowhead=none, arrowtail=none]
M3 -> M5 [style=solid, dir="both", arrowhead=none, arrowtail=none]

M4 -> M5 [style=solid, dir="both", arrowhead=none, arrowtail=none]
M4 -> M5 [style=solid, dir="both", arrowhead=none, arrowtail=none]
M4 -> M5 [style=solid, dir="both", arrowhead=none, arrowtail=none]

M2 -> M3 [style=solid, dir="both", arrowhead=none, arrowtail=none, constraint=false]
M2 -> M3 [style=solid, dir="both", arrowhead=none, arrowtail=none, constraint=false]
M2 -> M3 [style=solid, dir="both", arrowhead=none, arrowtail=none, constraint=false]

M4 -> M3 [style=solid, dir="both", arrowhead=none, arrowtail=none, constraint=false]
M4 -> M3 [style=solid, dir="both", arrowhead=none, arrowtail=none, constraint=false]
M4 -> M3 [style=solid, dir="both", arrowhead=none, arrowtail=none, constraint=false]
//*/
//-------------------------------------------------------------------------------------------------


//-------------------------------------------------------------------------------------------------
// original MPTCP
//*
M1 -> M2 [style=solid, dir="both", arrowhead=none, arrowtail=none]
M1 -> M2 [style=solid, dir="both", arrowhead=none, arrowtail=none]
M1 -> M2 [style=bold, dir="both", arrowhead=none, arrowtail=none, color=red]

M1 -> M3 [style=solid, dir="both", arrowhead=none, arrowtail=none]
M1 -> M3 [style=bold, dir="both", arrowhead=none, arrowtail=none, color=red]
M1 -> M3 [style=solid, dir="both", arrowhead=none, arrowtail=none]

M1 -> M4 [style=bold, dir="both", arrowhead=none, arrowtail=none, color=red]
M1 -> M4 [style=solid, dir="both", arrowhead=none, arrowtail=none]
M1 -> M4 [style=solid, dir="both", arrowhead=none, arrowtail=none]

M2 -> M5 [style=solid, dir="both", arrowhead=none, arrowtail=none]
M2 -> M5 [style=solid, dir="both", arrowhead=none, arrowtail=none]
M2 -> M5 [style=bold, dir="both", arrowhead=none, arrowtail=none, color=red]

M3 -> M5 [style=solid, dir="both", arrowhead=none, arrowtail=none]
M3 -> M5 [style=bold, dir="both", arrowhead=none, arrowtail=none, color=red]
M3 -> M5 [style=solid, dir="both", arrowhead=none, arrowtail=none]

M4 -> M5 [style=bold, dir="both", arrowhead=none, arrowtail=none, color=red]
M4 -> M5 [style=solid, dir="both", arrowhead=none, arrowtail=none]
M4 -> M5 [style=solid, dir="both", arrowhead=none, arrowtail=none]

M2 -> M3 [style=solid, dir="both", arrowhead=none, arrowtail=none, constraint=false]
M2 -> M3 [style=solid, dir="both", arrowhead=none, arrowtail=none, constraint=false]
M2 -> M3 [style=solid, dir="both", arrowhead=none, arrowtail=none, constraint=false]

M4 -> M3 [style=solid, dir="both", arrowhead=none, arrowtail=none, constraint=false]
M4 -> M3 [style=solid, dir="both", arrowhead=none, arrowtail=none, constraint=false]
M4 -> M3 [style=solid, dir="both", arrowhead=none, arrowtail=none, constraint=false]
//*/
//-------------------------------------------------------------------------------------------------
}