Content Distribution Network Coral system NSDI 2004 - PowerPoint PPT Presentation

1 / 19
About This Presentation
Title:

Content Distribution Network Coral system NSDI 2004

Description:

Forward phase. Putter send RPCs to nodes en route close to key. Stop at full and loaded node ... and control of flash crowd problem. Clustering. Ability ... – PowerPoint PPT presentation

Number of Views:25
Avg rating:3.0/5.0
Slides: 20
Provided by: compu62
Category:

less

Transcript and Presenter's Notes

Title: Content Distribution Network Coral system NSDI 2004


1
Content Distribution Network(Coral system NSDI
2004)
2
Background
  • DHT
  • Key space
  • Overlay network
  • Web caching
  • proxies
  • Content Distribution Network
  • e.g. Akamai
  • Problem being addressed by Coral
  • Scalable content distribution
  • Avoid slashdot effect

3
Takeaway
  • Novel key/value indexing called Coral
  • Weaker consistency than traditional DHT
  • DSHT where S stands for Sloppy
  • Locality
  • Hot spot prevention
  • CoralCDN
  • Self-organizing decentralized
  • Locate nearby cached copies without querying
    distant nodes
  • Avoids slashdot effect
  • Interoperates with unmodified web browsers

4
Coral Indexing DSHT
  • Nodes are organized into clusters
  • Cluster
  • Maximum desired RTT (diameter)
  • Hierarchy of diameters levels
  • Level 0 infinity
  • Level 1 60 ms
  • Level 2 20 ms
  • API
  • Put (key, value, ttl, levels)
  • Get (key, levels)
  • Nodes (level, count, target, services)
  • Levels()

5
Coral System
6
CoralCDN components
  • DNS server
  • Returns Coral proxies for client query from a
    browser (through a resolver)
  • Coral HTTP proxy
  • Proxy selection based on client locality
  • Get from peer proxies (using Get) if at all
    possible
  • Goal is to reduce load on origin server
  • Flash crowd
  • Automatically form a (sort of) multicast tree

7
Coral key based routing
8
  • Basic idea in routing
  • Reduce distance to desired destination by
    (approx) half in each iteration
  • Reduces overloading nodes close to the key
  • Potential longer latency during lookup
  • Tradeoff to avoid tree saturation (due to
    slashdot effect)

9
Sloppy storage
  • Put and Get in other DHT
  • All proceed to node closest to key
  • Coral
  • Often satisfied by nodes other than those close
    to key
  • Two phase put
  • Node attribute full, loaded
  • Forward phase
  • Putter send RPCs to nodes en route close to key
  • Stop at full and loaded node
  • Reverse phase
  • Pick a node that is closest to the key as the
    destination for the put
  • Multiple values may be stored for a key

10
  • Get (retrieval)
  • Remote peer (for k) returns values
  • Application dependent action on values returned
  • E.g. Coralproxy
  • Values are locations of files that hash to k
  • parallel download of files from the multiple
    locations

11
Hierarchical operations
  • Hierarchical retrieval using clusters

12
  • Hierarchical insertion
  • Start put in level 2 cluster
  • Continue putting in level 1 cluster
  • Loose hierarchical cache

13
Cluster management
  • Joining node contacts an existing peer node to
    join
  • A node will join only an acceptable cluster
  • Latency limit for the cluster and RTT results to
    the members of the cluster
  • All RPC results cluster contain meta data for
    fine tuning the cluster membership

14
Implementation
  • Coral
  • 14K lines of C
  • DNSserv
  • 2K lines of C
  • HTTP proxy
  • 4K lines of C

15
Evaluation
  • Load distribution and control of flash crowd
    problem
  • Clustering
  • Ability to self-manage clusters
  • No hot spots in the indexing system

16
Experimental setup
  • 166 Plantelab machines seeded with a host name
  • Run coral daemon, dnsserv, coralproxy on each
  • Unmodified Apache web server on host
  • Clients on the planetlab machines start
    generating requests

17
Server load results
18
Client latency
19
Clustering
Write a Comment
User Comments (0)
About PowerShow.com