- Policing and Shaping Overview
- IPv6 QoS: MQC Traffic Shaping
- Distribution of Remaining Bandwidth Using Ratio
- QoS Percentage-Based Shaping
- Ethernet Overhead Accounting
- MQC Traffic Shaping Overhead Accounting for ATM
- QoS Policy Accounting
- PPP Session Queueing on ATM VCs
- VP/VC Shaping for PPPoEoA/PPPoA
- Hierarchical Color-Aware Policing
- IPv6 QoS: MQC Traffic Policing
- Traffic Policing
- Policer Enhancement Multiple Actions
- Control Plane Policing
- Management Plane Protection
- Class-Based Policing
- QoS Percentage-Based Policing
- Two-Rate Policer
- Punt Policing and Monitoring
- Port-Shaper and LLQ in the Presence of EFPs
- Adaptive QoS over DMVPN
- Finding Feature Information
- Prerequisites for PPP Session Queueing on ATM VCs
- Restrictions for PPP Session Queueing on ATM VCs
- Information About PPP Session Queueing on ATM VCs
- How to Configure PPP Session Queueing on ATM VCs
- Configuration Examples for PPP Session Queueing on ATM VCs
- Additional References
- Feature Information for PPP Session Queueing on ATM VCs
PPP Session Queueing on ATM VCs
The PPP Session Queueing on ATM VCs feature enables you to shape and queue PPP over Ethernet over ATM (PPPoEoA) sessions to a user-specified rate. Multiple sessions can exist on any ATM VC and have Quality of Service (QoS) policies applied, or some of the sessions might have QoS policies. The router shapes the sum of allbandwidth used for PPPoEoA traffic on a VC so that the subscriber’s connection to the Digital Subscriber Line Access Multiplexer (DSLAM) does not become congested. Queueing-related functionality provides different levels of service to the various applications that run over the PPPoEoA session.
A nested, two-level hierarchical service policy is used to configure session shaping directly on the router using the modular quality of service command-line interface (MQC). The hierarchical policy consists of the following:
Child policy--Defines QoS actions using QoS commands such as the priority, bandwidth, and police commands.
Parent policy--Contains only the class-default class with the shape or bandwidth remaining ratio command configured, or with both commands configured:
Note | The PPP Session Queueing on ATM VCs feature works with both PPP terminated aggregation (PTA) and L2TP access concentrator (LAC) configurations. |
The figure below illustrates PPP session Queueing on ATM VCs.
- Finding Feature Information
- Prerequisites for PPP Session Queueing on ATM VCs
- Restrictions for PPP Session Queueing on ATM VCs
- Information About PPP Session Queueing on ATM VCs
- How to Configure PPP Session Queueing on ATM VCs
- Configuration Examples for PPP Session Queueing on ATM VCs
- Additional References
- Feature Information for PPP Session Queueing on ATM VCs
Finding Feature Information
Your software release may not support all the features documented in this module. For the latest caveats and feature information, see Bug Search Tool and the release notes for your platform and software release. To find information about the features documented in this module, and to see a list of the releases in which each feature is supported, see the feature information table at the end of this module.
Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to www.cisco.com/go/cfn. An account on Cisco.com is not required.
Prerequisites for PPP Session Queueing on ATM VCs
PPPoEoA sessions must be enabled.
Create traffic classes using the class-map command and specify the match criteria used to classify traffic.
For dynamic PPPoEoA session queueing using RADIUS, you must: - Enable authentication, authorization, and accounting (AAA) on the router
- Configure the RADIUS server for dynamic QoS
- Create the subscriber’s user profile on the RADIUS server
Restrictions for PPP Session Queueing on ATM VCs
You cannot configure PPP session queueing on unshaped VCs--VCs without a specified peak cell rate (PCR) or sustained cell rate (SCR).
VCs with session queueing polices cannot be part of a shaped virtual path (VP).
If the same ATM category (for example, shaped unspecified bit rate (UBR)) contains both high and low bandwidth VCs, the SAR mechanism can cause low throughput for high bandwidth VCs. The workaround is to use different ATM classes for low and high bandwidth VCs. For example, configure low bandwidth VCs as shaped UBR and high bandwidth VCs as variable bit rate-nonreal-time (VBR-nrt) or constant bit rate (CBR).
The CLASS-BASED QOS MIB does not include statistics for service policies applied to sessions.
RADIUS accounting does not include queueing statistics.
Information About PPP Session Queueing on ATM VCs
- Dynamically Applying QoS Policies to PPP Sessions on ATM VCs
- PPP Session Queueing Inheritance
- Interfaces Supporting PPP Session Queueing
- Mixed Configurations and Queueing
- Bandwidth Mode and ATM Port Oversubscription
- Oversubscription at the Session Level
Dynamically Applying QoS Policies to PPP Sessions on ATM VCs
The router allows you to dynamically apply QoS policy maps to PPPoEoA sessions using RADIUS. Although the actual configuration of the QoS policies occurs on the router, you can configure the following attribute-value (AV) pairs on RADIUS to specify the name of the policy map to dynamically apply to the session:
"ip:sub-qos-policy-in=<name of the QoS policy in ingress direction>" "ip:sub-qos-policy-out=<name of egress policy>"
You define the AV pairs in one of the following RADIUS profiles:
User profile--The user profile on the RADIUS server contains an entry that identifies the policy map name applicable to the user. The policy map name is the service that RADIUS downloads to the router after a session is authorized.
Service profile--The service profile on the RADIUS server specifies a session identifier and an AV pair. The session identifier might be, for example, the IP address of the session. The AV pair defines the service (policy map name) to which the user belongs.
After receiving a service-logon request from the policy server, RADIUS sends a change of authorization (CoA) request to the router to activate the service for the subscriber, who is already logged in. If the authorization succeeds, the router downloads the name of the policy map from RADIUS using the ip:sub-qos-policy-in[out]= AV-pair and applies the QoS policy to the PPPoEoA session. Because the service policy contains queueing-related actions, the router sets up the appropriate class queues.
Note | Although the router also supports the RADIUS vendor specific attribute (VSA) 38, Cisco-Policy-Down and Cisco-Policy-Up, we recommend that you use the ip:sub-qos-policy-in[out]= AV pairs for QoS policy definitions. |
PPP Session Queueing Inheritance
PPP Sessions either inherit queues from their parent interface or they have their own queues. Each PPPoEoA session for which session queueing is configured has its own set of queues.
The table below describes the queues to which the router directs session traffic.
Queueing Policy |
Queue Used for Session Traffic |
---|---|
No policy |
VC default queue |
Applied to the VC |
VC queues |
Applied to the session |
Session queues |
Interfaces Supporting PPP Session Queueing
The router supports PPP session queueing on shaped ATM VCs for outbound traffic only.
The router does not support PPP session queueing on inbound ATM interfaces.
Mixed Configurations and Queueing
A mixed configuration is one in which all sessions do not have QoS applied to them. On some VCs, the queueing policy is applied at the VC level, and on other VCs the queueing policies are applied on the sessions. Some sessions have no policy applied at all. As a result, the router uses the hierarchical queueing framework (HQF) to direct traffic in the following ways:
If no queueing policy is applied at the VC or session level, the router sends all traffic on the VC to the default queue, including traffic from sessions on the VC that have a policing-only policy applied or no policy applied.
If a queueing policy is applied at the VC level, but not at the session level, the router sends traffic to the queues associated with the queueing policy on the VC.
If queueing policies are applied to some sessions on a VC but not to other sessions, the router sends the traffic with a policing-only policy or with no policy applied to the VC’s default queue. The router sends traffic with queueing policies to the queues associated with the queueing policy applied to the session.
Bandwidth Mode and ATM Port Oversubscription
An ATM port can operate in reserved bandwidth mode or shared bandwidth mode.
When a port is not oversubscribed (the sum of the bandwidths of all VCs on the port is less than the port bandwidth), the port operates in reserved bandwidth mode--a specific amount of bandwidth is reserved for each VC on the port. If a VC does not use all of its allocated bandwidth, the unused bandwidth is not shared among the VCs on the port.
When the ATM port is oversubscribed (the sum of the bandwidths of all VCs on the port is greater than the port bandwidth), the port operates in shared bandwidth mode. In this mode, any unused bandwidth is available for reuse by the other VCs on the port, up to the VC’s respective shape rate--traffic on a VC cannot exceed the shape rate of that VC.
Oversubscription at the Session Level
Oversubscription at the session level occurs after session traffic shaping and when the aggregate session traffic exceeds the subinterface shape rate. After all priority traffic is accounted for, the router distributes the remaining bandwidth on the VC to the sessions according to the value specified in the bandwidth remaining ratio command configured in the parent policy of the policy applied to the sessions. If the bandwidth remaining ratio command is not specified in the parent policy, the router uses a default ratio of 1.
How to Configure PPP Session Queueing on ATM VCs
- Configuring PPP Session Queueing Using a Virtual Template
- Associating the Hierarchical Policy Map with a Virtual Template
- Applying the Virtual Template to an ATM Subinterface
- Configuring PPP Session Queueing Using Radius
- Verifying PPP Session Queueing on ATM VCs
Configuring PPP Session Queueing Using a Virtual Template
A virtual templat e is a logical interface whose configuration can specify generic configuration information for a specific purpose, user-specific configuration information, and router-dependent information. You configure a virtual template on an interface and apply QoS policy maps to the virtual template. The virtual template inherits the QoS features specified in the policy map. When the router establishes sessions on an interface, the router applies the QoS features specified in the virtual template configuration to the virtual access interfaces (VAIs) created for the sessions, including the QoS features specified in the policy map attached to the virtual template.
A broadband aggregation group (bba-group) configured on an ATM interface points to the virtual template the router uses to apply QoS policies to sessions. When a session arrives on an ATM interface, the router creates a virtual access interface (VAI) for the session and applies the policies associated with the virtual template to the sessions.
To configure PPPoEoA session queueing using a virtual template, perform the following configuration tasks:
Configuring an Hierarchical QoS Policy
1.
enable
2.
configure
terminal
3.
policy-map
policy-map-name
4.
class
class-map-name
5. priority level level
6.
police
bps
[burst-normal
burst-max] [conform-action
action] [exceed-action
action]
violate-action
action
7. set cos value
8. bandwidth remaining ratio
9. exit
10.
policy-map
policy-map-name
11.
class
class-default
12. bandwidth remaining ratio
13.
shape
[average]
mean-rate[burst-size] [excess-burst-size]
14.
service-policy
policy-map-name
DETAILED STEPS
Example
The following example shows how to configure a hierarchical QoS policy. In the example, the child-policy configures QoS features for two traffic classes: Premium and Silver. Premium traffic has priority and is policed at 40 percent. The router sets the IP precedence of Premium traffic to precedence level 3. Silver traffic is policed at 80000 bps and IP precedence level 3 is set. The child-policy is applied to the Parent policy class-default class, which shapes traffic to 200,000 Kbps.
Router(config)# policy-map child-policy Router(config-pmap)# class Premium Router(config-pmap-c)# priority Router(config-pmap-c)# police percent 40 Router(config-pmap-c)# set ip precedence 3 Router(config-pmap-c)# class Silver Router(config-pmap-c)# police 80000 10000 conform-action transmit exceed-action drop Router(config-pmap-c)# set ip precedence 5 Router(config-pmap-c)# exit Router(config-pmap)# policy-map Parent Router(config-pmap)# class class-default Router(config-pmap-c)# shape 200000 Router(config-pmap-c)# service-policy output child-policy Router(config-pmap-c)# exit Router(config-pmap)# exit Router(config)#
Associating the Hierarchical Policy Map with a Virtual Template
1.
enable
2.
configure
terminal
3.
interface
virtual-template
template-
number
4.
service-policy
{input
|
output}
policy-map-name
5. exit
DETAILED STEPS
Example
The following example shows how to associate a policy map with a virtual template. In this example, the policy map named Parent is associated with the virtual template named VirtualTemplate1.
Router(config)# interface virtual-template1 Router(config-if)# service-policy output Parent Router(config-if)# exit Router(config)#
Applying the Virtual Template to an ATM Subinterface
1.
enable
2.
configure
terminal
3.
bba-group
pppoe
group-name
4.
virtual-template
template-number
5. exit
6. interface atm number.subinterface [point-to-point]
7. pvc [name] vpi/vci
8. protocol pppoe group group-name
9. exit
10. exit
DETAILED STEPS
Examples
The following example shows how to associate a virtual template interface with an ATM interface and apply the policies in the virtual template to the sessions on the interface. In the example, the service policy named Parent is applied to the Virtual-Template 8, which is associated with the bba-group named pppoeoa-group. The bba-group is applied to PVC 101/210 on ATM subinterface 4/0/1.10.
bba-group pppoe pppoeoa-group Virtual-Template 8 interface ATM4/0/1.10 point-to-point pvc 101/210 vbr-nrt 4000 2000 50 no dbs enable encapsulation aal5snap protocol pppoe group pppoeoa-group ! interface Virtual-Template8 ip unnumbered Loopback5555 no logging event link-status peer default ip address pool pool-1 ppp authentication chap service-policy output Parent
Configuring PPP Session Queueing Using Radius
To configure PPPoEoA session queueing using RADIUS, perform the following configuration tasks:
Configuring the Policy Map
The router allows you to use RADIUS to apply QoS policy maps to PPPoEoA sessions.
Adding the Cisco QoS AV Pairs to the RADIUS Profile
Cisco attribute-value (AV) pairs are vendor-specific attributes (VSAs) that allow vendors such as Cisco to support their own extended attributes. RADIUS attribute 26 is a Cisco VSA used to communicate vendor-specific information between the router and the RADIUS server.
The RADIUS user profile contains an entry for each user that the RADIUS server authenticates. Each entry establishes an attribute the user can access. When configuring PPPoEoA session queueing using RADIUS, enter the following Cisco AV-pair in the appropriate user profile:
Cisco-AVPair = "ip:sub-qos-policy-out=<name of egress policy>"
The Cisco AV-pair identifies the policy map the router is to use when applying QoS features to a PPPoEoA session. After receiving a service-logon request from the policy server, RADIUS sends a change of authorization (CoA) request to the router to activate the service for the user, who is already logged in. If the authorization succeeds, the router downloads the name of the policy map from RADIUS using the Cisco AV-pair and applies the QoS policy to the session.
Note | Although the router also supports the RADIUS vendor specific attribute (VSA) 38, Cisco-Policy-Down and Cisco-Policy-Up, we recommend that you use the above attribute for QoS policy definitions. |
Verifying PPP Session Queueing on ATM VCs
1.
enable
2.
configure
terminal
3.
show
policy-map
[interface
interface]
4. show policy-map session [uid uid-number] [input | output [class class-name]]
5.
show
running-config
DETAILED STEPS
Command or Action | Purpose | |
---|---|---|
Step 1 |
enable
Example: Router> enable |
Enables privileged EXEC mode.
|
Step 2 |
configure
terminal
Example: Router# configure terminal |
Enters global configuration mode. |
Step 3 |
show
policy-map
[interface
interface]
Example: Router# show policy-map [interface interface] |
Displays information about the policy map attached to the interface you specify. If you do not specify an interface, it displays information about all of the policy maps configured on the router. interface interface is the interface type and number (for example, atm 4/0/0). |
Step 4 |
show policy-map session [uid uid-number] [input | output [class class-name]] Example: Router# show policy-map session [uid uid-number] [input | output [class class-name]] |
Displays the QoS policy map in effect for subscriber sessions. (Optional) uid defines a unique session ID. (Optional) uid-number is a unique session ID. Valid values are from 1 to 65535. (Optional) input displays the upstream traffic of the unique session. (Optional) output displays the downstream traffic of the unique session. (Optional) class identifies the class that is part of the QoS policy-map definition. (Optional) class-name provides a class name that is part of the QoS policy-map definition. |
Step 5 |
show
running-config
Example: Router# show running-config |
Displays the running configuration on the router. The output shows the AAA setup and the configuration of the policy map, ATM VCs, PPPoEoA, dynamic bandwidth selection, virtual template, and RADIUS server. |
Configuration Examples for PPP Session Queueing on ATM VCs
- Example Configuring PPP Session Queueing on ATM VCs
- Example Configuring and Applying an Hierarchical Policy Map
- Example Setting Up RADIUS for PPP Session Queueing on ATM VCs
- Example Verifying PPP Session Queueing on ATM VCs
Example Configuring PPP Session Queueing on ATM VCs
The following example shows how to configure PPPoEoA session queueing. In the example, a hierarchical QoS policy named pm_hier2_0_2 is associated with Virtual-Template555, which is applied to the broadband aggregation group named pppoeoa-group.
bba-group pppoe pppoeoa-group Virtual-Template 555 ! policy-map pm_hier2_child_0_2 class cm_0 priority level 1 police percent 5 2 ms 0 ms conform-action transmit exceed-action drop violate-action drop queue-limit 77 packets class cm_1 shape average percent 80 bandwidth remaining ratio 80 class class-default shape average percent 50 bandwidth remaining ratio 20 policy-map pm_hier2_0_2 class class-default shape average percent 100 bandwidth remaining ratio 100 service-policy pm_hier_child_0_2 interface ATM2/0/7.5555 point-to-point pvc 1/5555 vbr-nrt 4000 2000 50 no dbs enable encapsulation aal5snap protocol pppoe group pppoeoa-group ! ! interface Virtual-Template555 ip unnumbered Loopback5555 no logging event link-status peer default ip address pool pool-1 ppp authentication chap service-policy output pm_hier2_0_2
Example Configuring and Applying an Hierarchical Policy Map
Example Configuring and Applying an Hierarchical Policy Map shows how to configure a hierarchical policy and apply it to a virtual template. The example contains a child policy map named child1 with QoS features defined for the gold and bronze traffic classes. The child1 policy is applied to the parent policy map, which is shaped to 512000 bps. The hierarchical policy is applied to the virtual template named virtual-template 1.
Router(config)# policy-map child1 Router(config-pmap)# class gold Router(config-pmap-c)# priority Router(config-pmap-c)# police percent 40 Router(config-pmap-c)# class bronze Router(config-pmap-c)# police 8000 Router(config-pmap-c)# exit Router(config-pmap)# policy-map parent Router(config-pmap)# class class-default Router(config-pmap-c)# shape 512000 Router(config-pmap-c)# service-policy child1 Router(config-pmap-c)# exit Router(config-pmap)# exit Router(config)# interface virtual-template 1 Router(config-if)# service-policy output parent
Example Setting Up RADIUS for PPP Session Queueing on ATM VCs
Example Setting Up RADIUS for PPP Session Queueing on ATM VCs shows how to define the Cisco AV pairs used to download the policy map name to the router. The first three lines of a subscriber’s sample user profile contain the user password, service type, and protocol type. This information is entered into the subscriber’s user profile when the user profile is first created. The last line is an example of the Cisco QoS AV-pair added to the user profile. The policy map name downloaded to the router is p23.
userid Password = "cisco" Service-Type = Framed, Framed-Protocol = PPP, cisco-avpair = "sub-qos-policy-out=p23"
Example Verifying PPP Session Queueing on ATM VCs
Displaying PPP Session Information--show pxf cpu queue session Command
Example Verifying PPP Session Queueing on ATM VCs uses the show pppoe session command to display the sessions established on the router. In this case, one session is active with a session ID (SID) of 6.
Router# show pppoe session 1 session in LOCALLY_TERMINATED (PTA) State 1 session total Uniq ID PPPoE RemMAC Port VT VA State SID LocMAC VA-st Type 14 6 0009.b68d.bb37 ATM2/0/7.5555 555 Vi3.1 PTA 0009.b68d.bc37 VC: 1/5555 UP
Example Verifying PPP Session Queueing on ATM VCs uses the show policy-map session command to display QoS policy map statistics for traffic in the downstream direction. The example also shows the policy map configurations.
Router# show pppoe session 1 session in LOCALLY_TERMINATED (PTA) State 1 session total Uniq ID PPPoE RemMAC Port VT VA State SID LocMAC VA-st Type 14 6 0009.b68d.bb37 ATM2/0/7.5555 555 Vi3.1 PTA 0009.b68d.bc37 VC: 1/5555 UP Router# Router# Router# show policy-map session uid 14 SSS session identifier 14 - Service-policy output: pm_hier2_0_2 Class-map: class-default (match-any) 0 packets, 0 bytes 30 second offered rate 0 bps, drop rate 0 bps Match: any 0 packets, 0 bytes 30 second rate 0 bps Queueing queue limit 50 packets (queue depth/total drops/no-buffer drops) 0/0/0 (pkts output/bytes output) 0/0 shape (average) cir 2000000, bc 8000, be 8000 target shape rate 2000000 bandwidth remaining ratio 100 Service-policy : pm_hier2_child_0_2 queue stats for all priority classes: Queueing priority level 1 queue limit 77 packets (queue depth/total drops/no-buffer drops) 0/0/0 (pkts output/bytes output) 0/0 Class-map: cm_0 (match-any) 0 packets, 0 bytes 30 second offered rate 0 bps, drop rate 0 bps Match: ip precedence 0 0 packets, 0 bytes 30 second rate 0 bps Priority: 0% (0 kbps), burst bytes 4470, b/w exceed drops: 0 Priority Level: 1 Police: 104000 bps, 1536 limit, 0 extended limit conformed 0 packets, 0 bytes; action: transmit exceeded 0 packets, 0 bytes; action: drop violated 0 packets, 0 bytes; action: drop Class-map: cm_1 (match-any) 0 packets, 0 bytes 30 second offered rate 0 bps, drop rate 0 bps Match: ip precedence 1 0 packets, 0 bytes 30 second rate 0 bps Queueing queue limit 237 packets (queue depth/total drops/no-buffer drops) 0/0/0 (pkts output/bytes output) 0/0 shape (average) cir 1600000, bc 6400, be 6400 target shape rate 1600000 bandwidth remaining ratio 80 Class-map: class-default (match-any) 0 packets, 0 bytes 30 second offered rate 0 bps, drop rate 0 bps Match: any 0 packets, 0 bytes 30 second rate 0 bps Queueing queue limit 77 packets (queue depth/total drops/no-buffer drops) 0/0/0 (pkts output/bytes output) 0/0 shape (average) cir 1000000, bc 4000, be 4000 target shape rate 1000000 bandwidth remaining ratio 20 Router# show policy-map pm_hier2_0_2 Policy Map pm_hier2_0_2 Class class-default Average Rate Traffic Shaping cir 100% bandwidth remaining ratio 100 service-policy pm_hier2_child_0_2 Router# show policy-map pm_hier2_child_0_2 Policy Map pm_hier2_child_0_2 Class cm_0 priority level 1 police percent 5 2 ms 0 ms conform-action transmit exceed-action drop violate-action drop queue-limit 77 packets Class cm_1 Average Rate Traffic Shaping cir 80% bandwidth remaining ratio 80 Class class-default Average Rate Traffic Shaping cir 50% bandwidth remaining ratio 20
Additional References
Related Documents
Related Topic |
Document Title |
---|---|
Cisco IOS commands |
|
QoS commands |
Cisco IOS QoS Command Reference |
Technical Assistance
Description |
Link |
---|---|
The Cisco Support and Documentation website provides online resources to download documentation, software, and tools. Use these resources to install and configure the software and to troubleshoot and resolve technical issues with Cisco products and technologies. Access to most tools on the Cisco Support and Documentation website requires a Cisco.com user ID and password. |
Feature Information for PPP Session Queueing on ATM VCs
The following table provides release information about the feature or features described in this module. This table lists only the software release that introduced support for a given feature in a given software release train. Unless noted otherwise, subsequent releases of that software release train also support that feature.
Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to www.cisco.com/go/cfn. An account on Cisco.com is not required.
Feature Name |
Releases |
Feature Information |
---|---|---|
PPP Session Queueing on ATM VCs |
Cisco IOS XE Release 2.5 |
PPP Session Queueing on ATM Virtual Circuits (VCs) enables you to shape and queue PPP over Ethernet over ATM (PPPoEoA) sessions to a user specified rate. In Cisco IOS Release XE 2.5, this feature was introduced on the Cisco ASR 1000 series routers. |