It seems as though many people who run or operate web sites are quick to blame their web host if something doesn’t go as expected; usually their site is slow to respond and/or the download speed for files on their site is lower than usual / expected. I’d like to shed some light on the possible reasons and implications of slow-performing sites: IMHO it’s usually not your web host’s server that is responsible for slow download times.
I hope it comes as no surprise to anyone that your web host’s server is not the only factor affecting your download times. As a matter of fact, your web host’s servers are not likely to be the cause for your slow download speeds:
If your server is overloaded, it will take a long time to respond to requests, because it has many other requests queued up. Once it answers your request, however, the actual throughput in kbps is not materially affected by server load. If you get frequent “request timed out” errors when trying to access your site, that could indicate that your server is being swamped with too many requests.
On the other hand, if you see slow download speeds, it could mean that your web host’s upstream bandwidth provider does not provide them with enough bandwidth to serve all sites at the same high speed that you’re used to. This would indicate a problem with the network, not your specific server.
Given that bandwidth is extremely cheap these days when bought in bulk, your web host should not have any trouble serving up your sites at speeds that exceed your average user’s download speed.
This brings me back to my original point: your actual download speed is determined by several factors. The most significant are your web host’s upload bandwidth and your download bandwidth. The lesser value determines your actual download rate.
In order to accurately measure your web host’s upload bandwidth in kbps for your particular site, you must measure the throughput for downloading one specific file simultaneously AND consecutively from several locations that are distributed across a wide physical area, in order to rule out
a)conditions on your machine or your home / corporate network that may affect bandwidth, as described here, and
b)traffic conditions on the Net in general that are specific to your geographical region, and
c)changing network conditions over time (so measure simultaneously from different, distributed computers), as well as
d) the impact on the server’s / network’s upstream bandwidth created by downloading a large file simultaneously from several computers (so measure again immediately, but this time, perform the download consecutively among each computer in order to adjust for this impact).
Any network engineer will tell you that even using the above techniques to rule out other network conditions and zone in on your specific your web host server’s upstream throughput, you still won’t have an exact value, since the Internet, by nature, relies on a network of millions of independent nodes, each of which has different characteristics, and therefore, it is difficult, and often impossible, to assess which node is decreasing or increasing throughput at any given moment.
As a general rule, keep in mind that traffic is usually a lot higher during the day, and cable broadband connections are known to be heavily affected by this factor. Chances are that your speeds dropped so dramatically because your ISP has pooled your neighborhood’s bandwidth with another neighborhood, thereby increasing the load on the network (since your connection was likely “too fast”, and therefore not very cost-efficient).
Lastly, traceroute / ping are not accurate indicators of throughput, they can only be effective in measuring overall network latency, but more importantly, packet loss. If you experience a high rate of packet loss or unusually high ping times, there might be something between your ping utility and your web host’s server that is causing packets to take an unusually long time to get through, such as, for instance highly impacted bandwidth on your machine or your local network due to high-bandwidth file sharing programs that might be active in your household. There are many other reasons for packet loss and high ping times, but on today’s broadband connections, available bandwidth is usually so high that it rarely has a significant impact on your ping times. If you’re in doubt, however, your ISP should be able to quickly tell you if there is a serious impact on your specific connections, and often even which application is causing the delay.