This project is part of CS514: Advanced Computer Networks at Duke University. The goal is to design and evaluate a system that allows a client to obtain all locations of CDN servers and choose the best responding CDN servers independently, without relying on DNS resolution.
DNS-based CDNs use the geolocation of a client’s DNS resolver’s IP address to find the best CDN server for a client. This process is error-prone as both IP geo-location and the client’s resolver’s IP address can be incorrect. The objective is to create a system that mitigates these issues by enabling clients to directly query and evaluate CDN servers.
- CDN Server Discovery: The system will query a list of known CDN providers to obtain the IP addresses of their servers.
- Latency Measurement: The client will measure the latency to each CDN server using ICMP ping or HTTP requests.
- Server Selection: The client will select the CDN server with the lowest latency.
- CDN Scraper: A module to query CDN providers and retrieve server IP addresses.
- Latency Tester: A module to measure the latency to each CDN server.
- Server Selector: A module to choose the best CDN server based on latency measurements.
The system will be evaluated based on:
- Accuracy: How well the selected CDN server performs compared to the DNS-based selection.
This project aims to provide a more accurate and reliable method for clients to select the best CDN server by bypassing the traditional DNS-based approach. By directly measuring latency, clients can make more informed decisions, leading to improved performance and user experience.
Minyuan Zhou, Xiao Zhang, Shuai Hao, Xiaowei Yang, Jiaqi Zheng, Guihai Chen, and Wanchun Dou. Regional ip anycast: Deployments, performance, and potentials. In Proceedings of the ACM SIGCOMM 2023 Conference, 2023.
- Stella Gong
- Lilly Grella
- Brendan Massey
This project is licensed under the MIT License.