Topology-Aware Overlay Construction and Server Selection


Published on

  • Be the first to comment

  • Be the first to like this

No Downloads
Total Views
On Slideshare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • Distance=latency Topologically close nodes have same ordering
  • logical
  • Choose the neighbor nearest to the destination
  • Only ordering is used
  • Well-connected pocket Inter-connections to those pockets
  • Topology-Aware Overlay Construction and Server Selection

    1. 1. Topology-Aware Overlay Construction and Server Selection Sylvia Ratnasamy Mark Handley Richard Karp Scott Shenker Infocom 2002
    2. 2. Connections of a node
    3. 3. Introduction <ul><li>Problem: Inefficient routing in large-scale networks </li></ul><ul><ul><li>In large-scale overlay networks, each node is logically connected to a small subset of other participants. </li></ul></ul><ul><ul><li>Due to the lack of effort to ensure that application-level connectivity is congruent with underlying IP-level network topology </li></ul></ul><ul><li>Basic Idea: Optimize routing paths in network </li></ul><ul><ul><li>Define a binning scheme whereby nodes partition themselves into bins </li></ul></ul><ul><ul><li>Nodes that fall within a given bin are relatively close to one another in terms of network latency </li></ul></ul>
    4. 4. Outline <ul><li>Introduction </li></ul><ul><li>Distributed Binning </li></ul><ul><li>Topologically-aware construction of overlay networks </li></ul><ul><li>Topologically-aware server selection </li></ul><ul><li>Conclusion </li></ul>
    5. 5. Extracting proximity information <ul><li>Measuments that can be used to derive topological information: </li></ul><ul><ul><li>traceroute:  </li></ul></ul><ul><ul><ul><li>intended for network diagnostic purposes, </li></ul></ul></ul><ul><ul><ul><li>too heavy-weight, </li></ul></ul></ul><ul><ul><ul><li>excessive load on the network, </li></ul></ul></ul><ul><ul><ul><li>disabled ICMP at some sites for security </li></ul></ul></ul><ul><ul><li>BGP routing table:  </li></ul></ul><ul><ul><ul><li>not directly available for end users, </li></ul></ul></ul><ul><ul><ul><li>requires privilege or third party service </li></ul></ul></ul><ul><ul><li>Network latency:  </li></ul></ul><ul><ul><ul><li>often a direct indicator of network performance, </li></ul></ul></ul><ul><ul><ul><li>light-weight, </li></ul></ul></ul><ul><ul><ul><li>end-to-end measurement, </li></ul></ul></ul><ul><ul><ul><li>non-intrusive manner </li></ul></ul></ul>s a b c t 2 sec 7 sec 5 sec
    6. 6. Distributed Binning <ul><li>Goal: </li></ul><ul><ul><li>Have a set of nodes independently partition themselves into disjoint “ bins ” </li></ul></ul><ul><ul><li>Nodes within a single bin are relatively closer to one another than to nodes not in their bin </li></ul></ul><ul><li>Scheme: </li></ul><ul><ul><li>A well-known set of machines that act as landmarks on the Internet </li></ul></ul><ul><ul><li>Form a distributed binning of nodes based-on their relative distances </li></ul></ul><ul><ul><ul><li>A node measures r ound-trip-time (RTT) to each landmark and orders landmarks in order of increasing RTT </li></ul></ul></ul><ul><ul><ul><li>Every node has an associated ordering of landmarks(or bin) </li></ul></ul></ul>
    7. 7. Distributed Binning <ul><li>Scheme: (Cont.) </li></ul><ul><ul><li>After finding ordering, we calculate absolute values of each RTT in ordering as follows </li></ul></ul><ul><ul><ul><li>We divide the range of possible latency values into a number of levels. </li></ul></ul></ul><ul><ul><ul><li>Convert RTT values into level number and obtain a level vector </li></ul></ul></ul><ul><ul><ul><li>Example: </li></ul></ul></ul><ul><ul><ul><ul><li>Level 0  0-100 ms </li></ul></ul></ul></ul><ul><ul><ul><ul><li>Level 1  100-200 ms </li></ul></ul></ul></ul><ul><ul><ul><ul><li>Level 2  > 200ms </li></ul></ul></ul></ul><ul><ul><ul><li>Node A’s bin becomes “ l 2 l 3 l 1 :0 1 2 ” </li></ul></ul></ul><ul><ul><li>Topologically close nodes likely to have same ordering and belong to same bin </li></ul></ul>l 3 l 1 l 2 A 232 ms 117 ms 57 ms
    8. 8. Distributed Binning Distributed Binning Scheme
    9. 9. Performance of Distributed Binning <ul><li>Even though it is clearly scalable, does it do a reasonable job? </li></ul><ul><li>Metric used: </li></ul><ul><ul><li>average inter-bin latency = average latency from a given node to all nodes not in its bin </li></ul></ul><ul><ul><li>average intra-bin latency = average latency from a given node to all nodes in its bin </li></ul></ul><ul><li>A higher gain ratio indicates a higger reduction in latency, hence more desirable </li></ul>
    10. 10. Performance of Distributed Binning <ul><li>Datasets or test topologies: </li></ul><ul><ul><li>TS-10K and TS-1K: </li></ul></ul><ul><ul><ul><li>Transit-Stub topologies with 10000 </li></ul></ul></ul><ul><ul><ul><li>and 1000 nodes respectively. </li></ul></ul></ul><ul><ul><ul><li>2-level hierarchy </li></ul></ul></ul><ul><ul><li>PLRG1 and PLRG2: </li></ul></ul><ul><ul><ul><li>Power-Law Random graph with 1166 and 1779 nodes </li></ul></ul></ul><ul><ul><ul><li>Edge latencies assigned randomly </li></ul></ul></ul><ul><ul><li>NLANR: </li></ul></ul><ul><ul><ul><li>Distributed network of over 100 active monitors </li></ul></ul></ul><ul><ul><ul><li>Systematically perform scheduled measurement between each other </li></ul></ul></ul>
    11. 11. Performance of Distributed Binning <ul><li>Other binning algorithms used in experiments: </li></ul><ul><ul><li>Random Binning: </li></ul></ul><ul><ul><ul><li>Each nodes selects a bin at random </li></ul></ul></ul><ul><ul><ul><li>acts as a lower bound for the gain ratio </li></ul></ul></ul><ul><ul><li>Nearest Neighbor clustering: </li></ul></ul><ul><ul><ul><li>Each node is initially assigned to a cluster itself . </li></ul></ul></ul><ul><ul><ul><li>At each iteration, two closest clusters are merged into a single cluster. </li></ul></ul></ul><ul><ul><ul><li>The algorithm terminated when the required number of clusters is obtained </li></ul></ul></ul><ul><ul><ul><li>_ </li></ul></ul></ul>
    12. 12. Performance of Distributed Binning <ul><li>Experiments: </li></ul>Effect of number of landmarks (#level=1) Effect of number of levels (#landmarks=12)
    13. 13. Performance of Distributed Binning <ul><li>Experiments: </li></ul>Comparison of different binning techniques(#levels=1)
    14. 14. Topologically-aware construction of overlay networks <ul><li>Two types of overlay networks </li></ul><ul><ul><li>Structured: </li></ul></ul><ul><ul><ul><li>Nodes are interconnected in some well-defined manner(Application-level) </li></ul></ul></ul><ul><ul><li>Unstructured: </li></ul></ul><ul><ul><ul><li>Much less structured like Gnutella,Freenet </li></ul></ul></ul><ul><li>Metric for evaluation: </li></ul>
    15. 15. Topologically-sensitive CAN construction <ul><li>Content-Addressable Network </li></ul><ul><ul><li>Scalable indexing system for large-scale decentralized storage applications on the Internet </li></ul></ul><ul><ul><li>Built around a virtual multi-dimensional Cartesian coordinate space </li></ul></ul><ul><ul><li>Entire coordinate space is dynamically partitioned among all the peers, i.e. every peer possesses its individual, distinct zone within the overall space </li></ul></ul><ul><ul><li>A CAN peer maintains a routing table that holds the IP address and virtual coordinate zone of each of its neighbor coordinates </li></ul></ul>
    16. 16. 2D CAN Example x State of the system at time t Peer Resource Zone In this 2 dimensional space, a key is mapped to a point (x,y)
    17. 17. Routing in CAN y Peer (x,y) <ul><li>d-dimensional space with n zones </li></ul><ul><li>Routing path of length: </li></ul><ul><li>Algorithm: </li></ul><ul><ul><li>Choose the neighbor nearest to the destination </li></ul></ul>Q(x,y) Query/ Resource Q(x,y) key
    18. 18. Contribution to CAN <ul><li>Construct CAN topologies that are congruent with underlying IP topology </li></ul><ul><li>Scheme: </li></ul><ul><ul><li>With m landmarks, m! such ordering is possible </li></ul></ul><ul><ul><ul><li>For example, if m=2 , then possible orderings are “ab” and “ba” </li></ul></ul></ul><ul><ul><li>We partion the coordinate space into m! equal sized portions , each corresponding to a single ordering </li></ul></ul><ul><ul><ul><li>Divide the space along first dimension into m portions </li></ul></ul></ul><ul><ul><ul><li>Each portion is then sub-divided along the second dimension into m-1 portions </li></ul></ul></ul><ul><ul><ul><li>Each of these are divided into m-2 portion and so on… </li></ul></ul></ul><ul><ul><li>When a node joins CAN at a random point, the node determines its associated bin based-on delay measurement </li></ul></ul><ul><ul><li>According to its landmark ordering, it takes place in the correspanding portion of CAN </li></ul></ul>
    19. 19. Gain in CAN using Distributed Binning Stretch for a 2D CAN; topology TS-1K;#levels=1 Stretch for a 2D CAN; topology PLRG2;#levels=1
    20. 20. Topologically-aware construction of unstructured overlays <ul><li>Aims much less structured overlay such as Gnutella, Freenet </li></ul><ul><li>Focusing on the following general problem in unstructured overlays: </li></ul><ul><li>Optimal overlay is NP-hard , so used some heuristic called Short-Long </li></ul>“ Given a set of n nodes on the Internet, have each node picks any k neighbor nodes from this set so that the average routing latency on the resultant overlay is low”
    21. 21. Topologically-aware construction of unstructured overlays <ul><li>Short-Long Heuristic </li></ul><ul><ul><li>A node picks its k neighbors by picking k/2 nodes closest to itself and then picks another k/2 nodes at random </li></ul></ul><ul><ul><li>Well-connected pocket of closest nodes and inter-connections to far pockets with random picks </li></ul></ul><ul><li>BinShort-Long (Contribution) : </li></ul><ul><ul><li>A node picks k/2 neighbors at random from its bin and picks remaining k/2 at random </li></ul></ul>Current Node Nearby Nodes Distant Nodes Other Nodes
    22. 22. Gain in Unstructured Overlay using Distributed Binning Unstructured overlays; TS-10K;#levels=1;#landmarks=12
    23. 23. Topology-aware server selection <ul><li>Replication of content over Internet gives rise to the problem of server selection </li></ul><ul><ul><li>Parameter: Server load and distance (in term of Network Latency) </li></ul></ul><ul><ul><li>_ </li></ul></ul>Replication Server Client
    24. 24. Topology-aware server selection <ul><li>Server selection process with distributed binning works as follows: </li></ul><ul><ul><li>If there exist one or more servers within same bin as client, then client is redirected to a random server from its own bin </li></ul></ul><ul><ul><li>If no server exists within same bin as client, then an existing server whose bin is most similar to client’s bin is selected at random </li></ul></ul><ul><li>Compared performance to 3 schemes: </li></ul><ul><ul><li>Random: Client selects server at random </li></ul></ul><ul><ul><li>Hotz Metric: Uses RTT measure from a node to well known landmarks to estimate internode distance ( Triangle inequality ) </li></ul></ul><ul><ul><li>Cartesian Distance: Calculates Euclidean distance using level vector of node and selects the server with minimum distance </li></ul></ul><ul><li>Measurement for evaluation: </li></ul>
    25. 25. Topology-aware server selection <ul><li>Comparison of different schemes under following conditions: </li></ul><ul><ul><li>12 landmarks and 3 levels </li></ul></ul><ul><ul><li>1000 servers for TS-10K, 100 servers for TS-1K, PLRG1 and </li></ul></ul><ul><li>PLRG2 and 10 for NLANR </li></ul>
    26. 26. Topology-aware server selection-Node Perspective CDF of latency stretch for NLANR data CDF of latency stretch for TS-10K data
    27. 27. Conclusion <ul><li>Described a simple,scalable,binning scheme that can be used to infer network proximity information </li></ul><ul><li>Nature of the underlying network topology affects behavior of the scheme </li></ul><ul><li>It is applied to the problem of topologically-aware overlay construction and server selection domains </li></ul><ul><li>Three applications of distributed binning is given: </li></ul><ul><ul><li>Structured Overlay </li></ul></ul><ul><ul><li>Unstructured Overlay </li></ul></ul><ul><ul><li>Server selection </li></ul></ul><ul><li>A small number of landmarks yields significant improvements. </li></ul><ul><li>Can be referred as network-level GPS system </li></ul><ul><li>_ </li></ul>
    28. 28. Happy end! Thank you for your patience!