Single processor Athlon 64 linux router theoretical throughput limit?

AaronbSmith

Junior Member
Aug 14, 2004
8
0
0
I have a question about total system throughput on a general PC running linux.

Say I have a 2ghz athlon 64 based single processor system with plenty of ram and loaded with 32-bit linux and any linux based routing software.

I have 5 gbit ethernet cards in the server each one going to a subnetwork that will be serving several hundred clients. I realize this is a very generic question, so I'm only looking for a estimated range, what kind of throughput can I expect across the entire system? How about a system with PCI Express slots instead of just PCI?

I know something of this scale should have actual network ASICs in it, but for this application it won't.

input?
 

spidey07

No Lifer
Aug 4, 2000
65,469
5
76
the only thing I could see it the processor/bus bottleneck.

I'll guess and say about 100 megabit/second thru any two interfaces, depending on packet size.

but please know this if a guess at abest.
 

n0cmonkey

Elite Member
Jun 10, 2001
42,936
1
0
PCI32 33MHz = 133MB/s
PCI32 66MHz = 266MB/s
PCI64 33MHz = 266MB/s
PCI64 66MHz = 533MB/s
PCI-X 133MHz = 1066MB/s

That should be the bandwidth limitations imposed by the bus. PCI express isn't on there though, guess I'll have to search for that too. You probably won't be seeing those kinds of numbers, especially if you end up with cheap cards or bad drivers.
 

Garion

Platinum Member
Apr 23, 2001
2,331
7
81
Originally posted by: n0cmonkey
PCI32 33MHz = 133MB/s
PCI32 66MHz = 266MB/s
PCI64 33MHz = 266MB/s
PCI64 66MHz = 533MB/s
PCI-X 133MHz = 1066MB/s

That should be the bandwidth limitations imposed by the bus. PCI express isn't on there though, guess I'll have to search for that too. You probably won't be seeing those kinds of numbers, especially if you end up with cheap cards or bad drivers.

Keep in mind those are the speed of the bus and doesn't relate to the throughput of the NIC's. There are a lot of other details to consider. I think I'd go with spidey - Probably see somewhere between 200-300Mb/s raw throughput.

- G
 

n0cmonkey

Elite Member
Jun 10, 2001
42,936
1
0
Originally posted by: Garion
Originally posted by: n0cmonkey
PCI32 33MHz = 133MB/s
PCI32 66MHz = 266MB/s
PCI64 33MHz = 266MB/s
PCI64 66MHz = 533MB/s
PCI-X 133MHz = 1066MB/s

That should be the bandwidth limitations imposed by the bus. PCI express isn't on there though, guess I'll have to search for that too. You probably won't be seeing those kinds of numbers, especially if you end up with cheap cards or bad drivers.

Keep in mind those are the speed of the bus and doesn't relate to the throughput of the NIC's. There are a lot of other details to consider. I think I'd go with spidey - Probably see somewhere between 200-300Mb/s raw throughput.

- G

I was just trying to give a maximum theoretical throughput. Obviously the real speeds will be limited by the ethernet cards, drivers, timing, etc.
 

AaronbSmith

Junior Member
Aug 14, 2004
8
0
0
Originally posted by: amdfanboy
Where do you pick up the 5Gbs cards :evil: ?
hah.. that is FIVE 1 gbit cards.. :) Although those nifty 10gbit cards are going to come down in price someday ;-)

In reply to the other posts, I guess it's more processor and overall bus limitations I am trying to figure out.. With the various linux based router software products out there running on standard pc hardware vs a router which has ASICs that do all the heavy work. I figured each interface would only get about 200-300mbit of throughput before killing the system overall.

I think once we reach throughput requirement levels we'll have to approach PCI express and dual opterons.. That should greatly increase the capacity IMO. I think I read on Anand that there is now a PCIe based motherboard for athlon 64 and there are probably several good dual opteron MBs on the way.

Any further input?
 

spidey07

No Lifer
Aug 4, 2000
65,469
5
76
well if we're talking router thruput we need to forget about megabits/sec and look at packets per second.

each and every packet that move through the box needs to have the TTL decremented by one and the source MAC re-written. so that's gonna involve your processor.

lots of small frames = low mbs, lots of large frames = high mbs.