Configuring Performance Routing Cost Policies

Configuring Performance Routing Cost Policies

Last Updated: November 11, 2011

This module describes how to configure and apply Cisco IOS Performance Routing (PfR) cost policies. A PfR policy can be configured to optimize traffic based on the monetary cost of the exit links. The PfR Cost Based Optimization feature provides financial benefits by directing traffic to lower cost links, while at the same time honoring other configured policies such as delay, loss, and utilization. Cost Based Optimization can be applied to links that are billed using a fixed or tiered billing method. Load balancing based on cost can also be achieved.

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.

Prerequisites for Performance Routing Cost Policies

Before implementing PfR cost policies, you need to understand an overview of how PfR works and how to set up PfR network components. See the "Understanding Performance Routing," "Configuring Basic Performance Routing," and "Configuring Advanced Performance Routing," modules for more details.

Information About Performance Routing Cost Policies

To configure and apply PfR policies, you should understand the following concepts:

Overview of PfR Link Policies

PfR link policies are a set of rules that are applied against PfR-managed external links (an external link is an interface on a border router on the network edge). Link policies define the desired performance characteristics of the links. Instead of defining the performance of an individual traffic class entry that uses the link (as in traffic class performance policies), link policies are concerned with the performance of the link as a whole. Link policies are applied both to exit (egress) links and entrance (ingress) links. The following link policy types describe the different performance characteristics that can be managed using link policies:

Traffic Load (Utilization) Policy

A traffic load (also referred to as utilization) policy consists of an upper threshold on the amount of traffic that a specific link can carry. Cisco IOS PfR supports per traffic class load distribution. Every 20 seconds, by default, the border router reports the link utilization to the master controller, after an external interface is configured for a border router. Both exit link traffic and entrance link traffic load thresholds can be configured as a PfR policy. If the exit or entrance link utilization is above the configured threshold, or the default threshold of 75-percent, the exit or entrance link is in an out-of-policy (OOP) state and PfR starts the monitoring process to find an alternative link for the traffic class. The link utilization threshold can be manually configured either as an absolute value in kilobytes per second (kbps) or as a percentage. A load utilization policy for an individual interface is configured on the master controller under the border router configuration.


Tip


When configuring load distribution, we recommend that you set the interface load calculation on external interfaces to 30-second intervals with the load-interval interface configuration command. The default calculation interval is 300 seconds. The load calculation is configured under interface configuration mode on the border router. This configuration is not required, but it is recommended to allow Cisco IOS PfR to respond as quickly as possible to load distribution issues.


A traffic load policy describes an upper limit for the traffic to be carried on a single link. For more details about configuring a traffic load policy, see the Configuring an Exit Link Load Balancing PfR Policy: Example configuration example in the "Configuring Advanced Performance Routing" module.

Range Policy

A range policy is defined to maintain all links within a certain utilization range, relative to each other in order to ensure that the traffic load is distributed. For example, if a network has multiple exit links, and there is no financial reason to choose one link over another, the optimal choice is to provide an even load distribution across all links. The load-sharing provided by traditional routing protocols is not always evenly distributed, because the load-sharing is flow-based rather than performance- or policy-based. Cisco PfR range functionality allows you to configure PfR to maintain the traffic utilization on a set of links within a certain percentage range of each other. If the difference between the links becomes too great, PfR will attempt to bring the link back to an in-policy state by distributing traffic classes among the available links. The master controller sets the maximum range utilization to 20 percent for all PfR-managed links by default, but the utilization range can be configured using a maximum percentage value.

Both exit link and entrance link utilization ranges can be configured as a PfR policy.


Note


When configuring a range policy remember that 80 percent utilization of a serial link is very different from 80 percent utilization of a GigabitEthernet link.

A range policy describes a method of load-balancing the traffic over multiple links. For more details about configuring a range policy, see the Configuring an Exit Link Load Balancing PfR Policy: Example configuration example in the Configuring Advanced Performance Routing module.

Cost Policy

PfR support for cost-based optimization was introduced in Cisco IOS Release 12.3(14)T, 12.2(33)SRB, and later releases. Cost-based optimization allows you to configure policies based on the monetary cost (ISP service level agreements [SLAs]) of each exit link in your network. To implement PfR cost-based optimization the PfR master controller is configured to send traffic over exit links that provide the most cost-effective bandwidth utilization, while still maintaining the desired performance characteristics. A cost policy describes a method of load-balancing the traffic over multiple links.

In response to changing business practices, in Cisco IOS Release 12.4(15)T9 and later releases, the calculation of the Momentary Target Link Utilization (MTLU) algorithm is modified to allow for more efficient bandwidth utilization while minimizing the link cost.

To understand how cost-based optimization works, review the following sections:

Cost Policy Billing Models

PfR cost-based optimization supports two methods of billing: fixed-rate billing or tier-based billing.

Fixed-rate billing is used when the ISP bills one flat rate for a link regardless of bandwidth usage. If fixed-rate billing only is configured on the exit links, all exits are considered equal with regard to cost-optimization and other policy parameters (such as delay, loss, and utilization) are used to determine if the prefix or exit link is in-policy.

Tier-based billing is used when the ISP bills at a tiered rate based on the percentage of exit link utilization. Each cost tier is configured separately with an associated monetary cost and a percentage of bandwidth utilization that activates the tier is defined. The lowest cost tier for an exit using tier-based billing is charged each month regardless of the bandwidth actually utilized. An allowance is made for bursting in the algorithm used to determine the tier-based billing. In this situation, bursting is defined as short periods of high bandwidth usage that would be expensive under fixed-rate billing.

A fixed-rate billing is a set monthly fee regardless of utilization. Tier-based billing also incurs at least the lowest-tier cost per month, but the final monthly tier-based billing charge is determined by the cost assigned to the tier that matches the sustained monthly utilization.

