]> git.mxchange.org Git - hub-docs.git/blobdiff - mindmaps/Generic Object Sharing Protocol.mm
Bootstrapping steps updated
[hub-docs.git] / mindmaps / Generic Object Sharing Protocol.mm
index 26765aa4453c4466ea215098ea176815db44304c..3a39fa04c311d1d7641cc9cf7366ebc668707c4b 100644 (file)
@@ -1,4 +1,4 @@
-<map version="0.8.1">
+<map version="0.8.0">
 <!-- To view this file, download free mind mapping software FreeMind from http://freemind.sourceforge.net -->
 <node CREATED="1236122299751" ID="Freemind_Link_1069566441" MODIFIED="1236902424887" TEXT="Generic Object-Sharing Protocol">
 <font BOLD="true" NAME="Dialog" SIZE="20"/>
 <node CREATED="1236125114584" ID="Freemind_Link_1617168424" MODIFIED="1236125131976" TEXT="Unregistered hubs does not receive negative votings"/>
 </node>
 </node>
-<node CREATED="1236126779348" FOLDED="true" ID="Freemind_Link_1339348415" MODIFIED="1236899597346" POSITION="right" TEXT="Bootstrapping">
+<node CREATED="1236126779348" ID="Freemind_Link_1339348415" MODIFIED="1253894423583" POSITION="right" TEXT="Bootstrapping">
 <font BOLD="true" NAME="Dialog" SIZE="16"/>
-<node CREATED="1236126838827" ID="Freemind_Link_453620216" MODIFIED="1236126858610" TEXT="At least one, better 3 to 4, master-nodes are required">
+<node CREATED="1236126838827" FOLDED="true" ID="Freemind_Link_453620216" MODIFIED="1236126858610" TEXT="At least one, better 3 to 4, master-nodes are required">
 <node CREATED="1236126861889" ID="Freemind_Link_265648584" MODIFIED="1236126877833" TEXT="Aka. &quot;Bootstrap-Nodes&quot;"/>
+<node CREATED="1253894510297" ID="Freemind_Link_1226811309" MODIFIED="1253894527932" TEXT="They should be listed in the configuration for all applications"/>
+<node CREATED="1253894528917" ID="Freemind_Link_979767017" MODIFIED="1253894547575" TEXT="A comma-seperated list of hub IPs with port numbers seperated by double-dot (:)"/>
 </node>
-<node CREATED="1236126921639" ID="Freemind_Link_854375254" MODIFIED="1236126946151" TEXT="Bootstrap-Nodes are working stand-alone">
+<node CREATED="1236126921639" FOLDED="true" ID="Freemind_Link_854375254" MODIFIED="1236126946151" TEXT="Bootstrap-Nodes are working stand-alone">
 <node CREATED="1236126947723" ID="Freemind_Link_882684293" MODIFIED="1236126962499" TEXT="No central &quot;Super-Node&quot; is required"/>
 <node CREATED="1236126965866" ID="Freemind_Link_1661888163" MODIFIED="1236126982695" TEXT="Too much traffic would have to flow through it"/>
 <node CREATED="1236127003403" ID="Freemind_Link_1121780060" MODIFIED="1236127025469" TEXT="Attacks on the network by censorship are reduced"/>
 <node CREATED="1236127480391" ID="Freemind_Link_1849172644" MODIFIED="1236127490538" TEXT=".. or connect with each other"/>
 </node>
 </node>
-<node CREATED="1236127732643" ID="Freemind_Link_608191462" MODIFIED="1236127747508" TEXT="Hub is fetching a list of other hubs">
+<node CREATED="1253894719381" FOLDED="true" ID="Freemind_Link_1225609057" MODIFIED="1253894741309" TEXT="1. Hub checks if there is a list of master nodes already stored">
+<node CREATED="1253894741787" ID="Freemind_Link_712469416" MODIFIED="1253894767578" TEXT="If so, it skips fetching the list of nodes step"/>
+</node>
+<node CREATED="1253894428802" FOLDED="true" ID="Freemind_Link_934377424" MODIFIED="1253894784130" TEXT="2. Hub is announcing itself to the upper bootstrap hub(s)">
+<node CREATED="1253894443360" ID="Freemind_Link_1716805408" MODIFIED="1253894453653" TEXT="This should be done generic to keep things easy"/>
+<node CREATED="1253894454388" ID="Freemind_Link_1472603257" MODIFIED="1253894468689" TEXT="Recommended is maybe an XML with all neccessary data"/>
+<node CREATED="1253895161895" ID="Freemind_Link_207316718" MODIFIED="1253895177811" TEXT="The session id will not be included here">
+<node CREATED="1253895178123" ID="Freemind_Link_772369973" MODIFIED="1253895194476" TEXT="A bootstrap node will never try to connect clients with hubs"/>
+<node CREATED="1253895196001" ID="Freemind_Link_1528083000" MODIFIED="1253895256138" TEXT="It should only &quot;bootstrap&quot; (tell the hub where it should start sharing its objects)">
+<icon BUILTIN="desktop_new"/>
+<icon BUILTIN="messagebox_warning"/>
+</node>
+</node>
+</node>
+<node CREATED="1236127732643" FOLDED="true" ID="Freemind_Link_608191462" MODIFIED="1253894770380" TEXT="3. Hub is fetching a list of other hubs">
 <node CREATED="1236127749005" ID="Freemind_Link_195277951" MODIFIED="1236127763644" TEXT="They must have at least X matching object types"/>
