What causes intermittent browser stalls?
September 14, 2006 8:59 AM
What causes intermittent browser stalls? They happen on every web browser ever.
I click a hyperlink and my browser reports something like "Waiting for domain.com" or "Connecting..." on its status line, but nothing happens. I re-click the link and the web site loads fine. It happens maybe one time in 500 clicks, and it's happened on every version of every browser on every platform that I've used in the last 10 years.
I polled some friends, and the ones I'd categorize as computer-savvy all reported this phenomenon (the others didn't, but would probably not distinguish this from their big list of Things Computers Do Mysteriously).
I distinguish these lost requests from the typical case of a slashdotted webserver or obviously broken network setup by the fact that re-clicking the link works and there is no apparent further degradation of speed or connectivity.
So what happens to these lost requests?
I click a hyperlink and my browser reports something like "Waiting for domain.com" or "Connecting..." on its status line, but nothing happens. I re-click the link and the web site loads fine. It happens maybe one time in 500 clicks, and it's happened on every version of every browser on every platform that I've used in the last 10 years.
I polled some friends, and the ones I'd categorize as computer-savvy all reported this phenomenon (the others didn't, but would probably not distinguish this from their big list of Things Computers Do Mysteriously).
I distinguish these lost requests from the typical case of a slashdotted webserver or obviously broken network setup by the fact that re-clicking the link works and there is no apparent further degradation of speed or connectivity.
So what happens to these lost requests?
To flesh that out a little:
Sometimes your browser has to go and get the DNS lookup information if you haven't visited a particular site before. Sometimes that DNS request just never gets to a server that can answer it.
Sometimes it has the DNS info, but the server you're trying to connect to just never gets the connection request.
The Internet is robust, but packets just sometimes never make it through.
posted by bshort at 9:02 AM on September 14, 2006
Sometimes your browser has to go and get the DNS lookup information if you haven't visited a particular site before. Sometimes that DNS request just never gets to a server that can answer it.
Sometimes it has the DNS info, but the server you're trying to connect to just never gets the connection request.
The Internet is robust, but packets just sometimes never make it through.
posted by bshort at 9:02 AM on September 14, 2006
It could be any number of things. Packet loss between you and the server could slow down a page load; the web server may be overwhelmed, and if it depends on a database, *that* might be overwhelmed (and by overwhelmed, it could just be that your browser is waiting for one particular object to finish loading before it will render the page); or your computer (I've seen this on Macs, wouldn't know about other platforms) may have run out of memory and has to write out, say, a 5 gig swap space for virtual memory (the larger the swap file the longer it takes to write it out); a routing change upstream of you may be causing the delay as networks re-converge; there may be asymmetric routing involved (your data to the server is fast, but the data from the server may be going another, slower route); also, elements on the page may be drawn from other servers, which makes a number of the aforementioned possibilities recursive. Oh, and it looks like DNS relies on UDP rather than TCP (in most instances), and UDP is a 'best effort' transport protocol, whereas TCP does things like ask for re-transmission of lost packets in order to be more reliable, so it could be that the first DNS request goes into the bit bucket and the browser just waits for a response.
posted by kimota at 10:56 AM on September 14, 2006
posted by kimota at 10:56 AM on September 14, 2006
To add a little bit to what the others have said, I see this phenomenon (first click does nothing, second loads right away) the most on pages that load ads first (espn.com seems to be the worst). Usually the ad server is timing out, but if I hit the link again or refresh the page, I get a different set of ads (from a different server) which load quickly.
posted by chndrcks at 12:01 PM on September 14, 2006
posted by chndrcks at 12:01 PM on September 14, 2006
Most of the delays I get are from adservers or hitcounters that aren't performing properly, especially the ones which use lots of scripts. Adblock usually does the trick.
posted by Mr. Gunn at 12:13 PM on September 14, 2006
posted by Mr. Gunn at 12:13 PM on September 14, 2006
I don't think this is the particular issue you are running into bu t if you bounce a Java application server (tomcat etc) usually the first time you hit a servlet will require compiling and starting the servlet and will take much longer than subsequent hits.
posted by bitdamaged at 2:33 PM on September 14, 2006
posted by bitdamaged at 2:33 PM on September 14, 2006
It's most likely poorly-performing ad servers. The HTTP requests will eventually time out. Or you can use Firefox or any Mozilla-based browser and enable ad-blocking.
posted by camworld at 9:57 PM on September 14, 2006
posted by camworld at 9:57 PM on September 14, 2006
This thread is closed to new comments.
posted by bshort at 9:00 AM on September 14, 2006