Link Utilization Rollup Calculations

The first step in determining the billing fee for each exit link per month is to calculate the link utilization rollup values. Link utilization rollup values are the averages of the link utilization readings taken at regular intervals (sampling period) from the ingress and egress interfaces at the border routers for a given rollup period. For example, if a sampling period was set to 60 minutes, and the rollup was set at 1440 minutes (24 hours), we would have 24 ingress and 24 egress link utilization samples used for calculating the link utilization rollup. An average is taken for each set of ingress and egress samples from that rollup period to get a link utilization rollup value for the ingress and egress links.

Monthly Sustained Utilization Calculation

After the link utilization rollup calculation is performed, the monthly sustained utilization is calculated, The specific details of tier-based billing models vary by ISP. However, most ISPs use some variation of the following algorithm to calculate what an enterprise should pay in a tiered billing plan:

  • Gather periodic measurements of egress and ingress traffic carried on the enterprise connection to the ISP network and aggregate the measurements to generate a rollup value for a rollup period.
  • Calculate one or more rollup values per billing period.
  • Rank the rollup values for the billing period into a stack from the largest value to the smallest.
  • Discard the top default 5 percent (an absolute or percentage value can be configured, but 5 percent is the default) of the rollup values from the stack to accommodate bursting. In this situation, bursting is defined as any bandwidth above the sustained monthly utilization. The remaining rollup values are known as the 95th percentile high if the default 5% is discarded.
  • After the rollups with the highest utilization values (the top 5 percent in this case) are removed, apply the highest remaining rollup value in the stack, referred to as the sustained Monthly Target Link Utilization (MTLU), to a tiered structure to determine a tier associated with the rollup value.
  • Charge the customer based on a set cost associated with the identified tier.

Note


A billing policy must be configured and applied to links in order for the master controller to perform cost-based optimization.

The monthly sustained utilization rollup calculations can be configured to use one of the following three techniques:

  • Combined
  • Separate
  • Summed

In the following explanations of the sustained utilization calculation techniques, the discard value is configured as an absolute value of 10. The default discard value is 5 percent.

Using the combined technique, the monthly sustained utilization calculation is based on a combination of the egress and ingress rollup samples on a single sorted stack, the highest 10 rollup values are discarded, and the next highest rollup value is the MTLU.

Using the separate technique, the egress and ingress rollup samples for a link are sorted into separate stacks and the highest 10 rollup values for each stack are discarded. The highest remaining rollup value of the two stacks is selected as the MTLU.

Using the summed technique the egress and ingress rollup samples are added together. The summed values of each rollup sample are placed into one stack, the top 10 rollup values are discarded, leaving the next highest rollup value as the MTLU.

The following table displays an example of how the sustained monthly utilization is calculated using the separate technique. In the table below the rollup values for a 30-day period are displayed in order from the highest bandwidth to the lowest bandwidth for both the egress and ingress rollup values. The top 10 values (shown in italic) are discarded because the master controller has been configured to discard this absolute number of rollups. The next highest rollup value remaining in the two stacks, 62 (shown in bold), is the sustained monthly utilization. The sustained monthly utilization is used to determine the tier at which the customer is billed for bandwidth usage on that link for that billing period.

Table 1Sustained Monthly Utilization Example Calculation

Egress Rollups

Ingress Rollups

Rollups are Sorted from Highest Bandwidth to Lowest Bandwidth in Billing Period

89

92

Discard the top 10 egress and ingress as configured as an absolute value (see numbers in italics).

80

84

71

82

70

80

65

78

65

75

51

73

50

84

49

82

49

80

45

62

After the discarded values. the next highest value is 62 and this becomes the Sustained Monthly Utilization

42

60

39

55

35

53

34

52

30

45

30

43

30

35

29

33

25

31

20

25

19

23

12

21

10

15

10

11

9

10

8

10

4

5

1

1

0

0

How to Configure Performance Routing Cost Policies

Configuring a Basic PfR Cost-Based Policy

Perform this task to configure basic PfR cost-based optimization. Cost-based optimization is configured on a master controller using the cost-minimization command in PfR border exit interface configuration mode (under the external interface configuration). Cost-based optimization supports tiered and fixed billing methods.

In this task, the configuration is performed on the master controller router and it assumes that the border routers are configured. Tier-based billing is configured with three cost tiers and a nickname for the service provider is set to ISP1. The monthly sustained utilization calculation technique is configured to use the sum technique and the last day of the billing cycle is on the 30th day of the month with an offset of 3 hours to allow for a difference in time zones.

The cost-minimization command contains many variations of keywords and arguments. Only one of the required keywords and its associated syntax can be configured on one CLI line, but multiple instances of this command can be entered. Only the fixed and tier keywords are mutually exclusive within the configuration for each border router link. For details about the full syntax, see the Cisco IOS Performance Routing Command Reference.

SUMMARY STEPS

1.    enable

2.    configure terminal

3.    pfr master

4.    border ip-address [key-chain key-chain-name]

5.    interface type number external

6.    cost-minimization nickname name

7.    cost-minimization calc {combined | separate | sum}

8.    cost-minimization sampling period minutes [rollup minutes]

9.    cost-minimization end day-of-month day [offset [-] hh:mm]

10.    cost-minimization {fixed fee cost| tier percentage fee fee}

11.    Repeat Step 9 to configure additional tiers for a tier-based billing cycle.

12.    exit

13.    interface type number internal

14.    exit

15.    Repeat Step 14 to return to PfR master controller configuration mode.

16.    Repeat from Step 4 to Step 15 to configure additional cost-based optimization policies for other links, if required.

17.    mode route control

18.    resolve cost priority value

19.    end


