IP Anycast is an older technology that has seen a bit of a resurgence in recent months, perhaps encouraged by its use in providing several of the root servers. In designating certain unicast addresses as 'anycast,' operators configure these addresses on multiple machines, and configure routes to each host. When traffic is directed to an anycast address, routers select one path from potentially several valid paths to forward traffic (thus, no change from traditional unicast forwarding). One server receives each packet and responds to the requester.
In configuring multiple hosts to respond to the same address, stateless protocols such as DNS can be easily scaled. Servers can be located in closer proximity to clients, providing faster responses to queries. In the event of a single host failure, routes can quickly be withdrawn and servers in other locations handle the request traffic, all without any changes to client configurations.
Recursive DNS clients built into many of today's operating systems deal rather poorly with a failure of their primary recursive server. Of eight operating systems evaluated in a recent survey, seven kept no history of failed servers, trying each DNS query against the first server and waiting for a response before moving to secondary servers. Using anycast, service is maintained even in the face of a single or multiple host failure. This substantially reduces resolution delays due to server failure.
DNS will serve as an example of successful anycast use, but the strategies described are also applicable to other stateless protocols.
About the Presenter
Kevin Miller is a Network Systems Developer at Carnegie Mellon University,
where he is responsible for development and maintenance of campus network
services. He holds a Bachelor of Science in Computer Science degree from
Carnegie Mellon.