1. 1.Charting the CDNs(locating all their content and DNS servers). 2.Assessing their server...

34
1

Transcript of 1. 1.Charting the CDNs(locating all their content and DNS servers). 2.Assessing their server...

1

2

1. Charting the CDNs(locating all their content and DNS servers).

2. Assessing their server availability.

3. Quantifying their world-wide delay performance.

4. How to improve delay performance by adding servers.

ABSTRACT

Conduct extensive and thorough measurements that accurately characterize the performance of two large-scale commercial CDNs: Akamai and Limelight.

3

Meaning

1.Can be adopted by CDN customers to independently evaluate the performance of CDN vendors. Assessing their server availability.

2.Can also be used by a new CDN entrant to choose an appropriate CDN design and to locate its servers.

4

Contribution

1.Charting CDN Networks.

2.Measuring CDN Delay Performance.

3.Methodology for CDN Deployment.

5

Outline

1.Introduction

2.The Methodology for Charting CDN Networks.

3.The Methodology for Measuring CDN Networks.

4.The Methodology for CDN Deployment.

5.Conclusion

6

Introduction

An Example of CDN——Without CDN

YoukuYoukuUpload a XX video

7

Introduction

An Example of CDN——With CDN

YoukuUpload a XX video

Content Server

Content ServerContent Server

8

Introduction

Popular CDN vendors

1. Akamai

2. Limelight

3. ChinaCache(蓝汛)

4. ChinaNetCenter(网宿)

Common sense of CDN

1. Usually including DNS Networks and Content Networks.

2. A DNS Server sometimes is a Content Server too.

9

Introduction

The two different philosophies of CDN design

1. Enter deep into ISPs——Akamai

Deploying content servers inside ISP POPs.

Get close to end users, improve performance.

Large number of server clusters scattered around the globe.

Maintaining is difficult.

Need sophisticated algorithms to shuffle data among the servers across the public Internet

10

Introduction

The two different philosophies of CDN design

2. Bring ISPs to home——Limelight

Building large content centers at only a few key locations.

Typically place each center at a location that is simultaneously near the POPs of many large ISPs.

Connecting these centers using private high speed connections.

Lower maintenance and management.

Higher delay to end users.

11

Charting CDN Networks

Method

1. Find all CNAMEs.

2. Find all OPEN RECURSIVE DNS SERVERs.

3. Send DNS queries of CNAMEs to all OPEN RECURSIVE DNS SERVERs using PlanetLab. Return the IPs of Content Servers serving each OPEN RECURSIVE DNS SERVERs.

4. Check these IPs’locations and ISPs.

Depending on where a LDNS originates the query, the CDN chooses a nearby content server(and returns the IP address thereof).

12

Charting CDN Networks

13

Charting CDN Networks

Find all CNAMEs——Example

If youku is a customer of Akamai. Someone visits www.youku.com in browser.

1. The browser send DNS query of www.youku.com to Local DNS Serve( LDNS) .

2. LDNS contacts the authoritative DNS server of www.youku.com , which returns a CNAME a1105.b.akamai.net.

3. The LDNS again queries the authoritative DNS server of a1105.b.akamai.net, which eventually returns the IP addresses of an Akamai content server hosting youku’s content.

14

Charting CDN Networks

Find all CNAMEs——Example

www CNAME a1105.b.akamai.net

To find all the CNAMEs used by a particular CDN, we first gather a large set of web hostnames.

For each such hostname, a simple DNS query tells us whether it resolves to a CNAME or an IP address, and whether the CNAME belongs to the target CDN.

www A 211.151.146.91

15

Charting CDN Networks

Find all OPEN RECURSIVE DNS SERVER

1. Find hostnames’ authoritative name servers.

2. Trial DNS queries are sent to test the openness of these authoritative name servers.

Due to security concerns, many LDNSs are configured to only perform DNS resolution on behalf of their internal users. Fortunately, there are still a large number of open LDNSs. They will resolve DNS queries for users from anywhere. In addition, such DNS resolutions are usually recursive.

