Slashdot: Providers Ignoring DNS TTL?

Dean Anderson dean at av8.com
Wed Apr 20 18:13:33 UTC 2005


On Wed, 20 Apr 2005, Crist Clark wrote:

> Dean Anderson wrote:
> > I'd rather expect this sort of behavior with anycasted servers... 
> 
> I would not expect this kind of behavior from an anycasted address.
> You'd need a LOT of routing churn to see different caches every few
> seconds. It's much more likely some kind of load balancer in front
> of a DNS server farm.

No, you are thinking of the (wrong) claims originally made by ISC about
how anycast would affect TCP to an anycast authoritative server.  ISC 
wrongly asserted that since BGP routes don't churn very fast compared with 
DNS TCP connection lifetimes, that there should be no problem with anycast 
and TCP.  This view has been shown to be wrong in the face of Per Packet 
Load Balancing (PPLB) which has been demonstrated to work on BGP links by 
haesu at towardex.com. Further, I showed that if you have PPLB on interior
(eg OSPF) links leading to different BGP peers, the problem also happens. 
Packets are sent on a per packet basis to different places.

But caching servers are usually setup to load balance. Usually, the
servers with the same IP address share an ethernet along with multiple
routers.  So the packets are switched on essentially a per-packet basis.
Or possibly a per-arp basis that alters the MAC-based-forwarding behavior
of a switch.  This is fairly fine grained load balancing.

> > With a cache, the behavior is confusing, but also harms DNS TCP support, 
> > just like that described for authoritative servers.
> 
> I verified it wasn't anycast by trying to exploit this very issue. I
> did a query that fell back to TCP while doing multiple small queries.
> I ran a network capture to pick out the short quries that occurred while
> the TCP query was going on. Short quries during the TCP connection
> came back with verying TTLs indicating that I was talking to different
> caches, i.e. different servers. Yet the TCP query continued without
> any hiccups. This indicates there is some type of per-session load
> balancing going on, not anycast routing.

This additional information would seem to indicate they are behind a more
traditional stateful load balancer, rather than anycast.  Without your TCP
connection, I don't think you could distinguish a traditional load
balancer from an anycast cache setup.

		--Dean


-- 
Av8 Internet   Prepared to pay a premium for better service?
www.av8.net         faster, more reliable, better service
617 344 9000   





More information about the NANOG mailing list