Ethernet Overhead Accounting

The Ethernet Overhead Accounting feature enables the router to account for downstream Ethernet frame headers when applying shaping to packets.

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.

Restrictions for Ethernet Overhead Accounting

  • 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.

Information About Ethernet Overhead Accounting

Benefits of Ethernet Overhead Accounting

The Ethernet Overhead Accounting feature enables the router to account for downstream Ethernet frame headers when applying shaping to packets. A user-defined offset specifies the number of overhead bytes that the router is to use when calculating the overhead per packet. Valid offset values are from +63 bytes to -63 bytes of overhead. Before applying shaping, the router calculates the overhead.

Any interface that supports QoS policies will support overhead accounting. Using the policy-map , shape or bandwidth command, you can configure accounting on the interfaces.

Subscriber Line Encapsulation Types

The subscriber-encapsulation argument of the shape and bandwidth commands specifies the encapsulation type at the subscriber line. The router supports the following subscriber line encapsulation types:

  • snap-1483routed

  • mux-1483routed

  • snap-dot1q-rbe

  • mux-dot1q-rbe

  • snap-pppoa

  • mux-pppoa

  • snap-rbe

  • mux-rbe

Overhead Calculation on the Router

When calculating overhead for traffic shaping, the router considers the encapsulation type used between the broadband aggregation system (BRAS) and the digital subscriber line access multiplexer (DSLAM) and between the DSLAM and the customer premises equipment (CPE).

The table below describes the fields that the router uses for the various encapsulation types when calculating ATM overhead.

Table 1. Overhead Calculation

Encapsulation Type

Number of Bytes

Description

802.1Q

18

6-byte destination MAC address + 6-byte source MAC address + 2-byte protocol ID (0x8100) + 2-byte VID/CFI/PRIORITY + 2-byte length/type

802.3

14

6-byte destination MAC address + 6-byte source MAC address + 2-byte protocol ID (0x8000)

AAL5 MUX plus 1483

8

8-byte AAL5 trailer

AAL5 MUX plus PPPoA

10

8-byte AAL5 trailer + 2-byte protocol ID (0x002

AAL5 SNAP plus 1483

18

8-byte AAL5 trailer + 3-byte LLC header (0xAAAA03) + 3-byte OUI (0x0080c2) + 2-byte protocol ID (0x0007) + 2-byte PAD (0x0000)

AAL5 SNAP plus PPPoA

12

8-byte AAL5 trailer + 3-byte LLC header (0xFEFE03) + 1-byte protocol ID (0xCF)

PPPoE

6

1-byte version/type (0x11) + 1-byte code (0x00) + 2-byte session ID + 2-byte lengt

qinq

22

6-byte destination MAC address + 6-byte source MAC address + 2-byte protocol ID (0x8100) + 2-byte VID/CFI/PRIORITY + 2-byte protocol ID + 2-byte inner tag + 2-byte length or type

Overhead Accounting and Hierarchical Policies

In hierarchical policies, you can configure overhead accounting for policing, shaping, and bandwidth on top-level parent policies, middle-level child policies, and bottom-level child policies. Overhead accounting policies configured at the parent or grandparent level are inherited by the child queueing features. Overhead accounting configured on a child policy must also be configured on the parent policy; therefore configuring on the parent or grandparent level is easier.

The parent and child classes must specify the same encapsulation type when enabling overhead accounting and configuring an offset using the user-defined offset [atm ] arguments of the bandwidth (policy-map class) command.

The table below summarizes the configuration requirements for overhead accounting.

Table 2. Overhead Accounting Configuration Requirements

Policy Map or Class

Current Configuration

Configuration Requirement

Parent

Enabled

Enabled on child policy

Child

Enabled

Enabled on parent policy

Child class

Enabled

Enabled on all classes in the child policy map, except priority classes with policing

Child class (nonpriority without policing)

Disabled

Disabled on all classes in the child policy map

Child class (priority with policing)

Disabled

Disabled or enabled on all nonpriority classes in the child policy map

Overhead Accounting and Priority Queues

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).

How to Configure Ethernet Overhead Accounting

Configuring Ethernet Overhead Accounting in a Hierarchical Policy

SUMMARY STEPS

  1. enable
  2. configure terminal
  3. policy-map policy-map-name
  4. class class-map-name
  5. bandwidth {bandwidth-kbps | [remaining ] percent percentage} account {qinq | dot1q } {aal5 | aal3 } subscriber-encapsulation user-defined offset [atm ]
  6. exit
  7. policy-map policy-map-name
  8. class class-default
  9. shape [average ] rate account {{qinq | dot1q } {aal5 | aal3 } subscriber-encapsulation | user-defined offset [atm ]}
  10. service-policy policy-map-name
  11. end

