geographic load-balancing and organizationally external secondaries
Brad Knowles
brad at stop.mail-abuse.org
Tue Dec 20 02:11:26 UTC 2005
At 3:45 PM -0800 2005-12-19, Neil Harkins wrote:
> Hi. There are several solutions for geographic load-balancing in DNS,
> but all seem to require administrative ownership/non-standard
> configuration of all the nameservers involved, which defeats the
> purpose of having external entities providing slave secondary service.
Yup. DNS was not intended to be abused in this fashion. It's
purpose is to hand out information that will work well enough, over a
relatively long period of time, and to give you enough options that
you can try several different alternatives if your first choice
doesn't work out.
This is pretty much diametrically opposed to the GSLB problem.
> However, if there were a way to prioritize/weight NS records,
> both requirements could be met easily. i.e. Geo-load-balancing
> from servers you control, then fall back to external slaves
> which have non-balanced static responses.
You might be able to apply SRV records to the purpose, but you'd
have to invent servers and clients to pay attention to that sort of
thing. Moreover, that doesn't solve the general problem.
> Two not-necessarily realistic solutions come to mind:
>
> A) An extension to the DNS spec to allow weights
> on NS records similar to those on MX records.
> Unlikely.
See above. SRV for the NS records doesn't help you for the GSLB
problem. SRV records for the target service would definitely help if
you could reprogram all the clients in existence to use them.
> B) A hack to the remote nameservers allowing
> a delay to be configured per zone.
> Since the DNS caches close to the end user
> will most likely be using RTT to determine
> which NS to query, they should prefer the
> primaries (without the delay configured).
They will use RTT calculated over time, and a heavily loaded
server that is close by will probably tend to have a worse RTT than a
lightly-loaded server that is located further away.
> This is obviously less valid, as it requires
> the modification happen at the external site,
> not to mention that it negatively impacts
> their performance.
>
> Any other ideas on how to accomplish this?
> Has there been any other initiatives
> concerning weighting NS records?
Solve this problem outside of the DNS. For the web, have the DNS
resolve to an anycast IP address on multiple SLB clusters around the
world, let routing select the "closest" site to a given client, then
use HTTP redirect to send you to the appropriate unicast IP address
for the selected web server cluster.
Similar solutions should be applicable for most non-web applications.
> I apologize if this is not the appropriate forum,
> but a lot of the relevant players are here,
> thus hopefully can/will gauge validity.
I can only speak for myself, but I have been violently opposed to
the concept of doing GSLB within the DNS ever since I first heard of
the idea. I wouldn't be surprised if you found others on this list
that feel the same way.
In the future, if you have SLB questions, you might want to ask
them on an SLB mailing list, such as Tony Bourke's "lb" mailing list
at <http://vegan.net/lb/>.
--
Brad Knowles, <brad at stop.mail-abuse.org>
"Those who would give up essential Liberty, to purchase a little
temporary Safety, deserve neither Liberty nor Safety."
-- Benjamin Franklin (1706-1790), reply of the Pennsylvania
Assembly to the Governor, November 11, 1755
LOPSA member since December 2005. See <http://www.lopsa.org/>.
More information about the bind-workers
mailing list