Receive Packet Steering: A software solution to scaling the network receive path

Short Talk
Scheduled: Wednesday, September 23, 2009 from 11:00 – 11:25am in Salon E


The subject of this talk is a software based solution for scaling performance of the networking receive path. This is particularly useful with a single queue (legacy) NIC on a multi-core computer.


The networking stack does not scale well with a single queue NIC on a multi-core system. The interrupt processing as well as the NAPI processing for a device, including protocol processing, are essentially single threaded on a CPU. In this talk we discuss a design that introduces parallelism in the networking receive path without the need for multi-queue NIC support. In essence this will emulate the capablities of hardware multi-queue NIC in that protocol processing of packets for different flows to be done in parallel. Applying this solution, we can show up to a 300% increase in the packets-per-second that can be handled with a single queue NIC.


  • Tom Herbert



    Manager of Host Networking development at Google.

Leave a private comment to organizers about this proposal