Brocade Landmark Routing on P2P Networks Gisik Kwon April 9, 2002.

Slides:



Advertisements
Similar presentations
Brocade: Landmark Routing on Peer to Peer Networks Ben Y. Zhao Yitao Duan, Ling Huang, Anthony Joseph, John Kubiatowicz IPTPS, March 2002.
Advertisements

Quality-of-Service Routing in IP Networks Donna Ghosh, Venkatesh Sarangan, and Raj Acharya IEEE TRANSACTIONS ON MULTIMEDIA JUNE 2001.
Ion Stoica, Robert Morris, David Karger, M. Frans Kaashoek, Hari Balakrishnan MIT and Berkeley presented by Daniel Figueiredo Chord: A Scalable Peer-to-peer.
Pastry Peter Druschel, Rice University Antony Rowstron, Microsoft Research UK Some slides are borrowed from the original presentation by the authors.
Scalable Content-Addressable Network Lintao Liu
Precept 6 Hashing & Partitioning 1 Peng Sun. Server Load Balancing Balance load across servers Normal techniques: Round-robin? 2.
Implementation and Deployment of a Large-scale Network Infrastructure Ben Y. Zhao L. Huang, S. Rhea, J. Stribling, A. D. Joseph, J. D. Kubiatowicz EECS,
The Chord P2P Network Some slides have been borowed from the original presentation by the authors.
Network Layer: Internet-Wide Routing & BGP Dina Katabi & Sam Madden.
1 Turning Heterogeneity into an Advantage in Overlay Routing Gisik Kwon Dept. of Computer Science and Engineering Arizona State University Published in.
1 Accessing nearby copies of replicated objects Greg Plaxton, Rajmohan Rajaraman, Andrea Richa SPAA 1997.
Scribe: A Large-Scale and Decentralized Application-Level Multicast Infrastructure Miguel Castro, Peter Druschel, Anne-Marie Kermarrec, and Antony L. T.
Internet Indirection Infrastructure Ion Stoica UC Berkeley.
Brocade Landmark Routing on Structured P2P Overlays Ben Zhao, Yitao Duan, Ling Huang Anthony Joseph and John Kubiatowicz (IPTPS 2002) Goals Improve routing.
Slide Set 15: IP Multicast. In this set What is multicasting ? Issues related to IP Multicast Section 4.4.
A Scalable Content-Addressable Network Authors: S. Ratnasamy, P. Francis, M. Handley, R. Karp, S. Shenker University of California, Berkeley Presenter:
Overlay Networks EECS 122: Lecture 18 Department of Electrical Engineering and Computer Sciences University of California Berkeley.
Tapestry : An Infrastructure for Fault-tolerant Wide-area Location and Routing Presenter: Chunyuan Liao March 6, 2002 Ben Y.Zhao, John Kubiatowicz, and.
Weaving a Tapestry Distributed Algorithms for Secure Node Integration, Routing and Fault Handling Ben Y. Zhao (John Kubiatowicz, Anthony Joseph) Fault-tolerant.
Locality Optimizations in Tapestry Jeremy Stribling Joint work with: Kris Hildrum Ben Y. Zhao Anthony D. Joseph John D. Kubiatowicz Sahara/OceanStore Winter.
Decentralized Location Services CS273 Guest Lecture April 24, 2001 Ben Y. Zhao.
Spring Routing & Switching Umar Kalim Dept. of Communication Systems Engineering 06/04/2007.
CS 268: Overlay Networks: Distributed Hash Tables Kevin Lai May 1, 2001.
Or, Providing High Availability and Adaptability in a Decentralized System Tapestry: Fault-resilient Wide-area Location and Routing Issues Facing Wide-area.
Or, Providing Scalable, Decentralized Location and Routing Network Services Tapestry: Fault-tolerant Wide-area Application Infrastructure Motivation and.
An Evaluation of Scalable Application-level Multicast Using Peer-to-peer Overlays Miguel Castro, Michael B. Jones, Anne-Marie Kermarrec, Antony Rowstron,
P2P Course, Structured systems 1 Skip Net (9/11/05)
Tapestry: A Resilient Global-scale Overlay for Service Deployment Ben Y. Zhao, Ling Huang, Jeremy Stribling, Sean C. Rhea, Anthony D. Joseph, and John.
“Umbrella”: A novel fixed-size DHT protocol A.D. Sotiriou.
Topology-Aware Overlay Networks By Huseyin Ozgur TAN.
Tapestry An off-the-wall routing protocol? Presented by Peter, Erik, and Morten.
1CS 6401 Peer-to-Peer Networks Outline Overview Gnutella Structured Overlays BitTorrent.
Computer Networks Layering and Routing Dina Katabi
Content Distribution March 8, : Application Layer1.
Mobile Ad-hoc Pastry (MADPastry) Niloy Ganguly. Problem of normal DHT in MANET No co-relation between overlay logical hop and physical hop – Low bandwidth,
1 A scalable Content- Addressable Network Sylvia Rathnasamy, Paul Francis, Mark Handley, Richard Karp, Scott Shenker Pirammanayagam Manickavasagam.
A Survey of Peer-to-Peer Content Distribution Technologies Stephanos Androutsellis-Theotokis and Diomidis Spinellis ACM Computing Surveys, December 2004.
Tapestry GTK Devaroy (07CS1012) Kintali Bala Kishan (07CS1024) G Rahul (07CS3009)
1 Plaxton Routing. 2 Introduction Plaxton routing is a scalable mechanism for accessing nearby copies of objects. Plaxton mesh is a data structure that.
Arnold N. Pears, CoRE Group Uppsala University 3 rd Swedish Networking Workshop Marholmen, September Why Tapestry is not Pastry Presenter.
Peer-to-Peer Overlay Networks. Outline Overview of P2P overlay networks Applications of overlay networks Classification of overlay networks – Structured.
Distributed Systems Concepts and Design Chapter 10: Peer-to-Peer Systems Bruce Hammer, Steve Wallis, Raymond Ho.
“Intra-Network Routing Scheme using Mobile Agents” by Ajay L. Thakur.
Chord: A Scalable Peer-to-peer Lookup Protocol for Internet Applications Xiaozhou Li COS 461: Computer Networks (precept 04/06/12) Princeton University.
Circuit & Packet Switching. ► Two ways of achieving the same goal. ► The transfer of data across networks. ► Both methods have advantages and disadvantages.
Structuring P2P networks for efficient searching Rishi Kant and Abderrahim Laabid Abderrahim Laabid.
TOMA: A Viable Solution for Large- Scale Multicast Service Support Li Lao, Jun-Hong Cui, and Mario Gerla UCLA and University of Connecticut Networking.
An IP Address Based Caching Scheme for Peer-to-Peer Networks Ronaldo Alves Ferreira Joint work with Ananth Grama and Suresh Jagannathan Department of Computer.
1 More on Plaxton routing There are n nodes, and log B n digits in the id, where B = 2 b The neighbor table of each node consists of - primary neighbors.
SIGCOMM 2001 Lecture slides by Dr. Yingwu Zhu Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications.
#1 EETS 8316/NTU CC725-N/TC/ Routing - Circuit Switching  Telephone switching was hierarchical with only one route possible —Added redundant routes.
Scalable Content- Addressable Networks Prepared by Kuhan Paramsothy March 5, 2007.
Networking Fundamentals. Basics Network – collection of nodes and links that cooperate for communication Nodes – computer systems –Internal (routers,
Tapestry: A Resilient Global-scale Overlay for Service Deployment 1 Ben Y. Zhao, Ling Huang, Jeremy Stribling, Sean C. Rhea, Anthony D. Joseph, and John.
P2P Group Meeting (ICS/FORTH) Monday, 28 March, 2005 A Scalable Content-Addressable Network Sylvia Ratnasamy, Paul Francis, Mark Handley, Richard Karp,
Peer to Peer Network Design Discovery and Routing algorithms
CS 6401 Overlay Networks Outline Overlay networks overview Routing overlays Resilient Overlay Networks Content Distribution Networks.
Tapestry : An Infrastructure for Fault-tolerant Wide-area Location and Routing Presenter : Lee Youn Do Oct 5, 2005 Ben Y.Zhao, John Kubiatowicz, and Anthony.
11 ROUTING IP Chapter 3. Chapter 3: ROUTING IP2 CHAPTER INTRODUCTION  Understand the function of a router.  Understand the structure of a routing table.
1 Chapter 4: Internetworking (IP Routing) Dr. Rocky K. C. Chang 16 March 2004.
1 Plaxton Routing. 2 History Greg Plaxton, Rajmohan Rajaraman, Andrea Richa. Accessing nearby copies of replicated objects, SPAA 1997 Used in several.
Internet Traffic Engineering Motivation: –The Fish problem, congested links. –Two properties of IP routing Destination based Local optimization TE: optimizing.
Incrementally Improving Lookup Latency in Distributed Hash Table Systems Hui Zhang 1, Ashish Goel 2, Ramesh Govindan 1 1 University of Southern California.
Brocade: Landmark Routing on Overlay Networks
A Survey of Peer-to-Peer Content Distribution Technologies Stephanos Androutsellis-Theotokis and Diomidis Spinellis ACM Computing Surveys, December 2004.
The Chord P2P Network Some slides have been borrowed from the original presentation by the authors.
Accessing nearby copies of replicated objects
Zhichen Xu, Mallik Mahalingam, Magnus Karlsson
Early Measurements of a Cluster-based Architecture for P2P Systems
Brocade: Landmark Routing on Peer to Peer Networks
Presentation transcript:

Brocade Landmark Routing on P2P Networks Gisik Kwon April 9, 2002

Motivation Problems with existing P2P systems Existing systems : CAN, Chord, Tapestry, Pastry Constrained by the theoretical approach adopted, nodes are treated uniformly Routing algorithms are decoupled from underlying topology and node capability Result: Sub-optimal performance  Due to 1) the asymmetry of nodes in reality  Less powerful nodes can be overloaded  Due to 2) the lack of structure  No advantage of the aggregated knowleges of the network P2P does not need to operate in the pure P2P style A secondary overlay network on top of existing system(e.g., Tapestry)

