Gigabit Ethernet: Dude, Where's My Bandwidth?

Network Speed Limiting Factors

While it might be relatively simple to collect the components to create a gigabit network, getting it to work at the maximum speed is more complex. The factors that can cause network slowdowns are numerous, but as we'll discover, it primarily comes down to how fast the hard drives can get data to the network controller.

The first limitation we should consider is the gigabit network controller’s interface with the system. If you're using a controller that resides on the older PCI bus, the amount of data throughput theoretically available is 133 MB/s. While this seems enough for Gigabit Ethernet's 125 MB/s requirement, remember that the PCI bus bandwidth is shared throughout the whole system. Every add-in PCI card and many system resources will be sharing that bandwidth, limiting the amount available to the network card. On newer PCI Express (PCIe) systems, this should be a non-issue, as every PCIe lane has at least 250 MB/s exclusively available to it.

Another aspect of the network that’s often suspect is the network cabling. It is often claimed that poor speeds are guaranteed if the network cable is run close to interference-causing power cables and cords. Longer cable runs can also be problematic as copper Cat 5e cables are only certified for 100 meter (about 300 ft.) lengths.

There are those who advocate using the newer Cat 6 standard instead of Cat 5e-class cable. While some of these claims are a little hard to quantify, we can certainly test how they might affect a small home gigabit network.

Let's not forget the operating system, either. While it's probably not being used much for gigabit networking these days, I shouldn't forget to mention that Windows 98 SE (and older operating systems) won't see a benefit from gigabit Ethernet as its TCP/IP stack will barely make use of 100 megabit connections to their fullest potential. Windows 2000 and more recent versions of Windows are fair game, although you might have more tweaking to do in older operating systems to coax them to perform at their maximum levels. We'll be using Windows Vista 32-bit for our tests, and as much as Vista has a bad reputation for some things, it's optimized to offer gigabit networking out of the box.

Next, let’s consider the hard drives. Even the older IDE interface sporting the ATA/133 specification should be able to support a theoretical 133 MB/s of data transfer, and the newer SATA specification should be able to breeze by the requirements, providing at least 1.5 Gb/s of bandwidth. But while the cables and controllers might be able to handle the data, the hard drives themselves might not.

Consider that a typical, modern 500 GB drive will likely be able to sustain data transfer rates somewhere in the neighborhood of ~65 MB/s. While it might burst faster at the start of the drive, it will slow down throughout the transfer. The data located at the end of the drive will read even slower, perhaps in the neighborhood of ~45 MB/s.

At this point, it looks like we’re getting an idea of where our bottleneck is probably coming from. What can we do? Let’s run some tests and see if we can achieve performance close to our network’s theoretical 125 MB/s limit.

  • gwiz1987
    why is the RAM-to-RAM network max speed on the graph 111.2 when u state 111.4? typo?
  • drtebi
    Interesting article, thank you. I wonder how a hardware based RAID 5 would perform on a gigabit network compared to a RAID 1?
  • Hello

    Thanks for the article. But I would like to ask how is the transfer speed measured. If it is just the (size of the file)/(a time needed for a tranfer) you are probably comsuming all the bandwith, beacuse you have to count in all the control part of the data packet (ethernet header, IP headrer, TCP header...)

  • jankee
    The article does not make any sense and created from an rookie. Remember you will not see a big difference when transfer small amount of data due to some transfer negotiating between network. Try to transfer some 8GB file or folder across, you then see the difference. The same concept like you are trying to race between a honda civic and a ferrari just in a distance of 20 feet away.

    Hope this is cleared out.
  • spectrewind
    Don Woligroski has some incorrect information, which invalidates this whole article. He should be writing about hard drives and mainboard bus information transfers. This article is entirely misleading.

    For example: "Cat 5e cables are only certified for 100 ft. lengths"
    This is incorrect. 100 meters (or 328 feet) maximum official segment length.

    Did I miss the section on MTU and data frame sizes. Segment? Jumbo frames? 1500 vs. 9000 for consumer devices? Fragmentation? TIA/EIA? These words and terms should have occurred in this article, but were omitted.

    Worthless writing. THG *used* to be better than this.
  • IronRyan21
    There is a common misconception out there that gigabit networks require Category 5e class cable, but actually, even the older Cat 5 cable is gigabit-capable.

    Really? I thought Cat 5 wasn't gigabit capable? In fact cat 6 was the only way to go gigabit.
  • cg0def
    why didn't you test SSD performance? It's quite a hot topic and I'm sure a lot of people would like to know if it will in fact improve network performance. I can venture a guess but it'll be entirely theoretical.
  • MartenKL
    Gbit is actually 10^9 bits per second, ie about 119 MB/s.
  • flinxsl
    do you have any engineers on your staff that understand how this stuff works?? when you transfer some bits of data over a network, you don't just shoot the bits directly, they are sent in something called packets. Each packet contains control bits as overhead, which count toward the 125 Mbps limit, but don't count as data bits.

    11% loss due to negotiation and overhead on a network link is about ballpark for a home test.
  • jankee
    After carefully read the article. I believe this is not a tech review, just a concern from a newbie because he does not understand much about all external factor of data transfer. All his simple thought is 1000 is ten time of 100 Mbs and expect have to be 10 time faster.

    Anyway, many difference factors will affect the transfer speed. The most accurate test need to use Ram Drive and have to use powerful machines to illuminate the machine bottle neck factor out.