scaling linux-based router hardware recommendations

Robert Bays robert at
Wed Jan 28 11:02:38 UTC 2015

> On Jan 27, 2015, at 8:31 AM, Jim Shankland <nanog at> wrote:
> My expertise, such as it ever was, is a bit stale at this point, and my 
> figures might be a little off. But I think the general principle 
> applies: think about the minimum number of x86 instructions, and the 
> minimum number of main memory accesses, to inspect a packet header, do a 
> routing table lookup, and enqueue the packet on an outbound interface. I 
> can't see that ever getting reduced to the point where a generic server 
> can handle 40-byte packets at line rate (for that matter, "line rate" is 
> increasing a lot faster than "speed of generic server" these days).

Using DPDK it’s possible to do everything stated and achieve 10Gbps line rate at 64byte packets on multiple interfaces simultaneously.  Add ACLs to the test setup and you can reach significant portions of 10Gbps at 64byte packets and full line rate at 128bytes.

Check out Venky Venkatesan’s presentation at the last DPDK Summit for interesting information on pps/CPU cycles and some of the things that can be done to optimize forwarding in a generic processor environment.

More information about the NANOG mailing list