Presentation is loading. Please wait.

Presentation is loading. Please wait.

P2P Group Meeting (ICS/FORTH) Monday, 28 March, 2005 A Scalable Content-Addressable Network Sylvia Ratnasamy, Paul Francis, Mark Handley, Richard Karp,

Similar presentations


Presentation on theme: "P2P Group Meeting (ICS/FORTH) Monday, 28 March, 2005 A Scalable Content-Addressable Network Sylvia Ratnasamy, Paul Francis, Mark Handley, Richard Karp,"— Presentation transcript:

1 P2P Group Meeting (ICS/FORTH) Monday, 28 March, 2005 A Scalable Content-Addressable Network Sylvia Ratnasamy, Paul Francis, Mark Handley, Richard Karp, Scott Shenker

2 In a nutshell... CAN is a distributed hash table. Consider a virtual world with specified geometry. Add some nodes uniformly. Each node holds information about its zone. Each node holds information about its neighbors. Zone: a chunk of the entire hash table.

3 How it works? We want to store a (key, data) pair. Use a uniform hash function to map the key in a point P in the virtual world. P lies in a zone. The node which is the owner of the zone now holds the (key, data) pair.

4 How it works? We want to retrieve the (key, value) pair. Apply the same hash function to key. You'll get P. Now you can travel from your node to the node-owner of the zone which P belongs to, using simple geometry.

5 Now, the horry details... CAN uses a virtual d-dimentional Cartesian coordinate space on a d-torus. The entire coordinate space is dynamically partitioned to zones, owned by n nodes. Add some black magic and you get: Average Routing Path: (d/4)(n 1/d ) hops. Nodes maintain: 2d neighbors. (*If d=lgn/2, then we have O(lgn))

6

7 Design – Construction Bootstrap process: via host caches. After the initial connection the new node selects a random point P and sends a JOIN request. The node that owns P splits its zone and sets the new node as a neighbor. Periodically update messages are exchanged between nodes located closed to the "neighborhood". Node insertion is a local process and affects only O(dimensions) existing nodes.

8 Node Departure Explicit hand over: a node sends its zone to one of its neighbors (the one with the smallest one), before it leaves the system. TAKEOVER: If a node doesn't receive an UPDATE message from one of its neighbors for a long period, then it takes the zone (recovery).

9 Design Improvements Goal: decrease routing latency by adding some nice features. Feature addition tradeoff: Per node state and system complexity is increased.

10 1. Multiple dimensions

11 2. Realities Reality: An independent coordinate space with a specific zone mapping. Having multiple realities, a data object is replicated to various locations in the system.

12 2. Realities

13 Realities vs Dimensions

14 3. RTT based routing Each node forwards a message to the neighbor with higher RTT (round-trip-time) ratio.

15 4. Zone Overloading Multiple peers (MAXPEERS~3,4) share the same zone in the system. Advantages - Reduced path length. Zone overloading has the same affect as reducing the nodes of the system. - Reduced per-hop latency. Each node has multiple choices. - Improved fault tolerance. A zone is less possible to be vacant.

16 5. Multiple hash functions

17 6. Topology Forcing Goal: apply an ordering based on RTT measures between each node and a set of landmarks (well known machines, i.e. DNS root names servers). Stretch: the ratio of the latency on the CAN network to the average latency on the IP network.

18 6. Topology Forcing

19 7. Uniform Partitioning When a new node enters in the system, another node must split its zone. If uniform partitioning is enabled, the node with the largest zone volume will be selected. Uniform partitioning is a load balancing technique.

20 8. Hot Spot Management Caching: Each node maintains a cash with keys of popular data objects. Replication: Each node may replicate popular data objects to its neighbors.

21 Design Review

22 Results with a fixed system size System Size = n 18

23 Transit-Stub Topology Generator TS topologies model networks using a 2-level hierarchy of routing domains with transit domains that interconnect lower level stub domains. H(intra-transit, transit-stub, intra-stub) R(low_limit, up_limit) {random values } Example H(100, 10, 1): A Transit-Stub topology with a hierarchical link delay assignment of 100ms on intra -transit links, 10ms on transit-stub links and 1ms on intra-stub links.

24

25 Main Result In a system with approximately 260,000 peers, CAN may achieve routing with a latency that is well within a factor of two of the underlying network latency.

26 Thank you for your time. :-) Elias Athanasopoulos elathan@ics.forth.gr http://www.csd.uoc.gr/~elathan/


Download ppt "P2P Group Meeting (ICS/FORTH) Monday, 28 March, 2005 A Scalable Content-Addressable Network Sylvia Ratnasamy, Paul Francis, Mark Handley, Richard Karp,"

Similar presentations


Ads by Google