|« Botnets, DDoS, the Internet and You||Server Reliability – More to it then meets the eye »|
November 3rd, 2006 [by Doug Alder]
As someone involved in server sales I constantly come across prospective customers who are new to hosting and are confused about bandwidth. I hope this post will help make this subject a little clearer for them.The first thing to know is that bandwidth is really not a good term. Bandwidth refers to the available spread of connection speeds available. Bandwidth is a measure of capacity not a measure of quantity. For example, if you think of capacity in terms of radio frequencies, where the term bandwidth originated, then the range of frequencies between the lowest frequency and the highest frequency offered would be the available bandwidth. In data transfer when you have say a 10Mbps connection your available bandwidth is 0 to 10Mbps, capacity not quantity. A better term for what the hosting industry refers to as bandwidth would be data transfer. However, as bandwidth has become the de facto norm for describing how much data you can transfer over a given connection over time we will use that term here to avoid further confusion.First a few terms. Data transfer, which of course is what the net is all about, is measured in bits (b) per second. In telecommunications a bit is the smallest unit of information that can be transmitted. This can be stated as Kbps (kilobits per second), Mbps (megabits per second – the most common term in use), or Gbps (gigabits per second). It is not measured in bytes (B) KBps (Kilobyte per second), MBps or GBps. Connection rates are referred to as bit rates.There are two basic ways bandwidth is marketed to consumers, metered (where you pay for each GB of traffic in and out of the server) and unmetered (where you pay a flat fee per month). Those in turn are either dedicated connections or shared connections.Shared ConnectionsWhen a host says you can do X number of GB per month on a hosting plan you are pretty much guaranteed that you are on a shared connection. In most, but not all, cases that connection will be a 10Mbps or a 100Mbps connection out to the network edge and it will be oversubscribed. That is, the host will put more customers on the line than they should, banking on the odds that traffic will be relatively evenly spread out and that no-one will be using very much. This is similar to the way that dial up ISPs “sell” access to their modems. A 16:1 or 20:1 ratio (20 users per modem) is an industry norm. In that case the ISP banks on only one in 16, or one in 20, of their customers wanting to be online at any given moment. If more than that try they get a busy signal and can’t get on. Similarly when a host uses shared bandwidth and over sells access to it, their customers will suffer poor connection rates when too many people try to use that connection at the same time, or a customer(s) publishes multimedia data that requires a large part of the pipe. On shared bandwidth you do not have any guaranteed rate of connection, it is first come first served.This type of connection can work for you if you have a low traffic site and a site that does not require a certain connection rate to be there for it at all times. Customers on a shared 100Mbps connection may see connection rates for their servervary from 100Kbps to 5Mbps depending on the time of day, how oversold the line is, and what type of content the users on the line have. Generally these types of connections result in overall slow and unpredictable connection rates.Dedicated ConnectionsWhen you, as a server operator, or hosting provider, want to count on a given connection rate being available to you at all times you need to be on a dedicated connection. A connection that you do not share with anyone else. If your provider gives you a dedicated connection you have a CBR (that is a committed bit rate also known as constant bit rate) of approx 70% of your peak bit rate. If your connection rate is capped at 10Mbps that means you can count on 7 Mbps always being available to you with the ability to burst as needed to 10Mbps. Dedicated connections are particularly important for any website delivering multimedia content and it is on these type of connections that we’ll deal with here.Getting the Right Connection RateAs mentioned earlier connection rates are measured in bits per second and the amount of data transfered is measured in bytes, generally expressed as gigabytes. If you are hosting multimedia you need to know how many GB of traffic (commonly called bandwidth) you expect to move over your server’s connection over the course of 30 days in order to determine the connection rate you need in order to allow for that much traffic.Time for an example. A connection rate of 1.5 Mbps is theoretically capable of moving 474.609375GB of traffic in each direction (ingress – egress) over the course of 30 days. So if you expect your traffic to be less than that you know you can probably do OK on a 1.5Mbps connection. I say probably because it will still depend on other factors such as the number of concurrent users on your site and the amount of data each user moves in each direction. To determine how much you need lets look at someone that wants to operate a streaming audio server. The first pieces of data necessary are how may simultaneous streams will be made available and what rate will the data be streamed at. 28Kbps is more than sufficient for most streaming audio so lets use that and lets say you want 50 concurrent streams. To determine the rate necessary perform the following stepsOpen a new Google search page and enter the following algorithm and hit enter28Kb*50=?MbThe result you’ll get is 1.3671875Mb so theoretically you could do that on a 1.5Mbps connection, however not really as this is Internet Protocol (IP) and IP packets carry overhead. If you fill the pipe 100% except in momentary bursts you will get packet collisions and thus packet loss causing the server to constantly resend packets. Thus the 70% CBR mentioned above. So to handle that many streams at once you need to allow for that 30% headroom needed to prevent packet loss which means you really need a 2Mbps connection to handle that many streams at once.What this comes down to is when you are planning your server needs you must have a good idea of not only how much data transfer you will use over time (GB per month), but also what capacity to transfer (Mbps) you may need during your peak times. With a streaming media server that’s relatively easy to figure out as we’ve already shown. With other sites that offer files for download you can estimate the maximum number of concurrent file transfers you expect and then use that with your largest file size to estimate the size of connection you need to cover that contingency.For example, lets say you are offering a video file for download (but not streamed). Then lets say that the maximum number of concurrent download sessions you expect to have is 50 then you can work it out like this:
Allowing for IP packet overhead that mean you would need a 100Mbps connection in order to give 50 people a 1.5Mbps download rate at the same time.It’s when you aren’t offering downloads or streaming media that it gets more difficult to determine your needs. At this point you need to consider what the users will likely be doing on your site and measure the amount of data your pages will be sending them. Then figure out the maximum number of concurrent connections you expect to have and work it out as per the last example. However in this case the figure won’t be as accurate because you are not constantly transmitting data to their client, people may be connected to your site but they may just be sitting there reading text and that is not the same as downloading a file or streaming some media content. If you have a relatively static page without a lot of large graphics then you can handle a lot more connections on a given connection rate than you probably estimate. Best advice is do an approximation then cut it back and scale up when necessary. If your estimation is you need a 5 Mbps connection start with a 3Mbps and see how it works before committing to more expensive connections.To grow your business successfully you need to be certain that your server host can grow with you and can offer you the products you need, when you need them. RackForce offers a wide range of dedicated connection rates, Start with what works and grow as required.