Load Balancing Digest

13 Mar

State Of GSLB: DNS FTW

Back when load balancers were the toast of the town, there were two competing methods for GSLB (Geographic Server Load Balancing). The first method was through use of DNS (and perhaps some IP or HTTP redirection), and the second was to use some type of routing protocol, such as BGP.

Today, pretty much everyone involved in implementing GSLB (both users and the vendors) is done using DNS. There are a couple of reasons for this, but let’s talk about the drawbacks of DNS GSLB first.

There was a pretty famous page a few years back called The GSLB Page of Shame by Pete Tenereillo. The points he makes in the article are accurate, including:

  • Distance from a site is determined not by the end user, but by the end user’s DNS server (which could be in a different geographic area)
  • Browser caching
  • Ignored TTLs (you set the TTL to zero, but a DNS server sets it to 2 days anyway)

Yet despite all those shortcomings, DNS-based GSLB reins supreme. So why is that? Three primary reasons:

  • It works most of the time (80% or better, anecdotally)
  • It can be setup in almost any scenario, from load balancing two DSL lines in two different parts of the state to a multi-site, multi-homed, 10-Gigabit interconnected Internet exchange
  • It’s a helluva lot easier to setup than a routed protocol scenario

Because of it’s ease of implementation, implementors have been able to accept that for some clients the GSLB failover experience may not be 100%. But for all the technical problems, it seems to work surprisingly well.

The configuration required for setting up BGP or some other routed protocol is pretty intense. You either need the cooperation of your IP provider to use BGP, or you use some sort of internal OSPF/MPLS back-haul to accomplish this. Let me know if you think that sounds fun.

The current top-dog GSLB implementations by Cisco, F5, Coyote Point, and others, are really pumped-up DNS servers. Granted, they provide quite a bit more functionality than your average BIND server, but that and some health checking is about all you need to create a GSLB product.

At some point, something better will probably come along. But for now, from the SMB to the Fortune 50 Enterprise, it’s GSLB FTW (for the win).

Leave a Reply

OpenID

Anonymous

© 2009 Load Balancing Digest | Entries (RSS) and Comments (RSS)

GPSwordpress logo