DETAILED STEPS

  Command or Action Purpose
Step 1

enable

Example:

Router> enable

Enables privileged EXEC mode.

  • Enter your password if prompted.

Step 2

configure terminal

Example:

Router# configure terminal

Enters global configuration mode.

Step 3

policy-map policy-map-name

Example:

Router(config)# policy-map Business

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

  • The policy-map-name argument represents the name of the child policy map.

Step 4

class class-map-name

Example:

Router(config-pmap)# class video

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

  • The class-map-name argument represents the name of a previously configured class map.

Step 5

bandwidth {bandwidth-kbps | [remaining ] percent percentage} account {qinq | dot1q } {aal5 | aal3 } subscriber-encapsulation user-defined offset [atm ]

Example:

Router(config-pmap-c)# bandwidth 8000 account dot1q aal5 snap-pppoa

Enables class-based fair queueing and overhead accounting.

  • bandwidth-kbps —The minimum bandwidth allocated for a class belonging to a policy map. Valid values are from 8 to 2,488,320, which represents from 1 to 99 percent of the link bandwidth.

  • percentage —The maximum percentage of the link bandwidth allocated for a class belonging to a policy map. Valid values are from 1 to 99.

  • remaining percentage —The minimum percentage of unused link bandwidth allocated for a class belonging to a policy map. Valid values are from 1 to 99.

  • account —Enables ATM overhead accounting.

  • qinq —Specifies queue-in-queue encapsulation as the BRAS-DSLAM encapsulation type.

  • dot1q —Specifies IEEE 802.1Q VLAN encapsulation as the BRAS-DSLAM encapsulation type.

  • aal5 —Specifies the ATM Adaptation Layer 5 that supports connection-oriented variable bit rate (VBR) services.

  • aal3 —Specifies the ATM Adaptation Layer 5 that supports both connectionless and connection-oriented links.

  • subscriber-encapsulation —Specifies the encapsulation type at the subscriber line. For more information, see the “Configuring Ethernet Overhead Accounting in a Hierarchical Policy” section.

  • user-defined —Indicates that the router is to use the offset value that you specify when calculating ATM overhead.

  • offset —Specifies the number of bytes that the router is to use when calculating overhead. Valid values are from -63 to 63 bytes.

  • atm —(Optional) Applies the ATM cell tax in the ATM overhead calculation.

Step 6

exit

Example:

router(config-pmap-c)# exit

Exits policy-map class configuration mode.

Step 7

policy-map policy-map-name

Example:

Router(config-pmap)# policy-map Test

Creates or modifies the top-level parent policy.

  • policy-map-name —Specifies the name of the parent policy map.

Step 8

class class-default

Example:

Router(config-pmap)# class class-default 

Specifies a default class.

Step 9

shape [average ] rate account {{qinq | dot1q } {aal5 | aal3 } subscriber-encapsulation | user-defined offset [atm ]}

Example:

Router(config-pmap-c)# shape 8000 account qinq aal5 snap-dot1-rbe

Shapes traffic to the indicated bit rate and enables overhead accounting.

  • average (Optional)—Is the committed burst (Bc) that specifies the maximum number of bits sent out in each interval. This option is only supported on the PRE3.

  • rate —Indicates the bit rate used to shape the traffic, in bits per second. When this command is used with backward explicit congestion notification (BECN) approximation, the bit rate is the upper bound of the range of bit rates that are permitted.

  • account —Enables ATM overhead accounting.

  • qinq —Specifies queue-in-queue encapsulation as the BRAS-DSLAM encapsulation type.

  • dot1q —Specifies IEEE 802.1Q VLAN encapsulation as the BRAS-DSLAM encapsulation type.

  • aal5 —Specifies the ATM Adaptation Layer 5 that supports connection-oriented variable bit rate (VBR) services.

  • aal3 —Specifies the ATM Adaptation Layer 5 that supports both connectionless and connection-oriented links.

  • subscriber-encapsulation —Specifies the encapsulation type at the subscriber line. For more information, see the “Configuring Ethernet Overhead Accounting in a Hierarchical Policy” section.

  • user-defined —Indicates that the router is to use the offset value that you specify when calculating ATM overhead.

  • offset —Specifies the number of bytes that the router is to use when calculating overhead. Valid values are from -63 to 63 bytes.

  • atm —(Optional) Applies the ATM cell tax in the ATM overhead calculation.

