A precise and efficient evaluation of the proximity between web clients and their local DNS servers
Abstract
Content Distribution Networks (CDNs) attempt to improve Web performance by delivering Web content to end-users from servers located at the edge of the network. An important factor contributing to the performance improvement is the ability of a CDN to select servers in the proximity of the requesting clients. Most CDNs today use the Domain Name System (DNS) to make such server selection decisions. However, DNS provides only the IP address of the client’s local DNS server to the CDN, rather than the client’s IP address. Therefore, CDNs using DNS-based server selection assume that clients are “close” to their local DNS servers. To quantify the proximity between clients and their local DNS servers, we propose a novel, precise, and efficient technique for finding the associations of client to local DNS servers. We collected more than 4.2 million such unique associations in three months. From this data, we study the impact of proximity on DNS-based server selection using four different proximity metrics. We conclude that DNS is good for very coarse-grained server selection, since 64% of the associations belong to the same Autonomous System. DNS is less useful for finer-grained server selection, since only 16% of the client and local DNS associations are in the same network-aware cluster [13] (based on BGP routing information from a wide set of routers). As an application of this methodology, we evaluate DNS-based server selection in three of the largest commercially deployed CDNs to study its accuracy.