Cisco 10000 Series Router Quality of Service Configuration Guide
Oversubscribing Physical and Virtual Links
Downloads: This chapterpdf (PDF - 677.0KB) The complete bookPDF (PDF - 21.32MB) | Feedback

Oversubscribing Physical and Virtual Links

Table Of Contents

Oversubscribing Physical and Virtual Links

Interface Oversubscription

Feature History for Interface Oversubscription

Restrictions and Limitations for Interface Oversubscription

ATM Virtual Circuit Oversubscription

Feature History for ATM VC Oversubscription

Oversubscription Factor and Unspecified Bit Rate Virtual Circuits

ATM VC Oversubscription and ATM Line Cards

atm over-subscription-factor Command

Syntax Description

atm over-subscription-factor Command History

Usage Guidelines for the atm over-subscription-factor Command

Restrictions and Limitations for ATM VC Oversubscription

Frame Relay PVC Oversubscription

Feature History for Frame Relay PVC Oversubscription

Restrictions and Limitations for Frame Relay PVC Oversubscription

Virtual LAN Oversubscription

Feature History for VLAN Oversubscription

Restrictions and Limitations for VLAN Oversubscription

Oversubscription and Hierarchical Policies

Configuring Oversubscription

Oversubscribing ATM VBR-nrt VCs

Oversubscribing Frame Relay PVCs

Oversubscribing Frame Relay PVCs Using Hierarchical Policies

Oversubscribing Frame Relay PVCs Using a Map Class

Oversubscribing 802.1Q VLANs

Configuration Example for Oversubscribing 802.1Q VLANs

How the Router Determines VC Weights

Feature History for VC Weighting

Determining VC Weighting—Cisco IOS Release 12.0(17)SL to Release 12.3(7)XI1

Determining VC Weighting—Cisco IOS Release 12.3(7)XI1 and Later Releases

Determining VC Weighting—Cisco IOS Release 12.2(31)SB2 and Later Releases

Calculating the Default Weight of a VC—PRE2

Calculating the Default Weight of a VC—PRE3

queue-depth Command

Syntax Description

queue-depth Command History

Usage Guidelines for the queue-depth Command

weight Command

Syntax Description

weight Command History

Usage Guidelines for the weight Command

High Watermark and Low Watermark Default Values

Guidelines for Changing Watermark Values

Modifying the VC Weight and the VP Shaping Parameters

Restrictions and Limitations for VC Weighting

Configuring VC Weighting

Configuring ATM VC Weighting

Configuration Example for Configuring ATM VC Weighting

Configuring VC Weighting Using a VC Class Map

Configuration Example for Configuring VC Weighting Using a VC Class Map

Configuring VC Weighting on a Range of PVCs

Configuration Example for Configuring VC Weighting on a Range of PVCs

Configuring VC Weighting On Subinterfaces Using a Bandwidth Remaining Ratio

Configuration Example for Configuring VC Weighting on a Subinterface Using Bandwidth Remaining Ratio

Configuring VC Weighting on Class Queues Using Bandwidth Remaining Ratio

Configuration Example for VC Weighting on a Class Queue Using Bandwidth Remaining Ratio

Configuring VC Queue Depth

Configuration Example for Configuring VC Queue Depth

Configuration Examples

Configuration Example for Oversubscribing a Shaped ATM VC and VP

Configuration Example for Configuring the Weight of a VC

Configuration Example for Configuring the Weight of Multiple VCs

Configuration Example for Configuring VC Weight Using a Bandwidth Remaining Ratio

Configuration Example for Setting High and Low Watermark Thresholds

Verifying Oversubscription and VC Weighting

Verification Examples for Oversubscription and VC Weighting

Verifying Default High and Low Watermarks on an Interface

Verifying High and Low Watermarks on an Individual VC

Verifying VC Parameter Configurations and Parameter Inheritance

Related Documentation


Oversubscribing Physical and Virtual Links


Asynchronous Transfer Mode (ATM), Frame Relay, and IEEE 802.1Q Ethernet networks offer connection-oriented, circuit-based data transfer. Such networks provide statistical multiplexing of traffic from all the virtual circuits (VCs) sharing the physical port. Some VCs have a built-in method of traffic capacity. Others like Frame Relay and Ethernet are just best effort. Optionally, a provider may choose to reserve bandwidth for such a VC through configuration. Once a VC has a defined bandwidth, the router strives to service the VC traffic at the specified transmission rate, and optionally provides differentiated service to packets of that VC.

While provisioning bandwidth to virtual circuits, the provider has a choice of offering unconditional or statistical guarantees. When the sum of the transmission capacities of VCs falls within the bandwidth of the physical network, it never congests; therefore, each VC receives its bandwidth reservation regardless of the traffic pattern of any other VC on that network. On the other hand, when the total assigned bandwidth exceeds the physical capacity, the router allocates each VC bandwidth reservation as long as a limited number of VCs activate at one time. The former offers unconditional service at the expense of underutilization of the physical capacity; the latter takes advantage of statistical multiplexing to provide better network utilization at the expense of degraded service under congestion.

To improve network utilization of otherwise underutilized shared networks, the Cisco 10000 series router offers oversubscription functionality. Oversubscription helps to offset infrastructure costs and is an integral part of networking topologies.

This chapter describes interface and virtual circuit oversubscription and includes the following topics:

Interface Oversubscription

ATM Virtual Circuit Oversubscription

Frame Relay PVC Oversubscription

Virtual LAN Oversubscription

Oversubscription and Hierarchical Policies

Configuring Oversubscription

How the Router Determines VC Weights

Configuring VC Weighting

Configuration Examples

Verifying Oversubscription and VC Weighting

Related Documentation

Interface Oversubscription

Interface oversubscription enables service providers to assign a total committed information rate (CIR) to a given port that is greater than the speed of the port. In this way, instead of supporting only unconditional reservation of network bandwidth to VCs, the Cisco 10000 series router can statistically guarantee bandwidth to the VCs, thus improving network utilization.

While interface oversubscription offers distinct advantages, it has the potential of degrading system performance during congestion. The packet scheduler directs traffic to a physical port. Without oversubscription, the packet scheduler reserves scheduling resources for each VC so that the total amount is less than or equal to the capacity of the network. With oversubscription, the scheduler assigns its resources at a rate higher than the transmission capacity of the network. This mismatch of rates between the scheduler and the network results in reduced scheduling efficiency such as the following:

The scheduling resources that are in excess of the physical capacity fail to perform productively because of the network's refusal to accept new packets during congestion.

Congestion at the physical layer causes the scheduler to retry packet transmissions until accepted by the network, which further reduces the scheduler's productivity. Prolonged congestion also interferes with the scheduler's operations to serve each traffic class according to its bandwidth commitment.

With oversubscription, network congestion can occur if all of the network capacity is used concurrently. However, the risk is low if you avoid oversubscribing a network that is likely to congest and if you do not oversubscribe a service too much. Without oversubscription, you loose the benefits of oversubscription such as the following:

Lower cost for port connection

Network bandwidth is available if and when you need it

The statistical multiplexing that is used with oversubscription saves money because data traffic tends to be bursty

The statistical multiplexer assigns bandwidth on a circuit as needed, thus saving bandwidth

Feature History for Interface Oversubscription

Cisco IOS Release
Description
Required PRE

Release 12.0(25)SX

The interface oversubscription feature was introduced on the router.

PRE1

Release 12.3(7)XI

This feature was introduced on the PRE2.

PRE2

Release 12.2(28)SB

This feature was integrated in Cisco IOS Release 12.2(28)SB for the PRE2.

PRE2

Release 12.2(31)SB2

This feature was introduced on the PRE3 and uses statistical multiplexing on ATM, Frame Relay, and IEEE 802.1Q networks.

PRE3


Restrictions and Limitations for Interface Oversubscription

Interface oversubscription can potentially degrade system performance during congestion due to a mismatch of rates between the packet scheduler and the network.

With oversubscription, network congestion can occur if all of the network capacity is used concurrently. However, the risk is low if you avoid oversubscribing a network that is likely to congest and if you do not oversubscribe a service too much.

For more information, see the "Interface Oversubscription" section.

ATM Virtual Circuit Oversubscription

The Cisco 10000 series router supports the oversubscription of variable bit rate-nonreal time (VBR-nrt) and constant bit rate (CBR) virtual circuits (VCs), and virtual path (VP) tunnels. Oversubscription enables service providers to improve network utilization of otherwise underutilized shared networks by leveraging statistical multiplexing on ATM networks. Instead of supporting only unconditional reservation of network bandwidth to VCs, the router offers VC oversubscription to statistically guarantee bandwidth to VCs.

VC oversubscription assumes that congestion at the physical port never or rarely occurs. For example, assume 10 VCs are configured to use 25 percent of the physical network bandwidth. The full capacity of the network is reached if only four VCs attempt to transmit traffic. VBR-nrt oversubscription is intended only for networks with low utilization in which congestion is unlikely to exist. If congestion occurs on the PRE1 or PRE2, the router gives each VC an equal fair share of the bandwidth. If congestion occurs on the PRE3, the router gives each VC a share of the bandwidth based on the configured weight of the VC.

In releases prior to Cisco IOS Release Cisco IOS Release 12.2(16)BX, a call admission check (CAC) prevented you from assigning more bandwidth to virtual circuits (VCs) than a port's total bandwidth. The Cisco 10000 series router supported unconditional reservation of network bandwidth to VCs. When the sum of the transmission capacities of VCs falls within the bandwidth of the physical network, the network does not congest. Each VC receives its bandwidth reservation regardless of the traffic pattern of any other VC on that network. However, VCs receive this unconditional service at the expense of underutilization of the physical capacity of the network. Because each VC uses a fraction of the physical capacity, unless a large number of VCs remain busy, the overall network utilization remains low.

In Cisco IOS Release 12.2(16)BX or later, VBR-nrt oversubscription enables you to specify the amount of oversubscription (oversubscription factor) you want to allow. Oversubscription of ATM interfaces is disabled by default.


Note In releases prior to Cisco IOS Release 12.3(7)XI3, virtual path (VP) tunnel oversubscription does not behave as intended. Instead, oversubscription of VP tunnels (the number and bandwidth of VCs that can be in a tunnel) is on by default and is not subject to any oversubscription factor. Oversubscription of VP tunnels cannot be adjusted or turned off. However, in Cisco IOS Release 12.3(7)XI3 and later releases, VP tunnel oversubscription is subject to call admission checks and is off by default. The CAC mechanism checks all of the VCs and VP tunnels going to an interface, and all of the VCs going into a VP tunnel. You can also specify the amount of oversubscription to allow.


The PRE3 allows the aggregate rate of ATM VCs to exceed the bandwidth of the interface or VP on which the VCs were created based on the configured oversubscription factor on the ATM interface.

For optimal performance, configure the oversubscription factor as closely as possible to the sum of all VCs. The system allows VCs to be added, provided the total subscribed rate is less than or equal to the port speed times the over-subscription-factor. The CAC is based on the oversubscription factor you specify and evaluated separately for both VCs and VP tunnels into the port, and VCs into VP tunnels.

Whenever you reduce the oversubscription factor, less bandwidth is available for VC creation. As a result, a warning message appears indicating that some VCs might not be created. The router does not explicitly remove the VCs from the configuration; the VCs remain up and functional until you reboot the router or reset the slot. At this point, the VCs remain in the configuration but they are not up.

