DNS-based Global Server Load Balancing (GSLB) provides an effective way to manage workloads across data centers, yet not all DNS GSLB solutions are created equal.
Data center load balancers do an excellent job of distributing workloads across multiple servers inside a data center, but cannot be used for routing traffic between multiple data centers. DNS based Global Server Load Balancing (GSLB) can provide an effective way to manage workloads across data centers, but not all DNS GSLB solutions are created equal. Capabilities range from very basic static balancing to dynamic, real time load management. These differences can have impact on application availability and performance. As enterprises adopt more diverse and distributed infrastructure, they are encountering the limitations of traditional DNS based global load balancing. NS1's intelligent DNS GSLB delivers a modern SaaS approach that supports diverse multi-cloud and data center infrastructures.
Standard DNS provides a basic load balancing capability - round robin DNS. The DNS changes the order of the records each time it responds to a request and the clients select the first record on the list of valid answers. This provides a basic load balancing function but is lacking in several important respects. It does not factor in the location of the end user, so without a georouting component users will be connected to data centers that could be very far away. It also does not factor in data center availability, resulting in end users getting directed to unavailable services.
Finally, this basic approach has no knowledge of actual load. There are numerous scenarios that can come about that result in one data center getting overloaded with traffic while another sits largely idle. Basic round robin DNS simply cycles through the list regardless of workload at each point of presence.
Data center load balancers (also referred to as application delivery controllers) distribute workload to servers within a data center but they do not provide a load balancing function between data centers. To address the limitations of basic round robin DNS, the vendors of data center load balancers have added in optional, enhanced DNS functionality into their hardware based, load balance appliances. This DNS function can run in conjunction with data center load balancing on the same device or can be run on a separate network appliance. In either scenario, the DNS functionality is tightly coupled with the data center load balancing functionality. The DNS receives real time load and availability data from each load balancer and uses it to make much better GSLB decisions than round robin DNS.
While able to provide a better GSLB, the appliance approach has a number of drawbacks that make it a far from ideal solution. These are discussed below.
Server load balancing continues to be a core element of IT infrastructure, even as applications move from traditional data center architectures to the Cloud. There is always a need to intelligently distribute workloads across multiple servers, whether those servers are real or virtual, permanent or ephemeral.
There are two fundamental problems with proprietary GSLB solutions from the load balancer vendors.
First, they are not recommended to do global load balancing for internet facing applications and services. An internet facing, authoritative DNS should be highly performant, have 100% availability and be well protected from DDoS and other attacks that threaten DNS. There is also added risk of hosting DNS in your own data center. If the facility itself has an issue then DNS is down for all your locations. In short, provisioning, protecting and supporting a DNS infrastructure to meet the needs of internet facing online applications is simply not a good use of resources for most enterprises. Providers of cloud based managed DNS services can do it so much better and at much lower cost.
Second, the proprietary GSLB solutions from the load balancer vendors do not have multi-vendor compatibility. Their value added GSLB functions only work with the specific vendor's load balance appliance. As enterprises move workloads into cloud environments, they often have different types of load balancers in different locations. They may have a mix of Amazon ELB, HAProxy, NGINX as well as appliance load balancers front ending their different cloud and data center locations. Proprietary GSLB solutions do not have the open, multi-vendor capability that is needed for today's modern enterprise infrastructure.
Other managed DNS providers have implemented GSLB traffic management but these are essentially add-on functionality to standard DNS round robin. The approach is based on having an A (or AAAA) record for every point of presence that hosts the same content or application service. The DNS applies traffic management rules that result in a reordering of the records when responding to a query. This approach is inflexible, complex to configure and hard to maintain. These implementations also have very limited capabilities to take in real time telemetry that would result in better load balancing decisions. Their DNS systems do not have real time, open API data feeds that allow for GSLB to take into account actual load at the different data centers, or to use 3rd party monitoring data.
First, NS1 has open API interfaces that accept real time data from the network infrastructure, external monitors and devices such as data center load balancers. The result is every DNS answer can have a wealth of meta data associated with it that reflects the availability, location, load, capacity and responsiveness of a given point of presence.
Second, NS1 has redesigned how DNS records are organized to make it much easier to configure and maintain traffic management policies. In NS1, every DNS record can have multiple answers, each of which has associated meta data. NS1's Filter Chain is a visual, drag and drop policy engine that makes it easy to create traffic management policies that select the best answer for the record. No other DNS system does it that way.
It integrates all the traffic management criteria enterprises need for effective load distribution. This includes geolocation, network affinity, data center availability, real time load and capacity at each data center.
Open API data feeds enable full multi-vendor, cross cloud load balancing. Regardless of infrastructure, NS1 can ingest the telemetry needed for advanced GSLB.
It provides the most comprehensive set of traffic management controls in the industry. It includes the ability to do customized load shedding, sticky routing and other functions that ensure best experience for end users and prevent mal-distribution of workloads across points of presence.
Enterprises have multi-site load balancing requirements for both their public, internet facing applications and for their private, intranet applications. As enterprises diversify their infrastructure into multiple cloud environments along with traditional data centers, they need open, multi-vendor GSLB to deliver best possible performance at all times. The NS1 DNS platform is ideal for GSLB for both public internet and private intranet applications:
NS1 Managed DNS is a high performance, globally anycasted cloud based DNS service. It is ideal for the performance, security and cost requirements of public, internet facing GSLB.
NS1 Private DNS is self hosted, centrally managed software DNS solution for internal networks. It provides all the GSLB functionality of Managed DNS. Private DNS effectively balances workloads and traffic across extended, private multi-vendor infrastructures.
NS1’s network offers 24 global POPs with direct access to Tier 1 Internet Service Providers and hundreds of Gbps of capacity at all times - ensuring users get the best performance anytime, anywhere.
NS1 provides a global infrastructure that can respond to users instantly, based on current knowledge of available resources. If a new resource was just provisioned on the cloud, NS1 can instantly start routing users to it. If a resource is migrated, NS1 immediately routes users to its new location.
NS1 is location aware. It obtains precise geographical metadata about every DNS resource, and uses a state of the art geo-IP database to determine the location of the end user. This enables the network to perform proximity-based routing for every user request. NS1 can also restrict and block requests from locations you define.
NS1 connects to each data center via an open API and performs regular health checks, to see if resources are available, how much bandwidth they have available and what is the network latency in the segments leading to that resource. It can use this data to route users intelligently to an available and responsive resource.
Using the same API, NS1 can determine internal traffic parameters for each data center, just like a traditional load balancer does for individual servers. It offers an open API which allows network devices in different data centers to update the DNS network about load, total capacity and number of current connections, even the cost of sending users to one resource vs. another. All this data can become parameters in the DNS routing decision.
Unlike DNS GLBS solutions provided by traditional appliances, NS1 is a managed cloud-based service which can be setup and deployed in minutes. It is backed by a 100% guaranteed uptime SLA. There is no CAPEX - no appliances or software to purchase - and OPEX is lower than on-premise or appliance-based solutions.