16

Charting CDN Networks

17

Charting CDN Networks

Result——Content Networks

Akamai

18

Charting CDN Networks

Result——Content Networks

Limelight

19

Charting CDN Networks

Result——DNS Networks

AkamaiIt is natural to conjecture whether Akamai runs at least one name server in each of its distributed cluster.(We will confirm later that this is indeed the case!).

LimelightWe conclude that Limelight uses IP anycast to announce their name servers.We discover that more than 3, 900 content servers are also running as name servers(a much higher percentage than Akamai!).

20

Measuring Delay Performance

Method

1. Choose the CNAME resolved to the largest number of CDN servers globally. Call this CNAME N.

2. For each vantage point D, Measurement client M first sends a DNS query to resolve N and obtains the IP address that the CDN content server used to serve D. Call this content server C. We need to measure the delay between D and C.

3. If content server C, is a DNS server too, then we would simply use King approach to get the delay.

Measure the delay from each of the vantage point D to the content server that the CDN redirects D to.

21

Measuring Delay Performance

Method

4. If not, we have to find a content server T in the same cluster as C which happens to also operate as a DNS server. As long as we can ensure that T is in the same cluster as C, the delay between D and T using King will be equivalent to the delay between D and C.

5. For Akamai, using traceroute to find the ISP Router, and be a centroid of a cluster, a Content Server belongs to this cluster if the RTT between itself and this centroid is smaller than a particular time T(1.5ms).

22

Measuring Delay Performance

The King approach

Measure the delay between an arbitrary open recursive DNS server and another arbitrary DNS server(not necessarily open recursive).

23

Measuring Delay Performance

The King approach——Version 1

Suppose we desire to measure the delay between the open recursive DNS server D and a specific DNS server T.

1. A measurement client M sends a DNS query to D to resolve a bogus name claimed in the authority of T.

2. D will try to resolve this name on behalf of M(get a negative response from T).

3. RTTDT = RTTMT - RTTMD

24

Measuring Delay Performance

The King approach——Version 2

1. Registers a domain(call it cdn.net) and operates a DNS server(say S) to respond to queries for this domain.

2. M sends a DNS query to D resolving a domain name T.cdn.net.

3. D contact S, S receives such a query, claiming that the T.cdn.net is delegated to another name server(call it ns.T.cdn.net) and return the IP address(say T) .

4. D caching T and forwards this response back to M.

25

Measuring Delay Performance

The King approach——Version 2

5. M sends another query to D to resolve a hostname in

T.cdn.net(say planA.T.cdn.net).

6. D does not contact S again, but instead forwards

the query to T directly. Obviously, T will respond with

an error message, which is then sent back to M.

26

Measuring Delay Performance

.

.

27

Measuring Delay Performance

Result

28

Measuring Delay Performance

Result

29

Evaluating CDN Deployment

Method

Let one CDN exploit another CDN’s deployment to assess the marginal gain of additional data centers.Consider how Limelight can learn from Akamai’s current deployment and choose good additional locations.

30

Evaluating CDN Deployment

Algorithm

1. Go through each Akamai location and evaluate the delay reduction if Limelight deploys just one more data center at that location.

2. Rank all the Akamai locations and choose the best one to add to the list of existing Limelight data centers(say L).

3. Repeat the same process to obtain the second additional location, with first additional location treated as part of Limelight and so on.

31

Evaluating CDN Deployment

How to evaluate the delay reduction

During the process of evaluating a particular vantage point D, we first determine the location from where Akamai serves D.

If the location is in the list of Limelight data centers L and the delay to Akamai is less than to Limelight, we take the delay to Akamai.

Otherwise, we take the delay from the best Limelight location.

32

Evaluating CDN Deployment

Result

33

Conclusion

Charting CDN Networks

How to find CNAMEs

Measuring CDN Delay

Performance

Methodology for CDN

Deployment

How to find OPEN RECURSIVE DNS SERVERs

How to measure

How to cluster

The King approach

Algorithm

34

Thanks