DETAILED STEPS
 Command or ActionPurpose
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 global prefix and exit link policies.

 
Step 4
border ip-address [key-chain key-chain-name]


Example:

Router(config-pfr-mc)# border 10.100.1.1 key-chain PFR_cost

 

Enters PfR-managed border router configuration mode to establish communication with a border router.

  • An IP address is configured to identify the border router.
  • The value for the key-chain-name argument must match the key-chain name configured at the border router identified by the ip-address argument.
Note    The key-chain keyword and key-chain-name argument must be entered when a border router is initially configured. However, this keyword is optional when reconfiguring or adding configuration for this border router.
 
Step 5
interface type number external


Example:

Router(config-pfr-mc-br)# interface ethernet 0/0 external

 

Enters PfR border exit interface configuration mode to configure a border router interface as an external interface.

  • At least one external interface must be configured on each border router.
 
Step 6
cost-minimization nickname name


Example:

Router(config-pfr-mc-br-if)# cost-minimization nickname ISP1

 

Configures a nickname for a border router interface within a cost-based optimization policy on a master controller.

  • Use the nickname keyword to apply a label that identifies the service provider.
  • In this example, the label of ISP1 is configured for the service provider.
 
Step 7
cost-minimization calc {combined | separate | sum}


Example:

Router(config-pfr-mc-br-if)# cost-minimization calc sum

 

Configures how the cost-minimization fee is calculated.

  • Use the combined keyword to configure the master controller to combine ingress and egress samples.
  • Use the separate keyword to configure the master controller to analyze ingress and egress samples separately.
  • Use the sum keyword to configure the master controller to first add ingress and egress samples and then combine the samples.
  • In this example, cost-minimization fee is calculated using the sum technique.
 
Step 8
cost-minimization sampling period minutes [rollup minutes]


Example:

Router(config-pfr-mc-br-if)# cost-minimization sampling period 10 rollup 60

 

Specifies the sampling period in minutes.

  • The value that can be entered for the sampling period minutes argument is a number from 1 to 1440.
  • Use the optional rollupkeyword to specify that samples are rolled up at the interval specified for the minutes argument. The value that can be entered for the rollup minutes argument is a number from 1 to 1440. The minimum number that can be entered must be equal to or greater than the number that is entered for the sampling period.
  • In this example, the time interval between sampling is set to 10 minutes. These samples are configured to be rolled up every 60 minutes.
 
Step 9
cost-minimization end day-of-month day [offset [-] hh:mm]


Example:

Router(config-pfr-mc-br-if)# cost-minimization end day-of-month 30 offset 5:00

 

Configures the parameters used to configure the last day of the billing cycle.

  • Use the optional offsetkeyword to adjust the end of the cycle to compensate for a service provider in a different zone from UTC. The optional "-" keyword is used to allow for negative hours and minutes to be specified when the time zone is ahead of UTC.
  • In this example, the last day of the billing cycle is on the 30th day of the month with an offset of 5 hours added to UTC.
 
Step 10
cost-minimization {fixed fee cost| tier percentage fee fee}


Example:

Router(config-pfr-mc-br-if)# cost-minimization tier 100 fee 1000

 

Configures a nonusage-based fixed cost billing cycle or a tier of a tier-based billing cycle.

  • The fixed fee keywords and cost argument are used to specify a fixed (nonusage-based) cost associated with an exit link.
  • The percentage argument is used to specify the percentage of capacity utilization for a cost tier.
  • The tier fee keywords and fee argument are used to specify the fee associated with this tier.
  • In this example, the tier-based fee for 100 percent utilization is set to 1000.
Note    The first tier specified must be the 100 percent capacity utilization. Any following tier configurations must be for lesser percentages and lower fees.
 
Step 11
Repeat Step 9 to configure additional tiers for a tier-based billing cycle.  

--

 
Step 12
exit


Example:

Router(config-pfr-mc-br-if)# exit

 

Exits PfR border exit interface configuration mode and returns to PfR-managed border router configuration mode.

 
Step 13
interface type number internal


Example:

Router(config-pfr-mc-br)# interface Ethernet 1/0 internal

 

Configures a border router interface as a PfR controlled internal interface.

  • Internal interfaces are used for passive monitoring only. Internal interfaces do not forward traffic.
  • At least one internal interface must be configured on each border router.
Note    Support to configure a VLAN interface as an internal interface was introduced in Cisco IOS Release 12.3(14)T, and 12.2(33)SRB.
 
Step 14
exit


Example:

Router(config-pfr-mc-br-if)# exit

 

Exits PfR border exit interface configuration mode and returns to PfR-managed border router configuration mode.

 
Step 15
Repeat Step 14 to return to PfR master controller configuration mode.  

--

 
Step 16
Repeat from Step 4 to Step 15 to configure additional cost-based optimization policies for other links, if required.  

--

 
Step 17
mode route control


Example:

Router(config-pfr-mc)# mode route control

 

Configures route control for matched traffic.

  • In control mode, the master controller analyzes monitored prefixes and implements changes based on policy parameters.
 
Step 18
resolve cost priority value


Example:

Router(config-pfr-mc)# resolve cost priority 1

 

Sets policy priority for cost policies.

  • The resolve policy configures cost policies to have the highest priority.
  • In this task, only one type of PfR policy is given priority. Be aware that other PfR policies are usually configured and priorities must be carefully reviewed.
 
Step 19
end


Example:

Router(config-pfr-mc)# end

 

Exits PfR master controller configuration mode and returns to privileged EXEC mode.

 

Example:

The following example is just a sample configuration as shown in the task but with the added tiers to complete the tier-based fee configuration. For a more complete example configuration of a basic PfR cost policy that includes both fixed-rate and tier-based billing, see the "Example: Configuring a Basic PfR Cost-Based Policy" section.

