Round-Robin DNS is the simplest solution that you can apply to create a DNS load balancing for your domain. With Round Robin, you can manage the DNS traffic in a way that will utilize your authoritative name server and redirect the traffic, reducing the stress from a single point (direct to multiple web servers).
What is load balancing?
Load balancing is a method for optimizing the network performance by utilizing a particular algorithm to administrate the traffic between multiple servers. The traffic management criteria could be different – the IP address of the visitor, the current occupation of a server, weighted loading balance that depends on the servers’ capacities, and more.
What is the Round-Robin algorithm?
The Round-Robin algorithm is a really old method of task division. In that case, each task comes in a cyclic, turn-by-turn, for a particular interval of time. It has been in use for ages, and it is still around because it works straightforward.
So, what is Round-Robin DNS?
Round-Robin DNS is a DNS load balancing method that administrates the traffic, depending on when a user request comes and the number of servers you have. The idea is simple; you have different A or AAAA records that have different IP addresses. Each of these IP addresses corresponds to a different web server that has a copy of your site. When a user tries to access your site, and its browser tries to resolve your domain name, your authoritative name server responsible for the A or AAAA records will provide the next in rotation A or AAAA records from those you have. You can have records for each of your web servers, and your visitors will be automatically redirected, depending on the moment when they accessed your DNS name server.
Let’s imagine the situation where you have 5 users and 3 servers:
User 1 connects to server 1, user 2 to server 2, user 3 to server 3, then user 4 will start the circle again and connect to server 1, user 5 to server 2, etc.
DNS Round-Robin, together with your website’s multiple instances, will reduce the stress and administrate better the traffic to your site. The result will be a better experience for your users, a less saturated network, and better performance overall.
The mechanism could be modified if your web servers are not exactly the same. Imagine server 1 is 2 times better than the other 2. You would like to utilize it two times more so you get the best performance. Here comes the Weighted Round Robin.
Weighted Round-Robin
Weighted Round-Robin is again a method for load balancing, almost the same as the typical Round-Robin, with the only difference that you put a value, a weight to each of the servers. This number will determine how much you want to use them, in comparison to all of the traffic that is coming.
In the case of the 3 servers, with 1st two times better, you would like to use it 2 times more. 100 percent, divided by 4 is 25%. First will get 50%, and the next two will get 25% each.
The same example as before with the 3 servers and 5 users.
User 1 and user 2 will connect to server 1, user 3 to server 2, user 4 to server 3, and user 5 again to server 1.
To which one will user 6 connect? Again to server 1.
Server 1 will get two times more users connected than the rest of the servers if it has 2 times more weight.
Conclusion
Round-Robin DNS is a basic load balancing mechanism that takes into account only when the user gets its DNS query resolved. It does not take into account the occupation of the servers. It is practical, functional, and easy to use, but there are more intelligent load balancing methods.