Guest

Cisco Catalyst 8500 Series Multiservice Switch Routers

Understanding Rejected/Discarded Cell Counters on ATM Switch Routers

Cisco - Understanding Rejected/Discarded Cell Counters on ATM Switch Routers

Document ID: 10496

Updated: Jun 05, 2005

   Print

Introduction

The LS1010 and the Catalyst 8500 series use an internal switching fabric with a shared-memory architecture. In some cases, these switches discard cells and report these drops in the output of one of these commands, based on the platform:

  • show switch fabric—For the Catalyst 8540.

  • show controller atm 2/0/0 or atm0—For the LS1010 or Catalyst 8510 in a standalone chassis.

  • show controller atm 13/0/0—For the LS1010 or Catalyst 8510 in the bottom five slots of the Catalyst 5500.

A Cisco ATM switch router increments the discarded or rejected cells counter when it drops a cell due to one of these reasons:

The purpose of this document is to review each of these reasons and provide tips on how to troubleshoot why you see non-zero values for rejected cells.

Prerequisites

Requirements

There are no specific requirements for this document.

Components Used

This document is not restricted to specific software and hardware versions.

Conventions

For more information on document conventions, refer to the Cisco Technical Tips Conventions.

Acronyms

These acronyms are used throughout this document:

ABR Available Bit Rate PCR Peak Cell Rate
ASIC Application-Specific Integrated Circuit PTI Payload Type Identifier
ASP ATM Switch Processor PVC Permanent Virtual Circuit
CLP Cell Loss Priority SCR Sustained Cell Rate
EFCI Explicit Forward Congestion Indication SP Switch Processor
EPD Early Packet Discard SuperCAM Super Carrier Module
FC-PCQ Feature Card Per-Class Queuing SVCs Switched Virtual Circuits
FC-PFQ Feature Card Per-Flow Queuing TPD Tail Packet Discard
IE Information Element UBR Unspecified Bit Rate
ITPD Intelligent Tail Packet Discard UNI User-Network Interface
MIB Management Information Base UPC Usage Parameter Control
MSC Modular Switching Component VC Virtual Circuit
MSP Multiservice Switch Processor VCL Virtual Channel Link
OAM Operation, Administration and Maintenance VP Virtual Path
PAM Port Adapter Modules    

Switch Architecture

The LS1010 and Catalyst 8510 use an architecture that differs in these ways from the Catalyst 8540.

On the LS1010 and 8510, use the show controller atm 2/0/0 (or 13/0/0 if used in the Catalyst 5500) or show controller atm0 in order to view statistics for the CPU and ATM switch processor:

ls1010#show controller atm 2/0/0 
MMC Switch Fabric (idb=0x60AD7B20) 
  Key: discarded cells  - # cells discarded due to lack of resources 
                            or policing (16-bit) 
       invalid cells    - # good cells that came in on a non-existent conn. 
       memory buffer    - # cell buffers currently in use 
       RXcells          - # rx cells (16-bit) 
       TXcells          - # tx cells (16-bit) 
       RHEC             - # cells with HEC errors 
       TPE              - # cells with memory parity errors 

 discarded cells = 0 
 
!--- The total count of discarded cells across all ports.
 
 invalid cells   = 184027 
 memory buffer   = 0 
 garbage cells to cpu = 0 
 unexpected marker intrs = 0

On the Catalyst 8540, use the show switch fabric command in order to display the number of rejected cells. Note that this output differs from the LS1010 output in that it shows rejected cells per Modular Switching Component (MSC) number. MSC application-specific integrated circuits (ASICs) form the switch fabric for a defined set of modules and ports.

8540#show switch fabric 
swc_presence_mask: 0x7 
Switch mode: R_20G 
Number of Switch Cards present in the Chassis: 3 
SWC SLOT             SWC_TYPE         SWC_STATUS 
================================================= 

     5               EVEN              ACTIVE 
     6               STANDBY           STANDBY 
     7               ODD               ACTIVE 
  