pfr master
 border 10.100.1.1 key-chain PFR_cost
  interface Ethernet 0/0 external 
   cost-minimization nickname ISP1 
   cost-minimization calc sum
   cost-minimization sampling period 10 rollup 60 
   cost-minimization end day-of-month 30 offset 5:00 
   cost-minimization tier 100 fee 1000 
   cost-minimization tier 70 fee 700 
   cost-minimization tier 50 fee 500 
   exit 
  interface Ethernet 1/0 internal 
  exit
 mode route control
 resolve cost priority 1
 end

Using a PfR Cost Policy to Minimize Billing and Load Balance Traffic

While basic PfR cost-based optimization can be useful, many organizations have multiple border router exit links and possibly several different service providers charging different billing rates that increase according to the bandwidth utilized. In this situation, some form of traffic load balancing across the links may be required in addition to the cost minimization policy.

Perform this task on the master controller to configure a Performance Routing cost policy to minimize the monthly billing charge for multiple border router exit links while load balancing traffic across the links. In this scenario, the network has both fixed-rate and tier-based billing, and assuming that the customer is paying a monthly fee for the fixed-rate billing and the pre-paid (lowest cost) tier of tier-based billing, PfR can perform traffic load balancing while optimizing for cost.

The figure below shows an example of how different billing rates can be defined for each link using bandwidth and cost parameters that are defined through service level agreements (SLAs) that are identified as rules in the diagram. The main goal of this task is to minimize the billing charge per exit link and to load balance traffic across the exit links. Although Link 1 may be billed at a fixed-rate and Links 2 through 4 are subject to tier-based billing, all the links are set up as PfR tiers. To accomplish the cost minimization the first rule is to utilize 80 percent of Link 1 and 30 percent of Links 2, 3 and 4, as shown in the figure below. The second rule is to distribute additional traffic across Links 2, 3 and 4 to balance the traffic load. To achieve the traffic load balancing while minimizing cost, the solution is to configure a PfR cost policy using multiple tiers representing bandwidth percentages that are assigned artificial costs to ensure that the PfR traffic is optimized for cost and load balanced across all the exits. To illustrate the configured tiers, see the figure below.

The steps in this task create a cost policy in which PfR is configured to direct traffic through any of the lowest cost exits first; Link 1 at 10.1.1.1 and the pre-paid tier of the other three exits. When the pre-paid tier bandwidth at each link is fully utilized, the software determines the next lowest incremental cost between the tiers at all the links. The incremental cost of utilizing the next tier at Link 1 is $990. The incremental cost of utilizing the next tier at Link 2 is only $10. PfR forwards traffic to the next lowest cost tier which is the blue bar representing 40 percent of the bandwidth at Link 2, as shown in the figure below. The process continues to use cost to balance the load across Links 2, 3, and 4. This task illustrates how the monthly billing rate per exit link is minimized by utilizing the pre-paid bandwidth at Links 1 though 4 first, and then the traffic is effectively load balanced across Links 2, 3 and 4 by determining the lowest incremental cost between tiers.

Figure 1Diagram Showing PfR Cost-Minimization Solution to Minimize Billing and Load Balance Traffic


In the following task steps, the exit link 10.1.1.1 is configured as a tier-based link although it is actually charged at a fixed rate. If a fixed rate link is configured as a tier for load balancing, the monthly cost calculation will not reflect the true cost for that link. Using this solution, the artificial costs assigned to the multiple tiers may affect the accuracy of all the monthly cost calculations.

Only some of the configuration steps for this task scenario are shown in the summary and detailed steps, the full configuration for the master controller is displayed in the Examples section shown after the detailed steps table.


Note


Disable the range and utilization policy priorities because they may conflict with this application of the cost-minimization feature.

Note


Do not configure the periodic(PfR) or the set periodic(PfR) command with a time interval to avoid system churn as the system tries to select the best exit link at specified intervals. This command is disabled by default.

The cost-minimization (PfR) command contains many variations of keywords and arguments. Only one of the required keywords and its associated syntax can be configured on one CLI line, but multiple instances of this command can be entered. Only the fixed and tier keywords are mutually exclusive within the configuration for each border router link. For details about the full syntax, see the Cisco IOS Performance Routing Command Reference.

SUMMARY STEPS

1.    enable

2.    configure terminal

3.    pfr master

4.    border ip-address [key-chain key-chain-name]

5.    interface type number external

6.    cost-minimization nickname name

7.    cost-minimization summer-time start end [offset]

8.    cost-minimization {fixed fee cost| tier percentage fee fee}

9.    Repeat Step 8 to configure additional tiers for a tier-based billing cycle.

10.    cost-minimization discard [daily] {absolute number| percent percentage}

11.    exit

12.    interface type number internal

13.    exit

14.    Repeat Step 13 to return to PfR master controller configuration mode.

15.    Repeat from Step 4 to Step 14 to configure additional cost-based optimization policies for other links, if required.

16.    mode route control

17.    policy-rules map-name

18.    exit

19.    pfr-map map-name sequence-number

20.    match pfr learn {delay| inside| throughput}

21.    set resolve cost priority value

22.    end


DETAILED STEPS
 Command or ActionPurpose
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 global prefix and exit link policies.

 
Step 4
border ip-address [key-chain key-chain-name]


Example:

Router(config-pfr-mc)# border 10.1.1.1 key-chain pfr

 

Enters PfR-managed border router configuration mode to establish communication with a border router.

  • An IP address is configured to identify the border router.
  • The value for the key-chain-name argument must match the key-chain name configured at the border router identified by the ip-address argument.
Note    The key-chain keyword and key-chain-name argument must be entered when a border router is initially configured. However, this keyword is optional when reconfiguring or adding configuration for this border router.
 
Step 5
interface type number external


Example:

Router(config-pfr-mc-br)# interface ethernet 0/0 external

 

Enters PfR border exit interface configuration mode to configure a border router interface as a PfR-managed external interface.

  • At least one external interface must be configured on each border router.
  • Configuring an interface as a PfR-managed external interface on a router enters PfR border exit interface configuration mode. In this mode, you can configure maximum link utilization or cost-based optimization for the interface.
 
Step 6
cost-minimization nickname name


Example:

Router(config-pfr-mc-br-if)# cost-minimization nickname 80-percent

 

Configures a nickname for a border router interface within a cost-based optimization policy on a master controller.

  • In this example, the nickname label for the 10.1.1.1 border router link is 80-percent.
 
Step 7
cost-minimization summer-time start end [offset]


Example:

Router(config-pfr-mc-br-if)# cost-minimization summer-time 2 Sunday March 02:00 1 Sunday November 02:00 60

 

Specifies the start and end dates and times for summer time (daylight savings).

  • The start and end arguments are used to specify the week number, day, month and time in hours and minutes (24 hour clock) that summertime starts and ends.
  • The offset argument allows for an offset in minutes from 1 to 120 to allow for up to two additional hours to be added in the spring and subtracted in the fall.
  • In this example, summer time is configured to start the second week in March on a Sunday at 2 in the morning plus one hour, and end on Sunday in the first week in November at 2 in the morning minus one hour.
Note    The summer-time keyword configuration is only required once for each master controller.
 
Step 8
cost-minimization {fixed fee cost| tier percentage fee fee}


Example:

Router(config-pfr-mc-br-if)# cost-minimization tier 100 fee 1000

 

Configures a nonusage-based fixed cost billing cycle or a tier of a tier-based billing cycle.

  • The fixed fee keywords and cost argument are used to specify a fixed (nonusage-based) cost associated with an exit link.
  • The percentage argument is used to specify the percentage of capacity utilization for a cost tier.
  • The tier fee keywords and fee argument are used to specify the fee associated with this tier.
  • In this example, the tier-based fee for 100 percent utilization is set to 1000.
Note    The first tier specified must be the 100 percent capacity utilization. Any following tier configurations must be for lesser percentages and lower fees. When setting up tiers for load balancing, the tiers must be incrementally larger from one tier to the next tier on the same link in order for load balancing to work.
 
Step 9
Repeat Step 8 to configure additional tiers for a tier-based billing cycle.  

--

 
Step 10
cost-minimization discard [daily] {absolute number| percent percentage}


Example:

Router(config-pfr-mc-br-if)# cost-minimization discard percent 5

 

Configures the number of samples that are removed for bursty link utilization when calculating the sustained monthly utilization value.

  • The utilization samples are ordered from the highest to the lowest and the number or percentage configured using this command removes the highest number or percentage from the list.
  • If the optional daily keyword is entered, samples are analyzed and discarded on a daily basis. If the daily keyword is not entered, by default the samples are analyzed and discarded on a monthly basis. At the end of the billing cycle, monthly sustained usage is calculated by averaging daily sustained utilization.
  • Use the absolute keyword to configure a set number of samples to be removed.
  • Use the percentage keyword to configure a percentage number of samples to be removed.
  • If a sampling rollup is configured, the discard values also applies to the rollup.
  • In this example, the highest 5 percent of samples are removed when calculating the sustained monthly utilization value.
 
Step 11
exit


Example:

Router(config-pfr-mc-br-if)# exit

 

Exits PfR border exit interface configuration mode and returns to PfR-managed border router configuration mode.

 
Step 12
interface type number internal


Example:

Router(config-pfr-mc-br)# interface Ethernet 1/0 internal

 

Configures a border router interface as a PfR controlled internal interface.

  • Internal interfaces are used for passive monitoring only. Internal interfaces do not forward traffic.
  • At least one internal interface must be configured on each border router.
 
Step 13
exit


Example:

Router(config-pfr-mc-br-if)# exit

 

Exits PfR border exit interface configuration mode and returns to PfR-managed border router configuration mode.

 
Step 14
Repeat Step 13 to return to PfR master controller configuration mode.  

--

 
Step 15
Repeat from Step 4 to Step 14 to configure additional cost-based optimization policies for other links, if required.  

--

 
Step 16
mode route control


Example:

Router(config-pfr-mc)# mode route control

 

Configures route control for matched traffic.

  • In control mode, the master controller analyzes monitored prefixes and implements changes based on policy parameters.
 
Step 17
policy-rules map-name


Example:

Router(config-pfr-mc)# policy-rules cost_balance

 

Applies a configuration from a PfR map to a master controller configuration.

  • In this example, configuration from a PfR map named cost_balance is applied.
 
Step 18
exit


Example:

Router(config-pfr-mc)# exit

 

Exits PfR master controller configuration mode and returns to global configuration mode.

 
Step 19
pfr-map map-name sequence-number


Example:

Router(config)# pfr-map cost_balance 10

 

Enters PfR map configuration mode to configure a PfR map.

 
Step 20
match pfr learn {delay| inside| throughput}


Example:

Router(config-pfr-map)# match pfr learn throughput

 

Creates a match clause entry in a PfR map to match PfR learned prefixes.

  • Only a single match clause can be configured for each PfR map sequence.
  • In this example, a match clause entry is created to match traffic classes learned using the highest outbound throughput.
 
Step 21
set resolve cost priority value


Example:

Router(config-pfr-map)# set resolve cost priority 1

 

Creates a set clause entry in an PfR map to set policy priority for overlapping policies.

  • In this example, the resolve policy configures cost policies to have the highest priority.
  • In this task, only one type of PfR policy is given priority. Be aware that other PfR policies are usually configured and priorities must be carefully reviewed.
 
