QoS: Policing and Shaping Configuration Guide, Cisco IOS XE Release 3S (Cisco ASR 1000)
Ethernet Overhead Accounting
Downloads: This chapterpdf (PDF - 1.34MB) The complete bookPDF (PDF - 3.84MB) | The complete bookePub (ePub - 592.0KB) | Feedback

Ethernet Overhead Accounting

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.
  • Overhead accounting is not supported in the policed rate regardless of overhead accounting configuration in any level of the policy (including the parent/grandparent).
  • The router supports overhead accounting only for the shape and bandwidth commands.
  • If you enable overhead accounting on a child policy, then 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).
  • You can enable overhead accounting for shaping and bandwidth on top-level parent policies, middle-level child policies, and bottom-level child policies. Child policies inherit overhead accounting policies that you configure at the parent or grandparent level.
  • The overhead accounting type or value used 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 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 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 only supported for shape and bandwidth commands. However, it is possible to have overhead accounting configured on priority queues through inheritance (hierarchical QoS policies and disjoint QoS hierarchies). 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] ), since it is not supported for policing (rate enforcement is implemented through a 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 ActionPurpose
    Step 1 enable


    Example:
    Router> enable
     

    Enables privileged EXEC mode.

    • Enter your password if prompted.
     
    Step 2 configure terminal


    Example:
    Router# configure terminal
     

    Enters global configuration mode.

     
    Step 3 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 5bandwidth {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
     

     

    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
    Enter configuration commands, one per line. End with CNTL/Z.
    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 routers. It enables the router to account for downstream Ethernet frame headers when applying shaping to packets.