MMC Switch Fabric (idb=0x61115400) 

  Key: Rej. Cells  - # cells rejected due to lack of resources 
                            or policing (16-bit) 
       Inv. Cells    - # good cells that came in on a non-existent conn. 
       Mem Buffs     - # cell buffers currently in use 
       RX Cells      - # rx cells (16-bit) 
       TX Cells      - # tx cells (16-bit) 
       Rx HEC        - # cells Received with HEC errors 
       Tx PERR       - # cells with memory parity errors 

  MSC#  Rej. Cells  Inv. Cells  Mem. Buffs  Rx Cells  Tx Cells 
 -----  ----------- ----------  ----------- --------  --------- 
 MSC 0:     0           0           0         55082     61682 
 MSC 1:     0           0           0           0         0 
 MSC 2:     0           0           0           0         0 
 MSC 3:     0           0           0           0         0 
 MSC 4:     0           0           0           0         0 
 MSC 5:     0           0           0           0         0 
 MSC 6:     0           0           0           0         0 
 MSC 7:     0           0           0           0         0 
   
!--- The rejected cells per MSC# or matching set of physical ports.
 

 Switch Fabric Statistics 

      Rejected Cells: 0 
      
!--- The total number of rejected cells.
 
      Invalid Cells: 3628854 
      Memory Buffers: 0 
      Rx Cells: 55082 
      Tx Cells: 61682 
      RHEC: 0 
      TPE: 0

Each of the two required switch processors in the 8540 contain four MSC ASICs, which build the internal switch fabric for half of the ports in a system. Use the show mmc ports command in order to determine which physical ports use a particular MSC#.

8540#show mmc ports 
 int a0/0/0: msc#: 0 port#: 12 
 int a0/0/1: msc#: 0 port#: 8 
 int a0/0/2: msc#: 0 port#: 4 
 int a0/0/3: msc#: 0 port#: 0 
 int a0/0/4: msc#: 0 port#: 14 
 int a0/0/5: msc#: 0 port#: 10 
 int a0/0/6: msc#: 0 port#: 6 
 int a0/0/7: msc#: 0 port#: 2 
 int a0/0/8: msc#: 1 port#: 12 
 int a0/0/9: msc#: 1 port#: 8 
 int a0/0/10: msc#: 1 port#: 4 
 int a0/0/11: msc#: 1 port#: 0 
 int a0/0/12: msc#: 1 port#: 14 
 int a0/0/13: msc#: 1 port#: 10 
 int a0/0/14: msc#: 1 port#: 6 
 int a0/0/15: msc#: 1 port#: 2 
 [output omitted]

With each slot, the first half of the ports use an even MSC#, and the second half use an odd MSC#. However, when you use the original LS1010 port adapter modules (PAMs) with a super carrier module (SuperCAM) carrier access module, all ports on a single SuperCAM map to an even SP and MSC ASIC. For example, the first half of the ports in slot 0 normally connect to MSC0 of SP0, while the second half of the ports in slot 0 connect to MSC1 of SP1. However, with a SuperCAM, both sets of ports connect to MSC0 of SP0.

Inadequate Buffer Space

Cisco campus ATM switches use a shared-memory architecture that stores up to 65,536 cells. The use of a shared-memory design provides these benefits:

  • Supports more connections or higher loads.

  • Supports an increased amount of multicast traffic since only a single copy of any multicast cell is stored in the common cell memory.

  • Provides complete sharing with a maximum level of statistical buffer sharing.

Since all ports can use the full memory, it is important that the buffer management process ensures fairness among ports by ensuring that one or a small subset of ports cannot occupy all of the buffers.

Note: The opposite of a shared-memory architecture is a per-port output buffer architecture, in which each port has dedicated memory buffers that cannot be accessed by other ports. The Catalyst 6000 and Catalyst 5000 are output-buffered switches.

On an LS1010, use the show controller atm 2/0/0 command in order to view the number of memory buffers currently in use.

ls1010#show controller atm 2/0/0 
MMC Switch Fabric (idb=0x60AD7B20) 
  Key: discarded cells  - # cells discarded due to lack of resources 
                            or policing (16-bit) 
       invalid cells    - # good cells that came in on a non-existent conn. 
       memory buffer    - # cell buffers currently in use 
       RXcells          - # rx cells (16-bit) 
       TXcells          - # tx cells (16-bit) 
       RHEC             - # cells with HEC errors 
       TPE              - # cells with memory parity errors 

 discarded cells = 0 
 invalid cells   = 184027 
 memory buffer   = 0 
 
