[ previous ] [ next ] [ threads ]
 From:  Paulo Meireles <paulo dot meireles at exxpert dot com>
 To:  m0n0wall <m0n0wall at lists dot m0n0 dot ch>
 Subject:  Re: [m0n0wall] Questions about performance and thruput.
 Date:  Sun, 14 Jan 2007 02:07:34 +0000
>> Thankyou for your answer, but how is it possible to have an 1000Mbps card if the bus doesnt
support that fast transfering speed? Mabe i have understood this wrong.
> You can plug it in, but will it work?  A good example of this is an article at 
http://www.tomshardware.com/2007/01/10/agp-platform-analysis/  What happens is that Tom's Hardware
takes the latest ATI graphics card that was crammed into a AGP form factor, and compares it with
other older cards on older systems.  It does "better" but is obviously constrained by CPU and bus. 
Most consumers don't benchmark purchases.  So they never realize that the nic they have doesn't
really do 100 meg.
The PCI bus (the original specification, which is what older machines
have) works a 33.333MHz and is 32bits wide. This allows 133.333 MB/s to
be transferred. 100Mbps is about 12MB/s, and a 1000Mbps NIC's 
theoretical maximum throughput will be about 120MB/s. So, a PCI bus can 
barely cope with *one* Gigabit NIC. Then, there's the fact that a router 
gets packets from one NIC and must retransmit them through another NIC, 
so unless you have separate PCI buses to accommodate separate NICs, the 
PCI bus bandwidth must be shared by the two NICs, each being given at 
most 66.666 MB/s.
So, a router with a single PCI bus with 2 Gigabit NICs will be saturated
at or below 533 Mbps (66.666 MB/s = 533.333Mbps). These are, of course,
theoretical limits; PCI bus contention, overhead on the transmission
protocols, and concurrent accesses of other devices can (and will) lower
these numbers. These low figures explain why we see server chipsets
supporting multiple PCI buses, and why PCI itself has suffered major
upgrades lately.

Paulo Meireles