With the 2.6 kernel, it seems that a single CPU is used to service a single NIC. I've read a paper on NAPI that explains why this is done, and that makes sense. However, it does mean I can't scale a Linux box horizontally (i.e. more CPUs) to increase its maximum loss-free forwarding rate. So far, with an interesting ruleset and IPVS, I top out at about 138Kpps on a dual-P4 (with HTT). So I'm thinking of getting a couple of 4-port cards and using channel bonding to produce two bonded interfaces, each serviced by 4 ports. But I worry. :-) Will the code path from packet receipt, through Netfilter, and up to packet transmission fix one bonded interface to a single CPU, or is the limitation that only one CPU is used to service a single physical NIC? Thanks, Sheldon. - : send the line "unsubscribe linux-net" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html