Step 22
end


Example:

Router(config-pfr-mc)# end

 

Exits PfR master controller configuration mode and returns to privileged EXEC mode.

 

Example:

The following configuration example is a complete configuration for all the links controlled by the master controller in the figure above the task steps. Note the set resolve cost priority 1 command in the PfR map titled cost_balance that is used to ensure that cost is the first priority for this task. In contrast, the resolve range and resolve utilization commands are disabled to avoid optimization conflicts. For output from associated show commands see the "Verifying and Debugging PfR Cost-Minimization Policies" section.

pfr master
 logging
 border 10.1.1.1 key-chain pfr
  interface Ethernet1/0 internal
  interface Ethernet0/0 external
   cost-minimization nickname 80-percent
   cost-minimization summer-time 2 Sunday March 02:00 1 Sunday November 02:00 60
   cost-minimization tier 100 fee 1000
   cost-minimization tier 80 fee 10
   cost-minimization discard percent 5
   exit
  exit
 border 10.2.1.2 key-chain pfr
  interface Ethernet1/0 internal
  interface Ethernet0/0 external
   cost-minimization nickname 30-meg
   cost-minimization tier 100 fee 290
   cost-minimization tier 90 fee 220
   cost-minimization tier 80 fee 160
   cost-minimization tier 70 fee 110
   cost-minimization tier 60 fee 70
   cost-minimization tier 50 fee 40
   cost-minimization tier 40 fee 20
   cost-minimization tier 30 fee 10
   cost-minimization discard percent 5
   exit
  exit
 border 10.3.1.3 key-chain pfr
  interface Ethernet1/0 internal
  interface Ethernet0/0 external
   cost-minimization nickname 30-meg-2
   cost-minimization tier 100 fee 290
   cost-minimization tier 90 fee 220
   cost-minimization tier 80 fee 160
   cost-minimization tier 70 fee 110
   cost-minimization tier 60 fee 70
   cost-minimization tier 50 fee 40
   cost-minimization tier 40 fee 20
   cost-minimization tier 30 fee 10
   cost-minimization discard percent 5
   exit
  exit
 border 10.4.1.4 key-chain pfr
  interface Ethernet1/0 internal
  interface Ethernet0/0 external
   cost-minimization nickname 30-meg-3
   cost-minimization tier 100 fee 290
   cost-minimization tier 90 fee 220
   cost-minimization tier 80 fee 160
   cost-minimization tier 70 fee 110
   cost-minimization tier 60 fee 70
   cost-minimization tier 50 fee 40
   cost-minimization tier 40 fee 20
   cost-minimization tier 30 fee 10
   cost-minimization discard percent 5
   exit
  exit
  learn
   throughput
   periodic-interval 0
   monitor-period 1
   prefixes 2500
   aggregation-type prefix-length 32
   exit
  mode route control
  policy-rules cost_balance
  max-range-utilization percent 100
  exit
 pfr-map cost_balance 10
  match pfr learn throughput
  set resolve cost priority 1
  no set resolve range
  no set resolve utilization 
  set probe frequency 10
  end

Verifying and Debugging PfR Cost-Minimization Policies

Perform this task on a master controller to display information to verify any cost-minimization policies and to help debug any issues. After cost-minimization policies are configured and applied to traffic the show command steps allow you to verify that the policy configuration is working as expected. If not, the debug command steps can help troubleshoot any issues. The show and debug commands are all optional and can be entered in any order.

Before You Begin

A cost policy must be configured and applied to PfR traffic before performing any of these steps.


SUMMARY STEPS

1.    enable

2.    show pfr master cost-minimization {border ip-address [interface] | nickname name}

3.    show pfr master cost-minimization billing-history

4.    debug pfr master cost-minimization [detail]


DETAILED STEPS
Step 1   enable

Enables privileged EXEC mode. Enter your password if prompted.



Example:
Router> enable
Step 2   show pfr master cost-minimization {border ip-address [interface] | nickname name}

Both the border and the nickname keywords of the show pfr master cost-minimization command display the same cost-minimization information. The keywords and arguments can be used to identify a specified border router by its nickname or by an IP address and, optionally, for a specific interface on the router. Only the syntax applicable to this step is shown. For the full syntax, see the Cisco IOS Performance Routing Command Reference.

In this example, the information is displayed about the 10.2.1.2 link from the figure above. Note the number of cost tiers configured for this link. The links at 10.3.1.3 and 10.4.1.4 have the same set of cost tiers to allow more precise load balancing. There is information about the rollup values and parameters set for the discard values shown as an absolute value of 5. For more details about the fields shown in this output, refer to the Cisco IOS Performance Routing Command Reference.



Example:
Router# show pfr master cost-minimization border 10.2.1.2 GigabitEthernet 3/2/0
pM - per Month, pD - per Day
 --------------------------------------------------------------------------------
  Nickname  : 30-meg           Border: 10.2.1.2         Interface: Gi3/2/0           
  Calc type : Separate
  End Date  : 1 
  Summer time: Enabled,  2 Sun Mar 02:00 1 Sun Nov 02:00 60
  Fee       : Tier Based
              Tier 1: 100, fee:   290
              Tier 2:  90, fee:   220
              Tier 3:  80, fee:   160
              Tier 4:  70, fee:   110
              Tier 5:  60, fee:    70
              Tier 6:  50, fee:    40
              Tier 7:  40, fee:    20
              Tier 8:  30, fee:    10
  Period    : Sampling 5, Rollup 5
  Discard   : Type Absolute, Value 5
 
  Rollup Information:
  Total(pM)       Discard(pM)     Remaining(pM)   Collected(pM)   
  8928            5               1460            264             
 
  Current Rollup Information:
    MomentaryTgtUtil:          382 Kbps    CumRxBytes:           747167
   StartingRollupTgt:          400 Kbps    CumTxBytes:          4808628
    CurrentRollupTgt:          400 Kbps    TimeRemain:         00:03:23
 
  Rollup Utilization (Kbps):
  Egress Utilization Rollups (Descending order)
 
  1   : 0            2   : 440          3   : 439          4   : 398         
  5   : 383          6   : 378          7   : 375          8   : 372         
  9   : 371          10  : 371          11  : 370          12  : 370         
  13  : 368          14  : 365          15  : 255          16  : 231         
  17  : 216          18  : 197          19  : 196          20  : 196         
  21  : 195          22  : 194          23  : 191          24  : 190         
  25  : 190          26  : 184          27  : 183          28  : 182         
  29  : 178          30  : 177          31  : 176          32  : 175