When the no atm pxf queuing command is configured on an interface for the PRE1 or PRE2, the router allows unlimited oversubscription. The ATM oversubscription commands have no effect. For the PRE3, the no atm pxf queuing command is not supported.

Feature History for ATM VC Oversubscription

Cisco IOS Release
Description
Required PRE

Release 12.2(16)BX

The ATM VC oversubscription feature was introduced on the PRE2 with an oversubscription factor from 1 to 50.

PRE2

Release 12.3(7)XI3

This feature was enhanced on the PRE2 with an oversubscription factor from 1 to 500.

PRE2

Release 12.2(28)SB

This feature was integrated in Cisco IOS Release 12.2(28)SB for the PRE2.

PRE2

Release 12.2(31)SB2

This feature was introduced on the PRE3 with an oversubscription factor from 1 to 500.

PRE3


Oversubscription Factor and Unspecified Bit Rate Virtual Circuits

Unspecified bit rate (UBR) virtual circuits (VCs) are not subject to a call admission check (CAC). Therefore, by default the router allows unlimited oversubscription of UBR VCs.

For releases prior to Cisco IOS Release 12.3(7)XI1, if you use unshaped (no PCR specified) UBR VCs, the router allocates bandwidth to the variable bit rate (VBR) and constant bit rate (CBR) VCs, and to the VP tunnels before allocating the remaining bandwidth to the unshaped UBR VCs. For example:

Port Speed - Sum of the VBR VCs = Aggregate UBR bandwidth

The bandwidth the router allocates to the unshaped UBR VCs must be 64 kbps less than the total bandwidth of the interface.

In Cisco IOS Release 12.3(7)XI1 and later releases, the oversubscription factor is used to evaluate the amount of bandwidth allocated for unshaped UBR VCs. The CAC adjusts the bandwidth for unshaped UBR VCs based on the oversubscription factor.


Note You can apply a hierarchical policy map to the main ATM interface to override this default equation and set a specific bandwidth for the aggregate UBR queues. For more information about hierarchical policies, see Chapter 13 "Defining QoS for Multiple Policy Levels."


ATM VC Oversubscription and ATM Line Cards

ATM VC oversubscription controls the allocation of resources that are managed on a line card. If you enable oversubscription on one port alone, other ports might use more resources than they are supposed to use, which could result in resource starvation of other ports, causing VC creation to fail. Therefore, we recommend that you apply VC oversubscription to all ports of an ATM line card.

Table 15-1 lists the number of active VCs the ATM line cards support in atm pxf queuing mode for Cisco IOS Release 12.3(7)XI2 and later releases.

Table 15-1 Active VCs on ATM Line Cards

Line Card
Max. VCs per Port
Maximum VCs per Module
No. VBR, CBR, Shaped UBR VCs

E3/DS3

4,096

32,7681

28,6722

OC-3

8,191

32,7643

28,6724

OC-12

16,384 (previously 14,436)

16,384

16,384

1 For 32,768 VCs per module, 4096 of them must be unshaped UBR VCs.

2 For 28,672 VBR, CBR, and shaped UBR VCs, no VCs can be in shaped VP tunnels. If VCs are in shaped VPs, the number of VBR, CBR, and shaped UBR VCs is 22,204.

3 For 32,764 VCs per module, 4096 of them must be unshaped UBR VCs.

4 For 28,672 VBR, CBR, and shaped UBR VCs, no VCs can be in shaped VP tunnels. If VCs are in shaped VPs, the number of VBR, CBR, and shaped UBR VCs is 22,204.


You can configure the maximum number of VCs across the ports in any fashion, provided that you do not exceed the per-port maximum.

Although the maximum number of VBR, CBR, and shaped UBR VCs per E3/DS3 and OC-3 ATM line card is 28,672 VCs, the router supports a maximum of 22,204 VBR, CBR, and shaped UBR VCs per line card that you can place within virtual path (VP) tunnels. If you attempt to bring up more than 22,204 VCs in a configuration that includes VP tunnels and VCs (hierarchical traffic shaping configuration), the VCs might not assign traffic correctly or the VCs might not come up at all. Be sure to limit the number of configured VBR, CBR, and shaped UBR VCs on an ATM card to less than 22,204 VCs if you place the VCs in VP tunnels.

For the OC-12 ATM line card, the router supports 16,384 VCs in VP tunnels.

atm over-subscription-factor Command

To oversubscribe ATM virtual circuits (VCs), use the atm over-subscription-factor command in interface configuration mode. To prevent oversubscription of an ATM VC, use the no atm oversubscribe command. By default, oversubscription of ATM interfaces and tunnels is enabled.

atm over-subscription-factor {factor}
 
   

no atm over-subscription-factor {factor}

Syntax Description

factor

Specifies the amount of oversubscription. The default value is 1, which indicates no oversubscription. Valid values are:

1 to 500 on the PRE2—Requires Cisco IOS Release 12.3(7)XI3 or later releases, or Cisco IOS Release 12.2(28)SB

1 to 500 on the PRE3—Requires Cisco IOS Release 12.2(31)SB2 or later releases


atm over-subscription-factor Command History

Cisco IOS Release
Description

Release 12.2(16)BX

The atm over-subscription-factor command was introduced on the PRE2 with an oversubscription factor from 1 to 50.

Release 12.3(7)XI3

This command was enhanced on the PRE2 with an oversubscription factor from 1 to 500.

Release 12.2(28)SB

This command was integrated in Cisco IOS Release 12.2(28)SB for the PRE2.

Release 12.2(31)SB2

This command was introduced on the PRE3 with an oversubscription factor from 1 to 500.


Usage Guidelines for the atm over-subscription-factor Command

An ATM variable bit rate (VBR) VC uses the sustained cell rate (SCR) to define the VC's average transmission rate. Therefore, use the atm over-subscription-factor command to specify the ATM VC oversubscription, not the service-policy command.

Use the atm over-subscription-factor command for each ATM interface that you want to oversubscribe.

Because the oversubscription of VBR-nrt VCs requires resources from the entire line card, apply the atm over-subscription-factor command on all ports of the ATM card (for example, the 4-port OC-3 ATM line card). If you enable the oversubscription on only one port, the other ports can use more resources than they were configured to use. As a result, some ports do not receive adequate resources, which results in VC creation failures.

Unlike other Cisco routers, the Cisco 10000 series router uses the atm oversubscribe command in conjunction with the atm over-subscription-factor command to enable or disable oversubscription for a particular interface or tunnel. When enabling ATM oversubscription for a particular interface or tunnel, specify the atm over-subscription-factor command. Do not use the atm oversubscribe command to enable oversubscription as this can cause undesirable results. Instead, leave it to the default value.

For example, the following configuration enables the oversubscription feature and configures the interface with an oversubscription factor of 500.

Router(config)# interface atm 4/0/0
Router(config-if)# atm oversubscribe
Router(config-if)# atm over-subscription-factor 500
Router(config-if)# end
 
   

To prevent oversubscription of the interface, enter the no atm oversubscribe command. For example, the following configuration disables oversubscription of the ATM 4/0/0 interface. The previously configured factor of 500 is configured on the interface, but the router does not allow the oversubscription.

Router(config)# interface atm 4/0/0
Router(config-if)# no atm oversubscribe
Router(config-if)# end
 
   

To enable the oversubscription feature with the previously configured factor 500, enter the atm oversubscribe command. For example:

Router(config)# interface atm 4/0/0
Router(config-if)# atm oversubscribe
Router(config-if)# end

Restrictions and Limitations for ATM VC Oversubscription

The following restrictions and limitations are applicable only if the port becomes congested:

To oversubscribe ATM VCs requires resources from the entire line card (for example, the 4-port OC-3 ATM line card). If you configure oversubscription on only one port, the other ports can use more resources than they were configured to use. As a result, some ports do not receive adequate resources, which results in VC creation failures. Therefore, apply the atm over-subscription-factor command on all ports of the ATM card.

Due to congestion on the physical interface, the accuracy of the bandwidth distribution between the class queues degrades. For example, if you configure each of three queues at a distribution of 50, 30, and 20 percent, the actual distribution might be 45, 40, and 15 percent.

The distribution of bandwidth for each VC might be less than expected based on the speed of the VC. Typically, low-speed VCs are allocated the expected bandwidth while high-speed VCs share the remaining bandwidth equally.

The amount of bandwidth allocated for the priority queue or latency might be less than expected.

Frame Relay PVC Oversubscription

The Cisco 10000 series router supports the oversubscription of Frame Relay permanent virtual circuits (PVCs). Oversubscription enables a service provider to assign a total committed information rate (CIR) to a given PVC that is greater than the speed of the interface.

One of the goals of service providers is to save on expensive interface costs. The intermittent and bursty nature of Frame Relay traffic practically guarantees that all of the Frame Relay PVCs are not going to require the maximum committed information rate (CIR) at the same time. Therefore, Frame Relay traffic is well-suited to oversubscribing available interfaces, thus reducing interface connection costs.

The router uses statistical multiplexing to assign bandwidth on PVCs as needed. This enables service providers to provide service to a large number of customers over shared bandwidth, rather than dedicated bandwidth and it enables customers to oversubscribe a PVC and still have guaranteed bandwidth through the provider network even though the amount of guaranteed network bandwidth might exceed the interface speed.

Network congestion is a concern when oversubscribing connections. If customers concurrently use all of the network capacity, congestion can occur; however, the risk of congestion is low if you do not oversubscribe too much and if you avoid oversubscribing networks that are likely to congest.

Figure 15-1 shows a Frame Relay network that is oversubscribed. In the figure, the Central Site has a 1.544-Mbps Frame Relay circuit. The network has 18 remote sites with 128-kbps Frame Relay circuits. The aggregate bandwidth is 2.3 Mbps:

128 kbps * 18 sites = 2.3 Mbps

The Central Site is oversubscribed by 50 percent. However, this configuration is valid because:

The remote users require only e-mail access and the ability to transfer small files using File Transfer Protocol (FTP).

All of the remote sites are unlikely to try to use all of the available bandwidth at the same time.

All of the remote sites are unlikely to simultaneously access the network.

Figure 15-1 Oversubscribed Frame Relay Network

Feature History for Frame Relay PVC Oversubscription

Cisco IOS Release
Description
Required PRE

Release 12.3(7)XI1

The Frame Relay PVC oversubscription feature was introduced on the PRE2.

PRE2

Release 12.2(28)SB

This feature was integrated in Cisco IOS Release 12.2(28)SB for the PRE2.

PRE2


Restrictions and Limitations for Frame Relay PVC Oversubscription

If customers concurrently use all of the network capacity, congestion can occur. However, the risk of congestion is low if you do not oversubscribe too much and if you avoid oversubscribing networks that are likely to congest.

Virtual LAN Oversubscription

The Cisco 10000 series router supports the oversubscription of IEEE 802.1Q virtual LANs (VLANs) to improve network utilization of otherwise underutilized shared networks by leveraging statistical multiplexing on 802.1Q networks. Because of the bursty nature of LAN traffic and the typical low utilization of Ethernet at the network edge, oversubscription is an appropriate solution for eliminating unused bandwidth on Ethernet networks.

Oversubscription enables you to configure a total committed information rate (CIR) for a particular VLAN that is greater than the speed of the interface. Because different users require high bandwidth utilization at different times, service providers can oversubscribe network ports to provide services to more users and improve network utilization.

