3

After reading load distribution alternatives and giving my limited skills on the area I'm biased toward round-robin DNS strategy.

From what I understood, one key aspect of DNS Round-Robin is setting a low TTL value, avoiding caching.

My main concern is that all my traffic comes from mobile networks, almost 30% of that comes from t-mobile 3G. Some questions:

1) Is there a chance that almost all clients on the same mobile network will be redirected to the same IP in the TTL frame? That would kill the distribution technique.

2) If I choose a really low TTL (zero or one). That impacts directly over client performance? It does a DNS miss every time or it's a setting that only impacts on DNS servers?

Any help would be much appreciated. Thanks

2
  • 1
    Have a look at this question for a somewhat related discussion. Not specific to mobile (out of my area of expertise there) but might give you some other thoughts. serverfault.com/questions/101053/…
    – squillman
    May 27, 2010 at 1:58
  • 1
    Just because you set a low TTL, it doesn't mean major proxy DNS servers follow it. Since your mobile clients would be using such proxies run by ISP's or wireless service providers, you need to think about that path.
    – RainDoctor
    May 27, 2010 at 2:07

2 Answers 2

1
  1. Each successive lookup will re-order the A records and most clients will interpret a mult-A record response to mean use the first in the list. If you have many clients using the same DNS caching DNS server, you may see load imbalance.

Android by default will cache DNS for 10 minutes. Something to consider.

  1. Setting a low TTL will impact your DNS server load but since the protocol is so lightweight this wouldn't matter unless you were on a huge scale.

Also, consider the case where one of the IPs in the A record list fails.

1

I'd recommend you take a look at this question, which can give you some ideas on how DNS round-robin works and its major drawbacks.

Regarding your specific questions:

  1. This is one of DNS round-robin major drawbacks as records are cached not only in the DNS hierarchy itself but also on Operating Systems and browsers or other applications. The combination of all these cache levels can be very difficult to manage.

  2. I'd say the impact is low but measurable, but I'd not recommend that as it doesn't solve the real problem. There are are things to consider: many DNS resolvers do not honor the TTL defined at the authoritative DNS and use their own policy and, as said above, there are other caching levels to consider (OS, broswer, etc). Here's a good couple of answers to a similar question.

If you're considering DNS Round-Robin for web applications, I'd recommend you take a look at HAProxy, which can implement cheap but real redundancy.

Hope this helps!

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .