Table Of Contents
Performance Routing Application Interface
Finding Feature Information
Contents
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
Troubleshooting Tips
Displaying Information about Application Interface Provider Activity
Prerequisites
Configuration Examples for Performance Routing Application Interface
Example: Registering an Application Interface Provider and Configuring Host Devices
Additional References
Related Documents
Technical Assistance
Feature Information for Performance Routing Application Interface
Performance Routing Application Interface
First Published: March 19, 2010
Last Updated: July 21, 2010
The 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
•
Additional References
•
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.
Table 1 Application Interface Priority Level Table
Priority Name
|
Scope
|
Mandatory In Application Interface Message
|
Configure on MC
|
Default Value
|
Range
|
Provider priority
|
Network wide
|
No
|
Yes
|
65535
|
1 to 65535
|
Host priority
|
Provider Level
|
No
|
Yes
|
65535
|
1 to 65535
|
Policy
|
Host Level
|
Yes
|
No
|
N/A
|
1 to 65535
|
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-31
|
Provider Priority
|
Host Priority
|
Bits 32-39
|
Bits 40-48
|
Bits 49-56
|
Bits 57-64
|
Policy 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
|
Purpose
|
Step 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.
Step 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 detail
API Version: Major 2, Minor 0
Provider id 1001, priority 65535
Host ip 10.3.3.3, priority 65535
Session id 9, Version Major 2, Minor 0
Num pfx created 2, Num policies created 2
Last active connection time (sec) 00:00:01
Host ip 10.3.3.4, priority 65535
Session id 10, Version Major 2, Minor 0
Num pfx created 1, Num policies created 1
Last active connection time (sec) 00:00:03
Provider id 2001, priority 65535
Host ip 172.19.198.57, priority 65535
Session id 11, Version Major 2, Minor 0
Num pfx created 0, Num policies created 0
All Prefix report enabled
Step 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 dynamic
sequence no. 18446744069421203465, provider id 1001, provider priority 65535
host priority 65535, policy priority 101, Session id 9
mos threshold 3.60 percent 30
forwarding interface not set
resolve delay priority 11 variance 20
resolve utilization priority 12 variance 20
sequence no. 18446744069421269001, provider id 1001, provider priority 65535
host priority 65535, policy priority 102, Session id 9
mos threshold 3.60 percent 30
forwarding interface not set
resolve delay priority 11 variance 20
resolve utilization priority 12 variance 20
sequence no. 18446744069421334538, provider id 1001, provider priority 65535
host priority 65535, policy priority 103, Session id 10
mos threshold 3.60 percent 30
forwarding interface not set
resolve delay priority 11 variance 20
resolve utilization priority 12 variance 20
Step 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 report
Prefix Performance Report Request
Created by: Provider 1001, Host 10.3.3.3, Session 9
Last report sent 3 minutes ago, context 589855, frequency 4 min
Prefix Performance Report Request
Created by: Provider 1001, Host 10.3.3.4, Session 10
Last report sent 1 minutes ago, context 655372, frequency 3 min
Pas - Passive, Act - Active, S - Short term, L - Long term, Dly - Delay (ms),
P - Percentage below threshold, Jit - Jitter (ms),
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
Prefix State Time Curr BR CurrI/F Protocol
PasSDly PasLDly PasSUn PasLUn PasSLos PasLLos
ActSDly ActLDly ActSUn ActLUn EBw IBw
ActSJit ActPMOS ActSLos ActLLos
--------------------------------------------------------------------------------
10.1.1.0/24 INPOLICY 0 10.3.3.3 Et4/3 BGP
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 master
Router(config-pfr-mc)# api provider 1 priority 3000
Router(config-pfr-mc-api-provider)# host-address 10.1.2.2 key-chain PFR_HOST
Router(config-pfr-mc-api-provider)# exit
Router(config-pfr-mc)# api provider 2 priority 4000
Router(config-pfr-mc-api-provider)# host-address 10.2.2.2 key-chain PFR_HOST
priority 3000
Router(config-pfr-mc-api-provider)# host-address 10.2.2.3 key-chain PFR_HOST
priority 4000
Router(config-pfr-mc-api-provider)# end
Router# show pfr api provider detail
Router# show pfr master policy dynamic
Router# show pfr master prefix 10.1.1.0/24 report
Additional References
Related Documents
Technical Assistance
Description
|
Link
|
The Cisco Support website provides extensive online resources, including documentation and tools for troubleshooting and resolving technical issues with Cisco products and technologies.
To receive security and technical information about your products, you can subscribe to various services, such as the Product Alert Tool (accessed from Field Notices), the Cisco Technical Services Newsletter, and Really Simple Syndication (RSS) Feeds.
Access to most tools on the Cisco Support website requires a Cisco.com user ID and password.
|
http://www.cisco.com/cisco/web/support/index.html
|
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.
Table 3 Feature Information for Performance Routing Application Interface
Feature Name
|
Releases
|
Feature Information
|
Performance Routing - Application Interface
|
12.4(15)T
|
The Performance Routing - Application Interface feature introduces 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.
The following commands were introduced or modified by this feature: api provider (PfR), debug pfr api, host-address (PfR), show pfr api provider, show pfr master policy, and show pfr master prefix.
|
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.