18
Robust Content Delivery Network R92725016 周周周 R92725050 周周周 R92725051 周周周

Robust Content Delivery Network R92725016 周亦方 R92725050 莊豐源 R92725051 黃世翔

Embed Size (px)

Citation preview

Page 1: Robust Content Delivery Network R92725016 周亦方 R92725050 莊豐源 R92725051 黃世翔

RobustContent Delivery Network

R92725016 周亦方R92725050 莊豐源R92725051 黃世翔

Page 2: Robust Content Delivery Network R92725016 周亦方 R92725050 莊豐源 R92725051 黃世翔

ChinaU.S.A.

Web servers

Taiwan

text

movie

picture

HTTP Request

HTTP Request

cache

cache cache

cache

Page 3: Robust Content Delivery Network R92725016 周亦方 R92725050 莊豐源 R92725051 黃世翔

ChinaU.S.A.

Web servers

Taiwan

text

movie

picture

HTTP Request

HTTP Request

cache

cache cache

cache

Page 4: Robust Content Delivery Network R92725016 周亦方 R92725050 莊豐源 R92725051 黃世翔

Terms

www.media.com : On-line media center www.cdn.com: Content deliver service DNS server of cdn.com:

GRM (Global Request Manager) Configuration Manager DNS (bind) Agent

Cache (nodes)

Page 5: Robust Content Delivery Network R92725016 周亦方 R92725050 莊豐源 R92725051 黃世翔

DNS Query Format

Page 6: Robust Content Delivery Network R92725016 周亦方 R92725050 莊豐源 R92725051 黃世翔

DNS Response Format

Page 7: Robust Content Delivery Network R92725016 周亦方 R92725050 莊豐源 R92725051 黃世翔

System Diagram

http://www.media.com/http://www.cdn.com/movie/waterbaby.wmv

– ButterFly, RFC 9999

Our core tech. !!!

Page 8: Robust Content Delivery Network R92725016 周亦方 R92725050 莊豐源 R92725051 黃世翔

DNS BIND

GRM

Config Manager1. Mapping table2. Agent

DNS Server of cdn.com

ISP DNS

Query cdn.com

1. If the client domain exists in the table, GRM returns what it maps.

2. If it doesn’t exist in the table, GRM returns a list of randomly–selected servers and then starts agent for this domain, so that next user from the same domain will receive a better server list answers.

Page 9: Robust Content Delivery Network R92725016 周亦方 R92725050 莊豐源 R92725051 黃世翔

Domain Ex: 140.112.107

USER

GROUP Ex: Taiwan, China, U.S.A

Cache Ex: TW1, TW2, CN1…

140.112.107 -> Taiwan, U.S.A.,China

169.237.198 -> U.S.ATaiwan,China

Taiwan -> TW1, TW2, TW3 U.S.A. -> US1, US2, US3China -> CN1, CN2

…..

Domain->Group Table:

…..

Each cache is an object having many attributes such as IP, name, group, health…

Group->Cache Table:

Page 10: Robust Content Delivery Network R92725016 周亦方 R92725050 莊豐源 R92725051 黃世翔

Goal

Domain -> Group: (content distribution)

Using known facts or starting agent to place each domain in suitable group.

Group -> Cache: (load balance)

Randomly assign a cache to each request.

Page 11: Robust Content Delivery Network R92725016 周亦方 R92725050 莊豐源 R92725051 黃世翔

Server-Choosing Algorithm

Use known facts:

Ex: We know that 140.112.xxx.xxx is NTU

domain. Then any IP from this domain

will be served by caches in Taiwan. Agent help:

Using various methods to decide a group order for the unknown domain.

Page 12: Robust Content Delivery Network R92725016 周亦方 R92725050 莊豐源 R92725051 黃世翔

Agent Type1. ICMP ping -> Round trip time (layer 3)2. Traceroute -> hop count (layer 3)3. DNS lookup round trip time -> DNS reverse looku

p (layer 7)4. Multicast to find the most available (any)

Reference: Network appliance, Cisco, 麟瑞科技

The lower the layer, the less the noise.More accurate but is subjected to be banned.

Page 13: Robust Content Delivery Network R92725016 周亦方 R92725050 莊豐源 R92725051 黃世翔

Scenario ( 差別服務 )

1. Users from different domains will get different lists of answers.

User from 140.112.107(Domain = Taiwan)

User from 140.112.106 (Domain = U.S.A.)

Page 14: Robust Content Delivery Network R92725016 周亦方 R92725050 莊豐源 R92725051 黃世翔

Scenario ( 仰賴 browser)

2. If the first-selected server crashes, browser will automatically try the next one in the list.

1. TW1: 140.112.107.772. TW2: 140.112.107.1783. US1: 140.112.106.66

User from 140.112.107(Domain = Taiwan)

Page 15: Robust Content Delivery Network R92725016 周亦方 R92725050 莊豐源 R92725051 黃世翔

Scenario ( 仰賴自己最可靠 )

3.TestHealth runs periodically to ensure that cache health states in Group -> Cache table is updated.

4.Here comes another user from 140.112.107 domain, and he will get a new server list.

Page 16: Robust Content Delivery Network R92725016 周亦方 R92725050 莊豐源 R92725051 黃世翔

Scenario ( 前人種樹 )

5.If a user comes from an unknown domain, ex: 140.112.214, GRM returns a randomly chosen server list.

6.Then Config Manager starts PingAgent to decide a group order for this domain, and then updates Domain -> Group table.

Page 17: Robust Content Delivery Network R92725016 周亦方 R92725050 莊豐源 R92725051 黃世翔

Scenario ( 後人乘涼 )

7.If another user comes from 140.112.214, since Config Manager has the prior knowledge of this domain, it simply returns the answer.

Page 18: Robust Content Delivery Network R92725016 周亦方 R92725050 莊豐源 R92725051 黃世翔

Conclusion

Using known facts and agent to update knowledge base. (AI learning)

Our butterfly model can be applied to almost any application because it is an overlay of DNS. Popular Protocols (HTTP, FTP, …) Streaming (RealNetwork, Windows Media Vide

o, Apple QuickTime, …) Mobile (WML, …)