Step 3   show pfr master cost-minimization billing-history

This command is used to display the billing information for the previous billing period. In this example, the monthly sustained utilization is 62 and the cost is $10,000 for the GigabitEthernet interface 3/0/0 link on border router 10.1.1.1.



Example:
Router# show pfr master cost-minimization billing-history

Billing History for the past three months
 
         ISP2 on 10.4.1.4          Gi4/0/0           
  No cost min on 10.2.1.2          Gi3/2/0           
         ISP1 on 10.1.1.1          Gi3/0/0           
                  Mon1                  Mon2                  Mon3
 Nickname     SustUtil       Cost   SustUtil       Cost   SustUtil       Cost
 ----------    ------------------    ------------------   ------------------
    ISP2             0       3000        ---NA---             ---NA---     
    ISP1            62      10000        ---NA---             ---NA---     
 
 ----------    ------------------    ------------------   ------------------
 Total Cost                 13000                     0                     0
Step 4   debug pfr master cost-minimization [detail]

This command is used to display debugging information for cost-minimization policies. The following example displays detailed cost-minimization policy debug information.



Example:
Router# debug pfr master cost-minimization detail

OER Master cost-minimization Detail debugging is on
*May 14 00:38:48.839: OER MC COST: Momentary target utilization for exit 10.2.1.2 i/f
GigabitEthernet3/2/0 nickname ISP1 is 7500 kbps, time_left 52889 secs, cumulative 16 kb,
rollup period 84000 secs, rollup target 6000 kbps, bw_capacity 10000 kbps
*May 14 00:38:48.839: OER MC COST: Cost OOP check for border 10.2.1.2, current util: 0
target util: 7500 kbps
*May 14 00:39:00.199: OER MC COST: ISP1 calc separate rollup ended at 55 ingress Kbps
*May 14 00:39:00.199: OER MC COST: ISP1 calc separate rollup ended at 55 egress bytes
*May 14 00:39:00.199: OER MC COST: Target utilization for nickname ISP1 set to 6000,
rollups elapsed 4, rollups left 24
*May 14 00:39:00.271: OER MC COST: Momentary target utilization for exit 10.2.1.2 i/f
GigabitEthernet3/2/0 nickname ISP1 is 7500 kbps, time_left 52878 secs, cumulative 0 kb,
rollup period 84000 secs, rollup target 6000 kbps, bw_capacity 10000 kbps
*May 14 00:39:00.271: OER MC COST: Cost OOP check for border 10.2.1.2, current util: 0
target util: 7500 kbps

Configuration Examples for Performance Routing Cost Policies

Example Configuring a Basic PfR Cost-Based Policy

The following example shows how to configure cost-based optimization on a master controller. Cost optimization configuration is applied under the external interface configuration. In this example, a policy is configured for multiple exits with a tiered billing cycle for one exit interface on border router 10.2.1.2 and a fixed fee billing cycle for the other exit interface on border router 10.2.1.2 and both exit interfaces on border router 10.3.1.3.

In this scenario, PfR sends traffic first through the fixed-rate exits, serial interface 3/0 at border router 10.2.1.2 and serial interfaces 2/0 and 3/0 at border router 10.3.1.3, because the bandwidth cost is lower for these fixed fee exits than the tier-based exit. When the fixed-rate exits are all fully utilized, the traffic is sent through serial interface 2/0 on border router 10.2.1.2. If the monthly sustained utilization is 40 percent or lower, the billing fee for the month will be $4000. If the monthly sustained utilization is higher then the tier that matches the monthly sustained utilization is charged. In this example, no calculation configuration was entered and the default behavior is triggered; the calculation is performed separately for egress and ingress samples.

This configuration example assumes that the border routers are already configured.

pfr master
 no periodic
 resolve cost priority 1
 no resolve delay
 no resolve utilization
 border 10.2.1.2 key-chain key_cost1
  interface Serial12/0 external
   cost-minimization tier 100 fee 10000
   cost-minimization tier 75 fee 8000
   cost-minimization tier 40 fee 4000
   cost-minimization end day-of-month 31
  interface Serial13/0 external
   cost-minimization fixed fee 3000
 border 10.3.1.3 key-chain key_cost2
  interface Serial12/0 external
   cost-minimization fixed fee 3000
  interface Serial13/0 external
   cost-minimization fixed fee 3000
   end

Example Using a PfR Cost Policy to Minimize Billing and Load Balance Traffic

The following configuration example shows how to configure cost-minimization policies and balance PfR traffic loads across multiple links. This task is designed to minimize the cost of each link and to precisely control load balancing across multiple border router links. This task controls the load balancing between multiple links by forcing PfR to use the bandwidth of the lowest cost tier first and then use the next lowest cost tiers on all the links.

Keywords in the show pfr master cost-minimization command are used to view the utilization of a specific link with the monthly egress and ingress rollup values. After the monthly billing period ends another keyword option for the billing history shows the sustained monthly utilization and link cost.

