Networking »

100vs 1000

Thinking of replacing your old 100Mbps NICs with Gigabit cards? Make sure your computer and its buses can handle it first, else you will end up with lower throughput then you stated with.

A PCI card can in general not handle gigabit network speed. This causes packets to be dropped, and drops will cause the application to retransmit. To detect packets drops, timeouts are used. Those timeouts will lower the efficient speed very likely to below 100Mbps. The result is that you upgrade from 100Mbps to 1000Mbps and get lower speed. More is less, less is more.

In general, a 32 bit PCI bus can not handle gigabit speed. This also applies if the NIC is integrated on the motherboard. You will need to use PCI Express (PCIe) or equivalent.

Buying PCI Gigabit cards is a waste of money and bandwidth is you are planing running them at gigabit speed. Running a gigabit NIC at 100Mbps works of course fine, often much better then a pure 100Mbps NIC (due to better technology). You need to force them running 100Mbps, also specifying duplex and mdi/mdx mode.

How do you know if you suffer from this? Do an ifconfig on the interface;

# ifconfig eth8
eth8      Link encap:Ethernet  HWaddr 00:0D:88:C6:22:BB  
          inet addr:  Bcast:  Mask:
          inet6 addr: fe80::20d:88ff:fec6:22bb/64 Scope:Link
--->      RX packets:14132560 errors:0 dropped:7 overruns:0 frame:0
          TX packets:11649605 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:3745081744 (3.4 GiB)  TX bytes:3739443394 (3.4 GiB)
          Interrupt:185 Base address:0xb000 

At the RX line you see "dropped: 7". This should optimal be zero. Seven here is low enough and quite normal, but if the number is high, you have a severe performance penalty possible due to the computer can not read packets from the NIC as fast as the packets arrives to it over the network. Try running the NIC at 100Mbps and see if you gain any performance (e.g. faster file copies etc).


/By Mikael Q Kuisma


Ping site

Page last modified 2013-10-14 20:20Z