PfR Protocol Independent Route Optimization

Performance Routing - Protocol Independent Route Optimization (PIRO)

Last Updated: November 11, 2011

Protocol Independent Route Optimization (PIRO) introduced the ability of Performance Routing (PfR) to search for a parent route--an exact matching route, or a less specific route--in the IP Routing Information Base (RIB), allowing PfR to be deployed in any IP-routed environment including Interior Gateway Protocols (IGPs) such as OSPF and IS-IS.

Finding Feature Information

Your software release may not support all the features documented in this module. For the latest feature information and caveats, see the release notes for your platform and software release. To find information about the features documented in this module, and to see a list of the releases in which each feature is supported, see the Feature Information Table at the end of this document.

Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to www.cisco.com/go/cfn. An account on Cisco.com is not required.

Information About Performance Routing PIRO

Protocol Independent Route Optimization (PIRO)

The PfR - Protocol Independent Route Optimization (PIRO) feature was introduced to extend the ability of PfR to identify and control traffic classes. Prior to PIRO, PfR optimizes paths for traffic classes that have a parent route--an exact matching route, or a less specific route--in BGP or static route databases. PIRO enables PfR to search the IP Routing Information Base (RIB) for a parent route allowing PfR to be deployed in any IP-routed environment including Interior Gateway Protocols (IGPs) such as OSPF and IS-IS.

The search for a parent route starts in the BGP routing database and, if no parent route is found, the static route database is searched. If a parent route is still not located, the RIB is searched. When a match is found after a parent route search of the RIB, route control is applied to the traffic class using policy-based routing (PBR) where a dynamic route map is created.

After PfR route control mode is enabled, no new customer configuration is required to enable PIRO.

On the master controller the show pfr master prefix command will display PIRO routes as "RIB-PBR" in the output.

How to Configure Performance Routing PIRO

Verifying and Debugging Protocol Independent Route Optimization Route Control Changes

After PfR route control mode is enabled, no new customer configuration is required to enable PIRO.Perform the steps in this optional task if you want to debug PIRO routes where the parent route exists in the RIB and is controlled using policy-based routing. All the steps are optional and are not in any order. The information from these steps can verify that a specific prefix associated with a traffic class has been identified using PIRO and that it is being controlled by PfR. The first two CLI commands are entered at the master controller, and the other commands are entered at a border router.

SUMMARY STEPS

1.    Start at the master controller.

2.    enable

3.    show pfr master traffic-class

4.    Move to a border router to enter the next step.

5.    enable

6.    show ip route

7.    show route-map dynamic

8.    show ip access-list dynamic

9.    debug pfr border routes {bgp | static | piro[detail]}


DETAILED STEPS
Step 1   Start at the master controller.
Step 2   enable

Enables privileged EXEC mode. Enter your password if prompted.



Example:
Router> enable
Step 3   show pfr master traffic-class

This command is used to display information about traffic classes that are monitored and controlled by a PfR master controller. The output from this command includes information about the destination IP address and prefix length for the traffic class, the IP address and the interface of the border router through which the prefix associated with this traffic class is being currently routed, the state of the traffic class, and the protocol. In this example, the protocol displayed for the prefix 10.1.1.0 is RIB-PBR and this means that the parent route for the traffic class exists in the RIB and policy-based routing is being used to control the prefix. Only syntax relevant to this task is shown in this step. You can also use the show pfr master prefix command to display similar information.



Example:
Router# show pfr master traffic-class

OER Prefix Statistics:
 Pas - Passive, Act - Active, S - Short term, L - Long term, Dly - Delay (ms),
 P - Percentage below threshold, Jit - Jitter (ms), 
 MOS - Mean Opinion Score
 Los - Packet Loss (packets-per-million), Un - Unreachable (flows-per-million),
 E - Egress, I - Ingress, Bw - Bandwidth (kbps), N - Not applicable
 U - unknown, * - uncontrolled, + - control more specific, @ - active probe all
 # - Prefix monitor mode is Special, & - Blackholed Prefix
 % - Force Next-Hop, ^ - Prefix is denied
DstPrefix           Appl_ID Dscp Prot     SrcPort     DstPort SrcPrefix         
           Flags             State     Time            CurrBR  CurrI/F Protocol
         PasSDly  PasLDly   PasSUn   PasLUn  PasSLos  PasLLos      EBw      IBw
         ActSDly  ActLDly   ActSUn   ActLUn  ActSJit  ActPMOS  ActSLos  ActLLos
--------------------------------------------------------------------------------
10.1.1.0/24               N defa    N           N           N N                 
                          INPOLICY        0           10.2.1.2 Gi0/0/1  RIB-PBR
               N        N        N        N        N        N        N        N
               1        1        0        0        N        N        N        N
Step 4   Move to a border router to enter the next step.

The next command is entered on a border router, not the master controller.

Step 5   enable

Enables privileged EXEC mode. Enter your password if prompted.



Example:
Router> enable
Step 6   show ip route

Displays the current state of the routing table. Use this command to verify that a parent route exists in the RIB.



Example:
Router# show ip route

Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area 
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2
       i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
       ia - IS-IS inter area, * - candidate default, U - per-user static route
       o - ODR, P - periodic downloaded static route
 
Gateway of last resort is not set
 
     10.0.0.0/24 is subnetted, 1 subnets
C       10.1.1.0 is directly connected, GigabitEthernet0/0/1
     192.168.0.0/24 is subnetted, 1 subnets
O       192.168.50.0 [110/20] via 10.10.10.3, 00:20:32, GigabitEthernet0/2/2
     10.0.0.0/8 is variably subnetted, 10 subnets, 4 masks
