1. 1.Charting the CDNs(locating all their content and DNS servers). 2.Assessing their server...
-
Upload
tyler-kennedy -
Category
Documents
-
view
214 -
download
0
Transcript of 1. 1.Charting the CDNs(locating all their content and DNS servers). 2.Assessing their server...
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
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).
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.
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.
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.
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