SBN

All Resolvers Aren’t Equal – Don’t Worry, GTM is Aware

What is GTM

Global Traffic Management, or GTM, is a DNS-based load balancing service that offers application owners a level of flexibility and insight that is unmatched by traditional on-prem solutions. Highly scalable and fault-resilient, GTM offers customers a layer of abstraction between endpoints, so traffic can be easily shifted between targets. However, the platform is not limited to weighted load distribution: GTM can execute intelligent routing decisions based on end-user location, network conditions, and even origin server availability. These features are possible thanks to Akamai’s unrivaled visibility into the Internet, which fuels the platform’s dynamic, data-based route optimization engine. 

Traditional Limitations

Along with its impressive suite of service offerings, GTM includes built-in intelligence that distinguishes the platform from other DNS traffic management solutions. One such example–DNS load balancing is often plagued by distribution inconsistencies caused by recursive resolver caching. Specifically, a DNS server traditionally hands out IPs without any visibility into how much traffic the requesting resolver actually facilitates.  While the DNS load balancer may be honoring the proper ratio, the ultimate distribution will be distorted because of uneven demand amongst ISP recursive resolvers. 

For example, let’s say a hostname is queried by four recursive resolvers, A , B, C and D, and a network administrator wants to evenly distribute traffic between two endpoints, DC X and DC Y. In this scenario, most DNS load balancers will simply handout the two DC IPs in an equal manner without considering the characteristics of the machine requesting the address. However, if resolver A’s traffic demand is significantly larger than its peers (eg. Atraffic = Btraffic + Ctraffic + Dtraffic.), the load balancing platform will not achieve the desired 50/50 split. Each resolver will cache the response, and the DC that was assigned resolver A will ultimately experience disproportionate load. Even though the load balancing platform honored the prescribed 50/50 distribution, the eventual outcome was asymmetrical because of uneven nameserver demand. This is shown in the following diagram:

gtm replace.jpg

While this is an oversimplified example, this situation demonstrates why many DNS traffic solutions struggle to successfully execute a desired split within a statistical margin of error– standard DNS load balancers treat all resolvers equally, which can lead to problematic (and potentially catastrophic) results.

Nameserver Demand

GTM’s performance properties account for this demand disparity by monitoring ISP recursive behavior and applying the necessary adjustments when handing out IPs. In general, high-trafficked resolvers will quickly re-request an IP for a given hostname after a cached entry expires, while low-trafficked resolvers will experience more of a time discrepancy. By averaging the delta between these two events (TTL expiration and re-query) for a sufficient sample size, Akamai can estimate the amount of traffic an individual resolver facilitates. GTM wisely incorporates this data into the load balancing algorithm, and the platform is able to distribute traffic more accurately as a result.

Using our prior example, GTM will have previously garnered insight into the demand associated with each resolver (Atraffic = Btraffic + Ctraffic + Dtraffic ) using the methodology outlined above. Armed with this information, the platform will answer queries strategically to achieve a balanced load between DC1 and DC2. Specifically, one DC will be assigned to resolvers B, C, and D, while the other DC will be assigned to resolver A. This nuanced handout approach, as shown in the following diagram, is preferred, as it accomplishes the desired 50/50 split due to traffic imbalance associated with the resolvers:

GTM two.jpg

Statistical Considerations

While nameserver demands significantly improve the accuracy of DNS-based load balancing, application owners should be aware of the statistical implications of the methodology. For example, the sample size of queries will directly correlate with the accuracy of the weighted outputs. A 50/50 balance ratio could not be achieved if only one recursive resolver was requesting records for a given hostname–in fact, the traffic could not be split at all in this hypothetical (albeit unrealistic) scenario. However, if thousands of nameservers are involved on a daily basis, the system will have ample opportunity to distribute the load evenly.

Another inherent limitation with nameserver demands is the natural traffic ebbs and flows  associated with time zones. While statistical averages from a large sample size provide the best possible insight into resolver traffic, the number of DNS queries will always fluctuate based on the time of day. A resolver in Tokyo is most-likely relatively idle during American business hours, but may experience significant spikes when users are awake and internet-active. Since GTM estimates are based on averages, the platform may overestimate or underestimate resolver demand based on when the record is handed out. GTM is investigating ways of incorporating timezone information into handout decisions, which will further distinguish the platform from traditional DNS load balancing solutions.

Load Feedback

To help mitigate these known statistical limitations, ‘GTM with Load Feedback’ is an option to further optimize routing decisions. Under the standard setup, origin data centers periodically send an xml file that reports on current, target and maximum load thresholds. If this object indicates the data center is near capacity, GTM will adjust the traffic distribution accordingly. Load feedback can be refreshed in 30 second intervals, ensuring decisions are made near real time. In addition, the GTM Load Feedback API ensures implementation can be executed programmatically and efficiently.  Combined with nameserver demands, load feedback is a powerful feature to ensure DNS traffic splits remain as accurate as possible.

Conclusion

While the recursive caching architecture can complicate loadbalancing, Akamai’s Global Traffic Management platform boasts unique intelligent features to adjust to the nuances of the DNS protocol. Performance mode’s nameserver demand calculations ensure DNS traffic splits remain as accurate as possible, while load feedback provides additional evaluation mechanisms to regulate data center bandwidth. Combined with Akamai’s unique insight into the workings of the public internet, Global Traffic Management is a powerful load balancing solution that offers unmatched reliability, flexibility and scale. 

Explore Akamai’s Diverse DNS Oriented Solutions

If you find this blog useful, continue your exploration with these references. Everything Akamai deploys depends on our Intelligent Edge DNS platform. Akamai expands our platform to enable a range of services for our customers:

Use this form to ask for Akamai’s help. We can have someone contact you to help with your DNS questions.


*** This is a Security Bloggers Network syndicated blog from The Akamai Blog authored by Sam Preston. Read the original post at: http://feedproxy.google.com/~r/TheAkamaiBlog/~3/UVhGj2pA_vM/all-resolvers-arent-equal---dont-worry-gtm-is-aware.html