How CDNs and Alternative DNS Services Combine For Higher Latency
The_PHP_Jedi writes "Alternative DNS services, such as OpenDNS and Google Public DNS, are used to bypass the sluggishness often associated with local ISP DNS servers. However, as more websites, particularly smaller ones, use content distribution networks via embedded ads, widgets, and other assets, the effectiveness of non-ISP DNS servers may be undermined. Why? Because CDNs rely on the location of a user's DNS server to determine the closest server with the hosted content. Sajal Kayan published a series of test results which demonstrates the difference, and also provided the Python script used so you can test which is the most effective DNS service for your own Internet connection."
Why drag us lovely CDN's in to this.
"Pair" in question is a pair of nipples, apparently.
Maybe I'm missing something here, but shouldn't be the application's responsibility to provide a geographically correct host name to the client, not the responsibility of DNS? It seems like poor application design to rely on DNS for this. Your app should determine the host based on the IP of the client, not give the client an arbitrary host name and then rely on DNS to provide your geologically correct server.
How many of the resources hosted by CDNs are things which we're already stopping with various ad blocking techniques, and how many are content we actually care about?
Automatically routes your DNS request to a Google server close to you. So there's no problem here.
Yeah, go ahead and block them. Try it. Do you know what happens? Most of the web sites you use just won't fucking work. This is especially true with so many web sites these days serving up their images, JavaScript scripts and stylesheets via a CDN.
Previous Discussion
DNS is not and should not be a good indicator of client location. The proper solution for routing to a closer server is IP anycast.
most people don't actually care about DNS... they use the dhcp provided dns server from their ISP and don't even know how to fiddle with it... heck a lot don't even know what DNS is and will say, "DNS yourself, stop cursing :)"
let's assume for a minute that ads are less relevant... not really a big deal... because those are more likely tech savvy people (or friends of tech savvy people) who are more likely to install extensions such as adblock and get rid of ads alltogether.
plus there is the obvious for advertisers... if it is not really reliable, well don't use it, find other ways to geolocate your guy :)
Never antropomorphize computers, they do not like that
I don't really know what benefits CDN could give me.
Anyway, I solved the sluggish ISP DNS problem with simply installing bind9 and be done with it. Setting up a DNS server on a modern system is really child's play, no need for the openDNS stuff.
(install bind9; remove DNS IP. Done - around 1 minute)
Slashdot.org is serving static assets from the hostname a.fsdn.com which is served via Akamai CDN. I count 19 requests to http://a.fsdn.com/* on a single pageload of the homepage. These static files are currently served by a server within my ISPs network rather than some server on the other side of the globe... Alamai uses DNS routing.
While some shoddy CDN companies may reroute you at the DNS level, many are actually smarter about it. Smart systems will redirect you to a 'closer' system via a different URL for media files, or utilize anycast BGP routing so that you always take the shortest path to one of their nodes.
As for 'who serves stuff on CDNs that I want to see anyway' -- everyone. From porn sites to Google to Youtube, they're all one type or another of CDN.
Just because you disagree doesn't make it offtopic or flamebait.
Two things make those numbers fairly irrelevant: CDNs are optimized for delivering content to end users, not datacenters (where most machines are non-Windows anyway, so you don't even need AV updates). And what matters in the end aren't ping times, but actual request latency.
Why is "services" in quotes?
Considering TWC can't keep their DNS servers up reliably using them is not even an option.
Use NoScript and / or RequestPolicy, which let you allow the CDNs you want, block those you don't. And have the additional side benefit of blocking tracking cookies and other such nastiness from companies you don't like (DoubleClick, Google Analytics, etc.)
I'm the founder of OpenDNS (and long-time slashdot reader).
This article is not very accurate for a number of reasons. First, both my service (OpenDNS) and Google's are co-located in similar POPs to all of the major CDNs which causes this problem to be largely avoided. The author of the blog post used a tiny sample size and tested mainly from EC2 instances, neither of which helps his cause.
1) EC2 instances are BY DESIGN not co-located in the same place as major peering infrastructure because that real estate costs more. They are one or two hops away. People use EC2 for compute power, not for routing performance. So he needs to use something like Keynote or Gomez to test from home connections. If he had, he'd see it doesn't impact anything, and often improves performance, especially in the US. We don't have POPs in Asia yet, though they are coming this year, and when we do, we'll improve things for him.
2) Akamai is the only CDN where this will ever be perceptible because their deployments are so dense. They have 3000+ pops which means they will also be able to target more precisely. But this is being worked on RIGHT NOW in the IETF -- http://tools.ietf.org/html/draft-vandergaast-edns-client-ip-01
Anyways, this is really not the issue the author makes it out to be, and for the edge cases, they are being worked on.
Thanks,
David
# Hack the planet, it's important.
...so those in the know can select the nameserver(s) closest to them without having to depend upon a 3rd party to determine (sometimes erroneously) what servers are closest.
Great. But what the fuck is a CDN
Wikipedia is your friend, you lazy sod.
...to see who has the balls to announce to the /. world that they don't know what CDN stands for!
I win!
i hope she does
"However, as more websites, particularly smaller ones, use content distribution networks via embedded ads, widgets, and other assets..."
Like many people reading this site I block most the crap mention here at a level where the DNS is never resolved.
s/©//g
You want lower latency, not higher latency. Thanks soulskill.
Neither infected PDFs nor Java rely on javascript. An ad in a DIV will infect you just fine.
I'm using Open DNS and since yesterday Google keeps offering to translate everything into Dutch (I'm in UK)
Because he's using in non-literally. The CDNs don't provide a service to the people that have to put up with them in most cases. It personally pisses me off to have to loosen up so thoroughly on noscript for a website to be even able to figure out if I want to see the content. Worse is that few sites if any actually disclose what sites they allow to connect in that fashion meaning that you don't necessarily know whether a particular site is meant to be loading content. It's just an easy way of them losing your information then not being responsible for the consequences.
"The CDNs don't provide a service to the people that have to put up with them in most cases."
I'm going to go out on a limb and say that in "most cases" CDNs do in fact provide a service of providing faster access to content. There are problems, like the one this story points out, but they definitely do provide a useful service.
I use Google DNS to bypass the interstitial ad results page my ISP pops up with any "incompletely typed" (i.e. I didn't type .com/.net/etc.) or mistyped URL.
Since I rarely if ever click on widgets, ads or other assets, I doubt that any lag time in response would make a material difference to me (nor, I suspect, would it to many others).
Some days it's just not worth
chewing through my restraints.
I love how "geographically aware" applications will happily direct me to Japan or Taiwan when the link from America is far faster. Why the hell should something route me to Japan when I start from Thailand? Or route to Taiwan from China? WTF? I suppose in some people's tiny minds, this makes sense, but in reality the USA link is usually much faster.
Shutting down free speech with violence isn't fighting fascism. It IS fascism!
I think you're missing the point. Geographically aware DNS is used to send you to your nearest deployment of an application. Deciding after you've arrived is too late.
Well depending on the protocol, you could just be redirected to the closest by other means. For example, an http server could redirect to another server by name.
We recently ran into issues of trying to rely on the DNS server for establishing geographic location, when we realised that the DNS server making the address look up could be five servers upstream of the actual client and each of them with their own caching rules.
The real issue, is that DNS lookups aren't expecting to look for a geographic record. If DNS entries could be registered with geographic locations, then the choice could be left up to the client computer on which is the best to choose and then fall back down the of alternative entries when one doesn't respond. The same could be done by the DNS server if the client were to declare its geographic locations to the server, but the former approach reduces privacy issues.
Jumpstart the tartan drive.
...but my current ISP redirects all NXDOMAIN results to their ad page, and the only "opt-out" is a browser cookie that turns that page into an error page. At least Verizon offered an alternative DNS server with that misfeature disabled. I can't wait until my one-year contract is up.
There's no failure quite as dissatisfying as a complete and total solution to the wrong problem.
http://tools.ietf.org/html/draft-vandergaast-edns-client-ip-01
Problem solved.
The plural of CDN is CDNs. Forget what your browser's spell checker says; it's wrong. Also, you have asked a question. Why is there no question mark?
Damping absorbs vibrations. Dampening is caused by moisture.
Shouldn't the script begin with
#!/usr/bin/python
and I needed to install dnspython as a dependency.
"I believe in Karma. That means I can do bad things to people all day long and I assume they deserve it." : Dogbert
Sure, if you don't mind not being able to access:
- Media from iTunes
- Windows software updates
- Netflix video on demand
- *any* digital media purchased from amazon.com (even DRM-free mp3s)
- Images from flickr
- boston.com's The Big Picture
- Any image I embed in a fark.com comment.
A DNS Extension has been proposed that would allow the authoritative DNS server to see the originating IP address for the query in addition to the intermediate DNS server. This was previously discussed here on slashdot as well.
'The tyrant will always find pretext for his tyranny.' - Aesop's Fables
You've effectively crippled your browser and you're mad that websites don't load correctly?
Actually, I would be fine without any items on that list :)
Though I run my own DNS server. Not sure if that clashes with the CDNs, but I think not.
Religion is regarded by the common people as true, by the wise as false, and by rulers as useful.
I use the following options in /etc/resolv.conf
nameserver 8.8.8.8
nameserver 8.8.4.4
nameserver 208.67.222.222
option rotate
option timeout:1
I'd like to buy homeland for our 10 million people. http://twitter.com/mahadiga