System Design Fundamentals
Vote

0% completed

DNS Load Balancing and High Availability

Round-Robin DNS

Geographically Distributed DNS Servers

Anycast Routing

CDNs and DNS

DNS answers a question, and it also gets to choose which answer to give. That choice is a place to spread load and to survive failures, before any traffic reaches your servers.

Four techniques use it: round-robin DNS, geographically distributed servers, anycast routing, and CDNs.

Round-Robin DNS

The simplest one. Several IP addresses are associated with a single domain name. When a resolver asks for that name, the DNS server hands back one of the available addresses, rotating through them in turn.

That spreads requests across several servers, which improves performance and availability.

One domain name maps to several addresses, and each query gets the next one in the rotation
One domain name maps to several addresses, and each query gets the next one in the rotation

The limitation is what it does not know. Round-robin takes no account of how loaded each server actually is, or where the client is. It rotates blindly. So load can end up uneven, and some users can be sent to a server much further away than necessary.

Geographically Distributed DNS Servers

DNS servers can be deployed in several geographic locations rather than one.

Users get faster and more reliable resolution from a server near them. And the spread gives redundancy: if one location becomes unreachable through a server failure or a network outage, users can still be served from another location.

Anycast Routing

Anycast lets multiple servers share the same IP address.

When a resolver sends a query to that address, the network routes it to the nearest of those servers, judged on things like network latency and server availability. The resolver did not choose, and the DNS operator did not choose. The routing infrastructure chose.

That gives three things at once:

  • Load balancing. Queries are spread across many servers, so no single one becomes a bottleneck.
  • Reduced latency. Users reach the nearest server, which cuts resolution time.
  • High availability. If a server fails or becomes unreachable, queries are automatically redirected to the next closest server sharing that address. Nothing has to be reconfigured.
Round-robin hands out different addresses in turn, geographic distribution puts different servers in different places, and anycast gives many servers one shared address and lets the network pick
Round-robin hands out different addresses in turn, geographic distribution puts different servers in different places, and anycast gives many servers one shared address and lets the network pick

The difference from round-robin is worth stating plainly. Round-robin gives out different addresses and hopes they work out. Anycast gives out one address and lets the network deliver it to the right place.

CDNs and DNS

A Content Delivery Network (CDN) is a network of distributed servers that cache and deliver web content to users based on their geographic location. It improves performance, reliability and security by spreading load across many servers and serving each user from a server close to them.

DNS is how a CDN steers you.

When you request content from a site using a CDN, the CDN's DNS server works out the best server to deliver it, based on your location and other factors. It then replies with that server's IP address, and your request goes there.

The CDN's own DNS server picks the best edge server for the user's location and returns its address, so the request goes to a nearby server
The CDN's own DNS server picks the best edge server for the user's location and returns its address, so the request goes to a nearby server

So the routing decision is made during name resolution, before a single byte of content moves.

TechniqueWhat it variesWhat it is blind to
Round-robin DNSWhich address is returned, in rotationServer load and client location
Geographic distributionWhere the servers physically areNothing inherently, but you manage the locations
AnycastNothing, one address, the network routes itRequires the routing layer to cooperate
CDN with DNSWhich edge server's address is returnedContent that cannot be cached

💡 If you are asked how traffic reaches the right region, naming the layer is what earns the point. "Anycast at the DNS layer, so a failure re-routes without any reconfiguration" tells the interviewer where the decision happens. "We use load balancing" does not.

Key takeaway: Round-robin DNS rotates through several addresses for one name, and its weakness is that it ignores real load and real distance. Geographically distributed servers give nearby users faster answers and keep working when one location fails. Anycast shares one address across many servers and lets the network route to the nearest, which also fails over automatically. A CDN uses its own DNS server to return the address of the best edge server for each user.

That closes the chapter. Next is a Flashcards Review to lock in the vocabulary, then a Chapter Assessment.

tw none

tw none

· 6 months ago

Some of these passages are just fluff with vague points or without detail at all. "Content Delivery Networks (CDNs) and their relation to DNS" doesn't really highlight the importance of DNS in relation to CDNs specifically. It's just describing what the DNS already does. "Geographically distributed DNS servers" is another section that just vaguely touches on key benefits.

Show 2 replies
Abdullah

Abdullah

· 2 years ago

title

Show 1 reply
The lone Ranger

The lone Ranger

· 2 years ago

Adding highlighter like educative will help alot in highlighting important points.

Thanks

Show 1 reply
Ricardo Franco

Ricardo Franco

· 3 years ago

CDNs help improve the performance, reliability, and security of websites and web services by distributing the load among multiple servers and serving content from the server closest to the user.

How distributing the load among multiple servers can improve the security of websites?

Show 2 replies

Reading Progress

0%


Vote for new content

On This Page

Round-Robin DNS

Geographically Distributed DNS Servers

Anycast Routing

CDNs and DNS