!--- This is normally a non-zero value on a busy production switch. 

 garbage cells to cpu = 0 
 unexpected marker intrs = 0

You can use these managed objects of the CISCO-RHINO-MIB to poll your ATM switch router for the number of free buffers and discarded cells:

Managed Object Description
ciscoAtmSwitchTotalBuffer The total cell buffer count in the shared memory of the switch.
ciscoAtmSwitchFreeBuffer The free cell buffer count in the shared memory of the switch.
ciscoAtmSwitchDiscardCells The total discarded cells of the switch.

Exceed Maximum Queue Limits

ATM switch routers use configurable queue limits and thresholds in order to control queuing in the system. The queering processes and configurable values vary with the feature card installed on the ATM switch processor (ASP) or multiservice switch processor (MSP):

  Feature card per-class queuing (FC-PCQ) Feature card per-flow queuing (FC-PFQ) and 8540
Service category limit Yes No
Maximum queue size per interface Yes No
Threshold groups No Yes

The Catalyst 8510 and the LS1010 with an FC-PCQ support service category limits, which restrict the number of cells admitted into the switch, as determined by the type of output queues. Use the show atm resource command in order to display these limits. Use the atm service-category-limit command to configure a non-default value.

Switch# show atm resource 
Resource configuration: 

    Over-subscription-factor 16  Sustained-cell-rate-margin-factor 1% 
    Abr-mode:   relative-rate 
    Atm service-category-limit (in cells): 
         64544 cbr 64544 vbr-rt 64544 vbr-nrt 64544 abr-ubr 
    
!--- All ATM service classes have access to most 
!--- of the shared memory by default. 

Resource state: 
    Cells per service-category: 
         0 cbr 0 vbr-rt 0 vbr-nrt 0 abr-ubr

The Catalyst 8510 and LS1010 with an FC-PCQ also support maximum queues sizes, which determine the number of cells that can be scheduled for transmission per ATM service class per interface. Use the atm output-queue command in order to configure a non-default value.

Note: This command is on a two lines due to spatial limitations.

Switch(config-if)#atm output-queue [force] {cbr | vbr-rt | vbr-nrt | abr-ubr} 
max-size number

Because not all queue size values are supported by the switch fabric, the value installed is displayed, as well as the configuration value requested. The value installed is always greater than or equal to that requested. Use the show atm interface resource atm command in order to display both values.

Switch> show atm interface resource atm 3/0/0 
Resource Management configuration: 
    Output queues: 

Max sizes(explicit cfg): 30000  cbr, none vbr-rt, none vbr-nrt, none abr-ubr 

!--- Note the "explicit cfg" values.
 
Max sizes(installed): 30208 cbr, 256 vbr-rt, 4096 vbr-nrt, 12032 abr-ubr 

!--- Note the "installed" values.
 
Efci threshold: 25% cbr, 25% vbr-rt, 25% vbr-nrt, 25% abr, 25% ubr 
Discard threshold: 87% cbr, 87% vbr-rt, 87% vbr-nrt, 87% abr, 87% ubr 
Abr-relative-rate threshold: 25% abr 
[output omitted]

Note: Systems with an FC-PFQ queue cells on input, not output. The atm output-queue commands do not apply.

Catalyst 8510 and LS1010 systems with an FC-PFQ and Catalyst 8540s support the threshold groups feature. Each group consists of virtual paths (VPs) and virtual circuits (VCs) that belong to the same ATM service category, such as VBR-nrt or UBR. By default, one threshold group holds cells for one ATM service class. Use the atm threshold-group command in order to assign more than one service category to a threshold group and to assign a service category to a non-default group number. Use the show atm resource command in order to confirm your changes.

Switch(config)# atm threshold-group {cbr | vbr-rt | vbr-nrt | abr | ubr} group#

In this sample output, the ATM switch router uses the default settings. One ATM service class is assigned to one threshold group.