O       10.1.4.1/32 [110/31] via 10.40.40.2, 00:20:32, GigabitEthernet0/0/2
O       10.1.5.1/32 [110/31] via 10.40.40.2, 00:20:32, GigabitEthernet0/0/2
O       10.1.6.1/32 [110/31] via 10.40.40.2, 00:20:32, GigabitEthernet0/0/2
B       10.1.1.0/24 [20/0] via 10.40.40.2, 00:38:08
     10.1.0.0/24 is subnetted, 1 subnets
O       10.1.1.0 [110/40] via 10.40.40.2, 00:20:33, GigabitEthernet0/0/2
Step 7   show route-map dynamic

Viewing a dynamic route map is another method of verifying how the route control is being applied for PIRO routes. In the output of this dynamic route map, note the access list named pfr#6. Only syntax relevant to this task is shown in this step.



Example:
Router# show route-map dynamic

 route-map OER-04/21/09-21:42:55.543-6-OER, permit, sequence 0, identifier 1755354068
  Match clauses:
    ip address (access-lists): pfr#6 
  Set clauses:
    ip next-hop 10.40.40.2
    interface GigatbitEthernet0/0/2
  Policy routing matches: 2314 packets, 138840 bytes
 Current active dynamic routemaps = 1
Step 8   show ip access-list dynamic

This command displays dynamic IP access lists created on this border router. In the output, a dynamic access list named pfr#6, that permits traffic for the prefix 10.1.1.0 to be routed through this border router, is displayed. The access list, pfr#6, was identified in the show route-map dynamic command in the previous step. Only syntax relevant to this task is shown in this step.



Example:
Router# show ip access-list dynamic

Extended IP access list pfr#6
    1073741823 permit ip any 10.1.1.0 0.0.0.255 (2243 matches)
Step 9   debug pfr border routes {bgp | static | piro[detail]}

This command is entered on a border router. This command is used to debug parent route lookup and route changes to existing parent routes when the parent route is identified from the RIB. In this example, the detailed debugging information shows that the parent route for the prefix 10.1.1.0--shown in the output for Step 2--is found in the RIB and a route map is created to control the application. Note that static and BGP route control, and detailed border PBR debugging is also active.



Example:
Router# debug pfr border routes piro detail

Apr 21 21:41:25.667: PFR PIRO: Parent lookup found parent 10.1.1.0, mask 24, nexthop
10.40.40.2
Apr 21 21:42:55.539: OER STATIC: No parent found, network 10.1.1.0/24
Apr 21 21:42:55.539: PFR PIRO: Control Route, 10.1.1.0/24, NH 0.0.0.0, 
IF GigabitEthernet0/0/2
Apr 21 21:42:55.539: PFR PIRO: Parent lookup found parent 10.1.1.0, mask 24, nexthop
10.40.40.2
Apr 21 21:42:55.539: OER BR PBR(det): control app: 10.1.1.0/24, nh 0.0.0.0, if
GigabitEthernet0/0/2,ip prot 256,dst opr 0,src opr 0, 0 0 0 0,rc net 0.0.0.0/0,dscp 0/0
Apr 21 21:42:55.543: OER BR PBR(det): Create rmap 65DC1CE8
Apr 21 21:42:55.547: PFR PIRO: Parent lookup found parent 10.1.1.0, mask 24, nexthop
10.40.40.2

Where to Go Next

For information about other Performance Routing features or general conceptual material, see the documents in the "Related Documents" section.

Additional References

Related Documents

Related Topic

Document Title

Cisco IOS commands

Cisco IOS Master Commands List, All Releases

Cisco PfR commands: complete command syntax, command mode, command history, defaults, usage guidelines and examples

Cisco IOS Performance Routing Command Reference

Basic PfR configuration

"Configuring Basic Performance Routing" module

Concepts required to understand the Performance Routing operational phases

"Understanding Performance Routing" module

Advanced PfR configuration

"Configuring Advanced Performance Routing" module

IP SLAs overview

IP SLAs Configuration Guide

Technical Assistance

Description

Link

The Cisco Support and Documentation website provides online resources to download documentation, software, and tools. Use these resources to install and configure the software and to troubleshoot and resolve technical issues with Cisco products and technologies. Access to most tools on the Cisco Support and Documentation website requires a Cisco.com user ID and password.

http://www.cisco.com/cisco/web/support/index.html

Feature Information for Performance Routing PIRO

The following table provides release information about the feature or features described in this module. This table lists only the software release that introduced support for a given feature in a given software release train. Unless noted otherwise, subsequent releases of that software release train also support that feature.

Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to www.cisco.com/go/cfn. An account on Cisco.com is not required.

Table 1Feature Information for Performance Routing PIRO

Feature Name

Releases

Feature Information

PfR - Protocol Independent Route Optimization (PIRO)

12.2(33)SRE 12.4(24)T

PIRO introduced the ability of PfR to search for a parent route--an exact matching route, or a less specific route--in the IP Routing Information Base (RIB), allowing PfR to be deployed in any IP-routed environment including Interior Gateway Protocols (IGPs) such as OSPF and IS-IS.

The following commands were modified by this feature: debug pfr border routesand show pfr master prefix.

Cisco and the Cisco logo are trademarks or registered trademarks of Cisco and/or its affiliates in the U.S. and other countries. To view a list of Cisco trademarks, go to this URL: www.cisco.com/go/trademarks. Third-party trademarks mentioned are the property of their respective owners. The use of the word partner does not imply a partnership relationship between Cisco and any other company. (1110R)

Any Internet Protocol (IP) addresses and phone numbers used in this document are not intended to be actual addresses and phone numbers. Any examples, command display output, network topology diagrams, and other figures included in the document are shown for illustrative purposes only. Any use of actual IP addresses or phone numbers in illustrative content is unintentional and coincidental.

© 2010-2012 Cisco Systems, Inc. All rights reserved.