-<node CREATED="1236127559361" ID="Freemind_Link_453619955" MODIFIED="1236127593404" TEXT="Hashes of hub-lists should match"/>
+<node CREATED="1253894968712" ID="Freemind_Link_823475561" MODIFIED="1253895023332" STYLE="fork" TEXT="If a bootstrap node is full it forwards the hub to an other bootstrap hub"/>
+<node CREATED="1253895005469" ID="Freemind_Link_1371102915" MODIFIED="1253895019605" STYLE="fork" TEXT="If that hub is again full the hub will be forwarded to a list node"/>
+<node CREATED="1253895024033" ID="Freemind_Link_897238975" MODIFIED="1253895056593" STYLE="fork" TEXT="If wether no free bootstrap nor list node is available the hub waits some time and tries it again"/>
+<node CREATED="1236127559361" ID="Freemind_Link_453619955" MODIFIED="1253894864468" TEXT="Hashes of hub-lists distributed over the bootstrap and list nodes should match">
+<node CREATED="1253894867514" ID="Freemind_Link_1552507439" MODIFIED="1253894879514" TEXT="This can be ensured by a DHT">
+<node CREATED="1253894880687" ID="Freemind_Link_1112603271" MODIFIED="1253894888420" TEXT="DHT = Distributed Hash Table"/>
+<node CREATED="1253894891016" ID="Freemind_Link_123842120" MODIFIED="1253894911641" TEXT="Which format?">
+<icon BUILTIN="xmag"/>
+</node>
+</node>
+</node>
 <node CREATED="1236127598383" ID="Freemind_Link_574241054" MODIFIED="1236127616425" TEXT="If to much are inconsistent:">
 <node CREATED="1236127617853" ID="Freemind_Link_1253336655" MODIFIED="1236127632709" TEXT="No connect can happen">
 <node CREATED="1236127634178" ID="Freemind_Link_1412643595" MODIFIED="1236127642167" TEXT="Hub list is rejected"/>
 <node CREATED="1236127660613" ID="Freemind_Link_1134140787" MODIFIED="1236127715377" TEXT="Replication of the hub-list is required by all bootstrap-nodes"/>
 </node>
 </node>
+<node CREATED="1253894942579" FOLDED="true" ID="Freemind_Link_210978828" MODIFIED="1253894962729" TEXT="4. Hub connects to gathered master nodes">
+<node CREATED="1253895103324" ID="Freemind_Link_1492702329" MODIFIED="1253895129180" TEXT="It again announces its object types to the master nodes"/>
+<node CREATED="1253895133862" ID="Freemind_Link_447040624" MODIFIED="1253895150262" TEXT="Again it provides the session id so the master node can map session id -&gt; hub id"/>
+</node>
+<node CREATED="1253895314125" FOLDED="true" ID="Freemind_Link_1052054603" MODIFIED="1253895326100" TEXT="5. If all authorization steps are completed:">
+<node CREATED="1253895330153" ID="Freemind_Link_1721222063" MODIFIED="1253895354745" TEXT="The hub starts to accept client connections">
+<node CREATED="1253895355292" ID="Freemind_Link_501632661" MODIFIED="1253895359347" TEXT="(It already listens to them but rejects them)"/>
+</node>
+<node CREATED="1253895363495" ID="Freemind_Link_663261299" MODIFIED="1253895380188" TEXT="Objects will now be shared with other hubs which accepts the same object types"/>
+</node>
 </node>
 <node CREATED="1236122378771" FOLDED="true" ID="_" MODIFIED="1236899597333" POSITION="right" TEXT="Karma">
 <font BOLD="true" NAME="Dialog" SIZE="16"/>