Network congestion is a concern, especially when oversubscribing connections. In some circumstances, the aggregate bandwidth might exceed capacity; however, the implementation of oversubscription guarantees minimum quality of service and fair treatment of all users. When packet drop is required, Ethernet's congestion avoidance and congestion management mechanisms as well as the oversubscription logic ensure that packet drops affect lower priority traffic first.

The PRE3 allows the aggregate rate of all VLANs created on an interface to exceed the available bandwidth. The excess bandwidth is distributed among the VLANs proportionally to their weights using the shape parent and child policies applied on the subinterface. For more information, see the "Distribution of Remaining Bandwidth Using Ratio" section.

Feature History for VLAN Oversubscription

Cisco IOS Release
Description
Required PRE

Release 12.3(7)XI1

The VLAN oversubscription feature was introduced on the PRE2.

PRE2

Release 12.2(28)SB

This feature was integrated in Cisco IOS Release 12.2(28)SB for the PRE2.

PRE2

Release 12.2(31)SB2

This feature was introduced on the PRE3 to allow aggregate VLAN rates to exceed the available bandwidth.

PRE3


Restrictions and Limitations for VLAN Oversubscription

In some circumstances, the aggregate bandwidth might exceed capacity. However, the implementation of oversubscription guarantees minimum quality of service and fair treatment of all users.

Oversubscription and Hierarchical Policies

You can create a hierarchical policy to manage traffic within a virtual circuit. When such a configuration exists, the router allocates the physical pipe into smaller pipes. Instead of creating a single versatile time management scheduler (VTMS) link for the physical interface, each parent policy map has a VTMS link. Previously, the sum of the bandwidths of the parent policies had to be less than the bandwidth of the physical link. With interface oversubscription, the sum of the parent policies can oversubscribe the link.

For more information about hierarchical policies, see Chapter 13 "Defining QoS for Multiple Policy Levels."

Example 15-1 shows how to oversubscribe a Frame Relay subinterface when defining QoS behavior in a hierarchical policy. In the example, the traffic class named class1 is policed at 60 percent of the total transmission capacity and the class named class2 is allocated 45 percent of the total bandwidth. Therefore, the total requested bandwidth exceeds the link bandwidth.

Example 15-1 Oversubscribing a Link Using Nested Policies

Router(config)# class-map match-all class1 
Router(config-cmap)# match access-group1 
Router(config-cmap)# exit 
Router(config)# class-map match-all class2 
Router(config-cmap)# match access-group2 
Router(config-cmap)# exit 
Router(config)# policy-map dlci-103 [child policy] 
Router(config-pmap)# class class1 
Router(config-pmap-c)# priority
Router(config-pmap-c)# police percent 60 
Router(config-pmap-c)# class class2 
Router(config-pmap-c)# bandwidth percent 45
Router(config-pmap-c)# exit 
Router(config-pmap)# policy-map shape-2meg-dlci-103 [parent policy] 
Router(config-pmap)# class class-default 
Router(config-pmap-c)# shape 2000 
Router(config-pmap-c)# service-policy dlci-103 [child policy] 
Router(config-pmap)# exit 
Router(config)# interface serial 5/0/0.1 point-to-point 
Router(config-subif)# ip address 10.1.0.2 255.255.255.252 
Router(config-subif)# service-policy output shape-2meg-dlci-103 [attaches parent policy]
Router(config-subif)# frame-relay interface-dlci 103
 
   

For more information about hierarchical policies, see Chapter 13 "Defining QoS for Multiple Policy Levels."

Configuring Oversubscription

To configure oversubscription on ATM, Frame Relay, and 802.1Q VLAN virtual circuits, perform any of the following configuration tasks:

Oversubscribing ATM VBR-nrt VCs

Oversubscribing Frame Relay PVCs

Oversubscribing 802.1Q VLANs

Oversubscribing ATM VBR-nrt VCs

To enable oversubscription of ATM VBR-nrt VCs, enter the following commands beginning in global configuration mode:

 
Command
Purpose

Step 1 

Router(config)# interface type slot/subslot/port.subinterface

Specifies the interface or subinterface on which you want to enable VC oversubscription. Enters interface or subinterface configuration mode.

Step 2 

Router(config-if)# atm over-subscription-factor {factor}

Oversubscribes an ATM VC.

factor specifies the amount of oversubscription. The default value is 1, which indicates no oversubscription. Valid values are:

1 to 500 on the PRE2—Requires Cisco IOS Release 12.3(7)XI3 or later releases, or Cisco IOS Release 12.2(28)SB

1 to 500 on the PRE3—Requires Cisco IOS Release 12.2(31)SB2 or later releases

Note Use this command for each ATM interface that you want to oversubscribe.


Note You do not need to use the service-policy command to specify the ATM VC oversubscription because a variable bit rate (VBR) ATM VC uses sustained cell rate (SCR) to define the VC's average transmission rate.


Example 15-2 oversubscribes an ATM interface by five times the physical transmission capacity.

Example 15-2 Oversubscribing an ATM VC

Router(config)# interface serial 1
Router(config-if)# atm over-subscription-factor 5

Oversubscribing Frame Relay PVCs

To oversubscribe Frame Relay PVCs, perform one of the following configuration tasks:

Oversubscribing Frame Relay PVCs Using Hierarchical Policies

Oversubscribing Frame Relay PVCs Using a Map Class

Oversubscribing Frame Relay PVCs Using Hierarchical Policies

For information about hierarchical policies, see Chapter 13 "Defining QoS for Multiple Policy Levels."

To enable oversubscription of Frame Relay PVCs using hierarchical policies, enter the following commands beginning in global configuration mode:

 
Command
Purpose

Step 1 

Router(config)# policy-map policy-map-name

Creates or modifies a child policy map. Enters policy-map configuration mode.

policy-map-name is the name of the policy map. The name can be a maximum of 40 alphanumeric characters.

Step 2 

Router(config-pmap)# class class-map-name

Assigns the traffic class you specify to the policy map. Enters policy-map class configuration mode.

class-map-name is the name of a previously configured class map and is the traffic class for which you want to define QoS actions.

Step 3 

Router(config-pmap-c)# priority

(Optional) Assigns strict priority to the traffic class.

Note In Cisco IOS Release 12.0(25)S and Release 12.3(7)XI, and later releases, the priority command has no arguments. To specify a bandwidth rate, use the police command. For more information, see Chapter 6 "Policing Traffic."

Step 4 

Router(config-pmap-c)# police [cir] percent percent bc normal-burst-in-msec be excess-burst-in-msec [conform-action action [exceed-action action [violate-action action]]]

(Optional) Configures traffic policing on the basis of a percentage of bandwidth available on an interface.

(Optional) cir is the committed information rate (CIR) and indicates an average rate at which the policer meters traffic. CIR is based on the interface shape rate.

percent percent indicates to use the percentage of available bandwidth specified in percent to calculate the CIR. Valid values are from 1 to 100.

bc normal-burst-in-msec specifies the normal or committed burst size (CBS) that the first token bucket uses for policing traffic. Specify the normal-burst-in-msec value in milliseconds (ms). Valid values are from 1 to 2000. The default value is the greater of 2 ms worth of bytes at the police rate or the network minimum transmission unit (MTU).

be excess-burst-in-msec specifies the excess burst size (EBS) that the second token bucket uses for policing traffic. Specify the excess-burst-in-msec value in milliseconds (ms). Valid values are from 1 to 2000. The default value is zero (0). You must specify normal-burst-in msec before you specify excess-burst-in-msec.

Note Burst in milliseconds is based on the policing committed information rate (CIR).

conform-action action is the action to take on packets that conform to the rate limit. The default action is transmit. You must specify a value for excess-burst-in-msec before you specify the conform-action.

exceed-action action is the action to take on packets that exceed the rate limit. The default action is drop. You must specify the conform-action before you specify the exceed-action.

violate-action action is an optional action that specifies the action to take on packets that continuously exceed the rate limit. The default action is the same as the exceed-action. You must specify the exceed-action before you specify the violate-action.

See Table 6-1 for a description of each action you can specify.

Note Repeat Step 2 through Step 4 to configure additional traffic classes. For information about additional actions you can specify, see the "Types of QoS Actions" section.

Step 5 

Router(config-pmap-c)# exit

Exits policy-map class configuration mode.

Step 6 

Router(config)# policy-map policy-map-name

Creates or modifies the parent policy map. Enters policy-map configuration mode.

policy-map-name is the name of the policy map. The name can be a maximum of 40 alphanumeric characters.

Step 7 

Router(config-pmap)# class class-default

Configures the class-default traffic class. Enters policy-map class configuration mode.

Step 8 

Router(config-pmap-c)# shape rate

Shapes traffic to the indicated bit rate.

rate indicates the bit rate in bits per second that is used to shape the traffic.

Step 9 

Router(config-pmap-c)# service-policy policy-map-name

Applies the child policy map you specify to the parent policy map.

policy-map-name is the name of the child policy map you want to apply to the parent policy map.

Step 10 

Router(config-pmap-c)# exit

Exits policy-map class configuration mode.

Step 11 

Router(config-pmap)# exit

Exits policy-map configuration mode.

Step 12 

Router(config)# interface type slot/subslot/port.subinterface

Specifies the interface or subinterface on which you want to enable PVC oversubscription. Enters interface or subinterface configuration mode.

Step 13 

Router(config-if)# ip address address

Sets an address for an interface.

address is the IP address.

Step 14 

Router(config-if)# service-policy {input | output} policy-map-name

Applies the policy map you specify to the interface. This is the parent policy map that you created in Step 7.

input indicates to apply the QoS policy to inbound packets.

output indicates to apply the QoS policy to outbound packets.

policy-map-name is the name of the policy map you want to apply to the interface.

Step 15 

Router(config-subif)# frame-relay interface-dlci dlci [ietf | cisco]

Assigns a data-link connection identifier (DLCI) or a PVC to a Frame Relay interface or subinterface. Enters DLCI configuration mode.

dlci is the DLCI number to be used on the specified subinterface.

(Optional) cisco specifies to use Cisco's own Frame Relay encapsulation, which is a 4-byte header, with 2 bytes to identify the data-link connection identifier (DLCI) and 2 bytes to identify the packet type.

(Optional) ietf sets the encapsulation method to comply with the Internet Engineering Task Force (IETF) standard (RFC 1490). Use this keyword when connecting to another vendor's equipment across a Frame Relay network.

Configuration Example for Oversubscribing Frame Relay PVCs Using Hierarchical Policies

Example 15-3 shows how to oversubscribe a Frame Relay T1 network using a hierarchical policy to define QoS behavior. In the example, the traffic class named Gold is policed at 60 percent of the total transmission capacity and the class named Bronze requests 30 percent of the total bandwidth. The child policy named dlci50 that contains the Gold and Bronze classes is applied to the parent policy named shape-rate. The parent policy applied to DLCI 50 and DLCI 100 on serial subinterface 5/0/0.1 shapes each DLCI with a bandwidth of 1024 kbps or a total of 2048 kbps, which exceeds the transmission capacity of the T1 network (1536 kbps).

Example 15-3 Configuring Frame Relay Oversubscription Using Hierarchical Policies

