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.
Perhaps it is time to block these CDN "services?"
Palm trees and 8
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.
Great. But what the fuck is a CDN (apart from a sometime canadian currency designator) and why should I care?
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.
I would love to fuck her sweet pussy.
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.
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.
i bet she actually has a penis
...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.
...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
At the risk of being flamed by CDN advocates (if they exist): just who gives a rat's patoot anyhow?
First off, the test and what it means. I like stuff like this because it is detailed analysis and shows something about what is going on at a very basic level. The primary question though, is "how fast am I getting my content?" not "how fast is DNS responding?" or "am I going to the server they want?". I know from experience that DNS ping time is not proportional to web page load time. From experience and specific circumstances excepted, CDN effect on the user experience is almost always less then you would hope for.
Second, the onus is on the content deliverer to ensure that the user experience is acceptable no matter what. CDNs don't enhance DNS: they violate conventions and rules. When setting up a CDN this has to be kept in mind; if you ignore it then you will lose traffic. If the user goes to a valid DNS that is abiding by the RFCs and conventions and doesn't get the content then it is the fault of the CDN designer.
Third, the reason for CDNs is not always primarily to speed up the user experience even though that may be lauded as the number 1 goal. CDNs are used to cut cost. They shape traffic so that peak load handling is lower at the network and server level. This is big $$$. For a user in Orilla ON it doesn't really make a difference if the server is in New York or Vancouver or San Diego but it probably matters to the server side where he/she goes. The wider afield you go the more performance is a potential issue but again, whether the server my browser connects to is in London or Tokyo, my experience is likely to be similar.
This is or should be a non-issue from a user perspective.
CDN designers and web cache implementers do have to be aware.
"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.
I'm glad that between 'tits or gtfo' she made the right choice.
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)
http://tech.slashdot.org/story/10/01/28/183208/Google-Proposes-DNS-Extension
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.
"Neither infected PDFs nor Java rely on javascript." - by LordLimecat (1103839)
on Saturday May 29, @12:38PM (#32389558)
For years, using javascript inside Adobe Reader would get you infested by malwares via malscripting possible in them (but, my guide has covered that, for years, in suggesting that IF you have to use Adobe Reader, turn off its javascript to avoid this)...
So - Are there other forms of attack in a PDF? Yes, so I have heard (recently only) however, I have yet to hear tell of one "in the wild" & being other than a 'proof of concept' (can you show me differently?)...
I also cover JAVA in that guide too iirc, and don't recommend using it on the public internet & especially from sites you don't trust or worse, know (even though I am a JAVA coder also, it has its 'downsides' too).
----
"An ad in a DIV will infect you just fine." - by LordLimecat (1103839)
on Saturday May 29, @12:38PM (#32389558)
How can it do so, if I cut off any possible use of java, javascript, or other forms of browser scripting (VBScript etc.) &/or browser addons/plugins AND IFrames/Frames (Opera lets you do this easily)?
The DIV tag can use things like making invisible IFrames & such as noted above, but it also has its script mouse click, mouse over, and keyboard events... however, if you use a custom cascading style sheet (Opera, IE, and FireFox let you do this, and such .css files are available online for this, along with using PAC files too) that limits various tags being usable!
Those measures SHOULD stop that from being effective as well, in combination with some browser allowing you to turn off IFrames + scripting!
(Alongside stalling scripting being active in your browser (on every site there is, yes, use it where you have no choice and have to for the page to work, but then? Well, you take your chances is all)).
APK
P.S.=> Can you show me otherwise, as to the points in my closing paragraph above? This is a new take on the use of that tag to me, & the ONLY "dangerous points" of its use I know of I covered above (IFrames plus mouse/keyboard/click events), so please respond when you get a chance here... thanks! apk
They should run their own open DNS resolvers.
They've got the motivation and the infrastructure.
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.
This is pretty widely known as not a great way to identify location, and is criticised in a number of books & papers, Chandra Kopparapus Load Balancing Servers, Firewalls, and Caches, springs to mind. I'm sure a new method will be switched to soon.
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
See subject line above, and realize this: If that is "the best you've got", in an effete mod down of my initial and subsequent post replies here, without justifying the down moderation you gave me with VALID technical reasons on the subject of computing?
Then, you've got nothing (and the rest of us reading KNOW it)
APK
P.S.=> Keep blowing your "precious mod points" then, because I can produce a ton of posts where I have been modded up here in seconds (see below), & that's ME posting as an "Anonymous Coward" (& we're LUCKY to see mod ups, if any at all, because our posts get buried by slashdot as "hidden posts" & what not):
====
+5 'modded up' posts by "yours truly" (4):
http://it.slashdot.org/comments.pl?sid=1139485&cid=26975021
http://it.slashdot.org/comments.pl?sid=1139485&cid=26974507
http://it.slashdot.org/comments.pl?sid=170545&cid=14210206
http://hardware.slashdot.org/comments.pl?sid=175774&cid=14610147
----
+4 'modded up' posts by "yours truly" (4):
http://slashdot.org/comments.pl?sid=161862&cid=13531817
http://developers.slashdot.org/comments.pl?sid=167071&cid=13931198
http://tech.slashdot.org/comments.pl?sid=1290967&cid=28571315
http://tech.slashdot.org/comments.pl?sid=1461288&cid=30273506
----
+3 'modded up' posts by "yours truly" (5):
http://developers.slashdot.org/comments.pl?sid=155172&cid=13007974
http://it.slashdot.org/comments.pl?sid=166850&cid=13914137
http://slashdot.org/comments.pl?sid=175857&cid=14615222
http://slashdot.org/comments.pl?sid=273931&threshold=1&commentsort=0&mode=thread&cid=20291847
http://it.slashdot.org/comments.pl?sid=1021873&cid=25681261
----
+2 'modded up' posts by "yours truly" (25):
http://it.slashdot.org/comments.pl?sid=158231&cid=13257227
http://it.slashdot.org/comments.pl?sid=1361585&cid=29360367
http://science.slashdot.org/comments.pl?sid=158310&cid=13263898
http://it.slashdot.org/comments.pl?sid=1361585&threshold=-1&commentsort=0&mode=thread&cid=29358507
http://it.slashdot.org/comments.pl?sid=158231&cid=13257227
http://slashdot.org/comments.pl?sid=290711&cid=20506147
http://slashdot.org/comments.pl?sid=245971&cid=1976
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
I'm on Comcast Cable and had numerous issues with their dns servers. Some sites simply would not resolve (read censored by isp) or take entirely to long to resolve. Some websites will multiple ads would take an eternity to load.
Switched to OpenDNS and suddenly I can get to a lot more sites and a lot faster... As long as Comcast is censoring their dns servers cache's, I wont use them. If that means poorer performance from CDN's, so be it. Its still faster than slow censored ISP lookups.
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
so, you can't put the DNS-SERVER ON the CDN? ...
.
in some repressive countries the lazy ass way
to "block", kindda like conditioning / brain-washing
a large swat of user is to intermittently block port 53
traffic, so the intarweb becomes "unusable"