21 |
-Of couse, there is the possibility to route in constant times, but it requires that *each** node |
-Of couse, there is the possibility to route in constant times, but it requires that *each** node |
22 |
maintains information about all the nodes in the network. Therefore , practically, this method |
maintains information about all the nodes in the network. Therefore , practically, this method |
23 |
impossible |
impossible |
24 |
-Example systems: Chord, CAN, Kademlia, Pastry, Tapestry |
-Example systems: Chord, CAN, Kademlia, Pastry, Tapestry, Viceroy |
25 |
|
|
26 |
*Update* |
*Update* |
27 |
-Viceroy system achieves O(log n) hops with only O(1) neighbors |
-Viceroy system achieves O(log n) hops with only O(1) neighbors |
75 |
This summary table is far from complete (and from total truth) |
This summary table is far from complete (and from total truth) |
76 |
|
|
77 |
Insert/Delete Space Search |
Insert/Delete Space Search |
78 |
Chord: O(log^2 n) O(nlog n) O(log n) |
Chord: O(log^2 n) O(log n) O(log n) |
79 |
CAN: O(r) O(nr) O((r/4)n^(1/r)), where r is the number of dimensions used in a virtual space |
CAN: O(r) O(r) O(rn^(1/r)), where r is the number of dimensions used in a virtual space |
80 |
Pastry: O(log^2 n) O(nlog n) O(log n) |
Pastry: O(log^2 n) O(log n) O(log n) |
81 |
Tapestry: O(log^2 n) O(nlog n) O(log n) |
Tapestry: O(log^2 n) O(log n) O(log n) |
82 |
Kademlia: N/A O(log n) O(log n) |
Kademlia: O(log n)* O(log n) O(log n) |
83 |
Viceroy: N/A 7 O(log n) |
Viceroy: O(log n) O(1) O(log n) |
84 |
Small Worlds: N/A O(1) O(log^2 n) |
Small Worlds: O(1) O(1) O(log^2 n) |
85 |
Flooding: N/A O(1) "high" |
Flooding: N/A O(1) "high" |
86 |
Hybrid: N/A N/A N/A |
Hybrid: N/A N/A N/A |
87 |
Social: N/A O(1) N/A |
Social: N/A O(1) N/A |
88 |
|
|
89 |
*I will try fill in N/As as quickly as possible!* |
* = In Kademlia, there is no action required when nodes leaves the system |
90 |
|
|
91 |
Insert/Delete: |
Insert/Delete: |
92 |
Number of messages when a node joins or leaves the network. |
Number of messages when a node joins or leaves the network. |
93 |
|
|
94 |
Space: |
Space: |
95 |
Total amount of space required in a system for routing tables |
Space required for a node's neighbors |
96 |
|
|
97 |
Search: |
Search: |
98 |
Number of messages when an object lookup is performed |
Number of messages when an object lookup is performed |