/
Structured and Unstructured Overlays Structured and Unstructured Overlays

Structured and Unstructured Overlays - PDF document

giovanna-bartolotta
giovanna-bartolotta . @giovanna-bartolotta
Follow
398 views
Uploaded On 2015-09-17

Structured and Unstructured Overlays - PPT Presentation

1 for Distributed Data ArvindKrishnamurthyFall 2004 Evolution of Overlays in P2P Systems Adhoc OverlaysFreenet Gnutella Structured Overlays SkipIndex Overview Use some hierarchical tree data stru ID: 131774

1 for Distributed Data ArvindKrishnamurthyFall 2004 Evolution

Share:

Link:

Embed:

Download Presentation from below link

Download Pdf The PPT/PDF document "Structured and Unstructured Overlays" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.


Presentation Transcript

1 Structured and Unstructured Overlays for Distributed Data ArvindKrishnamurthyFall 2004 Evolution of Overlays in P2P Systems Ad-hoc Overlays(Freenet, Gnutella) Structured Overlays SkipIndex: Overview Use some hierarchical tree data structure which is used in centralized settings to mana 2 Reasons for path inflation #1 Using AS-hop-count as routing metric:Using actual latency or router-hop-count would be better AS8AS7AS5AS4AS2AS1 sourcedestination Shortest AS path Shortest router path Reasons for path inflation #2 Policy routing might result in picking a longer pathNo-valley routing policy:An AS does not provide transit between any two of its providers or peers.Prefer Customer routing policy:Prefer the free of charge customer route over the peer or provider route.Early exit strategy:AS might try to get rid of a packet as soon as possible and minimize its intra-domain traffic sourcedestination Avoid Internet Path Outages When a path fails try to find an alternate path if possiblePath outages are reasonably commonRecovery time could be substantial 5% of faults last more than 2.75 hoursChandra 0110% of routes available 5% of the time65% of routes available 9.9% of the time3-min minimum detection+recovery time; often 15 mins40% of outages took 30+ minsto repairLabovitz97-003.3% of all routes had serious problemsPaxson95-97 Advanced Routing Mechanisms Internet routers rarely support advanced protocols such as IP multicastIdeally, routers should have intelligence to form multicast trees, maintain membership information, and split flowsMore advanced applications that could benefit from network-embedded intelligence include wide-area file systems Multicast source Solution: Overlay Networks Route around faultsUse an “overlay path”that comprises of two or more physical connections through the internetRoute around inefficienciesIntelligence (for multicasting, wide-area file-systems, etc.) is pushed to the edge of the internet CMU Overlay Multicast Multicast performed through multiple unicastsEdge-hosts serve as forwarding agents (results in a distribution tree) CMUBerkeleyUCLAStanfordYale CMU Yale Berkeley UCLA Stanford 4 Find K-Minimum Spanning Trees Algorithm: Find K-Minimum Spanning Trees Algorithm: Find K-Minimum Spanning Trees Algorithm: Motivation for K-MST Approach Algorithm by Khullerand Vishkingives the best approximation for finding a minimum-weight k-connected subgraphApproximation finds K directed trees of minimum cumulative weightRelated work by Roskindand Tarjanfinds K disjoint trees of minimum weight; might use more graph edges than previous K-MST is an approximation to the Roskind-TarjanworkSystems:asting data-intensive streamsSome systems augment a single multicast tree with additional links to find “shortcut”edges Protocol Components Mesh Construction:Based on algorithm by Gallagher Humblet, and Spira(GHS), which computes a Minimum Spanning Tree in a fully distributed fashion..We use K instances of GHS to compute K trees. Mesh Repair:Maintain Minimum Spanning Tree in a dynamic topology with failures. Mesh ImprovementImprove sub-optimal trees in a dynamic environment that preserves properties of the tree: MST Algorithm (GHS) Algorithm proceeds in levels, where at start each process comprises a subcomponent of level 0.Each process finds its Minimum Weight Outgoing Edge (MWOE) and convergecasts this information to the leader of the subcomponent.Leader selects the lowest weight edge, which is the MWOE for the component. When both components agree on MWOE, a new edge is selected.Interior edges are Rejected to prevent cycles.To Build Single MST in Distributed Environment, use GHS: 6 K-MST Construction k Instances of the GHS algorithm MST1, MST2, … MSTkEach Process Sorts Edges in non-decreasing order, and tries to add it to MST1If the edge is already in MST1, it tries to add it to MST2, and so on.Parallelism at different levelsMST 1MST 2 Q K-MST Construction k Instances of the GHS algorithm MST1, MST2, … MSTkEach Process Sorts Edges in non-decreasing order, and tries to add it to MST1If the edge is already in MST1, it tries to add it to MST2, and so on.Parallelism at different levelsMST 1MST 2 Q K-MST Construction k Instances of the GHS algorithm MST1, MST2, … MSTkEach Process Sorts Edges in non-decreasing order, and tries to add it to MST1If the edge is already in MST1, it tries to add it to MST2, and so on.Parallelism at different levelsMST 1MST 2 Q K-MST Construction k Instances of the GHS algorithm MST1, MST2, … MSTkEach Process Sorts Edges in non-decreasing order, and tries to add it to MST1If the edge is already in MST1, it tries to add it to MST2, and so on.Parallelism at different levelsMST 1MST 2 Q K-MST Construction k Instances of the GHS algorithm MST1, MST2, … MSTkEach Process Sorts Edges in non-decreasing order, and tries to add it to MST1If the edge is already in MST1, it tries to add it to MST2, and so on.Parallelism at different levelsMST 1MST 2 Q K-MST Construction k Instances of the GHS algorithm MST1, MST2, … MSTkEach Process Sorts Edges in non-decreasing order, and tries to add it to MST1If the edge is already in MST1, it tries to add it to MST2, and so on.Parallelism at different levelsMST 1MST 2 Q