Router(config)# policy-map dlci50 [child policy]
Router(config-pmap)# class Gold
Router(config-pmap-c)# priority
Router(config-pmap-c)# police percent 60
Router(config-pmap-c)# class Bronze
Router(config-pmap-c)# bandwidth percent 30
Router(config-pmap-c)# exit
Router(config-pmap)# exit
Router(config)# policy-map shape-rate [parent policy]
Router(config-pmap)# class class-default
Router(config-pmap-c)# shape 1024
Router(config-pmap-c)# service-policy dlci50 [child policy]
Router(config-pmap-c)# exit
Router(config-pmap)# exit
Router(config)# interface serial 5/0/0.1 point-to-point
Router(config-subif)# ip address 10.1.0.2 255.255.255.252
Router(config-subif)# frame-relay interface-dlci 50
Router(config-if-dlci)# service-policy output shape-rate [attaches parent policy]
Router(config-if-dlci)# frame-relay interface-dlci 100
Router(config-if-dlci)# service-policy output shape-rate [attaches parent policy]

Oversubscribing Frame Relay PVCs Using a Map Class

To enable oversubscription of Frame Relay PVCs using a map class, enter the following commands beginning in global configuration mode:

 
Command
Purpose

Step 1 

Router(config)# policy-map policy-map-name

Creates or modifies a policy map. Enters policy-map configuration mode.

policy-map-name is the name of the policy map. The name can be a maximum of 40 alphanumeric characters.

Step 2 

Router(config-pmap)# class class-default

Configures the class-default traffic class. Enters policy-map class configuration mode.

Step 3 

Router(config-pmap-c)# shape rate

Shapes traffic to the indicated bit rate.

rate indicates the bit rate in bits per second that is used to shape the traffic.

Step 4 

Router(config-pmap-c)# exit

Exits policy-map class configuration mode.

Step 5 

Router(config-pmap)# exit

Exits policy-map configuration mode.

Step 6 

Router(config)# frame-relay map-class map-class-name

Creates or modifies a Frame Relay map class. Enters Frame Relay map-class configuration mode.

map-class-name is the name of the map class.

Step 7 

Router(config-fr-mc)# service-policy {input | output} policy-map-name

Applies the policy map you specify to the Frame Relay map class. This is the same policy map that you created in Step 1.

input indicates to apply the QoS policy to inbound packets.

output indicates to apply the QoS policy to outbound packets.

policy-map-name is the name of the policy map you want to apply to the Frame Relay map class.

Step 8 

Router(config-fr-mc)# exit

Exits Frame Relay map-class configuration mode.

Step 9 

Router(config)# interface type slot/subslot/port.subinterface

Specifies the interface or subinterface on which you want to enable PVC oversubscription. Enters interface or subinterface configuration mode.

Step 10 

Router(config-subif)# encapsulation frame-relay [cisco | ietf]

Enables Frame Relay encapsulation on the subinterface.

(Optional) cisco specifies to use Cisco's own encapsulation, which is a 4-byte header, with 2 bytes to identify the data-link connection identifier (DLCI) and 2 bytes to identify the packet type.

(Optional) ietf sets the encapsulation method to comply with the Internet Engineering Task Force (IETF) standard (RFC 1490). Use this keyword when connecting to another vendor's equipment across a Frame Relay network.

Step 11 

Router(config-subif)# frame-relay interface-dlci dlci [ietf | cisco]

Assigns a data-link connection identifier (DLCI) or a PVC to a Frame Relay interface or subinterface. Enters DLCI configuration mode.

dlci is the DLCI number to be used on the specified subinterface. This is the DLCI to which you want to attach the policy map you created in Step 1.

(Optional) cisco specifies to use Cisco's own encapsulation, which is a 4-byte header, with 2 bytes to identify the data-link connection identifier (DLCI) and 2 bytes to identify the packet type.

(Optional) ietf sets the encapsulation method to comply with the Internet Engineering Task Force (IETF) standard (RFC 1490). Use this keyword when connecting to another vendor's equipment across a Frame Relay network.

Step 12 

Router(config-if-dlci)# frame-relay class name

Associates a map class with a DLCI.

name is the name of a previously configured map class. This is the same map class that you created in Step 6.

Note Repeat Steps 11 and 12 for each DLCI to which you want to associate the map class.

Configuration Example for Oversubscribing Frame Relay PVCs Using a Map Class

Example 15-4 shows how to oversubscribe a T1 network with a capacity of 1536 kbps. In the example, the policy map named Business shapes traffic to 1024 kbps. This QoS policy is applied to both PVCs (100 and 101) configured on serial interface 1/0/0/1:0. Each PVC has 1024 kbps of bandwidth or a total of 2048 kbps, which exceeds the capacity of the T1 network. Therefore, the PVCs are oversubscribed. Alternatively, if each PVC had a bandwidth of 768 kbps or less, they would not be oversubscribed.

Example 15-4 Oversubscription of Frame Relay PVCs

Router(config)# policy-map Business
Router(config-pmap)# class class-default
Router(config-pmap-c)# shape 1024 
Router(config-pmap-c)# exit
Router(config-pmap)# exit
Router(config)# frame-relay map-class Bronze
Router(config-map-c)# service-policy output Business
Router(config-map-c)# exit
Router(config)# interface serial 1/0/0/1:0
Router(config-if)# encapsulation frame-relay
Router(config-if)# frame-relay interface-dlci 100
Router(config-if-dlci)# frame-relay class Bronze
Router(config-if-dlci)# frame-relay interface-dlci 101
Router(config-if-dlci)# frame-relay class Bronze

Oversubscribing 802.1Q VLANs

To enable oversubscription of 802.1Q VLANs, enter the following commands beginning in global configuration mode:

 
Command
Purpose

Step 1 

Router(config)# policy-map policy-map-name

Creates or modifies a child policy map. Enters policy-map configuration mode.

policy-map-name is the name of the policy map. The name can be a maximum of 40 alphanumeric characters.

Step 2 

Router(config-pmap)# class class-map-name

Assigns the traffic class you specify to the policy map. Enters policy-map class configuration mode.

class-map-name is the name of a previously configured class map and is the traffic class for which you want to define QoS actions.

Step 3 

Router(config-pmap-c)# priority

(Optional) Assigns strict priority to the traffic class.

Note In Cisco IOS Release 12.0(25)S and Release 12.3(7)XI, and later releases, the priority command has no arguments. To specify a bandwidth rate, use the police command. For more information, see Chapter 6 "Policing Traffic."

Step 4 

Router(config-pmap-c)# police [cir] percent percent bc normal-burst-in-msec {pir pir} be excess-burst-in-msec [conform-action action [exceed-action action [violate-action action]]]

(Optional) Configures traffic policing on the basis of a percentage of bandwidth available on an interface.

(Optional) cir is the committed information rate (CIR) and indicates an average rate at which the policer meters traffic.

percent percent indicates to use the percentage of available bandwidth specified in percent to calculate the CIR.

bc normal-burst-in-msec specifies the normal or committed burst size (CBS) that the first token bucket uses for policing traffic. Specify the normal-burst-in-msec value in milliseconds (ms). Valid values are from 1 to 2000. The default value is the greater of 2 ms worth of bytes at the police rate or the network minimum transmission unit (MTU).

be excess-burst-in-msec specifies the excess burst size (EBS) that the second token bucket uses for policing traffic. Specify the excess-burst-in-msec value in milliseconds (ms). Valid values are from 1 to 2000. The default value is zero (0). You must specify normal-burst-in msec before you specify excess-burst-in-msec.

Note Burst in milliseconds is based on the policing committed information rate (CIR).

conform-action action is the action to take on packets that conform to the rate limit. The default action is transmit. You must specify burst-excess before you specify the conform-action.

exceed-action action is the action to take on packets that exceed the rate limit, but not the PIR. The default action is drop. You must specify the conform-action before you specify the exceed-action.

(Optional) violate-action action is the action to take on packets that continuously exceed the PIR rate limit. The default action is the same as the exceed-action. You must specify the exceed-action before you specify the violate-action.

See Table 6-1 for a description of each action you can specify.

Note Repeat Step 2 through Step 4 to configure additional traffic classes. For information about additional actions you can specify, see the "Types of QoS Actions" section.

Step 5 

Router(config-pmap-c)# exit

Exits policy-map class configuration mode.

Step 6 

Router(config)# policy-map policy-map-name

Creates or modifies the parent policy map. Enters policy-map configuration mode.

policy-map-name is the name of the policy map. The name can be a maximum of 40 alphanumeric characters.

Step 7 

Router(config-pmap)# class class-default

Configures the class-default traffic class. Enters policy-map class configuration mode.

Step 8 

Router(config-pmap-c)# shape rate

Shapes traffic to the indicated bit rate.

rate indicates the bit rate in bits per second that is used to shape the traffic.

Step 9 

Router(config-pmap-c)# service-policy policy-map-name

Applies the child policy map you specify to the parent policy map.

policy-map-name is the name of the child policy map you want to apply to the parent policy map.

Step 10 

Router(config-pmap-c)# exit

Exits policy-map class configuration mode.

Step 11 

Router(config-pmap)# exit

Exits policy-map configuration mode.

Step 12 

Router(config)# interface type slot/subslot/port.subinterface

Specifies the interface or subinterface on which you want to enable PVC oversubscription. Enters interface or subinterface configuration mode.

Step 13 

Router(config-if)# ip address address

Sets an address for an interface.

address is the IP address of the interface.

Step 14 

Router(config-subif)# encapsulation dot1q vlanid

Enables IEEE 802.1Q encapsulation of traffic on a specified subinterface in a virtual LAN (VLAN).

vlanid is the virtual LAN identifier. Valid values are from 1 to 4095.

Step 15 

Router(config-if)# service-policy {input | output} policy-map-name

Attaches the policy map you specify to the VLAN on the subinterface. This is the parent policy map that you created in Step 7.

input indicates to apply the QoS policy to inbound packets.

output indicates to apply the QoS policy to outbound packets.

policy-map-name is the name of the parent policy map you want to attach.

Configuration Example for Oversubscribing 802.1Q VLANs

Example 15-5 shows how to oversubscribe an 802.1Q VLAN. In the example, the Bronze business traffic receives 30 percent of the configured shape rate and Gold priority receives 60 percent. The Business child policy map is applied to the Business-shape parent policy map, which shapes the aggregate traffic to 512,000 kbps. The Business-shape policy map attached to VLAN 4 and VLAN 2 shapes the aggregate traffic of each VLAN to 512,000 kbps or a combined total of 1024 Mbps, which exceeds the transmission capacity of the Gigabit Ethernet interface. Therefore, the VLANs are oversubscribed.

Example 15-5 Oversubscribing 802.1Q VLANs

Router(config)# policy-map Business [child policy]
Router(config-pmap)# class Bronze
Router(config-pmap)# bandwidth percent 30
Router(config-pmap-c)# set ip precedence 1 2
Router(config-pmap-c)# class Gold
Router(config-pmap-c)# priority
Router(config-pmap-c)# police percent 60
Router(config-pmap-c)# set dscp 50
Router(config-pmap-c)# exit
Router(config-pmap)# exit
Router(config)# policy-map Business-shape [parent policy]
Router(config-pmap)# class class-default
Router(config-pmap-c)# shape 512000000
Router(config-pmap-c)# service-policy Business [child policy]
Router(config-pmap-c)# exit
Router(config-pmap)# exit
Router(config)# interface GigabitEthernet 5/0/0.10 point-to-point
Router(config-subif)# ip address 172.16.0.2 255.255.255.252
Router(config-subif)# encapsulation dot1q 4
Router(config-subif)# service-policy output Business-shape [attaches parent policy]
Router(config-subif)# interface GigabitEthernet 5/0/0.2 point-to-point
Router(config-subif)# ip address 10.0.0.10 255.32.0.0
Router(config-subif)# encapsulation dot1q 2
Router(config-subif)3 service-policy output Business-shape [attaches parent policy]

