Process switching can also be referred to as software switching or slow path switching.
Process switching is when the general central processing unit (rather than any dedicated ASIC chip) takes charge of packet switching on the hardware device. Within Cisco IOS the process ip_input runs on the general CPU for incoming network packets that can not be switched by Cisco Express Forwarding (CEF).
Process switching in the general CPU is significantly slower than switching done in the hardware (CEF). The router process switching is designed to handle a very small percentage of overall traffic, with the preference of the bulk of the routing to be done in hardware.
The reasons why packets that may go to the ip_input process rather than to CEF:
- Packets that are sourced from or destined to the router (Using control traffic or routing protocols)
- Packets that are too complex for the CEF hardware to handle (Packets with particular IP options)
- Packets that require extra processing or contain information that is not known (ARP)