PrivateSend P2P messages

- Add diagram of message exchange showing typical PrivateSend session
This commit is contained in:
thephez 2017-11-09 12:38:34 -05:00
parent 4e4255c2c1
commit 1d999fa23c
3 changed files with 128 additions and 0 deletions

View file

@ -0,0 +1,33 @@
digraph {
size="6.25";
rankdir=LR
//nodesep=0.05;
//ranksep=0.1;
//splines="false"
edge [ penwidth = 1.75, fontname="Sans" ] //,style="dashed", dir="none" ]
node [ penwidth = 1.75, shape = "box", fontname="Sans", ]
graph [ penwidth = 1.75, fontname="Sans" ]
"Node" -> Masternode [ label="1. dsa", style="dashed" ];
Masternode -> "Node" [ label="2. dsq" ];
"Node" -> Masternode [ label="3. dsi", style="dashed" ];
Masternode -> "Node" [ label="4. dsf" ];
"Node" -> Masternode [ label="5. dss", style="dashed" ];
Masternode -> "Node" [ label="6. dsc" ];
// Relay to network
Masternode -> "Network" [ label="7. dstx" ];
{
node [ shape = "none" ];
label1 [ label = "PrivateSend\nClients" ];
label2 [ label = "Selected Mixing\nNode" ];
label3 [ label = "Transaction\nBroadcast" ];
label1 -> label2 -> label3 [style = "invis" ];
}
label = "Overview Of P2P Protocol PrivateSend Request and Reply Messages"
}

View file