How the Router Determines VC Weights

On the PRE1 or PRE2, weight is applicable to VCs in VP tunnels and affects the behavior of the VCs.

On the PRE3, weight is applicable to VCs in VP tunnels and VCs not in a VP tunnel. In both cases, the weight affects the behavior of the VCs.

The way in which the router determines the weight of a VC depends upon the Cisco IOS release running on the router. Table 15-2 summarizes VC weighting on the Cisco 10000 series router.

Table 15-2 VC Weighting on the Cisco 10000 Series Router

Cisco IOS Release
User Configurable
VC Weight

Release 12.0(17)SL to Release 12.3(7)XI

No

Proportional to the VC speed.

Release 12.3(7)XI1 and later releases

Yes

Configured using the weight command.

Release 12.2(28)SB and later releases

Yes

Configured using the weight command.

Release 12.2(31)SB2 and later releases

Yes

Configured using the weight command or the bandwidth remaining ratio command (PRE3).


For information about VC weighting for a specific release, see the following sections:

Feature History for VC Weighting

Determining VC Weighting—Cisco IOS Release 12.0(17)SL to Release 12.3(7)XI1

Determining VC Weighting—Cisco IOS Release 12.3(7)XI1 and Later Releases

Determining VC Weighting—Cisco IOS Release 12.2(31)SB2 and Later Releases

Feature History for VC Weighting

Cisco IOS Release
Description
Required PRE

Release 12.3(7)XI1

The VC weighting feature was introduced on the PRE2.

PRE2

Release 12.2(28)SB

This feature was integrated in Cisco IOS Release 12.2(28)SB for the PRE2.

PRE2

Release 12.2(31)SB2

This feature was introduced on the PRE3.

PRE3


Determining VC Weighting—Cisco IOS Release 12.0(17)SL to Release 12.3(7)XI1

In Cisco IOS Release 12.0(17)SL to Cisco IOS Release 12.3(7)XI1, the router determines the weight of a particular VC in proportion to the speed of the VC. Without oversubscription, the router allocates bandwidth to each VC, up to the VC's configured SCR. As a result, VCs with higher SCR values get more bandwidth.

With oversubscription, the sum of the sustained cell rate (SCR) values of all of the VBR-nrt VCs is greater than the rate of the interface. If all of an interface's VCs attempt to send cells to the segmentation and reassembly (SAR) mechanism of the router at a rate that exceeds their SCR values, bandwidth calculation occurs in the following ways:

If all of the competing VCs have the same traffic class, the router calculates bandwidth by dividing the line rate by the number of VCs.

If the competing VCs have differing SCR values, the router either allocates the same bandwidth to each VC or it allocates more bandwidth to VCs with a higher SCR, depending on the load at a certain point in time. Because of this, it is difficult to predict the exact bandwidth percentage each VC has.

The SAR mechanism does not drop any cells on the router after a packet is scheduled to it. If the rate at which VCs send cells to the SAR mechanism exceeds the SAR mechanism's capability to transmit, the queuing system stores and subsequently drops any excess packets and the ATM interface driver controls the rate at which it sends packets to the SAR mechanism to avoid starving the SAR mechanism of its internal buffers.

Determining VC Weighting—Cisco IOS Release 12.3(7)XI1 and Later Releases

In Cisco IOS Release 12.3(7)XI1 and later releases, a weight parameter is used to control the number of cells for each VC that is sent into the virtual path (VP). You can configure this weight parameter directly for each VC using the weight command. This weight value determines which VCs get priority in the VP schedules during a congested state.

The versatile time management scheduler (VTMS) shapes the VC rate and the SAR mechanism shapes the VP rate. Even though the VTMS shapes the VC, the SAR mechanism controls the access of the VCs to the VP. The SAR mechanism uses a round-robin between the VCs to send a given number of cells per VC into the VP. The SAR mechanism uses the weight parameter you configure to control the number of cells for each VC.

To be fully effective, you must set the SAR line card queue depth for each VC interface queue above the weight for VC weighting by using the queue-depth command. This command enables you to set the high watermark and low watermark, which define the depth of the VC interface queue. The optimum threshold values for these watermarks are a function of a number of variables, such as the following:

Number of queues on a VC

Priority queue latency requirements

Bandwidth of the VC

Accuracy of VC bandwidth utilization

Per-queue bandwidth accuracy

Because so many variables influence watermark threshold values, you might need to experiment with different values to determine the optimum high and low watermark values for your configuration. In general, the following guidelines apply:

Set the low watermark equal to the VC weight. If the low watermark is less than the VC weight, a full weight worth of cells might not be enqueued in the SAR mechanism when the scheduler round-robin gets to the VC. As a result, the VC might not get its fair share.

Set the high watermark equal to the low watermark plus 2.

For more information about the high and low watermarks, see the "High Watermark and Low Watermark Default Values" section.

Determining VC Weighting—Cisco IOS Release 12.2(31)SB2 and Later Releases

On the PRE3, the weight parameter is not only used to control the number of cells for each VC that is sent into the virtual path (VP), but is also used by the packet scheduler to determine the bandwidth allocation of the VC during congestion. When congestion occurs in a VP, the bandwidth of the VP is distributed among the VCs within the VP tunnel in proportion to the weight configured on the VC. When congestion occurs on an ATM port, the bandwidth of the port is distributed among the VCs in proportion to the weight configured on the VC.

Calculating the Default Weight of a VC—PRE2

For the PRE2, the router calculates the default weight of a VC programmed in the segmentation and reassembly (SAR) mechanism by using the following formulas:

Tunnel Speed
VC Speed
Weight Formula

5 MB or less

Greater than 1937 kbps

Weight = 255

All other VC speeds

Weight = 0.1316 * VC speed

The router limits the weight to a maximum of 255. If the calculation results in a weight that is greater than 255, the router rounds down to ensure a valid weight.

Greater than 5 MB

Less than 256 kbps

Weight = 0.0459 * VC speed + 3.25

The weight must be between 5 and 255. If the calculation results in a weight that is not between 5 and 255, the router rounds up or down to ensure a valid weight.

This formula is also used to calculate weight for VBR and CBR VCs. The value of the SCR (VBR) or the value of the PCR (CBR) is the VC speed used in the calculation.

Less than or equal to 4010 kbps

Weight = 0.0586 * VC speed

Greater than 4010 kbps

Weight = (20 / (Tunnel PCR - 4010)) * VC speed + ((235 * Tunnel PCR - 4010) / (Tunnel PCR - 4010))

The router limits the weight to a maximum of 255. If the calculation results in a weight that is greater than 255, the router rounds down to ensure a valid weight.


Calculating the Default Weight of a VC—PRE3

For the PRE3, the weight in the SAR mechanism is always programmed to the value 5. The weight of the VC used in the packet scheduler is based on the committed information rate (CIR) of the VC.

If no weight is assigned to an ATM VC, a default weight is assigned based on the sustained cell rate (SCR) rate of the VC. The algorithm first checks the VCs with no weight and determines the maximum and minimum SCR. It then distributes a weight to each VC that is proportional to the VC's SCR. For example, a VC with an SCR of 50 kbps has a weight that is twice that of a VC with an SCR of 25 kbps.


Note Because it is not practical to configure weights on some ATM VCs and not on others, either all of the VCs have VC weights configured or none of them do.


A default weight of 1 is given to non-ATM subinterfaces with no weight assigned to them.

queue-depth Command

To configure the segmentation and reassembly (SAR) line card queue depth for each VC interface queue, use the queue-depth command in ATM PVC configuration mode. To remove a queue-depth setting, use the no form of the command. By default, no line card queue depth is set.

queue-depth hwm lwm
 
   
no queue-depth hwm lwm

Syntax Description

hwm

The high watermark.

lwm

The low watermark.


queue-depth Command History

Cisco IOS Release
Description

Release 12.3(7)XI1

The queue-depth command was introduced on the PRE2.

Release 12.2(28)SB

This command was integrated in Cisco IOS Release 12.2(28)SB for the PRE2.

Release 12.2(31)SB2

This command was introduced on the PRE3.


Usage Guidelines for the queue-depth Command

Configure the SAR line card queue depths for each VC above the weight you configure for the VC.

weight Command

To control virtual circuit (VC) bandwidth when the virtual path (VP) is congested, use the weight command in PVC, PVC range, or ATM VC-class configuration mode. This command defines the weight of a VC or changes the default weight. To restore the default weight, use the no form of the command.

weight weight_value
 
   
no weight weight_value

Syntax Description

weight_value

The number of cells that a VC can send to the VP tunnel before the SAR mechanism moves on to the next VC. A high value has a high VC priority in the VP scheduler. Valid values are from 1 to 255 (PRE2) and 1 to 1000 (PRE3).

Note We recommend that you do not configure the weight_value below 10 (PRE2).


weight Command History

Cisco IOS Release
Description

Release 12.3(7)XI1

The weight command was introduced on the PRE2.

Release 12.2(28)SB

This command was integrated in Cisco IOS Release 12.2(28)SB for the PRE2.

Release 12.2(31)SB2

This command was introduced on the PRE3.


Usage Guidelines for the weight Command

On the PRE2, for the weight command to be fully effective, use the queue-depth command to set the segmentation and reassembly (SAR) line card queue depth for each VC interface queue above the VC weight.

High Watermark and Low Watermark Default Values

On ATM line cards, the SAR mechanism has a queue for each PVC. Each PVC queue has two thresholds associated with it called the high watermark and low watermark. These watermarks define the number of cells the queue can hold.

The high and low watermark settings define the depth of the PVC interface queue on the line card. Table 15-3 lists the default high and low watermark values for ATM variable bit rate (VBR) VCs, based on the ATM VC rate.

Table 15-3 Default Watermark Values for ATM VBR VCs

VC Rate (bps)
Low Watermark
High Watermark

0 to 18,999

48

56

19,000 to 40,999

64

72

41,000 to 99,999

128

144

100,000 to 622,000

224

240


Table 15-4 lists the default high and low watermark values for ATM unspecified bit rate (UBR) VCs, based on the ATM VC rate.

Table 15-4 Default Watermark Values for ATM UBR VCs

VC Rate (bps)
Low Watermark
High Watermark

0 to 18,999

224

240


The behavior of the high watermark threshold and the low watermark threshold depends on whether the atm pxf queuing mode or the no atm pxf queuing mode is configured. In atm pxf queuing mode, the high watermark is a threshold that triggers a flow-off signal and the low watermark is a threshold that triggers a flow-on signal. The high watermark is the maximum number of cells that can be in the PVC queue for the ATM SAR mechanism before a flow-off signal is sent to the PXF. With the exception of priority queue packets and system queue packets, the flow-off signal stops packets for this PVC from being sent to the ATM SAR mechanism. Priority queue packets and system queue packets continue to be sent to the line card. Packets for other classes are queued at the PXF.

If packets are being queued at the PXF because the flow-off signal has been sent, when the number of cells in the PVC queue reaches the low watermark threshold, a flow-on signal is sent to the PXF. The flow-on signal restarts the packet flow (for packets of all classes) from this PVC to the ATM SAR mechanism.

