Prerequisites for Traffic Shaping Overhead Accounting for ATM
Traffic classes must be configured using the class-map command.
The documentation set for this product strives to use bias-free language. For the purposes of this documentation set, bias-free is defined as language that does not imply discrimination based on age, disability, gender, racial identity, ethnic identity, sexual orientation, socioeconomic status, and intersectionality. Exceptions may be present in the documentation due to language that is hardcoded in the user interfaces of the product software, language used based on RFP documentation, or language that is used by a referenced third-party product. Learn more about how Cisco is using Inclusive Language.
The MQC Traffic Shaping Overhead Accounting for ATM feature enables a broadband aggregation system (BRAS) to account for various encapsulation types when applying quality of service (QoS) functionality to packets. Typically, in Ethernet digital subscriber line (DSL) environments, the encapsulation from the router to the digital subscriber line access multiplexer (DSLAM) is Gigabit Ethernet and the encapsulation from the DSLAM to the customer premises equipment (CPE) is ATM. ATM overhead accounting enables the router to account for ATM encapsulation on the subscriber line and for the overhead added by cell segmentation. This functionality enables the service provider to prevent overruns at the subscriber line and ensures that the router executes QoS features on the actual bandwidth used by ATM packets.
Traffic classes must be configured using the class-map command.
You must attach a policy map that is configured with ATM overhead accounting to only an Ethernet interface (or an IP session on an Ethernet interface).
Ethernet overhead accounting allows the automatic inclusion of downstream Ethernet frame headers in the shaped rate.
If you enable overhead accounting on a child policy, you must enable overhead accounting on the parent policy.
In a policy map, you must either enable overhead accounting for all classes in the policy or disable overhead accounting for all classes in the policy. You cannot enable overhead accounting for some classes and disable overhead accounting for other classes in the same policy.
Overhead accounting is not reflected in any QoS counters (classification, policing, or queuing).
Implicit ATM overhead accounting for policers are not supported.
Implicit L2 overhead (ATM or otherwise) for policers are not supported for certain logical targets (tunnels) when the policy is applied to the logical target. The same limitation exists for queuing and scheduling overhead accounting.
Police overhead cannot be configured on conditional policers (priority and rate), however, the priority queue it used will inherit the queueing overhead from parent shaper if configured.
Police overhead is not added to the counters and are not reflected in statistics reported by the control plane.
The overhead accounting type or value used by policing within a policy map and between the parent policy map and the child policy map (in a hierarchical policy map structure) must be consistent.
The overhead accounting type or value used by queuing features within a policy map and between the parent policy map and the child policy map (in a hierarchical policy map structure) must be consistent.
The Traffic Shaping Overhead Accounting for ATM feature enables the broadband aggregation system (BRAS) to account for various encapsulation types when applying QoS to packets. Typically, in Ethernet digital subscriber line (DSL) environments, the encapsulation from the BRAS to the DSLAM is Gigabit Ethernet and the encapsulation from the DSLAM to the CPE is ATM. ATM overhead accounting enables the BRAS to account for ATM encapsulation on the subscriber line and for the overhead added by cell segmentation. This functionality enables the service provider to prevent overruns at the subscriber line and ensures that the router executes QoS features on the actual bandwidth used by ATM subscriber traffic.
Broadband aggregation system (BRAS) uses the encapsulation type that is configured for the DSLAM-CPE side to calculate the ATM overhead per packet.
DSLAM-CPE encapsulation types are based on Subnetwork Access Protocol (SNAP) and multiplexer (MUX) formats of ATM adaptation layer 5 (AAL5), followed by routed bridge (RBE), x-1483, x-dot1q-rbe, IP, PPP over Ethernet (PPPoE), or PPP over ATM (PPPoA) encapsulations. Because the DSLAM treats IP and PPPoE packets as payload, the BRAS does not account for IP and PPPoE encapsulations.
On the BRAS-DSLAM side, encapsulation is IEEE 802.1Q VLAN or Q-in-Q (qinq). However, because the DSLAM removes the BRAS-DSLAM encapsulation, the BRAS does not account for 802.1Q or qinq encapsulation.
AAL5 segmentation processing adds the additional overhead of the 5-byte cell headers, the AAL5 Common Part Convergence Sublayer (CPCS) padding, and the AAL5 trailer. For more information, see the ATM Overhead Calculation.
The router supports the following subscriber line encapsulation types:
snap-rbe
mux-rbe
snap-dot1q-rbe
mux-dot1q-rbe
snap-pppoa
mux-pppoa
snap-1483routed
mux-1483routed
snap-rbe-dot1q
mux-rbe-dot1q
Note |
The encapsulation types listed above are for AAL5, qinq, and dot1q encapsulations. User-defined encapsulations with offsets based on the platform in use are also supported. |
The Traffic Shaping Overhead Accounting for ATM feature prevents oversubscription of a subscriber line by accounting for the ATM encapsulation overhead at the BRAS. When calculating the ATM overhead, the Traffic Shaping Overhead Accounting for ATM feature considers the following:
The encapsulation type used by the BRAS
The CPCS trailer overhead
The encapsulation type used between the DSLAM and the CPE
The offset size (a parameter used to calculate ATM overhead accounting) is calculated using the following formula:
Offset size in bytes = (CPCS trailer overhead) + (DSLAM to CPE) - (BRAS encapsulation type)
See the table below for the offset sizes, in bytes, derived from this formula.
This offset size, along with the packet size and packet assembler/disassembler (PAD) byte overhead in the CPCS, is used by the router to calculate the ATM overhead accounting rate.
Note |
A CPCS trailer overhead of 8 bytes corresponds to AAL5. A CPCS trailer overhead of 4 bytes corresponds to AAL3, but AAL3 is not supported. |
Encapsulation Type in Use |
BRAS |
CPCS Trailer Overhead |
DSLAM to CPE |
Offset Size |
---|---|---|---|---|
dot1q mux-1483routed |
18 |
8 |
3 |
-7 |
dot1q snap-1483routed |
18 |
8 |
6 |
-4 |
dot1q mux-rbe |
18 |
8 |
14 |
4 |
dot1q snap-rbe |
18 |
8 |
24 |
14 |
dot1q mux-dot1q-rbe |
18 |
8 |
18 |
8 |
dot1q snap-dot1q-rbe |
18 |
8 |
28 |
18 |
qot1q mux-pppoa |
18 + 6 |
8 |
2 |
-14 |
qot1q snap-pppoa |
18 + 6 |
8 |
4 |
-12 |
qinq mux-1483routed |
22 |
8 |
3 |
-11 |
qinq snap-1483routed |
22 |
8 |
6 |
-8 |
qinq mux-rbe |
22 |
8 |
14 |
0 |
qinq snap-rbe |
22 |
8 |
24 |
10 |
qinq mux-dot1q-rbe |
22 |
8 |
18 |
4 |
qing snap-dot1q-rbe |
22 |
8 |
28 |
14 |
qinq mux-pppoa |
22 + 6 |
8 |
2 |
-18 |
qinq snap-pppoa |
22 + 6 |
8 |
4 |
-16 |
In hierarchical policies, you can enable ATM overhead accounting for shaping and bandwidth on parent policies and child policies. You are not required to enable ATM overhead accounting on a traffic class that does not contain the bandwidth or shape command. If you enable ATM overhead accounting on a child policy, then you must enable ATM overhead accounting on the parent policy. The parent and child classes must specify the same encapsulation type when ATM overhead accounting is enabled.
Overhead accounting configuration is supported for queuing features (shape, bandwidth and priority) and non-queuing feature (police) separately. However, priority queue can be integrated with policer. When overhead accounting is configured on a priority queue, through inheritance, it operates in the following fashion:
Overhead accounting is added to (or subtracted from) the priority packet for queuing features in the hierarchy (for example, shape in the parent class).
Overhead accounting is not added to the packet for priority rate enforcement (priority {bandwidth-kbps | percent percentage} [burst] ). Although policing overhead accounting is supported, it does not apply to the conditional policer (rate enforcement is implemented through this conditional policer).
Command or Action | Purpose | |||
---|---|---|---|---|
Step 1 |
enable Example:
|
Enables privileged EXEC mode.
|
||
Step 2 |
configure terminal Example:
|
Enters global configuration mode. |
||
Step 3 |
policy-map policy-map-name Example:
|
Creates or modifies the child policy and enters policy-map configuration mode.
|
||
Step 4 |
class class-map-name Example:
|
Assigns the traffic class that you specify for the policy map and enters policy-map class configuration mode.
|
||
Step 5 |
bandwidth {bandwidth-kbps | percent percentage | remaining percent percentage} account {{qinq | dot1q} {aal5 | aal3 } {subscriber-encapsulation}} | {user-defined offset [atm]}} Example:
|
Enables Class-Based Weighted Fair Queueing (CBWFQ) on the basis of the keywords and arguments specified, such as the following:
|
||
Step 6 |
bandwidth remaining ratio ratio [account {qinq | dot1q } [aal5|aal3 ] {subscriber-encapsulation | user-defined offset [atm]}] Example:
|
(Optional) Specifies the bandwidth-remaining ratio for the subinterface along with ATM accounting parameters:
|
||
Step 7 |
shape [average | peak ] mean-rate [burst-size ] [excess-burst-size ] account {{{qinq | dot1q} {aal5 | aal3} {subscriber-encapsulation}} | {user-defined offset [atm]}} Example:
|
Shapes traffic to the indicated bit rate and enables ATM overhead accounting on the basis of the keywords and arguments specified, such as the following:
|
||
Step 8 |
end Example:
|
Exits policy-map class configuration mode and returns to privileged EXEC mode. |
Command or Action | Purpose | |
---|---|---|
Step 1 |
enable Example:
|
Enables privileged EXEC mode.
|
Step 2 |
show policy-map [policy-map-name ] Example:
|
(Optional) Displays the configuration of all classes for a specified policy map or of all classes for all existing policy maps.
|
Step 3 |
show policy-map session Example:
|
(Optional) Displays the QoS policy map in effect for an IPoE/PPPoE session. |
Step 4 |
show running-config Example:
|
(Optional) Displays the contents of the currently running configuration file. |
Step 5 |
exit Example:
|
Exits privileged EXEC mode. |
The following example shows how to enable ATM overhead accounting using a hierarchical policy map structure. The Child policy map has two classes: Business and Non-Business. The Business class has priority and is policed at 128,000 kbps. The Non-Business class has ATM overhead accounting enabled and has a bandwidth of 20 percent of the available bandwidth. The Parent policy map shapes the aggregate traffic to 256,000 kbps and enables ATM overhead accounting.
Notice that Layer 2 overhead accounting is not explicitly configured for the Business traffic class. If the class-default class of a parent policy has ATM overhead accounting enabled, you are not required to enable ATM overhead accounting on a child traffic class that does not contain the bandwidth or shape command. Therefore, in this example, the Business priority queue implicitly has ATM overhead accounting enabled because its parent class-default class has overhead accounting enabled.
policy-map Child
class Business
priority
police 128000
class Non-Business
bandwidth percent 20 account dot1q aal5 snap-rbe-dot1q
exit
exit
policy-map Parent
class class-default
shape 256000 account dot1q aal5 snap-rbe-dot1q
service-policy Child
In the following example, overhead accounting is enabled for bandwidth on the gaming and class-default class of the child policy map named subscriber_classes and on the class-default class of the parent policy map named subscriber_line. The voip and video classes do not have accounting explicitly enabled; these classes have ATM overhead accounting implicitly enabled because the parent policy has overhead accounting enabled. Notice that the features in the parent and child policies use the same encapsulation type.
policy-map subscriber_classes
class voip
priority level 1
police 8000
class video
priority level 2
police 8000
class gaming
bandwidth remaining percent 80 account dot1q aal5 snap-rbe-dot1q
class class-default
bandwidth remaining percent 20 account dot1q aal5 snap-rbe-dot1q
policy-map subscriber_line
class class-default
bandwidth remaining ratio 10 account dot1q aal5 snap-rbe-dot1q
shape average 512 account aal5 dot1q snap-rbe-dot1q
service policy subscriber_classes
Router# show policy-map interface
Service-policy output:unit-test
Class-map: class-default (match-any)
100 packets, 1000 bytes
30 second offered rate 800 bps, drop rate 0 bps
Match: any
shape (average) cir 154400, bc 7720, be 7720
target shape rate 154400
overhead accounting: enabled
bandwidth 30% (463 kbps)
overhead accounting: disabled
queue limit 64 packets
(queue depth/total drops/no-buffer drops) 0/0/0
(packets output/bytes output) 100/1000
Router# show policy-map session output
SSS session identifier 2 -
Service-policy output: ATM_OH_POLICY
Class-map: class-default (match-any)
0 packets, 0 bytes
30 second offered rate 0 bps, drop rate 0 bps
Match: any
Queueing
queue limit 2500 packets
(queue depth/total drops/no-buffer drops) 0/0/0
(pkts output/bytes output) 0/0
shape (average) cir 10000000, bc 40000, be 40000
target shape rate 10000000
Overhead Accounting Enabled
The following output from the show running-config command indicates that ATM overhead accounting is enabled for shaping. The BRAS-DSLAM encapsulation is dot1q and the subscriber line encapsulation is snap-rbe based on the AAL5 service.
subscriber policy recording rules limit 64
no mpls traffic-eng auto-bw timers frequency 0
call rsvp-sync
!
controller T1 2/0
framing sf
linecode ami
!
controller T1 2/1
framing sf
linecode ami
!
!
policy-map unit-test
class class-default
shape average percent 10 account dot1q aal5 snap-rbe
!
Related Topic |
Document Title |
---|---|
QoS commands: complete command syntax, command modes, command history, defaults, usage guidelines, and examples |
Cisco IOS Quality of Service Solutions Command Reference |
Modular Quality of Service (QoS) Command-Line Interface (CLI) (MQC), hierarchical policies, policy maps |
"Applying QoS Features Using the MQC" module |
Policing and shaping traffic |
"Policing and Shaping Overview" module |
Standard |
Title |
---|---|
No new or modified standards are supported by this feature, and support for existing standards has not been modified by this feature. |
-- |
MIB |
MIBs Link |
---|---|
No new or modified MIBs are supported by this feature, and support for existing MIBs has not been modified by this feature. |
To locate and download MIBs for selected platforms, Cisco IOS XE software releases, and feature sets, use Cisco MIB Locator found at the following URL: |
RFC |
Title |
---|---|
No new or modified RFCs are supported by this feature, and support for existing RFCs has not been modified by this feature. |
-- |
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. |
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.