Presentation is loading. Please wait.

Presentation is loading. Please wait.

Dynamic Replica Placement for Scalable Content Delivery

Similar presentations


Presentation on theme: "Dynamic Replica Placement for Scalable Content Delivery"— Presentation transcript:

1 Dynamic Replica Placement for Scalable Content Delivery
Yan Chen, Randy H. Katz, John D. Kubiatowicz {yanchen, randy, EECS Department UC Berkeley

2 Motivation Scenario data source replica data plane cache always update
adaptive coherence always update replica data plane client CDN server Web content server network plane

3 Goal and Challenges Dynamic choice of number and location of replicas
Provide content distribution to clients with good Quality of Service (QoS) while retaining efficient and balanced resource consumption of the underlying infrastructure Dynamic choice of number and location of replicas Clients’ QoS constraints Servers’ capacity constraints Efficient update dissemination Delay Bandwidth consumption Scalability: millions of objects, clients and servers No global network topology knowledge We are going to compare several approaches, dynamic replica placement… And how they are self-organized into d-tree and how they are maintained through soft-state mgt.

4 Previous Work (Replica Placement)
Focused on static replica placement Clients’ distributions and access patterns known in advance Assume global IP network topology Data Location via DNS-redirection Highly inefficient (this is a “hack”) Centralized CDN name server cannot record replica locations

5 Previous Work (Info Dissemination)
No inter-domain IP multicast Application-level multicast (ALM) unscalable Root maintains states for all children (Narada, Overcast, ALMI, RMX) Root handles all “join” requests (Bayeux) Root split is common solution, but suffers consistency overhead

6 Solutions for Dissemination Tree
Peer-to-Peer Overlay Location Services with Good Scalability & Locality Simultaneous Replica Placement and Tree Construction

7 Peer-to-peer Routing and Location Services
Properties Needed by Tree Building Algorithms Distributed, scalable location with guaranteed success Search with locality P2P Routing and Location Services: Tapestry CAN, Chord, Pastry insufficient locality or flexibility to place objects

8 Simultaneous Replica Placement and Tree Construction
Static Replica Placement + IP Multicast Modeled as a global optimization problem Design a greedy algorithm with logN approximation Optimal case for comparison Dynamic Replica Placement + Application-level Multicast Search for qualified local replicas first Place new replicas on Tapestry overlay path Two approaches: naïve and smart Soft-state Tree Maintenance Each node only maintains states for its parent and direct children We are going to compare several approaches, dynamic replica placement… And how they are self-organized into d-tree and how they are maintained through soft-state mgt. Talk about facility location problem: Each CDN server is a facility and each client is a location, to put a replica incurs an uniform cost 1. Each CDN server can cover a certain subset of clients and has a capacity constraint on the # of clients to cover. To minimize the total cost while covering all clients.

9 Dynamic Replica Placement: naïve
data plane parent candidate Tapestry overlay path s proxy c network plane Tapestry mesh

10 Dynamic Replica Placement: naïve
data plane parent candidate s proxy Piggyback the overlay dist and load of the servers on the Tapestry path, thus it will choose the one as close to c as possible c first placement choice network plane Tapestry mesh Tapestry overlay path

11 Dynamic Replica Placement: smart
parent candidates Aggressive search Greedy load distribution data plane client child Tapestry overlay path Again, client c submit request to s through Tapestry S have a larger set, including …, we call it aggressive search… Load-qualified candidates will send its load to c, c will ping them to get the distance and choose the one both satisfy the latency constraint and has the we choose the one with the lightest load as parent, we call it greedy load dist Then it will place a cache on the client and tie it into the d-tree If none of them satisfy, c will send a another lazy placement msg to s through Tapestry, piggyback the load of the servers on the Tapestry path. S will use the overlay distance for estimation of IP distance, and choose the one as far to c as possible s proxy parent sibling c server child network plane

12 Dynamic Replica Placement: smart
Aggressive search Lazy placement Greedy load distribution data plane parent candidates client child Tapestry overlay path s proxy parent first placement choice sibling c server child network plane

13 Evaluation Methodology
Network Topology 5000-node network with GT-ITM transit-stub model 500 d-tree server nodes, 4500 clients join in random order Dissemination Tree Server Deployment Random d-tree Backbone d-tree (choose backbone routers and subnet gateways first) Constraints 50 ms latency bound and 200 clients/server load bound

14 Four Approaches for Comparison
Overlay Dynamic Naïve Placement (dynamic_naïve) Overlay Dynamic Smart Placement (dynamic_smart) Static Placement on Overlay Network (overlay_static) Static Placement on IP Network (IP_static)

15 Number of Replicas Deployed and Load Distribution
Overlay_smart uses much less replicas than overlay_naïve and very close to IP_static Overlay_smart has better load distribution than od_naïve, overlay_static and very close to IP_static

16 Multicast Performance
85% of overlay_smart Relative Delay Penalty (RDP) less than 4 Bandwidth consumed by overlay_smart is very close to IP_static and much less than overlay_naive With fixed replicas, how good multicast performance d-tree has

17 Tree Construction Traffic
Including “join” requests, “ping” messages, replica placement and parent/child registration Overlay_smart consumes three to four times of traffic than overlay_naïve, and the traffic of overlay_naïve is quite close to IP_static Far less frequent event than update dissemination

18 Conclusions Peer-to-peer networks can be used to construct CDNs
Dissemination Tree: dynamic Content Distribution Network with good QoS, efficiency and load balancing P2P location service to improve scalability and locality Simultaneous dynamic replica placement and tree construction In particular Use Tapestry to contact nearby region of tree to select parent Lazy placement of new replicas on Tapestry overlay path Close to optimal number of replicas, good load distribution, low multicast delay and bandwidth penalty at the price of reasonable construction traffic

19 Future Work Evaluate with more diverse topologies and real workload
Dynamic replica deletion/migration to adapt to the shift of users’ interests Implementation for OceanStore, a global-scale persistent data storage system


Download ppt "Dynamic Replica Placement for Scalable Content Delivery"

Similar presentations


Ads by Google