For example, after router startup the flow signal defaults to on. If the number of cells in the PVC queue for the ATM SAR mechanism is 50, the high watermark is 56, and the low watermark is 48, and packets of all classes flow from the PVC to the ATM SAR mechanism. If the number of cells increases to 56, the high watermark triggers the flow-off signal, which stops packet flow for all packets, except the priority queue and system queue packets. Packet flow for all other packets is not restarted until the number of cells decreases to 48 (for example, when the low watermark triggers the flow-on signal).

In no atm pxf queuing mode, the high watermark is the maximum number of cells that can be in the PVC queue for the ATM SAR mechanism before packet drops occur. The low watermark does not apply in no atm pxf queuing mode.


Note While the high watermark threshold and low watermark threshold are defined by the numbers of cells, the crossing of the high watermark is evaluated on a packet boundary. This means that only whole packets are placed in the PVC queue for the ATM SAR mechanism.


When you want to better control priority queuing latency or for better TCP performance, modify the watermark values for each ATM variable bit rate (VBR) VC by using the queue-depth command. For more information, see the "Configuring VC Queue Depth" section.

Guidelines for Changing Watermark Values

If you need to change the watermark values, follow these guidelines:

For better VC utilization and accuracy, raise the low watermark value (and possibly the high watermark value).

For better per-queue accuracy, increase the spread between the watermark values.

For better latency, decrease the high watermark value.

For a higher number of cells in the queue or for better TCP performance, increase the high watermark value.

The high watermark can be calculated based on the worst-case latency, VC traffic speed, IP packet size, and ATM encapsulation type used (PPPoE, PPPoA, RBE). The low watermark is typically 80 percent of the high watermark. The following formula is used to calculate the high watermark:

High_water = ((max latency (ms) - (max_pktsize / VC_speed) ms) * VC_speed) / (53 * 8)

where:

High_water is the high watermark.

max latency is the maximum latency in milliseconds (ms).

max_pktsize is the maximum packets size.

VC_speed is the VC rate.

The maximum packet size is calculated using the following formula:

max_pksize = roundup ((ip framesize + encap_ovh) / 48) * 53 * 8

where:

ip framesize is the size of the IP frame.

encap_ovh is the encapsulation overhead.

For example, suppose that a VC's high and low watermark values need to be configured such that latency is not greater than 100 ms. The VC uses PPPoEoA; the VC IP frame size is 256; and the VC bandwidth is 512 kbps. With PPPoEoA, encapsulation overhead (encap_ovh) is 40 bytes.

Max_pksize = roundup ((256 + 40) / 48) * 53 * 8 = 7 * 53 * 8 = 2968

High_water = ((100 (ms) - (2968 /512K) ms) * 512K) / (53 * 8)

= ((100 (ms) - 5.8 ms) * 512K) / (53 * 8)

= 114

Low_water = 91 (80 percent of High_water)

Modifying the VC Weight and the VP Shaping Parameters

In Cisco IOS Release 12.3(7)XI1, when you change the weight of a VC or the VP shaping parameters, the SAR mechanism brings down the VC or VP and the session goes down.

In Cisco IOS Release 12.3(7)XI2 and later releases, you can change the VC weight, VP shaping parameters, or VC shaping parameters without affecting the state of the VC or VP. Instead, the VC and VP remain up and operational.

The dynamic parameters include the following:

ATM VP parameters such as peak cell rate (PCR) and cell delay variation tolerance (CDVT)

VC parameters such as weight, PCR, sustained cell rate (SCR), maximum burst size (MBS), and CDVT

If VC members of a VP do not have a configured weight and you dynamically modify the VP rate, the router dynamically adjusts the weight of the member VCs based on the associated tunnel's new rate. The member VCs remain up as their weights are dynamically modified.

If you dynamically modify the tunnel VC's shaping parameters (for example, the PCR or SCR), the router adjusts the tunnel VC's weight based on the VC speed, if no weight is configured for the VC. If a VC weight is configured, the router adjusts the tunnel VC's weight based on the configured weight.

Restrictions and Limitations for VC Weighting

(PRE2 only) A weight of less than 10 can adversely affect the performance of the ATM port. We recommend that you do not use a weight that is less than 10.

When you change VC parameters or the VP rate, the VP tunnel's effective shape rate can momentarily fluctuate and cause the router to send cells at a rate that is over or under the configured rates. The session stays up and no data is lost.

When dynamically modifying an ATM VP or VC configuration, you cannot dynamically change the queue depth or the type of VC. For example, you cannot dynamically change a constant bit rate (CBR) VC to a variable bit rate-nonreal time (VBR-nrt) VC.

Configuring VC Weighting

To configure VC weighting, perform the following configuration tasks:

Configuring ATM VC Weighting

Configuring VC Weighting Using a VC Class Map

Configuring VC Weighting on a Range of PVCs

Configuring VC Weighting On Subinterfaces Using a Bandwidth Remaining Ratio

Configuring VC Weighting on Class Queues Using Bandwidth Remaining Ratio

Configuring VC Queue Depth

Configuring ATM VC Weighting

To configure ATM VC weighting, enter the following commands beginning in global configuration mode:

 
Command
Purpose

Step 1 

Router(config)# interface atm slot/subslot/port.subinterface point-to-point

Selects an ATM interface or subinterface. Enters interface or subinterface configuration mode.

Step 2 

Router(config-subif)# pvc vpi/vci

Selects an ATM PVC.

vpi/ is the virtual path identifier. If you do not specify a VPI value and the slash character (/), the VPI value defaults to 0.

vci is the virtual channel identifier.

Step 3 

Router(config-if-atm-vc)# weight weight-value

Specifies the weight value.

weight-value is the number of cells that a VC can send to the VP tunnel before the SAR mechanism moves on to the next VC. A high value has a higher VC priority in the VP scheduler. Valid values are from 1 to 255 (PRE2) and 1 to 1000 (PRE3).

Note We recommend that you do not configure the weight_value below 10 (PRE2).

Configuration Example for Configuring ATM VC Weighting

Example 15-6 shows how to configure a weight of 10 for ATM PVC 1/32 on the ATM point-to-point subinterface 1/0/0.1.

Example 15-6 Configuring ATM VC Weighting

Router(config)# interface atm 1/0/0.1 point-to-point
Router(config-subif)# pvc 1/32
Router(config-if-atm-vc)# weight 10

Configuring VC Weighting Using a VC Class Map

To configure VC weighting using a VC class map, enter the following commands beginning in global configuration mode:

 
Command
Purpose

Step 1 

Router(config)# vc-class atm name

Defines a VC class.

name is the name of the VC class.

Step 2 

Router(config-atm-vcc)# weight weight-value

Specifies the weight value.

weight_value is the number of cells that a VC can send to the VP tunnel before the SAR mechanism moves on to the next VC. A high value has a higher VC priority in the VP scheduler. Valid values are from 1 to 255 and 1 to 1000 (PRE3).

Note We recommend that you do not configure the weight_value below 10 (PRE2).

Step 3 

Router(config-atm-vcc)# exit

Exits ATM VC class configuration mode.

Step 4 

Router(config)# interface atm slot/subslot/port.subinterface point-to-point

Selects an ATM subinterface. Enters subinterface configuration mode.

Step 5 

Router(config-subif)# pvc vpi/vci

Selects an ATM PVC.

vpi/ is the virtual path identifier. If you do not specify a VPI value and the slash character (/), the VPI value defaults to 0.

vci is the virtual channel identifier.

Step 6 

Router(config-if-atm-vc)# class-vc vc-classname

Applies a VC class to the PVC.

vc-classname is the name of the VC class.

Configuration Example for Configuring VC Weighting Using a VC Class Map

Example 15-7 shows how to configure a weight of 20 on the VC class map named Business.

Example 15-7 Configuring VC Weighting Using a VC Class Map

Router(config)# vc-class atm Business
Router(config-atm-vcc)# weight 20
Router(config-atm-vcc)# exit
Router(config)# interface atm 1/0/0.1
Router(config-subif)# pvc 1/32
Router(config-if-atm-vc)# class-vc Business

Configuring VC Weighting on a Range of PVCs

To configure VC weighting on a range of PVCs, enter the following commands beginning in global configuration mode:

 
Command
Purpose

Step 1 

Router(config)# interface atm slot/subslot/port.subinterface

Selects an ATM subinterface. Enters subinterface configuration mode.

Step 2 

Router(config-subif)# range pvc start_vpi/vci end_vpi/vci

Specifies an ATM PVC range.

start_vpi/vci specifies the first virtual path identifier/virtual channel identifier pair in the PVC range.

end_vpi/vci specifies the last virtual path identifier/virtual channel identifier pair in the PVC range.

Step 3 

Router(config-if-atm-range)# weight weight-value

Specifies the weight value.

weight_value is the number of cells that a VC can send to the VP tunnel before the SAR mechanism moves on to the next VC. A high value has a higher VC priority in the VP scheduler. Valid values are from 1 to 255 and 1 to 1000 (PRE3).

Note We recommend that you do not configure the weight_value below 10 (PRE2).

Configuration Example for Configuring VC Weighting on a Range of PVCs

Example 15-8 shows how to configure a weight of 255 on the PVCs in the range of 1/32 to 1/00.

Example 15-8 Configuring VC Weighting on a PVC Range

Router(config)# interface atm 1/0/0.1 multipoint
Router(config-subif)# range pvc 1/32 1/00
Router(config-if-atm-range)# weight 255

Configuring VC Weighting On Subinterfaces Using a Bandwidth Remaining Ratio

To configure VC weighting on a subinterface using a bandwidth remaining ratio, enter the following commands beginning in global configuration mode:


Note You can apply bandwidth-remaining ratios to outbound subinterfaces only.


 
Command or Action
Purpose

Step 1 

Router(config)# policy-map child-policy-name

Creates or modifies a child policy map. Enters policy-map configuration mode.

child-policy-name is the name of the child policy map.

Step 2 

Router(config-pmap)# class class-map-name

Configures the class map that you specify. Enters policy-map class configuration mode.

class-map-name is the name of a previously created class map.

Step 3 

Router(config-pmap-c)# bandwidth bandwidth-kbps

Specifies the bandwidth, in kbps, to be allocated to this traffic class.

bandwidth-kbps is the bandwidth in kilobits per second (kbps).

Note Repeat Steps 4 and 5 to configure additional traffic classes.

Step 4 

Router(config-pmap-c)# exit

Exits policy-map class configuration mode.

Step 5 

Router(config-pmap)# exit

Exits policy-map configuration mode.

Step 6 

Router(config)# policy-map parent-policy-name

Creates or modifies a parent policy map. Enters policy-map configuration mode.

parent-policy-name is the name of the parent policy map.

Step 7 

Router(config-pmap)# class class-default

Configures the class-default class. Enters policy-map class configuration mode.

Note The router interprets any features configured under the class-default class as aggregate features on the subinterface.

Step 8 

Router(config-pmap-c)# bandwidth remaining ratio ratio

Specifies the bandwidth-remaining ratio for the subinterface.

ratio is the value used to determine the amount of unused bandwidth to allocate to each queue on the subinterface during periods of congestion. The scheduler allocates the excess bandwidth relative to other subinterfaces. Valid values are 1 to 1000. The default value is platform-dependent.