Switch# show atm resource 
Resource configuration: 
    Over-subscription-factor 8  Sustained-cell-rate-margin-factor 1% 

    Abr-mode:   efci 
    Service Category to Threshold Group mapping: 
     cbr 1 vbr-rt 2 vbr-nrt 3 abr 4 ubr 5 
    
!--- By default, each group matches to one ATM service category.
 
    Threshold Groups: 
    Group Max Max Q  Min Q  Q thresholds  Cell  Name 
          cells  limit  limit  Mark Discard  count 
          instal instal instal 
    --------------------------------------------------- 
     1    65535  63     63     25 %  87 %      0     cbr-default-tg 
     2    65535  127    127    25 %  87 %      0     vbrrt-default-tg 
     3    65535  511    31     25 %  87 %      0     vbrnrt-default-tg 
     4    65535  511    31     25 %  87 %      0     abr-default-tg 
     5    65535  511    31     25 %  87 %      0     ubr-default-tg 
     6    65535  1023   1023   25 %  87 %      0     well-known-vc-tg

Each threshold group consists of eight regions, and each region has a set of thresholds. A threshold group congests when its member VCs have a large number of cells stored in the shared cell memory. As the cumulative number of queued cells for the member VCs approaches the "Max cells install" value, the maximum number of cells in each per-VC and per-VP queue shrinks from the max-queue-limit to min-queue-limit. Refer to the "Max Q limit instal" and "Min Q limit instal" columns in the show atm resource command output for the queue size values.

When congestion is in the range of 0 cells (uncongested) to one-eighth full, the connection queues are limited to max-queue-size. As you move from one region to another, you make the new threshold max (previous-threshold/2, min-queue-threshold). When congestion is in the range of seven-eighths full to completely full, the connection queues are limited to min-queue-size. Note that the operation of the switch for threshold groups in upper regions only occurs if the group congests by going above one-eighth full. However, the maximum size and threshold position commands are effective even for threshold groups in the lowest region.

These commands adjust the threshold group values.

Command Description
atm threshold-group group max-cells number

Configures the maximum number of cells queued for all VCs in the group. See the Max cells instal value in the show atm resource command output.
atm threshold-group group max-queue-limit number

Configures the largest per-VC queue limit applied to all VCs in the group. See the Max Q limit install value in the show atm resource command output.
atm threshold-group group min-queue-limit number

Configures the smallest per-VC queue-limit applied to all VCs in the group. See the Min Q limit install value in the show atm resource command output.
atm threshold-group group marking-threshold percent

Determines the point at which a per-VC queue is considered "full", and the switch begins to set the explicit forward congestion indication (EFCI) bit or implements available bit rate (ABR) relative-rate marking. See the Q thresholds Mark value in the show atm resource command output.
atm threshold-group group discard-threshold percent

Determines the point at which a per-VC queue is considered "full", and the switch begins to discard cells with the cell loss priority (CLP) bit to one and implements early packet discard (EPD). See the Q thresholds Discard value in the show atm resource command output.

The show atm vc command displays these two counters related to rejected or discarded cells caused by queue threshold values that are exceeded:

  • The number of cells queued per threshold group.

  • The number of drops due to full queue via the counters "Rx Clp0 q full drops" and "Rx Clp1 qthresh drops".

Note: The output of the show atm vc command changes with respect to drop counters based on whether packet discard is enabled on the VC.

switch#show atm vc int atm 12/0/3 0 100 
 Interface: ATM12/0/3, Type: oc3suni 
 VPI = 0  VCI = 100 
 Status: UP 
 Time-since-last-status-change: 00:18:09 
 Connection-type: PVC 
 Cast-type: point-to-point 
 Packet-discard-option: disabled 
 Usage-Parameter-Control (UPC): pass 
 Wrr weight: 2 
 Number of OAM-configured connections: 0 
 OAM-configuration: disabled 
 OAM-states:  Not-applicable 
 Cross-connect-interface: ATM12/0/0, Type: oc3suni 
 Cross-connect-VPI = 0 
 Cross-connect-VCI = 100 
 Cross-connect-UPC: pass 
 Cross-connect OAM-configuration: disabled 
 Cross-connect OAM-state:  Not-applicable 
 Threshold Group: 1, Cells queued: 63 
 
