Presentation is loading. Please wait.

Presentation is loading. Please wait.

Content Addressable Networks. CAN Associate with each node and item a unique id in a d-dimensional space Goals –Scales to hundreds of thousands of nodes.

Similar presentations


Presentation on theme: "Content Addressable Networks. CAN Associate with each node and item a unique id in a d-dimensional space Goals –Scales to hundreds of thousands of nodes."— Presentation transcript:

1 Content Addressable Networks

2 CAN Associate with each node and item a unique id in a d-dimensional space Goals –Scales to hundreds of thousands of nodes –Handles rapid arrival and failure of nodes Properties –Routing table size O(d) –Guarantees that a file is found in at most d*n1/d steps, where n is the total number of nodes Slide modified from another presentation

3 Overview (a,b) (x,y) Slide modified from another presentation

4 CAN Example: Two Dimensional Space Space divided between nodes All nodes cover the entire space Each node covers either a square or a rectangular area of ratios 1:2 or 2:1 Example: –Node n1:(1, 2) first node that joins  cover the entire space 1 234 5 670 1 2 3 4 5 6 7 0 n1 Slide modified from another presentation

5 CAN Example: Two Dimensional Space Node n2:(4, 2) joins  space is divided between n1 and n2 n2 finds a bootstrap node –use DNS n2 randomly chooses a point n2 sends a JOIN message to the bootstrap node message is routed to node currently handling chosen point zone is split and n2 gets half 1 234 5 670 1 2 3 4 5 6 7 0 n1 n2 Slide modified from another presentation

6 CAN Example: Two Dimensional Space Node n3:(3, 5) joins  space is divided between n1 and n3 n3 asks n1 to split n1 knows n3 is a neighbor n3 knows n1 is a neighbor n2 needs to be informed that n3 is now a neighbor 1 234 5 670 1 2 3 4 5 6 7 0 n1 n2 n3 Slide modified from another presentation

7 CAN Example: Two Dimensional Space Nodes n4:(5, 5) and n5:(6,6) join What if n6:(6, 3) joined? 1 234 5 670 1 2 3 4 5 6 7 0 n1 n2 n3 n4 n5 Slide modified from another presentation

8 Join Procedure Problems? –Zone may be small –Neighbors may be far away

9 CAN Example: Two Dimensional Space Nodes: n1:(1, 2); n2:(4,2); n3:(3, 5); n4:(5,5);n5:(6,6) Items: f1:(2,3); f2:(5,1); f3:(2,1); f4:(7,5); 1 234 5 670 1 2 3 4 5 6 7 0 n1 n2 n3 n4 n5 f1 f2 f3 f4 Slide modified from another presentation

10 CAN Example: Two Dimensional Space Each item is stored by the node who owns its mapping in the space 1 234 5 670 1 2 3 4 5 6 7 0 n1 n2 n3 n4 n5 f1 f2 f3 f4 Slide modified from another presentation

11 CAN: Query Example Each node knows its neighbors in the d-space Forward query to the neighbor that is closest to the query id Example: assume n1 queries f4 1 234 5 670 1 2 3 4 5 6 7 0 n1 n2 n3 n4 n5 f1 f2 f3 f4 Slide modified from another presentation

12 CAN: Query Example Each node knows its neighbors in the d-space Forward query to the neighbor that is closest to the query id Example: assume n1 queries f4 1 234 5 670 1 2 3 4 5 6 7 0 n1 n2 n3 n4 n5 f1 f2 f3 f4 Slide modified from another presentation

13 CAN: Query Example Each node knows its neighbors in the d-space Forward query to the neighbor that is closest to the query id Example: assume n1 queries f4 1 234 5 670 1 2 3 4 5 6 7 0 n1 n2 n3 n4 n5 f1 f2 f3 f4 Slide modified from another presentation

14 CAN: Query Example Each node knows its neighbors in the d-space Forward query to the neighbor that is closest to the query id Example: assume n1 queries f4 Can route around some failures –some failures require local flooding 1 234 5 670 1 2 3 4 5 6 7 0 n1 n2 n3 n4 n5 f1 f2 f3 f4 Slide modified from another presentation

15 Node Failure Recovery Simple failures –periodically inform neighbors of your neighbors – each node knows about its neighbor’s neighbors –if a node does not receive this update, it assumes that the neighbor failing to report has died –all neighbors discover independently and start a “takeover timer” running – why? –when timer expires, send TAKEOVER message to neighbor’s neighbors – contains current volume –if TAKEOVER received receiver volume is smaller, receiver sends TAKEOVER message –node with smallest volume takes over the zone Slide modified from another presentation

16 Node Failure Recovery More complex failure modes –simultaneous failure of multiple adjacent nodes –scoped flooding to discover neighbors –hopefully, a rare event Slide modified from another presentation

17 Discussion What are some of the shortcomings of this design? Is load balanced? What happens if neighbors are geographically far apart? What happens if one key is very popular? Slide modified from another presentation


Download ppt "Content Addressable Networks. CAN Associate with each node and item a unique id in a d-dimensional space Goals –Scales to hundreds of thousands of nodes."

Similar presentations


Ads by Google