Cisco Support Community
Community Member

Policy Based Routing: Process vs. Fast-Switched

IOS 12.2 documentation states that Policy Based Routing (PBR) can now be fast-switched. However, it states the following fast-switched limitations:

1) The set ip default command is not supported.

2) The set interface command is supported only over point-to-point links, unless a route cache entry exists using the same interface specified in the set interface command in the route map. Also, at the process level, the routing table is consulted to determine if the interface is on a reasonable path to the destination. During fast switching, the software does not make this check. Instead, if the packet matches, the software blindly forwards the packet to the specified interface.

Regarding #2, does this imply that if I'm doing PBR at the process-switch level using the "set interface" command, will the router check the routing table to see if it is actually learning the route via the specified interface. If it is, it will forward it through the specified interface. If it is NOT learning the route through the interface specified in the "set" command, it will NOT forward the packet out of the "set" interface, instead reverting to the regular IP routing table?

I was always under the impression that PBR will always "blindly" forward the IP packet to the next hop if the local interface is up, regardless if there is a failure downstream which would prevent the IP packet from reaching its destination. This seems to imply that this is not the case for this scenario.



Re: Policy Based Routing: Process vs. Fast-Switched

I have observed some difference between 'set interface' and 'se default interface' command. When the 'set interface' command is used, it policy routes all packets for which there is an explicit route or not in the routing table, whereas the 'set default interface' command policy routes only packets for which there is no explicit rourte in the routing table. I am not sure whether this behavior is related to your question. I tried simulating your question. With process switching, I was able to policy route packet to some other interface even though the route was learned through a different interface. For eg. I used the 'set interface lo0' command for a packet destined for, but the actual route was learned through interface serial0.3 which is a FR multipoint interface in my case. So I am wondering what the documentation really means.

CreatePlease to create content