Positive Feedback Loops in DHTs or Be Careful How You Simulate January 13, 2004 Sean Rhea, Dennis Geels, Timothy Roscoe, and John Kubiatowicz From “Handling.

Slides:



Advertisements
Similar presentations
Ion Stoica, Robert Morris, David Karger, M. Frans Kaashoek, Hari Balakrishnan MIT and Berkeley presented by Daniel Figueiredo Chord: A Scalable Peer-to-peer.
Advertisements

Pastry Peter Druschel, Rice University Antony Rowstron, Microsoft Research UK Some slides are borrowed from the original presentation by the authors.
COS 461 Fall 1997 Routing COS 461 Fall 1997 Typical Structure.
P2P Network Structured Networks: Distributed Hash Tables Pedro García López Universitat Rovira I Virgili
SplitStream by Mikkel Hesselager Blanné Erik K. Aarslew-Jensen.
Improving TCP Performance over Mobile Ad Hoc Networks by Exploiting Cross- Layer Information Awareness Xin Yu Department Of Computer Science New York University,
Robert Morris, M. Frans Kaashoek, David Karger, Hari Balakrishnan, Ion Stoica, David Liben-Nowell, Frank Dabek Chord: A scalable peer-to-peer look-up protocol.
Symphony: Distributed Hashing in a Small World Gurmeet Singh Manku Mayank Bawa Prabhakar Raghavan Presented by Satpreet Singh.
Common approach 1. Define space: assign random ID (160-bit) to each node and key 2. Define a metric topology in this space,  that is, the space of keys.
Receiver-driven Layered Multicast S. McCanne, V. Jacobsen and M. Vetterli SIGCOMM 1996.
1 Estimating Shared Congestion Among Internet Paths Weidong Cui, Sridhar Machiraju Randy H. Katz, Ion Stoica Electrical Engineering and Computer Science.
Small-world Overlay P2P Network
Scribe: A Large-Scale and Decentralized Application-Level Multicast Infrastructure Miguel Castro, Peter Druschel, Anne-Marie Kermarrec, and Antony L. T.
1 Dynamics of End-host controlled Routing Mukund Seshadri Prof. Randy Katz Sahara Retreat Jan 2004.
An Algebraic Approach to Practical and Scalable Overlay Network Monitoring Yan Chen, David Bindel, Hanhee Song, Randy H. Katz Presented by Mahesh Balakrishnan.
Topics in Reliable Distributed Systems Lecture 2, Fall Dr. Idit Keidar.
Handling Churn in a DHT USENIX Annual Technical Conference June 29, 2004 Sean Rhea, Dennis Geels, Timothy Roscoe, and John Kubiatowicz UC Berkeley and.
X Non-Transitive Connectivity and DHTs Mike Freedman Karthik Lakshminarayanan Sean Rhea Ion Stoica WORLDS 2005.
Dynamic Hypercube Topology Stefan Schmid URAW 2005 Upper Rhine Algorithms Workshop University of Tübingen, Germany.
Secure routing for structured peer-to-peer overlay networks (by Castro et al.) Shariq Rizvi CS 294-4: Peer-to-Peer Systems.
A Note on Finding the Nearest Neighbor in Growth-Restricted Metrics Kirsten Hildrum John Kubiatowicz Sean Ma Satish Rao.
1 Emulating AQM from End Hosts Presenters: Syed Zaidi Ivor Rodrigues.
CS218 – Final Project A “Small-Scale” Application- Level Multicast Tree Protocol Jason Lee, Lih Chen & Prabash Nanayakkara Tutor: Li Lao.
Fixing the Embarrassing Slowness of OpenDHT on PlanetLab Sean Rhea, Byung-Gon Chun, John Kubiatowicz, and Scott Shenker UC Berkeley (and now MIT) December.
Topics in Reliable Distributed Systems Fall Dr. Idit Keidar.
1 CS 194: Distributed Systems Distributed Hash Tables Scott Shenker and Ion Stoica Computer Science Division Department of Electrical Engineering and Computer.
Peer To Peer Distributed Systems Pete Keleher. Why Distributed Systems? l Aggregate resources! –memory –disk –CPU cycles l Proximity to physical stuff.
Wide-area cooperative storage with CFS
An Evaluation of Scalable Application-level Multicast Using Peer-to-peer Overlays Miguel Castro, Michael B. Jones, Anne-Marie Kermarrec, Antony Rowstron,
1 Indirect Adaptive Routing on Large Scale Interconnection Networks Nan Jiang, William J. Dally Computer System Laboratory Stanford University John Kim.
Tapestry: A Resilient Global-scale Overlay for Service Deployment Ben Y. Zhao, Ling Huang, Jeremy Stribling, Sean C. Rhea, Anthony D. Joseph, and John.
Jennifer Rexford Princeton University MW 11:00am-12:20pm Wide-Area Traffic Management COS 597E: Software Defined Networking.
SIMULATING A MOBILE PEER-TO-PEER NETWORK Simo Sibakov Department of Communications and Networking (Comnet) Helsinki University of Technology Supervisor:
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,
Designing a DHT for low latency and high throughput Robert Vollmann P2P Information Systems.
PIC: Practical Internet Coordinates for Distance Estimation Manuel Costa joint work with Miguel Castro, Ant Rowstron, Peter Key Microsoft Research Cambridge.
Review: routing algorithms. –Choose the appropriate paths. –Routing algorithms Flooding Shortest path routing (example). –Dijkstra algorithm. –Bellman-Ford.
Chord & CFS Presenter: Gang ZhouNov. 11th, University of Virginia.
Impact of Neighbor Selection on Performance and Resilience of Structured P2P Networks IPTPS Feb. 25, 2005 Byung-Gon Chun, Ben Y. Zhao, and John Kubiatowicz.
Chord: A Scalable Peer-to-peer Lookup Protocol for Internet Applications Xiaozhou Li COS 461: Computer Networks (precept 04/06/12) Princeton University.
A Routing Underlay for Overlay Networks Akihiro Nakao Larry Peterson Andy Bavier SIGCOMM’03 Reviewer: Jing lu.
CS 453 Computer Networks Lecture 18 Introduction to Layer 3 Network Layer.
CS 268: Structured P2P Networks: Pastry and Tapestry Sean Rhea April 29, 2003.
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.
Kaleidoscope – Adding Colors to Kademlia Gil Einziger, Roy Friedman, Eyal Kibbar Computer Science, Technion 1.
Paper Survey of DHT Distributed Hash Table. Usages Directory service  Very little amount of information, such as URI, metadata, … Storage  Data, such.
DHT-based unicast for mobile ad hoc networks Thomas Zahn, Jochen Schiller Institute of Computer Science Freie Universitat Berlin 報告 : 羅世豪.
1. Outline  Introduction  Different Mechanisms Broadcasting Multicasting Forward Pointers Home-based approach Distributed Hash Tables Hierarchical approaches.
Idit Keidar, Principles of Reliable Distributed Systems, Technion EE, Spring Principles of Reliable Distributed Systems Lecture 2: Distributed Hash.
Minimizing Churn in Distributed Systems P. Brighten Godfrey, Scott Shenker, and Ion Stoica UC Berkeley SIGCOMM’06.
LOOKING UP DATA IN P2P SYSTEMS Hari Balakrishnan M. Frans Kaashoek David Karger Robert Morris Ion Stoica MIT LCS.
Tor and Timing Attacks An attack within the accepted attacker model.
TCP continued. Discussion – TCP Throughput TCP will most likely generate the saw tooth type of traffic. – A rough estimate is that the congestion window.
A Sybil-Proof Distributed Hash Table Chris Lesniewski-LaasM. Frans Kaashoek MIT 28 April 2010 NSDI
Nick McKeown CS244 Lecture 17 Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications [Stoica et al 2001]
Efficient Geographic Routing in Multihop Wireless Networks Seungjoon Lee*, Bobby Bhattacharjee*, and Suman Banerjee** *Department of Computer Science University.
Distance Vector Routing
CS694 - DHT1 Distributed Hash Table Systems Hui Zhang University of Southern California.
The Cost of Inconsistency in Chord Shelley Zhuang, Ion Stoica, Randy Katz OASIS/i3 Retreat, January 2005.
Chord: A Scalable Peer-to-Peer Lookup Service for Internet Applications * CS587x Lecture Department of Computer Science Iowa State University *I. Stoica,
Network Layer COMPUTER NETWORKS Networking Standards (Network LAYER)
Internet Indirection Infrastructure (i3)
Vivaldi: A Decentralized Network Coordinate System
Pastry Scalable, decentralized object locations and routing for large p2p systems.
Controlling the Cost of Reliability in Peer-to-Peer Overlays
COS 461: Computer Networks
COS 461: Computer Networks
MIT LCS Proceedings of the 2001 ACM SIGCOMM Conference
Brocade: Landmark Routing on Peer to Peer Networks
Simultaneous Insertions in Tapestry
Presentation transcript:

Positive Feedback Loops in DHTs or Be Careful How You Simulate January 13, 2004 Sean Rhea, Dennis Geels, Timothy Roscoe, and John Kubiatowicz From “Handling Churn in a DHT”, available at (and in the back of the room)

Background A year ago, started benchmarking DHTs Usual goals: –Improve the state of the art –Provide a metric of success Interested in real implementations –Not simulations –Want to use the DHTs in real applications Need a solid experimental framework

PlanetLab Our first testbed A “real” network –Some machines bandwidth, CPU limited –Lots of cross traffic But problems –Too hard to get reproducible results –Too little scale (~250 machines)

ModelNet Run several virtual hosts per CPU –Override systems calls like sendto, recvfrom Route all packets through single host –Applies delay, queuing, loss –Uses 10,000 node AS-level topology Allows for reasonable scale –Have run with up to 4,000 DHT nodes Reproducible results

A Simple Experiment Start 1000 nodes in a DHT (FreePastry) Let network stabilize Start 200 more What happens?

FreePastry under Massive Join Does the bandwidth explosion have something to do with the DHT’s collapse?

Talk Overview Background Teaser Pastry review Pastry’s problem and a fix Conclusions and future work

Pastry Review Each DHT node has –An identifier in [0,2 160 ) –Leaf set Predecessors Successors –Routing table Nodes w/similar prefixes Choose node for each prefix by proximity (in network latency) Each node responsible for keys closest to its ID 0… 10… 110… 111…

