80 likes | 92 Views
This system provides decentralized, fault-resilient, and scalable object location and routing in P2P applications. It uses unique 128-bit identifiers for nodes with circular node space organization. Key-based routing ensures efficient message delivery, while maintaining locality through proximity metrics. Evaluation shows efficient routing with minimal impact from node failures.
E N D
PastryAntony Rowstron and Peter Druschel Presented By David Deschenes
Introduction • General substrate for P2P applications • Provides object location and routing • Characteristics • Completely decentralized • Fault-resilient • Scalable • Reliability
Design • Circular Node Space • Nodes randomly assigned unique 128 bit identifiers • Uniform distribution of identifiers • Identifiers indicate position in space • Messages and Keys • Messages assigned N-bit keys • Each message routed to the node whose identifier is numerically closest to its assigned key • Key generation is application specific
Node State • Leaf Set • L closest nodes in the node space • Routing Table • Identifies 2b-1 hosts whose identifiers match the current node identifier in n bits • Neighborhood Set • M closest nodes according to a proximity metric
Network Organization • Node Arrival • New node acquires the identifier X and routes a join message with key X through node A • New nodes initialize their state based upon state shared by nodes that route its join message • Node Departure • If a member of a node’s leaf set is lost, the leaf set is expanded outward to find a new node • If a routing table entry is lost a node in the same row is consulted for a replacement
Maintaining Locality • Proximity based on a scalar metric • E.g. IP routing hops, geographic distance • Metric determined by application • Assumed that the triangulation inequality holds for the metric • Connections to nodes with greater proximity are desired • Facilitated by the neighborhood set
Message Routing • Check the leaf set • If destination present route to it directly • Consult the routing table • Forward to a node whose identifier matches the message key in at least one more bit • Forward to a node whose identifier is numerically closer to the message key
Evaluation • Number of routing hops scales with the network size (log2bN) – Figure 4. • Routes are only 30% to 40% longer despite minimal routing tables – Figure 6. • Able to locate one of the top two nodes 92% of the time • Minimally impacted by node failure – Figure 10.