Technical: Connection Speeds -- T1 Lines and Modems

How fast is a T-1 anyway, and how fast does a computer need to be a web server?

It's a pretty simple math problem. T1 = 150k bytes/second. If your average document size is 10k, then the most you'll ever shove through that pipe is 15 users' worth of data at a time. So serving 50 (or 100) users at a time is not going to do anything but decrease the the average response time per user.

Math models show that the optimal setting for a T1 is around 35 users for ANY server, Mac OS, Unix, or otherwise. Beyond that, there is an exponential decrease in throughput as additional users are added.

Now, with the simple math out of the way, the reality is that this stuff only holds true if the clients are able to receive data at the speed the server sends it. In this example, it would mean that all of your users would need to be on ISDN lines or better. The truth is that many users are still stuck at modem speeds, which means that servers spend a lot of time waiting for clients to receive data.

One of the biggest areas to look at in terms of "performance" is the number of transfers it takes to receive a given page. If you put 10 different images on a page (regardless of size), the server is going to have to do 11 transactions to serve that page, even if the images are cached on the other end. Even on a relatively fast connection, the multiple hops required to traverse the Internet can add up to several hundred milliseconds each.

Assume that your round trip latency is 200 msecs, about average for today's Internet. The client has to send 11 requests and the server has to send 11 response, then both ends have to handshake to close the connection another 11 times. In a worst case, you're looking at a minimum of 33 x 200 msecs of delay, or over 6 seconds of time wasted on waiting on the net connection (and it's probably much worse than this in reality.) Then add in the latency within the server (especially when there are lots of connections) of about .5 seconds per transfer for another 6 seconds or so. With 11 documents, you've wasted over 10 seconds just by forcing the client to make that many requests. AND this doesn't even include the actual data transfer times, decompression, and rendering on the client.

The conclusion here is obvious: the capacity of a connection has a profound affect on its performance. If you're given the choice between a low bandwidth private connection, or a small share of a larger bandwidth connection, take the small share. Again, this is painfully obvious outside the computer world. If a government said it would build either a large shared freeway, or a million, tiny, separate footpaths, one reserved for each citizen, which would you vote for?

Connectivity | More About Connectivity | Technical Terms | Home