Brocade A philosophy: A system is more efficient when it is organized Respect the differences and take advantage of those that are more powerful – Supernodes! Fast/well-connected/situated near network access points Supernodes have better knowledge of underlying network characteristics. Benefit from aggregation.

Network in reality Transit-stub topology, disparate resources per node Result: Inefficient inter-domain routing AS-2 P2P Overlay Network AS-1 AS-3 SR

Landmark Routing Goals Eliminate unnecessary wide-area hops for inter-domain messages Eliminate traffic going through high latency, congested stub links Reduce wide-area bandwidth utilization

AS-2 P2P Network AS-1 AS-3 Brocade Layer SR Original Route Brocade Route Brocade Architecture

Intuitive mechanisms Intuition: route quickly to destination domain Organize group of supernodes into secondary overlay Sender (S) sends message to local supernode SN1 SN1 finds and routes message to supernode SN2 near receiver R SN1 uses Tapestry object location to find SN2 SN2 sends message to R via normal routing

Overlay nodes are grouped by their supernodes Supernodes treat their overlay nodes as objects that they possess Routing on Brocade => Object Location. Use your favorite mechanism: Tapestry, CAN, Chord, Pastry Message filtering: only send inter-domain messages to Brocade.

Case Study - Brocade On Tapestry Tapestry: A novel wide-area fault-tolerant location and routing infrastructure Construction Supernode selection Significant processing power Minimum number of ip hops to wide-area network High bandwidth outgoing link  So, gateway routers or machines close by those Existing connections among supernodes as Brocade links

