Dynamic Load Balancing at the DNS Level
A server load balancing solution deployed globally, routing customer requests as soon as they touch the edge of the network — yet requiring no hardware deployment. Sound like a pipe dream? Not if the traffic monitoring is performed at the DNS level, and the solution leverages one of the world’s most reliable DNS infrastructures.
Built on a Proven Technology Platform
The Neustar UltraDNS® Traffic Controller service is built on the global directory services platform at the core of Neustar UltraDNS Managed DNS Service, which provides a carrier-class DNS infrastructure for over 20-million Internet domains.
Traffic Controller allows administrators to define load balancing configurations for content servers which reside in one or more geographic locations. It manages traffic directed to servers and data centers by dynamically changing responses to DNS requests. Load balancing is performed based on dynamic metrics obtained by the constant monitoring of host servers.
Traffic Controller leverages SiteBacker, Neustar UltraDNS monitoring and failover service, which supports critical websites around the world. SiteBacker’s monitoring probes measure the responsiveness of designated web/application servers. Based on the probe results, Traffic Controller dynamically modifies the weight factors in DNS to redirect traffic to more responsive servers.
The service also supports custom probes based on specific customer requirements such as proprietary applications that communicate on non-standard ports.
Traffic Controller can be deployed as your sole load balancing service or can be used to complement an existing, in-house load balancing solution — thus extending its global reach without additional hardware investment.
Weighted Load Balancing
Neustar’s UltraDNS Traffic Controller service supports weighted load balancing (WLB) as well as the traditional “round-robin” approach. With WLB, weights are applied to authoritative queries on a percentage (%) basis. Weighted DNS distribution takes place as follows.
First, a customer configures a load balancing pool for www.example.com with the following load balancing resources. Each host maintains a load-balanced resource www.example.com.
Host1 — 18.104.22.168 Host2 — 22.214.171.124 Host3 — 126.96.36.199
Then, the customer assigns a “weight” or percentage to each host (allocating the amount of traffic to each host). Based on the following example, Host1 would be served for DNS resolution twice as often as Host2 or Host3.
Host1 (188.8.131.52) = 50% (weight = 2) Host2 (184.108.40.206) = 25% (weight = 1) Host3 (220.127.116.11) = 25% (weight = 1)
In addition, probe monitoring ensures that resources reaching critical thresholds or becoming unavailable are pulled from the load balancing pool. Traffic Controller provides three (3) primary thresholds and associated actions to be taken:
- Warning — Customer is notified that specific probe thresholds have been exceeded for a server. No configuration changes are made.
- Critical — Customer is notified that specific probe thresholds have been exceeded for a server. Weight is dynamically reduced by 50% to reduce traffic to that server.
- Failure — Customer is notified that specific probe thresholds have been exceeded for a server, and that a specific record is no longer served.
Thus, if Host1 reaches the critical threshold, the original weight of 2 is reduced to 1, thereby reducing traffic to Host1 by 50% and subsequently balancing traffic equally among all three servers. If Host1 reaches the Failure threshold, its traffic will be redistributed equally between Host2 and Host3.