content distribution networks

Post on 06-Jan-2016

38 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Content Distribution Networks. ECE544 Dhananjay Makwana ( makwana@semandex.net ), Principal Software Engineer, Semandex Networks. Paul Krzyzanowski , Rutgers University Vyas Sekar , Stony Brook University Peter Steenkiste , CMU. Credits. 1. Motivation / Problem 2. Evolution - PowerPoint PPT Presentation

TRANSCRIPT

{

ECE544

Content Distribution Networks

ECE544Dhananjay Makwana (makwana@semandex.net), Principal Software Engineer, Semandex Networks

5/2/14

ECE544

Credits

• Paul Krzyzanowski, Rutgers University• Vyas Sekar, Stony Brook University• Peter Steenkiste, CMU

5/2/14

ECE544

1. Motivation / Problem 2. Evolution 3. Implementation 4. Mapping users to CDN servers 5. Types of Content 6. Hybrid Approaches 7. Further Reading 8. Q&A

Overview5/2/14

ECE544

Quality/Performance expectations are rising

Serving Content from a single location Scalability Reliability Performance

“Flash Crowd” problem

Motivation / Problem5/2/14

ECE544 5/2/14

ECE544 5/2/14

ECE544 5/2/14

ECE544 5/2/14

ECE544 5/2/14

ECE544 5/2/14

ECE544 5/2/14

ECE544

Edge Caches: work with ISP and networks everywhere to install edge caches

Edge = close to customers Content delivery: getting content to the edge

caches Content can be objects, video, or entire web sites

Mapping: find the “closest” edge server for each user and deliver content from that server

Network proximity not the same as geographic proximity

Focus is on performance as observed by user (quality)

CDN to the rescue5/2/14

ECE544 5/2/14

ECE544 5/2/14

ECE544 5/2/14

ECE544 5/2/14

ECE544 5/2/14

ECE544 5/2/14

ECE544 5/2/14

ECE544 5/2/14

ECE544

How to map clients to servers? What metrics?

Latency, Load DNS, HTTP 304 response, anycast, etc.

How/where to replicate content? On demand? Proactive/prefetch? everywhere or close to demands?

Questions5/2/14

ECE544

Application based Routing based DNS based

Mapping5/2/14

ECE544

HTTP supports simple way to indicate that Web page has moved (30X responses)

Server receives Get request from client Decides which server is best suited for

particular client and object Returns HTTP redirect to that server

Pros Can make informed application specific

decision Cons

May introduce additional overhead Multiple connection setup, name lookups, etc. Could interact poorly with some browser

implementations

Application Based5/2/14

ECE544

IP Anycast Use BGP to announce same destination IP

from multiple places. Clients are agnostic and connect to Anycast

address ISP router routes to “nearest” anycast server.

Pros All IP infrastructure is available Potential scaling to internet level

Cons Cannot incorporate application policy Stateful connections may create problems Relatively less dynamic

Routing Based5/2/14

ECE544

DNS Clients perform typical DNS query. DNS servers are locality aware Reply with “best” server available

Pros Existing DNS protocol (fully supported) Fully flexible application/content provider

policies Potential other uses (e.g. Ad serving, Video

transcoding) Cons

Multiple DNS queries Depends upon an efficient implementation

DNS Based5/2/14

ECE544

Example Akamai Akamai does this via Dynamic DNS Customer modifies URLs (akamizes) Direct requests to right content servers Resolve a host name based on:

Service requested (e.g. QuickTime, Windows Media, HTML)

Content requested (css, js, swf, jpeg etc.) Server health Server load User location Network status Load balancing

Mapping (DNS Based)5/2/14

ECE544 5/2/14

ECE544 5/2/14

ECE544

Resolve a7.g.akamai.net NS resolver contacts root server

Root server sends a referral to a name server responsible for .net

Resolver queries .net name server Returns a referral for .akamai.net This is the top-level Akamai server

Resolver queries a top-level Akamai server Returns a referral for .g.akamai.net Low-level Akamai server (TTL approx 1 hour) Low-level servers are in the same location as edge servers

closest to user Resolver queries a low-level Akamai server

Returns IP addresses of servers available to satisfy the request Short TTL (several seconds to 1 minute)

DNS Resolution5/2/14

ECE544 5/2/14

ECE544

Static content Cached depending on original site's requirements (never to

forever) Dynamic content

Caching proxies cannot do this Akamai uses Edge Side Includes technology (www.esi.org) Assembles dynamic content on edge servers Similar to server-side includes Page is broken into fragments with independent caching properties Assembled on demand

Streaming media Live stream is sent to an entry-point server in the Akamai network Stream is delivered from the entry-point server to multiple edge

servers Edge servers serve content to end users.

Content Types5/2/14

ECE544

The Akamai Network: A Platform for High-Performance Internet Applications

Erik Nygren, Ramesh Sitaraman & Jennifer Sun

Improving performance on the Internet Tom Leighton

Globally Distributed Content Delivery John Dilley et. al

Further Reading5/2/14

ECE544

Questions?5/2/14

Thank You !

top related