Classifying Traffic Brocade not useful for intra-domain messages P2P layer should exploit some locality (Tapestry) Undesirable processing overhead Classifying traffic by destination Proximity caches: - Every overlay node keeps list of nodes it knows to be local - Need not be optimal Cover set: - Supernode keeps list of all nodes in its domain - Acts as authority on local vs. distant traffic AS-1 S

Entering the Brocade Route: Sender  Supernode Naïve Brocade: Tapestry routing unchanged. Message gets onto the Brocade overlay if a supernode is encountered on its route. Advantage: simple, no modification to ordinary nodes. Disadvantage: possibility of hitting a supernode in Tapestry routing small. IP Snooping Brocade: Supernodes snoop IP packets to intercept Tapestry messages. Advantage: - No modification to ordinary nodes. - High possibility of encountering supernodes because supernodes are situated near the edge of local networks. Disadvantage: difficult to implement

Entering the Brocade Directed Brocade: Each overlay node keep info about its supernode and decides by its own whether to send a message to supernode directly. Feasible: only local information required D ecision Engine: Destination is in my cover set? Send to supernode Ordinary Tapestry Routing No Yes A small cache storing most frequently used nodes in its cover set will do the trick. Query locality will make hit rate high Consequences of mistakes aren’t expensive

Inter-supernode Routing Route: Supernode (sender)  Supernode (receiver) Locate receiver’s supernode given destination nodeID Use Tapestry object location or Bloom filter Tapestry Routing mesh w/ built in proximity metrics Location exploits locality (finds closer objects faster) Finding supernodes Supernode “publishes” cover set on brocade layer as locally stored objects To route to node N, locate server on brocade storing N

