SMP NAT

Iasen Kostov tbyte at otel.net
Thu Mar 2 05:26:50 PST 2006


	Hi,
I'm now using a MP system (dual opteron) to do NAT for about 1500
clients at once at speed above 200Mbit/sec full-duplex (e.g about
400Mbit/sec) and I'm using PF to do the NAT. Bad thing is that the
second CPU is idle. As I can see from top - about 50% of the cpu is used
by irq handler for the ethernet adapter (irq27: bge0 bge1 - I'm using
only bge0 to route via VLANs) and about 30% by the network interrupt
handler. I guess that the swi1:net is handling the NAT (via PF) and if
swi1 and irq27 are in different handlers why they don't get executed on
different CPUs (second CPU is 98% idle and top show that both handlers
run on same CPU). Aren't both handlers in different kernel threads ?
If they are not - is it possible to be in different threads on different
CPUs ?




More information about the freebsd-net mailing list