Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Lets suppose that I have a server connected to a public 100mbps network switch. This server serves a webpage of 1mbps for example. So, how do I estimate the connection's saturation point?

Is this correct: 100mbps/1mb (page size) = 100 per sec. Which means, the saturation point is 100 simultaneous connections to the server at an instant (asking for 1mb each)??

That's one part of the question. Now lets consider a real-life example. A blog, for example, serves it's static content (1520KB) via a CDN. So, what remains is the dynamically generated HTML (960KB), which should be served by the server itself.

Considering that the blog receives 50 million pageviews a month (equals to 20 pageviews per sec) and 70 page views per second during peak traffic periods, do you think the website will ever slow down due to the 100mbps connection?

EDIT NOTE: Lets only think that they are on a single web server and using no browser caching. Com'on, thenextweb is only a example. Just, please consider only what I've listed. I want to know if my theory/calculation/estimate is right.

share|improve this question

closed as not a real question by Shane Madden, womble, RobM, MDMarra, Iain Nov 22 '11 at 22:15

It's difficult to tell what is being asked here. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened, visit the help center.If this question can be reworded to fit the rules in the help center, please edit the question.

they could be using gigabit and/or multiple webservers... lets not also forget browser caching etc – anthonysomerset Aug 13 '11 at 0:21
@anthonysomerset thanks, edited the question accordingly. – user88753 Aug 13 '11 at 0:26
also 1mb is not equal to 960KB(1MB) – anthonysomerset Aug 13 '11 at 0:28
Is this a theoretical question? What's the problem that you're having? – Nixphoe Aug 13 '11 at 0:30
Pick up and read these books: The Art of Capacity Planning and Scalable Internet Architectures – Matt Simmons Aug 13 '11 at 14:40
up vote 2 down vote accepted

for the sake of maths, lets assume a uniform 50 pageviews per second and that its a round megabyte of traffic per page load with no caching whatsoever

remembering 1MB is 8Mb (port speeds advertised and rated in megabits not megabytes) 50*8 equals 400mbps, if this were a 10/100 port it would have stopped working at a little over 13 page views per second. this maths is incredibly flawed because it doesnt account for people having faster or slower internet connections, or for caching etc

in reality a website wont really slow down because of network until the network is much closer to its limit. its more than likely that with the stats you mention that that site is not served by just one server and/or not on a 10/100 port but on a gigabit port, your probably more likely to hit other bottlenecks like CPU or RAM before then (especially if you are serving a megabyte of dynamic content on each page load)

share|improve this answer

Don't forget to read - ServerFault were experiencing problems because of burst traffic above the network card interface speed, even though the average speed was well below it, until they upgraded their hardware to some which could say "hold on a moment" on the network traffic.

If you want your model to be more realistic, remember to account for TCP overhead and HTTP header overhead, and TCP connection overhead - 1 connection to transfer 960Kb is different to 3 connections which add up to 960Kb.

And that Apache is often set to send compressed data to the client.

Still, even if 100 connections do come in at one "instant", the reply doesn't have to be instant, and TCP can retry if packets are dropped, so as long as it's not 100 connections per instant every instant then probably what would happen is a delay of a few tens or hundreds of mS in the server responding to some of them, or some packets being dropped, the source resending them, and everything continues fine.

share|improve this answer

I think I know where you're coming from. If you're talking about simple saturation without any sort of caching, if your pages are 1 megabytes in size and you have a 100mbps connection, you'd get in the range of 12-13 megabytes per second from that connection.

Though... you cannot simply just divide 12 megabytes by 1 megabyte per page and say you can only serve 12 pages per second. There are multiple other factors like cache, compression and pipe saturation that can alter these numbers.

share|improve this answer