!--- By default, the CBR service category is assigned to group 1.
 
 Rx cells: 2010095, Tx cells: 0 
 Tx Clp0:0,  Tx Clp1: 0 
 Rx Clp0:2010095,  Rx Clp1: 0 
 Rx Upc Violations:0, Rx cell drops:148 
 Rx Clp0 q full drops:148, Rx Clp1 qthresh drops:0 
 
!--- Note the number of Clp0 q full and Clp1 qthresh drops.
 
 [output omitted]

You also can obtain these counts via SNMP polling.

Managed Object Description
ciscoAtmVclClp0VcqFullCellDrops The total number of cells received on this virtual channel link (VCL) with the CLP bit clear, discarded because the per-VC queue limit is exceeded. This counter is valid only if EPD is disabled on the VCL. On LS1010s, this counter is valid only when the switch processor is equipped with an FC-PFQ.
ciscoAtmVclVcqClpThreshCellDrops The total number of cells received on this VCL, discarded because the discard threshold (as opposed to the queue-limit) is exceeded on the per-VC queue, and the CLP bit is set. This counter is valid only if EPD is disabled on the VCL. On LS1010s, this counter is valid only when the switch processor is equipped with an FC-PFQ.
ciscoAtmVclLsPerVcQThreshGrp Threshold Group to which the cell-queue for cells received by this VC are queued. Note that this value is not valid until the VCL is in an active cross-connect. On LS1010s, this counter is valid only when the switch processor is equipped with an FC-PFQ.

Usage Parameter Control (UPC) Violations

When configured, an ATM switch at the network side of a user-network interface (UNI) polices the flow of cells in the forward (into the network) direction of a virtual connection. These policing mechanisms are known as usage parameter control (UPC). They determine whether received cells comply with the negotiated traffic management values, and then take one of these actions on the violation of cells, based on the configuration:

  • Pass the cell without changing the cell loss priority (CLP) bit in the cell header.

  • Tags the cell with a CLP bit value of 1.

  • Discard the cell. If you enable the discard option, Cisco recommends that you also enable the tail packet discard (TPD) feature discussed in the Intelligent Tail Packet Discard/Early Packet Discard section of this document.

Use the upc parameter in the atm pvc command to specify the violation action. The full syntax of the command is:

Note: This command is on two lines due to spatial limitations.