Border Router 10.1.1.1

key chain key1
  key 1
    key-string border1
!
pfr border
  logging
  local GigabitEthernet3/0/0
  master 10.1.1.1 key-chain key1

Don't forget to configure all the border routers using a similar configuration but with appropriate changes. Now configure the master controller.

Master Controller

key chain key1
  key 1
    key-string border1
 key chain key2
  key 1
    key-string border2
 key chain key3
  key 1
    key-string border3
 pfr master
  logging
  border 10.1.1.1 key-chain key1
   interface GigabitEthernet3/0/0 external
    cost-minimization nickname ISP1
    cost-minimization tier 100 fee 50000
    cost-minimization tier 65 fee 10000
    cost-minimization tier 30 fee 500
    cost-minimization end day-of-month 24
    cost-minimization sampling period 5 rollup 1440
    cost-minimization discard absolute 10
    exit
   interface GigabitEthernet3/0/1 internal
   exit
  border 10.2.1.2 key-chain key2
   interface GigabitEthernet3/2/0 external
   interface GigabitEthernet3/0/0 internal
   exit
  border 10.4.1.4 key-chain key3
   interface GigabitEthernet4/0/0 external
    cost-minimization nickname ISP2
    cost-minimization fixed fee 3000
    cost-minimization end day-of-month 24
    exit
   interface GigabitEthernet4/0/2 internal
   exit
  no max range receive
  delay threshold 10000
  loss threshold 1000000
  mode route control  
  mode monitor passive  
  mode select-exit best  
  resolve cost priority 1
  active-probe echo 10.1.9.1
  end

Now enter the show pfr master cost-minimization border command at the master controller to show the configuration and the utilization statistics. The rollup values during the 30-day March through April 24th billing period for the GigabitEthernet interface 3/0/0 on border router 10.1.1.1 are shown in the output:

Router# show pfr master cost-minimization border 10.1.1.1
pM - per Month, pD - per Day
 --------------------------------------------------------------------------------
  Nickname  : ISP1             Border: 10.1.1.1          Interface: Gi3/0/0           
  Calc type : Separate
  End Date  : 24
  Summer time: Disabled
  Fee       : Tier Based
              Tier 1: 100, fee:      50000
              Tier 2:  65, fee:      10000
              Tier 3:  30, fee:        500
  Period    : Sampling 5, Rollup 1440
  Discard   : Type Absolute, Value 10
 
  Rollup Information:
  Total(pM)       Discard(pM)     Remaining(pM)   Collected(pM)   
  31              10              1               29              
 
  Current Rollup Information:
    MomentaryTgtUtil:           75 Kbps    CumRxBytes:                0
   StartingRollupTgt:           75 Kbps    CumTxBytes:                0
    CurrentRollupTgt:           75 Kbps    TimeRemain:         00:00:51
 
  Rollup Utilization (Kbps):
  Egress Utilization Rollups (Descending order)
 
  1   : 0            2   : 89           3   : 80           4   : 71          
  5   : 70           6   : 65           7   : 65           8   : 51          
  9   : 50           10  : 49           11  : 49           12  : 45          
  13  : 42           14  : 39           15  : 35           16  : 34          
  17  : 30           18  : 30           19  : 30           20  : 29          
  21  : 25           22  : 20           23  : 19           24  : 12          
  25  : 10           26  : 10           27  : 9            28  : 8           
  29  : 4            30  : 1           
  Ingress Utilization Rollups (Descending order)
 
  1   : 0            2   : 92           3   : 84           4   : 82          
  5   : 80           6   : 78           7   : 75           8   : 73          
  9   : 72           10  : 70           11  : 63           12  : 62          
  13  : 60           14  : 55           15  : 53           16  : 52          
  17  : 45           18  : 43           19  : 35           20  : 33          
  21  : 31           22  : 25           23  : 23           24  : 21          
  25  : 15           26  : 11           27  : 10           28  : 10          
  29  : 5            30  : 1

If we assume that the March through April 24th billing period is over, we can see the billing for the previous billing period using the show pfr master cost-minimization billing-history command. The monthly sustained utilization is 62 and the cost is $10,000 for the GigabitEthernet interface 3/0/0 link on border router 10.1.1.1.

Router# show pfr master cost-minimization billing-history
Billing History for the past three months
 
         ISP2 on 10.4.1.4          Gi4/0/0           
  No cost min on 10.2.1.2          Gi3/2/0           
         ISP1 on 10.1.1.1          Gi3/0/0           
                  Mon1                  Mon2                  Mon3
 Nickname     SustUtil       Cost   SustUtil       Cost   SustUtil       Cost
 ----------    ------------------    ------------------   ------------------
    ISP2             0       3000        ---NA---             ---NA---     
    ISP1            62      10000        ---NA---             ---NA---     
 
 ----------    ------------------    ------------------   ------------------
 Total Cost                 13000                     0                     0

Where to Go Next

If you want to review more information about PfR, see the documents that are listed under "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 Configuring Performance Routing Cost Policies

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 2Feature Information for Configuring Performance Routing Cost Policies

Feature Name

Releases

Feature Configuration Information

OER Support for Cost-Based Optimization

12.3(14)T 12.2(33)SRB 12.4(15)T9

The OER Support for Cost-Based Optimization feature introduced the capability to configure exit link policies based monetary cost and the capability to configure traceroute probes to determine prefix characteristics on a hop-by-hop basis.

In Cisco IOS Release 12.4(15)T9 and later releases, the calculation of the MTLU algorithm is modified to allow for more efficient bandwidth utilization while minimizing the link cost.

The following commands were introduced or modified by this feature: cost-minimization (PfR), debug pfr master cost-minimization,show pfr master cost-minimization.

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.