Use of DNS Aliases to Configure Fault Tolerance
Original Publication Date: 2001-Feb-01
Included in the Prior Art Database: 2003-Jun-18
Domain Name System (DNS) round-robin aliasing (configuring multiple IP adresses associated with multiple hosts for a single DNS hostname) is a common technique for implementing load balancing among multiple machines. This invention takes advantage of the same technique to implement fault tolerance,in addition to load balancing. The invention allows a single set of DNS configuration used for load balancing to be re-used for fault tolerance purposes. It also allows the configuration to be controlled using standard DNS mechanisms customers are already familiar with, rather than a new,proprietary configuration mechanism. The invention consists of using a standard DNS round-robin alias to access one of several hosts with replicated services running on them. A client application uses normal DNS resolution mechanisms to resolve the alias to a particular IP address taking advantage of any standard DNS and resolver mechanisms relating to load balancing or best subnet-matching. After resolution of the aliased hostname to an IP address, if the client has any problems connecting to that IP address and obtaining the desired services (either initially, or later on during a session),the client executes a retry algorithm consisting of: If at least one machine included in the round-robin alias is available to provide services, this algorithm will locate it, allowing the client to proceed.