At the high end (Junipers and 12000s) the primary CPU does not forward any packets at all. They just speak routing protocols and calculate the forwarding tables, which are then pushed out to the linecards. The linecards do all the packet forwarding themselves across the backplane (crossbar for 12000s, shared-memory for M40s). Internally an M40's processor is an actual Pentium motherboard that runs a hacked-up FreeBSD 2.2. -- Shields.