- [Instructor] Cisco IOS has several methods
which are used for packet switching.
The oldest method is called process switching.
And, as you might have guessed,
this involves the switch processor,
which is used to inspect every packet.
This is also the slowest method
and, as we discuss the details a bit more,
you'll see why that is.
Each time a router receives a packet
that packet is stored in the router's memory.
The processor is interrupted in order to process
and analyze the packet.
The processor's going to check the packet
against the internal routing table
in order to determine where the packet should be directed.
So, it's going to examine the next-hop destination
and it will determine the outbound switch interface
that should be used to deliver the packet.
The router can also determine the
next-hop layer 2 MAC address
through a table such as the ARP cache.
Using all of this information,
the switching process will construct
a new layer 2 frame header for every single packet.
Then the packet will be sent out
through the appropriate outbound interface.
If that sounds a bit cumbersome,
then you're exactly right. It is.
This is considered to be the slowest switching method,
because it requires a processor to be directly involved
with every single packet traversing the switch.
It also adds some delay to each packet
through this whole process and through the header re-writing
that happens for each packet.
So, for the most part, it's not ideal to use
process switching in our modern enterprise networks
as our primary method.
Process switching is available on every single
Cisco switch and router platform by default,
although more modern devices will not use process switching
as the default method.
If you want to de-bug IP packets,
process switching must be enabled for that.
These types of packets are always process switched.
And, other than that, I can't really think of a good reason
to completely disable the more modern switching options,
such as fast switching or CEF, Cisco Express Forwarding,
in favor of process switching.
It's just not ideal.
There's really no reason on our modern networks
to ever rely solely on process switching.
It's very processor intensive and it's slow.
So, for the most part,
you're likely never going to use that.
If we want to take a closer look at this in action,
I've got a really simple topology here.
I have two PCs that are connected to each other
with a router in between those,
and both of those PCs have the router set
as their default gateway.
So, in order to cease some of this process switched traffic,
we can use a debug command,
and we can enable process switching
on the appropriate router interfaces.
So let me actually go under both of those interfaces.
Under global configuration mode,
I'll say interface range gig 0/1 and 0/2.
Under there, I'll use the command no IP route-cache.
This is going to disable the faster switching methods,
which are going to use the route cache,
and it's going to rely solely on process switching.
If we go back to exact mode here
and we say debug IP packet detail,
this is going to enable packet debugging
when we do those ICMP pings.
Process switched packets are going to show up here
in the debug output.
Whereas, if they were fast switched or CEP switched,
they would not.
Let me jump over to the PC here
and, on this particular PC, PC one,
I'm going to ping the other host at 10.1.2.5
So I'm going to ping over to PC two,
that's the IP address of that,
that traffic is going to cross our router.
I'll jump back over to router one,
and if we take a look at that you can see
the debug output from those ICMP pings and
I'll point out this particular section
where it says routed via RIB, the Routing Information Base.
This is otherwise known as the routing table of the routers.
So these particular packets have been process switched.
That's what this tells us.
So, that's an overview of the older
process switching standard that has largely been replaced
by faster, more modern iterations.