Brocade Summary P2P systems assume uniformity  Extraneous hops through backbone to domains  Routing across congested stubs links Constrain inter-domain routing Remove unnecessary routing through stubs Reduce expected inter-domain hops Result: lower latency, less bandwidth utilization

Appendix Tapestry Bloom filter

Brief Tapestry Suffix matching ( similar to Plaxton ) Incrementally routing digital by digital Maximum hops : log b (N) 6789 B4F Msg to 4598 B437

Routing : Neighbor maps A table with b*log b (N) entries The i-th level neighbor share (i-1) suffix chunks Entry( i, j ) Pointer to the neighbor “ j” + (i-1) suffix 0642

Locating : basic procedure 4 phrases locating Map the Object ID to a “virtual” Node ID Route the request to that node Arrive the surrogate or“root for the object Direct to the server Client : B4F8 Server : B4F F734 B Surrogate Routing

Publishing : basic procedure Similar to locating 1. Server send msg and pretends to locate the object 2. Find the surrogate node as the “root” for the Obj. 3. Save the related info there, such as Server :B4F F734 B Surrogate Routing

Insert a new node: basic procedure 1. Get an Node ID 2. Begin with a “Gateway node” G 3. Pretends to route to itself 4. Establish nearly optimal neighbor map during the “pseudo routing” by coping & Choosing nearest ones. 5. Go back and notify neighbors Gateway node : B4F F734 B Surrogate Routing New node : 1234

Bloom filter(1) Set S Query: is x in S? If filter says no, x is not in S. If filter says yes, x is probably in S. Set is bitmap: Sequence of hash functions f(x, i) –Independent on x, i –F(x,i) = 0 or 1 If f(x,i) is 1 for i values: –0,2,3 not present –2,4 probably present

Bloom filter(2) Procedure BloomFilter(set A, hash_functions, integer m) returns filter filter = allocate m bits initialized to 0 foreach a i in A : foreach hash function h j : filter[ h j (a i ) ] = 1 end foreach return filter Procedure MembershipTest (elm, filter, hash_functions) returns yes/no foreach hash function h j : if filter[ h j (elm) ] != 1 return No end foreach return Yes