[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: CPU Utiliaztion on a ethernet bridge



On Wed, 2003-11-19 at 21:42, Simon Allard wrote:
> I have replaced NIC's as I thought it might of been the drives also. I
> moved to the eepro100 cards. Same problem.

You should be using NICs with a poll-based driver, as opposed to an
interrupt-based driver. This will preempt the kernel less often, and
allow it to service the NIC more efficiently.

The e1000 driver is excellent in this respect. We run more than 100Mb
through a Linux router with a full eBGP table (~127k FIB entries) with
no appreciable CPU consumption. The only time the box is substantially
taxed is when a BGP peer flaps, in which case zebra consumes a lot of
CPU power reconfiguring the FIB. It's a shame that the Linux kernel
doesn't make the FIB structures accessible directly via an interface
similar to /dev/kmem so zebra could simply mmap(2) it in and make large
writes instead of small ioctl(2) calls.

-- 
Jeff S Wheeler <jsw@five-elements.com>
Five Elements, Inc.



Reply to: