A First Look at Anycast CDN Traffic #
I’m a little bit out of my comfort zone by reviewing a network measurement paper this time. The paper discusses anycasting for CDN traffic. It’s a recent paper that does not seem to be peer-reviewed yet, so its results have to be taken with a grain of salt. Early on, the authors explain that anycasting was mostly used for stateless communication such as DNS in the past. The reason was that because of routing anomalies, you couldn’t be sure that all your IP packets get routed to the same physical data centre. And since TCP state is not synchronised between data centres, this would break TCP connections. Apparently, that is no longer the case because CDN providers now also use anycasting for TCP traffic. Later in the paper, the authors claim that routing anomalies are indeed rare.
In the first part of the paper, the authors discuss an active measurement method to tell if a given IP address is anycast. They do this by building on previous work that used ping latencies. The idea is to ping an IP address from two vantage points and see if the two RTTs added together are smaller than the RTT between the two vantage points. The speed of light gives us an upper limit on how far a packet can possibly make it in a certain period of time. Given a distributed measurement network such as RIPE Atlas, it is relatively easy to tell if a given IP address is anycast. The authors than set out to analyse Alexa’s top domains. I found it surprising that only three of Alexa’s top 100 domains are anycast: thepiratebay.se, reddit.com, and wordpress.com. Perhaps the remaining domains make use of DNS-based load balancing?
In the second part of the paper, the authors gather country-wide statistics to learn more about deployed CDNs. The data shows that a lot of traffic to CDN-hosted IP addresses goes to port 80 and 443, indicating that TCP-based anycasting is indeed used.
In Section 5, the paper investigates how common routing anomalies are. I wonder if the analysis is comprehensive enough to answer that question. First of all, the analysis seems to be limited to France. All CDN providers have data centres in Europe and probably work hard to ensure good connectivity for central Europe. But is this also the case for the rest of the world? Does a client in, say, northern Russia have the same probability of experiencing routing anomalies than their vantage points in France? My gut feeling says no, but I lack the background knowledge to be sure.
On a more general note, I wonder if the amount of data centres of a CDN provider influences routing anomalies. Am I more likely to experience routing anomalies when connecting to a CDN provider that has dozens of data centres on different continents? After all, such a setting would cause a more narrow distribution of the quality of BGP routes, right?
Despite my confusion about Section 5, I enjoyed reading this paper. It gave me a good overview of what network measurement people work on in this area. However, similar to many other networking papers, some paragraphs are so full of numbers and data points that it is hard to follow the discussion.