Feedback
|
Table Of Contents
Performance Routing Application Interface
Information About Performance Routing Application Interface
Performance Routing Application Interface
PfR Application Interface Priority
PfR Application Interface Reporting Deployment
How to Configure a Performance Routing Application Interface
Registering an Application Interface Provider and Configuring Host Devices
Displaying Information about Application Interface Provider Activity
Configuration Examples for Performance Routing Application Interface
Example: Registering an Application Interface Provider and Configuring Host Devices
Feature Information for Performance Routing Application Interface
Performance Routing Application Interface
First Published: March 19, 2010Last Updated: July 21, 2010The Performance Routing - Application Interface feature introduced support for a PfR application interface. The application interface defines the mode of communication and messaging between applications and the network for the purpose of optimizing the traffic associated with the applications. A provider must be registered with a PfR master controller before the application can interface with PfR. Host devices in the provider network running an application that communicates with PfR using the application interface must also be configured at a PfR master controller with an IP address and key chain password.
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 for Performance Routing Application Interface" section.
Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to http://www.cisco.com/go/cfn. An account on Cisco.com is not required.
Contents
•
Information About Performance Routing Application Interface
•
How to Configure a Performance Routing Application Interface
•
Configuration Examples for Performance Routing Application Interface
•
Feature Information for Performance Routing Application Interface
Information About Performance Routing Application Interface
•
Performance Routing Application Interface
•
PfR Application Interface Priority
•
PfR Application Interface Reporting Deployment
Performance Routing Application Interface
The PfR application interface feature defines the mode of communication and messaging between applications and the network for the purpose of optimizing the traffic associated with the applications. A provider is defined as an entity outside the network in which the router configured as a PfR master controller exists, for example, an ISP, or a branch office of the same company. The provider has one or more host devices running one or more applications that use the PfR application interface to communicate with a PfR master controller. A provider must be registered with a PfR master controller before an application on a host device can interface with PfR. Host devices in the provider network running an application that communicates with PfR must also be configured at a PfR master controller with an IP address and key chain password.
After registration, a host device in the provider network can initiate a session with a PfR master controller. When a provider application initiates a session with a PfR master controller, a session identifier (ID) number is allocated to the session. After a session is established, the application can send a request for reports containing performance numbers for traffic classes, dynamically create policies to influence the existing traffic classes, or specify new traffic class criteria.
The application interface can be used by Cisco partners to develop applications. An example of application developed by a partner is PfR Manager by Fluke Networks. PfR Manager is a complete graphical-user interface (GUI) interface for the Performance Routing technology. It provides detailed reporting on traffic class performance and PfR behavior as well as easy-to-use configuration of PfR traffic classes and policies. For more details about PfR Manager, go to http://www.flukenetworks.com/pfr.
The PfR application interface permits a maximum of five concurrent sessions, and keepalives are used to check that the session between the host application device and the PfR master controller is still active. If the session is dropped, all policies created in the session are dropped. An application may negotiate an ability for the session to persist in the case of a temporary outage.
PfR Application Interface Priority
The PfR application interface has three main levels of priority to help resolve conflicts with requests coming from providers, host devices, and policies. In Table 1 the three priority levels are shown with the scope of the priority, whether the priority level can be configured on the master controller, the range and default values, if applicable.
When multiple providers are registered with PfR, an optional priority value can be specified to give PfR the ability to order requests coming in from multiple providers. Host devices in a provider network can also be assigned a priority. The lower the priority value, the higher the priority. If you configure a priority, each provider must be assigned a different priority number. If you try to assign the same priority number to two different providers, an error message is displayed on the console. Host devices must also be configured with different priority numbers if a priority is configured. If a priority has not been configured for the provider or host device, the priority is set to the default value of 65535, which is the lowest priority.
The application administrator assigns a priority to all applications. This priority is conveyed to the Network in terms of a policy priority. The lower the application priority number, the higher the priority of the application. Policy priority is handled using the policy sequence number. A policy sequence number—see Table 2—is a 64 bit number calculated by placing provider priority in bytes 1 and 2, host priority in bytes 3 and 4, policy priority in bytes 5 and 6 and Session ID in bytes 7 and 8. The policy sequence number is calculated by the PfR master controller. An example policy sequence number is 18446744069421203465, representing a provider priority value of 65535, a host priority of 65535, a policy priority of 101, and a session ID of 9.
Use the show pfr master policy command to view the policy sequence number. The lower the sequence number, the higher the priority for the policy.
Table 2 Formulation of a Policy Sequence Number
Bits 0-7 Bits 8-15 Bits 16-23 Bits 24-31Provider Priority
Host Priority
Bits 32-39 Bits 40-48 Bits 49-56 Bits 57-64Policy Priority
Session ID
In the situation where an application tries to create two policies with same policy priority; the second policy creation attempt will fail.
PfR Application Interface Reporting Deployment
An application communicating through a PfR application interface can request performance reports from PfR and use the report information to create graphs and charts of the information. Figure 1 shows a diagram of an example reporting model. In this example, the topology contains multiple sites using PfR within the site. Each site has a master controller but the company wants to review reports about activities in each site such as overall inter-site traffic activity, voice and video traffic activity, and data center access reports. a PfR application interface solution is implemented with a reporting application—see Figure 1—that resides in a central location. The reporting application is registered at each PfR master controller and the application initiates a session with each master controller and requests traffic class performance information. The master controller at each site exports information to the application, which consolidates the information and displays graphs and charts. Reports can be requested at specified intervals to keep the information on the reporting application updated.
Figure 1 PfR Application Interface Reporting Model
At each site the master controller can monitor provider activity. Several Cisco IOS command-line interface (CLI) commands allow you to view provider information including details about dynamic policies created by the application. Reporting can also be implemented for a single site.
In summary, the PfR application interface provides an automated method for networks to be aware of applications and provides application-aware performance routing.
How to Configure a Performance Routing Application Interface
•
Registering an Application Interface Provider and Configuring Host Devices
•
Displaying Information about Application Interface Provider Activity
Registering an Application Interface Provider and Configuring Host Devices
Perform this task at a master controller to register an application interface provider with the master controller and to configure host devices. The PfR application interface feature defines the mode of communication and messaging between applications and the network for the purpose of optimizing the traffic associated with the applications. A provider must be registered with a PfR master controller before the application can interface with PfR.
Multiple providers can be registered and multiple host devices can be configured under each provider, but a host device cannot be configured under multiple providers. The PfR application interface has a maximum number of five concurrent sessions. After the provider is registered using this task, an application running on a host device can initiate a session with the master controller.
To view information about providers and any default policies created by applications using the PfR application interface, see the "Displaying Information about Application Interface Provider Activity" section.
SUMMARY STEPS
1.
enable
2.
configure terminal
3.
pfr master
4.
api provider provider-id [priority value]
5.
host-address ip-address [key-chain key-chain-name] [priority value]
6.
Repeat Step 5 to configure additional host devices as required.
7.
end
DETAILED STEPS
Command or Action PurposeStep 1
enable
Example:Router> enable
Enables privileged EXEC mode.
•
Enter your password if prompted.
Step 2
configure terminal
Example:Router# configure terminal
Enters global configuration mode.
Step 3
pfr master
Example:Router(config)# pfr master
Enters PfR master controller configuration mode to configure a router as a master controller.
•
A master controller and border router process can be enabled on the same router (for example, in a network that has a single router with two exit links to different service providers).
Step 4
api provider provider-id [priority value]
Example:Router(config-pfr-mc)# api provider 1 priority 3000
Registers a provider with a PfR master controller and enters PfR master controller application interface provider configuration mode.
•
Use the priority keyword to assign a priority for this provider when there are multiple providers. The lower the number, the higher the priority. The default priority is 65535, the lowest priority.
•
In this example, the provider is assigned an ID of 1 and a priority of 3000.
Step 5
host-address ip-address [key-chain key-chain-name] [priority value]
Example:Router(config-pfr-mc-api-provider)# host-address 10.1.2.2 key-chain PFR_HOST1
Configures information about a host device used by a provider to communicate with a PfR master controller.
•
Use the priority keyword to assign a priority for this host device when there are multiple host devices. The lower the number, the higher the priority. The default priority is 65535, the lowest priority.
•
In this example, the host IP address of 10.1.2.2 is configured, the key chain password is set to PFR_HOST1, and the priority is not configured and will be set to the default value of 65535.
Step 6
Repeat Step 5 to configure additional host devices as required.
—
Step 7
end
Example:Router(config-router)# end
Exits PfR master controller application interface provider configuration mode and returns to privileged EXEC mode.
Troubleshooting Tips
Use the debug pfr api command on the master controller to troubleshoot issues with registering a provider or configuring a host device. Use the detailed keyword with caution in a production network.
Displaying Information about Application Interface Provider Activity
Perform this task on a master controller to display information about providers and any default policies created by applications using the PfR application interface. This task can be used after a provider is registered with a PfR master controller using the "Registering an Application Interface Provider and Configuring Host Devices" section and an application on a host device initiates a session. The show commands can be entered in any order.
Prerequisites
Perform the "Registering an Application Interface Provider and Configuring Host Devices" section task and run an application from a host device using the PfR application interface.
SUMMARY STEPS
1.
enable
2.
show pfr api provider [detail]
3.
show pfr master policy [sequence-number | policy-name | default | dynamic]
4.
show pfr master prefix [detail | inside [detail] | learned [delay | inside | throughput] | prefix [detail | policy | report | traceroute [exit-id | border-address | current] [now]]]
DETAILED STEPS
Step 1
enable
Enables privileged EXEC mode. Enter your password if prompted.
Router> enableStep 2
show pfr api provider [detail]
This command is used to display provider and host information including the ID of each configured provider, the priority of the provider and the host (if configured), and the IP addresses of each configured host device.
Router# show pfr api provider detailAPI Version: Major 2, Minor 0Provider id 1001, priority 65535Host ip 10.3.3.3, priority 65535Session id 9, Version Major 2, Minor 0Num pfx created 2, Num policies created 2Last active connection time (sec) 00:00:01Policy ids : 101, 102,Host ip 10.3.3.4, priority 65535Session id 10, Version Major 2, Minor 0Num pfx created 1, Num policies created 1Last active connection time (sec) 00:00:03Policy ids : 103,Provider id 2001, priority 65535Host ip 172.19.198.57, priority 65535Session id 11, Version Major 2, Minor 0Num pfx created 0, Num policies created 0All Prefix report enabledAll exit report enabledStep 3
show pfr master policy [sequence-number | policy-name | default | dynamic]
This command is used to display policy information. The following example uses the dynamic keyword to display the policies dynamically created by provider applications. Note that the first two dynamic policies were generated by the same host device at 10.3.3.3 and in the same session ID of 9, but the third section is for a different host device at 10.3.3.4.
Router# show pfr master policy dynamicDynamic Policies:proxy id 10.3.3.3sequence no. 18446744069421203465, provider id 1001, provider priority 65535host priority 65535, policy priority 101, Session id 9backoff 90 90 90delay relative 50holddown 90periodic 0probe frequency 56mode route controlmode monitor bothmode select-exit goodloss relative 10jitter threshold 20mos threshold 3.60 percent 30unreachable relative 50next-hop not setforwarding interface not setresolve delay priority 11 variance 20resolve utilization priority 12 variance 20proxy id 10.3.3.3sequence no. 18446744069421269001, provider id 1001, provider priority 65535host priority 65535, policy priority 102, Session id 9backoff 90 90 90delay relative 50holddown 90periodic 0probe frequency 56mode route controlmode monitor bothmode select-exit goodloss relative 10jitter threshold 20mos threshold 3.60 percent 30unreachable relative 50next-hop not setforwarding interface not setresolve delay priority 11 variance 20resolve utilization priority 12 variance 20proxy id 10.3.3.4sequence no. 18446744069421334538, provider id 1001, provider priority 65535host priority 65535, policy priority 103, Session id 10backoff 90 90 90delay relative 50holddown 90periodic 0probe frequency 56mode route controlmode monitor bothmode select-exit goodloss relative 10jitter threshold 20mos threshold 3.60 percent 30unreachable relative 50next-hop not setforwarding interface not setresolve delay priority 11 variance 20resolve utilization priority 12 variance 20Step 4
show pfr master prefix [detail | inside [detail] | learned [delay | inside | throughput] | prefix [detail | policy | report | traceroute [exit-id | border-address | current] [now]]]
This command is used to display the status of monitored prefixes. Using the report keyword, the following example shows prefix statistics including information about provider report requests for the 10.1.1.0 prefix:.
Router# show pfr master prefix 10.1.1.0/24 reportPrefix Performance Report RequestCreated by: Provider 1001, Host 10.3.3.3, Session 9Last report sent 3 minutes ago, context 589855, frequency 4 minPrefix Performance Report RequestCreated by: Provider 1001, Host 10.3.3.4, Session 10Last report sent 1 minutes ago, context 655372, frequency 3 minOER 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 ScoreLos - Packet Loss (packets-per-million), Un - Unreachable (flows-per-million),E - Egress, I - Ingress, Bw - Bandwidth (kbps), N - Not applicableU - unknown, * - uncontrolled, + - control more specific, @ - active probe all# - Prefix monitor mode is Special, & - Blackholed Prefix% - Force Next-Hop, ^ - Prefix is deniedPrefix State Time Curr BR CurrI/F ProtocolPasSDly PasLDly PasSUn PasLUn PasSLos PasLLosActSDly ActLDly ActSUn ActLUn EBw IBwActSJit ActPMOS ActSLos ActLLos--------------------------------------------------------------------------------10.1.1.0/24 INPOLICY 0 10.3.3.3 Et4/3 BGPN N N N N N138 145 0 0 N NN N
Configuration Examples for Performance Routing Application Interface
•
Example: Registering an Application Interface Provider and Configuring Host Devices
Example: Registering an Application Interface Provider and Configuring Host Devices
The following configuration example shows how to register a provider on a master controller. In this example, more than one provider is configured, so the priority is set for each provider. For the single host device configured for provider 1, no priority is set and the default priority value of 65535 is assigned giving this host device a lower priority than both the host devices configured for provider 2. After the provider is registered and an application on a host device initiates a session, some show commands can be entered on the master controller to help you track provider activity.
Router(config)# pfr masterRouter(config-pfr-mc)# api provider 1 priority 3000Router(config-pfr-mc-api-provider)# host-address 10.1.2.2 key-chain PFR_HOSTRouter(config-pfr-mc-api-provider)# exitRouter(config-pfr-mc)# api provider 2 priority 4000Router(config-pfr-mc-api-provider)# host-address 10.2.2.2 key-chain PFR_HOST priority 3000Router(config-pfr-mc-api-provider)# host-address 10.2.2.3 key-chain PFR_HOST priority 4000Router(config-pfr-mc-api-provider)# end!Router# show pfr api provider detailRouter# show pfr master policy dynamicRouter# show pfr master prefix 10.1.1.0/24 reportAdditional References
Related Documents
Technical Assistance
Feature Information for Performance Routing Application Interface
Table 3 lists the release history for this feature.
Use Cisco Feature Navigator to find information about platform support and software image support. Cisco Feature Navigator enables you to determine which software images support a specific software release, feature set, or platform. To access Cisco Feature Navigator, go to http://www.cisco.com/go/cfn. An account on Cisco.com is not required.
Note
Table 3 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.
Cisco and the Cisco Logo are trademarks of Cisco Systems, Inc. and/or its affiliates in the U.S. and other countries. A listing of Cisco's trademarks can be found at 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. (1005R)
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 Cisco Systems, Inc. All rights reserved.
Feedback