The router distinguishes between interface types at the subinterface level when using default bandwidth-remaining ratios. On the Cisco 10000 series router the default ratio value is 1 for VLAN subinterfaces and Frame Relay DLCIs. For ATM subinterfaces, the router computes the default based on the subinterface speed.

Step 9 

Router(config-pmap-c)# shape {average | peak} cir [bc] [be]

(Optional) Shapes the average or peak rate to the rate you specify.

average specifies average rate shaping.

peak specifies peak rate shaping.

cir specifies the committed information rate (CIR), in bits per second (bps).

(Optional) bc specifies the committed burst size, in bits.

(Optional) be specifies the excess burst size, in bits.

Step 10 

Router(config-pmap-c)# service-policy child-policy-name

Applies the child policy map you specify to the traffic class. The router applies the QoS actions specified in the child policy to the traffic class.

child-policy-name is the name of the child policy.

Note The service-policy command typically requires that you specify the direction of the traffic using the input or output keywords. However, when applying a child policy to a parent policy, do not specify traffic direction.

Step 11 

Router(config-pmap-c)# exit

Exits policy-map class configuration mode.

Step 12 

Router(config-pmap)# exit

Exits policy-map configuration mode.

Step 13 

Router(config)# interface type slot/module/port.subinterface [point-to-point | multipoint]

Creates or modifies the interface you specify. Enters subinterface configuration mode.

type is the interface type (for example, Gigabit Ethernet).

slot/module/port.subinterface is the number of the subinterface that identifies the subinterface (for example, 1/0/0.1).

(Optional) point-to-point indicates that the subinterface is a point-to-point subinterface.

(Optional) multipoint indicates that the subinterface is a point-to-multipoint subinterface.

Step 14 

Router(config-if)# service-policy {input | output} parent-policy-name

Applies the parent policy to the subinterface.

input indicates to apply the service policy to inbound traffic.

output indicates to apply the service policy to outbound traffic.

parent-policy-name is the name of the parent policy map.

The router shapes the subinterface traffic to the shaping rate specified in the parent class-default class and applies the QoS actions specified in the child policy to traffic matching the traffic classes.

During periods of congestion, the router uses the bandwidth-remaining ratio specified in the parent policy map to allocate unused bandwidth on this subinterface relative to other subinterfaces.

Configuration Example for Configuring VC Weighting on a Subinterface Using Bandwidth Remaining Ratio

The following example shows how to differentiate one ATM PVC from another during congestion by using bandwidth-remaining ratios. In the example, during periods of congestion in which the traffic on all PVCs on the interface exceeds the interface speed, the router uses the configured bandwidth-remaining ratio of 10 to determine the amount of excess (unused by priority traffic) bandwidth to allocate to non-priority traffic on PVC 0/200, relative to the other ATM PVCs configured on the interface.

policy-map Child
class precedence_0
bandwidth 100
class precedence_1
bandwidth 10000
!
policy-map Parent
class class-default
bandwidth remaining ratio 10
service-policy Child
!
interface ATM2/0/3.200 point-to-point
ip address 10.20.1.1 255.255.255.0
pvc 0/200
protocol ip 10.20.1.2
vbr-nrt 50000
encapsulation aal5snap
service-policy output Parent

Note If PVC 98/204 is configured on the same interface as PVC 0/200 and with a bandwidth-remaining ratio of 1, during times of congestion PVC 0/200 would have 10 times more bandwidth available to it for non-priority traffic than PVC 98/204 would have.


The following example shows how to configure bandwidth-remaining ratios on an Ethernet subinterface using a hierarchical policy. In the example, Gigabit Ethernet subinterface 1/0/0.1 is shaped to 100 Mbps. During congestion, the router uses the bandwidth-remaining ratio of 10 to determine the amount of excess bandwidth (unused by priority traffic) to allocate to the non-priority traffic on subinterface 1/0/0.1, relative to the other subinterface-level and class-level queues on the interface.

policy-map Child
class precedence_0
bandwidth 10000
class precedence_1
shape average 100000
bandwidth 100
!
policy-map Parent
class class-default
bandwidth remaining ratio 10
shape average 100000000
service-policy Child
!
interface GigabitEthernet1/0/0.1
encapsulation dot1Q 100
ip address 10.1.0.1 255.255.255.0
service-policy output Parent

Configuring VC Weighting on Class Queues Using Bandwidth Remaining Ratio

To configure VC weighting on a class queue using a bandwidth remaining ratio, enter the following commands beginning in global configuration mode:

 
Command or Action
Purpose

Step 1 

Router(config)# policy-map child-policy-name

Creates or modifies a child policy map. Enters policy-map configuration mode.

child-policy-name is the name of the child policy map.

Step 2 

Router(config-pmap)# class class-map-name

Configures the class map that you specify. Enters policy-map class configuration mode.

class-map-name is the name of a previously created class map.

Step 3 

Router(config-pmap-c)# shape {average | peak} cir [bc] [be]

(Optional) Shapes the average or peak rate to the rate you specify.

average specifies average rate shaping.

peak specifies peak rate shaping.

cir specifies the committed information rate (CIR), in bits per second (bps).

(Optional) bc specifies the committed burst size, in bits.

(Optional) be specifies the excess burst size, in bits.

Step 4 

Router(config-pmap-c)# bandwidth remaining ratio ratio

(Optional) Specifies the bandwidth-remaining ratio for the traffic class.

ratio is the value used to determine the amount of unused bandwidth to allocate to each queue on the subinterface during periods of congestion. The scheduler allocates the excess bandwidth relative to other subinterfaces. Valid values are 1 to 1000. The default value is platform-dependent.

The router makes no distinction between interface types at the class level when using the default bandwidth-remaining ratio. On the Cisco 10000 series router the default bandwidth-remaining ratio value is 1.

Note Repeat Steps 5 and 6 for each class queue you want to define.

Step 5 

Router(config-pmap-c)# exit

Exits policy-map class configuration mode.

Step 6 

Router(config-pmap)# exit

Exits policy-map configuration mode.

Step 7 

Router(config)# policy-map parent-policy-name

Creates or modifies a parent policy map. Enters policy-map configuration mode.

parent-policy-name is the name of the parent policy map.

Step 8 

Router(config-pmap)# class class-default

Configures the class-default class. Enters policy-map class configuration mode.

Note The router interprets any features configured under the class-default class as aggregate features on the subinterface.

Step 9 

Router(config-pmap-c)# shape {average | peak} cir [bc] [be]

Shapes the average or peak rate to the rate you specify.

average specifies average rate shaping.

peak specifies peak rate shaping.

cir specifies the committed information rate (CIR), in bits per second (bps).

(Optional) bc specifies the committed burst size, in bits.

(Optional) be specifies the excess burst size, in bits.

Step 10 

Router(config-pmap-c)# bandwidth remaining ratio ratio

(Optional) Specifies the bandwidth-remaining ratio for the subinterface.

ratio is the value used to determine the amount of unused bandwidth to allocate to each queue on the subinterface during periods of congestion. The scheduler allocates the excess bandwidth relative to other subinterfaces. Valid values are 1 to 1000. The default value is platform-dependent.

The router distinguishes between interface types at the subinterface level when using default bandwidth-remaining ratios. On the Cisco 10000 series router the default ratio value is 1 for VLAN subinterfaces and Frame Relay DLCIs. For ATM subinterfaces, the router computes the default based on the subinterface speed.

Step 11 

Router(config-pmap-c)# service-policy child-policy-name

Applies the child policy map you specify to the traffic class. The router applies the QoS actions specified in the child policy to the traffic class.

child-policy-name is the name of the child policy.

Note The service-policy command typically requires that you specify the direction of the traffic using the input or output keywords. However, when applying a child policy to a parent policy, do not specify traffic direction.

Step 12 

Router(config-pmap-c)# exit

Exits policy-map class configuration mode.

Step 13 

Router(config-pmap)# exit

Exits policy-map configuration mode.

Step 14 

Router(config)# interface type slot/module/port.subinterface [point-to-point | multipoint]

Creates or modifies the interface you specify. Enters subinterface configuration mode.

type is the interface type (for example, Gigabit Ethernet).

slot/module/port.subinterface is the number of the subinterface that identifies the subinterface (for example, 1/0/0.1).

(Optional) point-to-point indicates that the subinterface is a point-to-point subinterface.

(Optional) multipoint indicates that the subinterface is a point-to-multipoint subinterface.

Step 15 

Router(config-if)# service-policy {input | output} parent-policy-name

Applies the parent policy to the subinterface.

input indicates to apply the service policy to inbound traffic.

output indicates to apply the service policy to outbound traffic.

parent-policy-name is the name of the parent policy map.

Note When congestion occurs, the class queues receive bandwidth according to the specified class-level bandwidth-remaining ratios.

Configuration Example for VC Weighting on a Class Queue Using Bandwidth Remaining Ratio

In the following sample configuration, the vlan10_policy is applied on the subinterface Gigabit Ethernet 1/0/0.10 and the vlan20_policy is applied on the subinterface Gigabit Ethernet 1/0/0.20. During congestion on the interface, subinterface GE 1/0/0.20 has 10 times more available bandwidth than subinterface GE1/0/0.10 because the bandwidth-remaining ratio for subinterface GE 1/0/0.20 is 10 times more than the bandwidth-remaining ratio for subinterface 1/0/0.10: 100 on subinterface 1/0/0.20 and 10 on subinterface 1/0/0.10.

When congestion occurs within a subinterface level, the class queues receive bandwidth according to the class-level bandwidth-remaining ratios. In the example, the bandwidth for classes precedence_0, precedence_1, and precedence_2 is allocated based on the bandwidth-remaining ratios of the classes: 20, 40, and 60, respectively.

policy-map child-policy
class precedence_0
shape average 500000
bandwidth remaining ratio 20 <---- Class-level ratio
class precedence_1
shape average 500000
bandwidth remaining ratio 40 <---- Class-level ratio
class precedence_2
shape average 500000
bandwidth remaining ratio 60 <---- Class-level ratio
!
policy-map vlan10_policy
class class-default
shape average 1000000
bandwidth remaining ratio 10 <---- Subinterface-level ratio
service-policy child-policy
!
policy-map vlan20_policy
class class-default
shape average 1000000
bandwidth remaining ratio 100 <---- Subinterface-level ratio
service-policy child_policy
!
!
interface GigabitEthernet 1/0/0.10
encapsulation dot1q 10
service-policy output vlan10_policy
!
interface GigabitEthernet 1/0/0.20
encapsulation dot1q 20
service-policy output vlan20_policy

Configuring VC Queue Depth

To configure the queue depth of a VC, enter the following commands beginning in global configuration mode:

 
Command
Purpose

Step 1 

Router(config)# interface atm slot/subslot/port.subinterface point-to-point

Selects an ATM subinterface.

Step 2 

Router(config-subif)# pvc vpi/vci

Selects an ATM PVC.

vpi/ is the virtual path identifier. If you do not specify a VPI value and the slash character (/), the VPI value defaults to 0.

vci is the virtual channel identifier.

Step 3 

Router(config-if-atm-vc)# queue-depth hwm lwm

Defines the queue-depth size by setting the high and low watermarks.

hwm is the high watermark.

lwm is the low watermark.

For information about the default high and low watermark values, see the "High Watermark and Low Watermark Default Values" section.

Configuration Example for Configuring VC Queue Depth