atm pvc vpi-A [vci-A | any-vci] [upc upc-A] [pd pd] 
interface atm card-B/subcard-B/port-B[.vpt #] vpi-B [vci-B | any-vci] [upc upc-B]

The upc parameter cannot be set to tag or drop on the processor port (ATM 0).

Normally, UPC polices only the source end of a soft VC. Use the atm svc-upc-intent drop command in order to enable UPC by default for all terminating VCs on the destination end of a soft VC.

Use the show atm vc command in order to view the configured UPC action and intelligent packet discard mechanisms, as well as the number of cells discarded due to UPC violations.

Switch#show atm vc interface atm 0/0/1.51 51 16 
Interface: ATM0/0/1.51, Type: oc3suni 
VPI = 51  VCI = 16 
Status: DOWN 
Time-since-last-status-change: 2w0d 
Connection-type: PVC 
Cast-type: point-to-point 
Packet-discard-option: enabled 
Usage-Parameter-Control (UPC): pass 

!--- Note the Packet-discard-option and Usage-Parameter-Control setting.
 
Wrr weight: 32 
Number of OAM-configured connections: 0 
OAM-configuration: disabled 
OAM-states:  Not-applicable 
Cross-connect-interface: ATM2/0/0, Type: ATM Swi/Proc 
Cross-connect-VPI = 0 
Cross-connect-VCI = 73 
Cross-connect-UPC: pass 
Cross-connect OAM-configuration: disabled 
Cross-connect OAM-state:  Not-applicable 
Encapsulation: AAL5ILMI 
Threshold Group: 6, Cells queued: 0 
Rx cells: 0, Tx cells: 0 
Tx Clp0:0,  Tx Clp1: 0 
Rx Clp0:0,  Rx Clp1: 0 
Rx Upc Violations:0, Rx cell drops:0 

!--- The number of UPC violations. 

Rx pkts:0, Rx pkt drops:0 
Rx connection-traffic-table-index: 6 
Rx service-category: UBR (Unspecified Bit Rate) 
Rx pcr-clp01: 424 
Rx scr-clp01: none 
Rx mcr-clp01: none 
Rx      cdvt: 1024 (from default for interface) 
Rx       mbs: none 
Tx connection-traffic-table-index: 6 
Tx service-category: UBR (Unspecified Bit Rate) 
Tx pcr-clp01: 424 
Tx scr-clp01: none 
Tx mcr-clp01: none 
Tx      cdvt: none 
Tx       mbs: none 
No AAL5 connection registered

You also can obtain these counts via SNMP polling. Use the ciscoAtmVclUpcViolations managed object in the CISCO-ATM-CONN-MIB.

Note: In the evaluation of the arriving cell rate, the ATM switch router counts both Operation, Administration, and Maintenance (OAM) cells as well as with data cells. This is because the current signaling protocol does not allow a user to explicitly specify traffic parameters for OAM flows.

Cell Loss Priority (CLP) Discarding

The standard ATM cell header includes the cell loss priority (CLP) bit, which explicitly indicates that a cell experienced congestion during transmission to the destination end. A CLP value of 1 means that the cell has a lower priority and is more likely to be dropped in times of congestion. Therefore, you can use the CLP bit in order to generate different priority cell flows.

ATM switch routers use a threshold-based CLP selective discard mechanism that imposes a threshold on the number of cell buffers to be shared by CLP = 0 and CLP = 1 cells. When the switch port queue occupancy reaches a user-configurable threshold level, only CLP = 0 cells are allowed to enter the system, and CLP = 1 cells are discarded.

The show atm resource command displays the queue threshold percentage, after which cells are eligible for CLP discard or early packet discard. This value is the column labeled "Discard."

Switch> show atm resource 
Resource configuration: 
    Over-subscription-factor 8  Sustained-cell-rate-margin-factor 1% 

    Abr-mode:   efci 
    Service Category to Threshold Group mapping: 
     cbr 1 vbr-rt 2 vbr-nrt 3 abr 4 ubr 5 
    Threshold Groups: 
    Group Max    Max Q  Min Q  Q thresholds  Cell  Name 
          cells limit  limit  Mark Discard  count 
          instal instal instal 
    --------------------------------------------------- 
     1    65535  63     63     25 %  87 %      0     cbr-default-tg 
     2    65535  127    127    25 %  87 %      0     vbrrt-default-tg 
     3    65535  511    31     25 %  87 %      0     vbrnrt-default-tg 
     4    65535  511    31     25 %  87 %      0     abr-default-tg 
     5    65535  511    31     25 %  87 %      0     ubr-default-tg 
     6    65535  1023   1023   25 %  87 %      0     well-known-vc-tg

You adjust the value of the discard threshold with the command atm threshold-group [module-id module] group discard-threshold percent .

Note that there are two threshold values:

  • Mark—The threshold at which the explicit forward congestion indication (EFCI) bit is set.

  • Discard—The threshold at which cells are eligible for CLP discard or early packet discard (EPD).

Optionally, you can enable tail packet discard on each VC for use with CLP selective discard. With the TPD option, the system "goodput" (usable throughput) is enhanced. You enable tail packet discard (TPD) by specifying the "pd" or packet discard parameter in the atm pvc command. The "pd" parameter enables both tail packet discard and early packet discard. The command syntax is:

atm pvc vpi vci [pd pd] [rx-cttr index] [tx-cttr index]
 

atm soft-vc source-vpi source-vci dest-address atm-address dest-vpi 
dest-vci [pd pd] [rx-cttr index] [tx-cttr index]

Use the show atm interface resource command in order to display the discard threshold percentages.

Switch> show atm interface resource atm 3/0/0 

Resource Management configuration: 
    Output queues: 

        Max sizes(explicit cfg): 30000  cbr, none vbr-rt, none vbr-nrt, none abr-ubr 
        Max sizes(installed): 30208 cbr, 256 vbr-rt, 4096 vbr-nrt, 12032 abr-ubr 
        Efci threshold: 25% cbr, 25% vbr-rt, 25% vbr-nrt, 25% abr, 25% ubr 
       Discard threshold: 87% cbr, 87% vbr-rt, 87% vbr-nrt, 87% abr, 87% ubr 
       
!--- Note the "Discard threshold" values.
 
        Abr-relative-rate threshold: 25% abr 
    Pacing: disabled   0 Kbps rate configured, 0 Kbps rate installed 
    Service Categories supported: cbr,vbr-rt,vbr-nrt,abr,ubr 
    Link Distance: 0 kilometers 

With UPC, you can implement either drop or tag as the UPC policy. You cannot set up a tag-and-drop policy in which you tag above sustained cell rate (SCR) and drop above peak cell rate (PCR).

This example output was generated on a permanent virtual circuit (PVC) with packet discard (PD) enabled, UPC set to pass, and traffic shaping parameters set to 10 MB SCR and 20 MB PCR. When you send 25 MB through the PVC, it produces UPC violations on approximately sixty percent of the cells.

switch#show atm vc int a0/1/3 2 122 
Interface: ATM0/1/3, Type: oc3suni 
VPI = 2  VCI = 122 
Status: UP 
Time-since-last-status-change: 00:56:47 
Connection-type: SoftVC 
Cast-type: point-to-point 
 Soft vc location: Source 
 Remote ATM address: 39.840f.8011.4126.0002.fd98.0001.4000.0c80.1010.00 
 Remote VPI: 2 
 Remote VCI: 122 
 Soft vc call state: Active 
 Number of soft vc re-try attempts: 0 
 First-retry-interval: 5000 milliseconds 
 Maximum-retry-interval: 60000 milliseconds 
 Aggregate admin weight: 5040 
 TIME STAMPS: 
 Current Slot:2 
  Outgoing Setup     March 12 11:45:31.180 
  Incoming Connect   March 12 11:45:31.188 
 Packet-discard-option: enabled 
 Usage-Parameter-Control (UPC): tag 
 Wrr weight: 2 
 Number of OAM-configured connections: 0 
 OAM-configuration: disabled 
 OAM-states:  Not-applicable 
 Cross-connect-interface: ATM0/1/2, Type: oc3suni 
 Cross-connect-VPI = 0 
 Cross-connect-VCI = 112 
 Cross-connect-UPC: pass 
 Cross-connect OAM-configuration: disabled 
 Cross-connect OAM-state:  Not-applicable 
 Threshold Group: 2, Cells queued: 0 
 Rx cells: 3706784, Tx cells: 0 
 Tx Clp0:0,  Tx Clp1: 0 
 Rx Clp0:3706784,  Rx Clp1: 0 
 Rx Upc Violations:2257061, Rx cell drops:0 
 Rx pkts:115837, Rx pkt drops:0 
 Rx connection-traffic-table-index: 3020000 
 Rx service-category: VBR-RT (Realtime Variable Bit Rate) 
 Rx pcr-clp01: 20000 
 Rx scr-clp01: 10000 
 Rx mcr-clp01: none 
 Rx      cdvt: 1024 (from default for interface) 
 Rx       mbs: 1024 (from default for interface)

With switched virtual circuits (SVCs), Cisco campus ATM switches use the AAL5 information element (IE) to indicate whether or not to enable packet discard. The presence of the AAL5 IE tells the switch to enable PD. With ATM interfaces using UNI 4.0 signaling, ATM switches can use the frame-discard bits in the traffic management options field of the ATM Traffic Descriptor IE.

Intelligent Tail Packet Discard/Early Packet Discard (ITPD/EPD)

Most data frames are segmented and transmitted across an ATM cloud as multiple cells. If one or more cells are dropped by the network, the resulting packet fails the CRC check at the receiving end and must be retransmitted. Such retransmissions lead to poor effective throughput or goodput, which is defined as the number of delivered cells that are not part of a retransmission or an incomplete packet.

In order to maximize the number of completely delivered packets, your ATM switch router implements a unique ITPD/EPD scheme that intelligently and selectively discards cells that belong to the same packets in order to minimize the effects of fragmentation. When ITPD/EPD work together, they can prevent frequent buffer overflows by dumping corrupted or complete packets from rapidly filling buffers. When a small number of packets are dropped instead of cells from a large number of packets, occasional buffer overflows do not have serious negative effects on the end-to-end system goodput.

TPD works to minimize fragmentation as it occurs. TPD acts in response to cell drops due to one of these reasons:

  • UPC enforcement action upon violation

  • Buffer overflow

  • Exceeding any of the buffer limits

  • CLP selective discard

When one cell of a packet has been discarded by the ATM switch router, TPD discards all subsequent cells of the same packet. Based on the feature card, the last cell (also known as the end of packet (EOP) cell) can be dropped as well.

ATM switches identify the EOP cell via a bit in the payload type identifier (PTI) field of a cell header. The FC-PCQ does not drop the last cell of frame when it does EPD, while the FC-PFQ does.

EPD works to prevent fragmentation before it occurs. With EPD, the ATM switch router begins to discard all cells except the EOP cell from newly arriving packets when the switch buffer queues reach a user-configurable threshold level. If the first cell of a packet has entered the buffer, all cells that remain of the packet are also allowed to enter if sufficient buffer space is available. Otherwise, TPD is enabled.

Use the atm threshold-group group discard-threshold percent command in order to configure the threshold at which point the queue is considered full and EPD starts to drop cells. See the Q thresholds Discard value in the output of show atm resource for the default discard percentage.

The placement of the EPD threshold determines how efficiently the buffer is used and how often cells are dropped. The EPD threshold essentially functions as the effective buffer size. The excess buffer capacity above the EPD threshold is used to accommodate cells from those packets that have already had cells in the buffer or in the transmission on the line.

Setting the threshold depends on many factors, which include:

  • The distribution of packet sizes.

  • The traffic distribution.

  • The duration of the congestion period.

  • The proportion of the incoming cells during the congestion period that belong to outstanding packets and as a result must be buffered.

  • The interaction with other ATM-level or transport-level flow and congestion control mechanisms.

In addition, the amount of excess buffer capacity required depends on how the buffer is shared with non-TPD/EPD traffic.

As noted in the Cell Loss Priority (CLP) Discarding section, you enable TPD when you specify the "pd" or packet discard parameter in the atm pvc command. The "pd" parameter enables both tail packet discard and early packet discard. Packet discard can only be enabled for AAL5 connections. Here is how the drop behavior changes with UPC and the PD option:

  • If UPC is configured to drop and PD is disabled, then the switch drops violating cells only.

  • If UPC is configured to drop and PD is enabled, then the switch performs ITPD and drops all the cells following the violating one (except the last cell).

  • If PD is enabled and cells are queued to a buffer which has already exceeded its EPD threshold, then the switch drops the complete (AAL5) packet.

In other words, PD is applied as EPD whenever possible (high queue sizes, for example) and as ITPD in all other cases, including UPC drops and buffer overflow.

Use SNMP to Gather Drop Statistics

The CISCO-ATM-CONN-MIB provides management information base (MIB) objects to gather per-VC statistics related to cell drops and discarded cells.

CiscoAtmVclEntry 
    ciscoAtmVclRxUpcMode 
    ciscoAtmVclEpdEnable 
    ciscoAtmVclUpcViolations 
    ciscoAtmVclEpdTpdCellDrops 
    ciscoAtmVclEpdTpdPacketDrops 
    ciscoAtmVclEpdTpdPacketsIn 
    ciscoAtmVclLsPerVcQThreshGrp 
    ciscoAtmVclClp0VcqFullCellDrops 
    ciscoAtmVclVcqClpThreshCellDrops 

Note: This MIB is not available on routers with ATM interfaces.

Troubleshoot

Provide this output when you open a case with Cisco Technical Support in order to troubleshoot rejected cells:

  • What is the topology? What other devices feed into this ATM switch router?

  • Which interfaces have the highest traffic loads? Are these the same interfaces that experience the rejected cells?

  • On which MSC chip do the rejected cells occur? Is there a high amount of traffic that flows through this set of ports? For example, drops on MSC 0 point to a high amount of traffic on interfaces in slots 0 and 1.

  • Output from these show commands:

    • show hardware

    • show running

    • show switch fabric

    • show atm resource or show controller (based on the platform)

Related Information

Updated: Jun 05, 2005
Document ID: 10496