Bandwidth requirements vary from one network to another. Determining how many bits per second travel across the network and the amount of bandwidth each application uses is vital to building and maintaining a fast, functional network.
As most network administrators can attest, network
More on network bandwidth
Learn how to calculate mobile application bandwidth requirements.
Bandwidth refers to the data rate that is supported by the network connection or the interfaces that connect to the network. It is usually expressed in terms of bits per second (bps), or sometimes in bytes per second (Bps). Network bandwidth represents the capacity of the network connection, though it's important to understand the distinction between theoretical throughput and real-world results. For example, a 1000BASE-T (which uses unshielded twisted-pair cables) Gigabit Ethernet (GbE) network can theoretically support 1,000 megabits per second (Mbit/s), but this level can never really be achieved in practice because of hardware and systems software overhead. It is this very point that makes calculating bandwidth a challenge.
So how do you determine how much bandwidth you will need? The process begins with asking the right questions—What applications are they running, and what is the performance service-level agreement (SLA) for these applications? I know some network managers that are only concerned with how many users are on a VLAN. What you really need to know is what the users will be doing on the network. It's possible that 200 users will cause less of a bottleneck than a group of three users that really beat the heck out of the network because of some funky client server application.
Computing network bandwidth
There are two basic steps to calculating bandwidth:
- Determine the amount of available network bandwidth.
- Determine the average utilization required by the specific application.
Both of these figures should be expressed in Bps. If your network is GbE, that would give you 125,000,000 bps. This is computed by taking the 1000 Mbps (for a Gigabit network); which is 1 billion (1,000,000,000) bps and dividing it by 8 to come up with the bytes.
(1,000,000,000 bps / 8 = 125,000,000 Bps)
After ascertaining the network's bandwidth, you'll have to determine how much bandwidth each application is using. Use a network analyzer to detect the number of Bps the application sends across the network. To do this, you'll need to enable the Cumulative Bytes column of your network analyzer. After you have enabled this, then you have to:
- Capture traffic to and from a test workstation running the application.
- In your decode summary window, mark the packets at the beginning of the file transfer.
- Follow the timestamp down to one second later and then look at the cumulative byte field.
If you determine that your application is transferring data at 200,000 Bps, then you have the information to perform the calculation: 125,000,000 / 200,000 = 625. In this case, the network will be fine even if there are several hundred concurrent users. Look what would happen, though, if you had a 100 mbps network. You would then have a network that could not support more than approximately 60 users running the application concurrently. Bandwidth is indeed very important!
I like to capture data in 10-second spurts and then do the division. I also like to check multiple workstations to make sure that the number is reflective of the general population. You will also have to determine how many concurrent users you will have. Obviously there will be a bandwidth difference between two concurrent users and 20.
If you found this information useful, then you may be interested in this tip by Kenneth Milberg on how to prioritize bandwidth for WANs during data center consolidation projects.
A version of this tip was originally published on SearchNetworkingChannel.com as Calculating bandwidth on customer networks.
About the author:
Ken Milberg is the founder of Unix-Linux Solutions. He is also a board member of Unigroup of NY, the oldest Unix users group in NYC. Ken regularly answers user questions on Unix and Linux interoperability issues as a site expert on SearchOpenSource.com.
This was first published in February 2009