Example 15-9 shows how to set the high watermark to 10 and the low watermark to 8 on PVC 1/32 on the ATM point-to-point subinterface 1/0/0.1.

Example 15-9 Configuring VC Queue Depth

Router(config)# interface atm 1/0/0/.1 point-to-point
Router(config-subif)# pvc 1/32
Router(config-if-atm-vc)# queue-depth 10 8

Configuration Examples

This section provides the following configuration examples:

Configuration Example for Oversubscribing a Shaped ATM VC and VP

Configuration Example for Configuring the Weight of a VC

Configuration Example for Configuring the Weight of Multiple VCs

Configuration Example for Configuring VC Weight Using a Bandwidth Remaining Ratio

Configuration Example for Setting High and Low Watermark Thresholds

Configuration Example for Oversubscribing a Shaped ATM VC and VP

Example 15-10 shows how to oversubscribe a shaped ATM VC and VP.

Example 15-10 Oversubscribing an ATM Interface

Router(config)# interface atm 5/0/0
Router(config-if)# no ip address
(The following command sets up the flow bits to optimize latency and per-VC utilization factors. Also sets the system 
up for Call Admission Control.)
Router(config-if)# atm over-subscription-factor 10 
Router(config-if)# atm sonet stm-4
!
(The following command sets up the permanent virtual path (PVP). This is ALWAYS done at the main interface level. 
It is important to note the PVP number as this is used to determine which VCs will be mapped into this PVP. The PVP 
number translates to a VPI value at the VC level.)
Router(config-if)# atm pvp 68 1000 no-f4-oam 
!
Router(config)# interface atm 5/0/0.68 multipoint
Router(config-subif)# atm pppatm passive
(The following VPI value of 68 ensures that these VCs will be associated with PVP 68.)
Router(config-subif)# range pvc 68/101 68/451 
(The following command sets up VTMS scheduling on PXF. Packets are sent down a 512-kbps VC to the SAR 
mechanism. Remember this is SHAPING (not policing) the VC. Note that the modular CLI shape command is not 
used.)
Router(config-if-atm-range)# vbr-nrt 512 38 150 
!
Router(config-if-atm-range)# encapsulation aal5autoppp Virtual-Template1
!
Router(config)# interface Virtual-Template1
Router(config-if)# ip unnumbered Loopback0
Router(config-if)# no ip directed-broadcast
Router(config-if)# no logging event link-status
Router(config-if)# keepalive 120
Router(config-if)# peer default ip address pool adsl
Router(config-if)# ppp authentication chap callin 

Configuration Example for Configuring the Weight of a VC

Example 15-11 shows how to configure the weight for an individual VC. This weight value determines which VCs get priority in the VP schedules in a congested state. In the example, a weight of 10 is configured for PVC 1/32 on ATM subinterface 1/0/0.1.

Example 15-11 Configuring the Weight of an Individual VC

Router(config)# interface atm 1/0/0.1
Router(config-subif)# pvc 1/32
Router(config-if-atm-vc)# weight 10

Configuration Example for Configuring the Weight of Multiple VCs

Example 15-12 shows how to configure the weight for multiple PVCs. In the example, each PVC has the same sustained cell rate (SCR), but has different weights configured. The PVCs with the higher weights get higher priority in the VP scheduler. Therefore, the PVCs in the range of 1/40 to 1/60 with a weight of 40 have higher priority than the other configured PVCs:

PVC 1/34 with a weight of 30

PVC 1/33 with a weight of 20

PVC 1/32 with a weight of 10

Example 15-12 Configuring the Weight of Multiple VCs

Router(config)# interface atm 1/0/0.1 point-to-point
Router(config-subif)# pvc 1/32
Router(config-if-atm-vc)# vbr-nrt 1024 512
Router(config-if-atm-vc)# weight 10
Router(config-if-atm-vc)# exit
Router(config-subif)# interface atm 1/0/0.2 point-to-point
Router(config-subif)# pvc 1/33
Router(config-if-atm-vc)# vbr-nrt 1024 512
Router(config-if-atm-vc)# weight 20
Router(config-if-atm-vc)# exit
Router(config-subif)# interface atm 1/0/0.3 point-to-point
Router(config-subif)# pvc 1/34
Router(config-if-atm-vc)# vbr-nrt 1024 512
Router(config-if-atm-vc)# weight 30
Router(config-if-atm-vc)# exit
Router(config-subif)# interface atm 1/0/0.10 point-to-point
Router(config-subif)# range pvc 1/40 1/60
Router(config-if-atm-range)# vbr-nrt 1024 512
Router(config-if-atm-range)# weight 40

Configuration Example for Configuring VC Weight Using a Bandwidth Remaining Ratio

Example 15-13 shows how to configure VC weight using a bandwidth remaining ratio. In the example, the bandwidth remaining ratio command is configured in an hierarchical policy to assign a weight of 100 to the VC.

Example 15-13 Configuring VC Weight Using a Bandwidth Remaining Ratio

interface atm 2/0/4.1801 point-to-point
ip address 10.18.100.1 255.255.255.0
pvc 18/100
vbr-nrt 100 100 50
encapsulation aal5snap
service-policy output myParentPolicy
!
Policy Map myParentPolicy
Class class-default
Average Rate Traffic Shaping
cir 25%
bandwidth remaining ratio 100
service-policy myChildPolicy
!
Policy Map myChildPolicy
Class prec0
police 4000000 9216 0 conform-action transmit exceed-action drop violate-action 
drop 
priority level 1
Class prec1
police 4000000 9216 0 conform-action transmit exceed-action drop violate-action 
drop 
priority level 2
Class prec2
bandwidth remaining ratio 10
Class prec3
bandwidth remaining ratio 20

Configuration Example for Setting High and Low Watermark Thresholds

Example 15-14 shows how to set the high and low watermark thresholds for PVC 1/32 on the ATM subinterface 1/0/0.10. In the example, the high watermark is set to 20 and the low watermark is set to 16.

Example 15-14 Setting High and Low Watermark Thresholds

Router(config)# interface atm 1/0/0.10 point-to-point
Router(config-subif)# pvc 1/32
Router(config-if-atm-vc)# queue-depth 20 16

Verifying Oversubscription and VC Weighting

To verify a virtual circuit oversubscription or weighting configuration, enter any of the following commands in privileged EXEC mode:

Command
Purpose

Router# show atm class-links {vpi/vci | name}

Displays virtual circuit (VC) parameter configurations and where the parameter values are inherited from.

vpi/ is the virtual path identifier. If you do not specify a VPI value and the slash character (/), the VPI value defaults to 0.

vci is the virtual channel identifier.

name is the name of the VC.

Router# show atm interface interface

Displays the configuration of the interface you specify, including the default high and low watermark values.

Router# show atm pvc vpi/vci

Displays the high and low watermarks for the individual PVC that you specify.

vpi/ is the virtual path identifier. If you do not specify a VPI value and the slash character (/), the VPI value defaults to 0.

vci is the virtual channel identifier.

Router# show controllers interface

Displays the total subscribed rate of all VCs on the port.

Router# show interfaces type number slot/subslot/port.subinterface

Displays information about the interface you specify.

type is the interface type such as ATM.

number is the port number on the selected interface.

Router# show running-config

Displays the contents of the currently running configuration file.

Router# show running-config [interface type number]

Displays the configuration for a specific interface.

Router# show vlans

Displays the configuration of virtual LAN subinterfaces.


Verification Examples for Oversubscription and VC Weighting

This section provides the following examples for verifying oversubscription and VC weighting configurations:

Verifying Default High and Low Watermarks on an Interface

Verifying High and Low Watermarks on an Individual VC

Verifying VC Parameter Configurations and Parameter Inheritance

Verifying Default High and Low Watermarks on an Interface

Example 15-15 shows how to use the show atm interface command to display the default high and low watermark values for ATM interface 1/0/0. In the example, the asterisk (*) indicates aggregated VC settings.

Example 15-15 Verifying Default High and Low Watermarks on an Interface

Router# show atm interface atm1/0/0
Interface ATM1/0/0:
AAL enabled: AAL5 , Maximum VCs: 8191, Current VCCs: 2
 
   
Max. Datagram Size: 4482
PLIM Type: SONET - 155000Kbps, TX clocking: LINE
Cell-payload scrambling: ON
sts-stream scrambling: ON
238276 input, 98 output, 0 IN fast, 0 OUT fast
	Avail bw = 155000
Config. is ACTIVE
Default Queue Depth settings:
	Rate Range 	High Watermark 	Low Watermark
	Kbps 	Cells 	Cells
	0 - 4499 	192 	128
	4500 - 40999 	256 	256
	41000 - 99999 	256 	256
	100000 - 622000 	256 	256
	149760 - 149760* 	240 	224

Verifying High and Low Watermarks on an Individual VC

Example 15-16 shows how to use the show atm pvc command to display high and low watermarks for PVC 1/32.

Example 15-16 Verifying High and Low Watermarks on an Individual VC

Router# show atm pvc 1/32
ATM1/0/0.1: VCD: 1, VPI: 1, VCI: 32
UBR, PeakRate: 149760 (353208 cps)
	CDVT: 714.0 Usecs, High Watermark: 192, Low Watermark: 128
AAL5-LLC/SNAP, etype:0x0, Flags: 0xC20, VCmode: 0x0, Encapsize: 12
OAM frequency: 0 second(s), OAM retry frequency: 1 second(s)
OAM up retry count: 3, OAM down retry count: 5
OAM Loopback status: OAM Disabled
OAM VC Status: Not Managed
ILMI VC status: Not Managed
InARP frequency: 15 minute(s)
High Watermark: 192, Low Watermark: 128
InPkts: 475877, OutPkts: 475512, InBytes: 33317105, OutBytes: 33287714
InPRoc: 238299, OutPRoc: 98, Broadcasts: 0
InFast: 0, OutFast: 0
InPktDrops: 0, OutPktDrops: 0
Out CLP=1 Pkts: 0
OAM cells received: 0
F5 InEndloop: 0, F5 InSegloop: 0, F5 InAIS: 0, F5 InRDI: 0
F4 InEndloop: 0, F4 InSegloop: 0, F4 InAIS: 0, F4 InRDI: 0
OAM cells sent: 0
F5 OutEndloop: 0, F5 OutSegloop: 0, F5 OutRDI: 0
F4 OutEndloop: 0, F4 OutSegloop: 0, F4 OutRDI: 0
OAM cell drops: 0
Status: UP
PPPOE enabled. Current number of pppoe sessions: 1

Verifying VC Parameter Configurations and Parameter Inheritance

Example 15-17 uses the show atm class-links command to display virtual circuit (VC) parameter configurations and from where the parameter values are inherited.

Example 15-17 Verifying VC Parameter Configurations and Parameter Inheritance

Router# show atm class-links 1/32
Displaying vc-class inheritance for ATM1/0/0.1, vc 1/32:
no broadcast -
encapsulation - VC-class configured on vc
no ilmi manage -
inarp 15 -
no oam-pvc manage -
protocol ip inarp no broadcast -
protocol ipx inarp no broadcast -
protocol ppp Virtual-Template1 - VC-class configured on vc
ubr -
no cdvt -
queue depth high watermark 96 low watermark 80 - VC-class configured on vc

Related Documentation

This section provides hyperlinks to additional Cisco documentation for the features discussed in this chapter. To display the documentation, click the document title or a section of the document highlighted in blue. When appropriate, paths to applicable sections are listed below the documentation title.