@ -0,0 +1,88 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.38.0 (20140413.2041)
-->
<!-- Title: %3 Pages: 1 -->
<svg width="450pt" height="217pt"
viewBox="0.00 0.00 450.00 217.48" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(0.910931 0.910931) rotate(0) translate(4 234.745)">
<title>%3</title>
<polygon fill="white" stroke="none" points="-4,4 -4,-234.745 490,-234.745 490,4 -4,4"/>
<text text-anchor="middle" x="243" y="-7.8" font-family="Sans" font-size="14.00">Overview Of P2P Protocol PrivateSend Request and Reply Messages</text>
<!-- Node -->
<g id="node1" class="node"><title>Node</title>
<polygon fill="none" stroke="black" stroke-width="1.75" points="79,-104.745 25,-104.745 25,-68.745 79,-68.745 79,-104.745"/>
<text text-anchor="middle" x="52" y="-83.045" font-family="Sans" font-size="14.00">Node</text>
</g>
<!-- Masternode -->
<g id="node2" class="node"><title>Masternode</title>
<polygon fill="none" stroke="black" stroke-width="1.75" points="292,-104.745 194,-104.745 194,-68.745 292,-68.745 292,-104.745"/>
<text text-anchor="middle" x="243" y="-83.045" font-family="Sans" font-size="14.00">Masternode</text>
</g>
<!-- Node&#45;&gt;Masternode -->
<g id="edge1" class="edge"><title>Node&#45;&gt;Masternode</title>
<path fill="none" stroke="black" stroke-width="1.75" stroke-dasharray="5,2" d="M63.4682,-104.842C74.9045,-122.607 95.0378,-148.61 120.5,-159.745 137.603,-167.224 145.106,-166.52 162.5,-159.745 186.658,-150.336 207.925,-129.774 222.37,-112.863"/>
<polygon fill="black" stroke="black" stroke-width="1.75" points="225.252,-114.868 228.895,-104.919 219.843,-110.425 225.252,-114.868"/>
<text text-anchor="middle" x="141.5" y="-169.545" font-family="Sans" font-size="14.00">1. dsa</text>
</g>
<!-- Node&#45;&gt;Masternode -->
<g id="edge3" class="edge"><title>Node&#45;&gt;Masternode</title>
<path fill="none" stroke="black" stroke-width="1.75" stroke-dasharray="5,2" d="M79.0899,-103.999C91.1582,-110.978 106.008,-118.211 120.5,-121.745 147.866,-128.418 178.325,-119.608 201.9,-109.159"/>
<polygon fill="black" stroke="black" stroke-width="1.75" points="203.66,-112.2 211.227,-104.783 200.687,-105.862 203.66,-112.2"/>
<text text-anchor="middle" x="141.5" y="-128.545" font-family="Sans" font-size="14.00">3. dsi</text>
</g>
<!-- Node&#45;&gt;Masternode -->
<g id="edge5" class="edge"><title>Node&#45;&gt;Masternode</title>
<path fill="none" stroke="black" stroke-width="1.75" stroke-dasharray="5,2" d="M79.2796,-86.745C106.144,-86.745 148.758,-86.745 183.638,-86.745"/>
<polygon fill="black" stroke="black" stroke-width="1.75" points="183.719,-90.2451 193.719,-86.745 183.719,-83.2451 183.719,-90.2451"/>
<text text-anchor="middle" x="141.5" y="-90.545" font-family="Sans" font-size="14.00">5. dss</text>
</g>
<!-- Masternode&#45;&gt;Node -->
<g id="edge2" class="edge"><title>Masternode&#45;&gt;Node</title>
<path fill="none" stroke="black" stroke-width="1.75" d="M193.863,-73.4188C171.568,-68.8388 144.709,-65.5726 120.5,-68.745 110.128,-70.1042 99.083,-72.5907 88.9958,-75.2907"/>
<polygon fill="black" stroke="black" stroke-width="1.75" points="87.963,-71.9453 79.2882,-78.0279 89.8628,-78.6826 87.963,-71.9453"/>
<text text-anchor="middle" x="141.5" y="-72.545" font-family="Sans" font-size="14.00">2. dsq</text>
</g>
<!-- Masternode&#45;&gt;Node -->
<g id="edge4" class="edge"><title>Masternode&#45;&gt;Node</title>
<path fill="none" stroke="black" stroke-width="1.75" d="M213.74,-68.5401C189.253,-55.024 152.782,-40.2826 120.5,-48.745 108.829,-51.8045 97.0476,-57.3869 86.667,-63.3479"/>
<polygon fill="black" stroke="black" stroke-width="1.75" points="84.6846,-60.4567 77.9432,-68.6301 88.3102,-66.4446 84.6846,-60.4567"/>
<text text-anchor="middle" x="141.5" y="-52.545" font-family="Sans" font-size="14.00">4. dsf</text>
</g>
<!-- Masternode&#45;&gt;Node -->
<g id="edge6" class="edge"><title>Masternode&#45;&gt;Node</title>
<path fill="none" stroke="black" stroke-width="1.75" d="M224.688,-68.6519C209.758,-54.4504 186.816,-35.7822 162.5,-27.745 144.776,-21.8869 137.976,-21.1841 120.5,-27.745 102.52,-34.4952 86.1914,-48.4451 74.0989,-61.0861"/>
<polygon fill="black" stroke="black" stroke-width="1.75" points="71.2956,-58.9657 67.1402,-68.7116 76.4662,-63.6842 71.2956,-58.9657"/>
<text text-anchor="middle" x="141.5" y="-31.545" font-family="Sans" font-size="14.00">6. dsc</text>
</g>
<!-- Network -->
<g id="node3" class="node"><title>Network</title>
<polygon fill="none" stroke="black" stroke-width="1.75" points="475.5,-104.745 398.5,-104.745 398.5,-68.745 475.5,-68.745 475.5,-104.745"/>
<text text-anchor="middle" x="437" y="-83.045" font-family="Sans" font-size="14.00">Network</text>
</g>
<!-- Masternode&#45;&gt;Network -->
<g id="edge7" class="edge"><title>Masternode&#45;&gt;Network</title>
<path fill="none" stroke="black" stroke-width="1.75" d="M292.45,-86.745C321.736,-86.745 358.921,-86.745 388.106,-86.745"/>
<polygon fill="black" stroke="black" stroke-width="1.75" points="388.468,-90.2451 398.468,-86.745 388.468,-83.2451 388.468,-90.2451"/>
<text text-anchor="middle" x="347.5" y="-90.545" font-family="Sans" font-size="14.00">7. dstx</text>
</g>
<!-- label1 -->
<g id="node4" class="node"><title>label1</title>
<text text-anchor="middle" x="52" y="-215.545" font-family="Sans" font-size="14.00">PrivateSend</text>
<text text-anchor="middle" x="52" y="-200.545" font-family="Sans" font-size="14.00">Clients</text>
</g>
<!-- label2 -->
<g id="node5" class="node"><title>label2</title>
<text text-anchor="middle" x="243" y="-215.545" font-family="Sans" font-size="14.00">Selected Mixing</text>
<text text-anchor="middle" x="243" y="-200.545" font-family="Sans" font-size="14.00">Node</text>
</g>
<!-- label1&#45;&gt;label2 -->
<!-- label3 -->
<g id="node6" class="node"><title>label3</title>
<text text-anchor="middle" x="437" y="-215.545" font-family="Sans" font-size="14.00">Transaction</text>
<text text-anchor="middle" x="437" y="-200.545" font-family="Sans" font-size="14.00">Broadcast</text>
</g>
<!-- label2&#45;&gt;label3 -->
</g>
</svg>

After

Width:  |  Height:  |  Size: 6.1 KiB