Configuring both the offset and atm options adjusts the packet size to the offset size and then adds the ATM cell tax.
Step 10

service-policy policy-map-name

Example:

Router(config-pmap-c)# service-policy map1

Applies a child policy to the parent class-default class.

policy-map-name —Specifies the name of a previously configured child policy map.

Note 

Do not specify the input or output keywords when applying a child policy to a parent class-default class.

Step 11

end

Example:

Router(config-pmap-c)# end

Exits policy-map class configuration mode and returns to privileged EXEC mode.

Configuration Examples for Ethernet Overhead Accounting

Example: Enabling Ethernet Overhead Accounting

The following configuration example shows how to enable Ethernet overhead accounting. In the example, the configuration of the policy map named ethernet_ovrh shapes class-default traffic at a rate of 200,000 kbps and enables overhead accounting with a user-defined value of 18. The ethernet_ovrh policy is attached to Gigabit Ethernet subinterface 1/0/0.100, thereby enabling overhead accounting on the subinterface.


Router# configure-terminal
Router(config)# policy-map ethernet_ovrh
Router(config-pmap)# class class-default
Router(config-pmap-c)# shape average 200000 account user-defined 18
!
Router(config)# interface GigabitEthernet1/0/0.100
Router(config-subif)# service-policy output ethernet_ovrh
!
Router# show running-config | begin 1/0/0.100

interface GigabitEthernet1/0/0.100
encapsulation dot1Q 101
pppoe enable group group_pta
service-policy output ethernet_ovrh

Example: Verifying Ethernet Overhead Accounting with User-Defined Option

The following sample output for the policy map named ethernet_ovrh indicates that Ethernet overhead accounting is enabled for shaping and that the user-defined offset is 18 bytes. The sample output from the show policy-map command indicates that the ethernet_ovrh policy map is attached to the Gigabit Ethernet subinterface 1/0/0.100, enabling overhead accounting on the subinterface.

Router# show policy-map ethernet_ovrh

Policy Map ethernet_ovrh
Class class-default
Average Rate Traffic Shaping
cir 200000 (bps) account user-defined 18
Router# show policy-map interface GigabitEthernet1/0/0.100
GigabitEthernet1/0/0.100
Service-policy output: ethernet_ovrh
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 8 packets
(queue depth/total drops/no-buffer drops) 0/0/0
(pkts output/bytes output) 0/0
shape (average) cir 200000, bc 800, be 800
target shape rate 200000
Overhead Accounting Enabled

Additional References

Related Documents

Related Topic

Document Title

Cisco IOS commands

Cisco IOS Master Command List, All Releases

QoS commands: complete command syntax, command modes, command history, defaults, usage guidelines, and examples

Cisco IOS Quality of Service Solutions Command Reference

Policing and shaping

“Policing and Shaping Overview” module

Class maps

“Applying QoS Features Using the MQC” module

Policy maps

“Applying QoS Features Using the MQC” module

Standards

Standard

Title

No new or modified standards are supported, and support for existing standards has not been modified.

MIBs

MIB

MIBs Link

No new or modified MIBs are supported, and support for existing MIBs has not been modified.

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:

http://www.cisco.com/go/mibs

RFCs

RFC

Title

No new or modified RFCs are supported, and support for existing RFCs has not been modified.

Technical Assistance

Description

Link

The Cisco Support and Documentation website provides online resources to download documentation, software, and tools. Use these resources to install and configure the software and to troubleshoot and resolve technical issues with Cisco products and technologies. Access to most tools on the Cisco Support and Documentation website requires a Cisco.com user ID and password.

http://www.cisco.com/cisco/web/support/index.html

Feature Information for Ethernet Overhead Accounting

The following table provides release information about the feature or features described in this module. This table lists only the software release that introduced support for a given feature in a given software release train. Unless noted otherwise, subsequent releases of that software release train also support that feature.

Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to www.cisco.com/go/cfn. An account on Cisco.com is not required.
Table 3. Feature Information for Ethernet Overhead Accounting

Feature Name

Releases

Feature Information

Ethernet Overhead Accounting

Cisco IOS XE Release 2.4

The Ethernet Overhead Accounting feature was introduced on the Cisco ASR 1000 Series Aggregation Services Routers. It enables the router to account for downstream Ethernet frame headers when applying shaping to packets.

Ethernet Overhead Accounting (Policing) for MEF 2.0 Certification

Cisco IOS XE Release 3.17S

This feature adds support for user-defined overhead accounting to QoS MQC policers on the Cisco ASR 1000 Series Aggregation Services Routers.