Pastry Join Algorithm function join (A, G) = G’ = nearest_neighbor (A, G); (B, P) = lookup (G’, ID A ); L A = get_leaf_set (B); for i from 0 to |P| - 1 do k = len_longest_matching_pfx (ID A, ID P i ); R i = get_routing_table_level (P i, k);

Probes in Pastry’s Join To compute nearest_neighbor, must probe –Looking for nearest node in some set Existing nodes also probe joining node Castro et al. estimate ~150 probes/join –Independent of congestion for correctness On failure, must probe to find replacement –May need many probes to find closest one

Talk Overview Background Teaser Pastry review Pastry’s problem and a fix Conclusions and future work

Teaser Explaination In network under stress, many probes –If bandwidth limited, interfere with each other –Lots of dropped probes looks like a failure Pastry responds to failure, sending more –Probability of drop goes up –We have a positive feedback cycle (squelch) Easy to confirm –Increasing available b.w. solves problem

What Went Wrong? Pastry publications show it working fine Existing Pastry results are of two types: 1.Simulations of 10, ,000 nodes Don’t model queuing, delay, or cross traffic 2.Planetlab tests using 10s of nodes Low scale, ample bandwidth on chosen hosts

A Simple Fix Idea: fix broken links periodically –Instead of recovering in reaction to failure –Breaks feedback loop Also, scale back period in response to loss –Now it’s a negative feedback cycle (damping) Still have a probe problem: –How to probe independently of congestion? –Good probes important for neighbor proximity

Restoring Proximity Finding the closest neighbor takes time –Meanwhile, routing is no longer O(log n) Fix: fill holes with first appropriate node –Can find such a node using a lookup –Immediately restores O(log n) routing Later, can look for close nodes –Again, periodically, with backoff on failure –Use several techniques not covered here

Related Work Chord’s stabilization is proactive, periodic –Not clear what motivated this decision Mahajan et al. –Simulation-based study of Pastry under churn –Automatic tuning of maintenance rate –Suggest increasing rate on failures! Liben-Nowell et al. –Analytical lower bound on maintenance costs

Conclusions Simplifying network model dangerous –May lead to bad design, false sense of correctness Separate concerns in DHT routing 1.Correctness – comes from leaf set 2.Efficiency – comes from filled routing table 3.Proximity – only a concern after 1 and 2 Can we do better in simulation? –And still scale to 10,000s of nodes? –ModelNet requires a whole cluster…

Thanks for Listening! More information available at