Guest

Inverse Multiplexing over ATM (IMA)

Troubleshooting ATM Links on the 7x00 IMA Port Adapter

Document ID: 10463



Contents

Introduction
Prerequisites
      Requirements
      Conventions
To Understand Show Ima Output
Status of the State Machine
IMA Group Current Configuration
IMA MIB Information
IMA Group Counters
Physical Link Counters
IMA Link Counters
To Understand Show Controllers Output
Known Issues
      Line Protocol Down on Physical Interface
      Active-Links-Minimum for Bandwidth
Supported MIBs
Related Information

Introduction

Before you can ping across an inverse-multiplexing-over-ATM (IMA) interface, you need to ensure that both the IMA logical interface and the physical interfaces that make up that IMA logical interface are up and active. In some cases, these interfaces do not show as up/up in the output of the show interface command. There are two key commands to help determine the error condition:

  • show ima interface atm{mod}/ima{group#} detail - Provides IMA-specific information on both the IMA group interface and the composing physical interfaces.

  • show controllers atm {mod/port} (7200 Series) or show controller vip <slot#> tech (7500 Series) - Provides detailed information on the physical interfaces and the ATM segmentation and reassembly (SAR).

This document explains the values you can see in the output of these commands. Much of the information used in this document is defined in Appendix A of AF-PHY-0086.001, which is the specification for the IMA of the ATM Forum. Click here exit.gif to download the IMA and other approved specifications.

Prerequisites

Requirements

There are no specific requirements for this document.

Conventions

Refer to Cisco Technical Tips Conventions for more information on document conventions.

To Understand Show Ima Output

The show ima interface atm command displays four sets of information that can help troubleshoot IMA link problems:

  • Near end status, far end status, and group status

  • IMA group current configuration

  • IMA MIB information

  • IMA group counters

   Router#show ima interface atm 1/ima0 detail 
     ATM1/ima0 is up 
           ImaGroupState:NearEnd = operational, FarEnd = operational 
           ImaGroupFailureStatus  =    noFailure 
   IMA Group Current Configuration:    
           ImaGroupMinNumTxLinks = 2    ImaGroupMinNumRxLinks = 2 
           ImaGroupDiffDelayMax  = 25   ImaGroupNeTxClkMode   = common(ctc) 
           ImaGroupFrameLength = 128    ImaTestProcStatus     = disabled 
           ImaGroupTestLink = 0         ImaGroupTestPattern   = 0xFF 
   IMA MIB Information: 
           ImaGroupSymmetry           = symmetricOperation 
           ImaGroupFeTxClkMode        = common(ctc) 
           ImaGroupRxFrameLength      = 128 
           ImaGroupTxTimingRefLink    = 0     ImaGroupRxTimingRefLink = 0 
           ImaGroupTxImaId            = 0     ImaGroupRxImaId         = 0 
           ImaGroupNumTxCfgLinks      = 2     ImaGroupNumRxCfgLinks   = 2 
           ImaGroupNumTxActLinks      = 2     ImaGroupNumRxActLinks   = 2 
           ImaGroupLeastDelayLink     = 1     ImaGroupDiffDelayMaxObs = 0 
   IMA group counters: 
           ImaGroupNeNumFailures      = 78    ImaGroupFeNumFailures   = 68 
           ImaGroupUnAvailSecs        = 441453 ImaGroupRunningSecs =  445036 

These sections explain each of the subsections in more detail.

Status of the State Machine

Both physical ATM T1 interfaces and the IMA virtual group interface follow a state machine, in which the interface moves through several states before it becomes active. IMA group interfaces start in the Not Configured state and then enter the Start-up state.

Note: The state machine is defined separately for both the near end the far end.

    ATM1/ima0 is up 
           ImaGroupState:NearEnd = operational, FarEnd = operational 
           ImaGroupFailureStatus  = noFailure 

State

Description

Not Configured

The IMA group does not exist.

Start-up

The near end waits to receive indication that the far end is in Start-up. The IMA group moves to the Start-up-Ack state when it can communicate with the far end and has recorded IMA ID, group symmetry, and other IMA group parameters.

Start-up-Ack

When both sides of the link are enabled, they move through this state to the Insufficient-Links state.

Config-Aborted

The far-end uses unacceptable configuration parameters, such as an unsupported IMA frame size, an incompatible group symmetry, or an unsupported IMA version.

Insufficient-Links

The near end has accepted the far end group parameters, but the far end does not have sufficient links to move into the Operational state.

Blocked

The group is blocked, even though sufficient links are active in both directions.

Operational

The group is not inhibited and has sufficient links in both directions. The IMA interface can receive ATM layer cells and pass them from the IMA sublayer to the ATM layer.

IMA Group Current Configuration

This output provides the equivalent SNMP object ID of a configuration setting for your ATM IMA interface. Each parameter uses a default setting.

   IMA Group Current Configuration:    
           ImaGroupMinNumTxLinks = 2     ImaGroupMinNumRxLinks = 2 
           ImaGroupDiffDelayMax  = 25    ImaGroupNeTxClkMode   = common(ctc) 
           ImaGroupFrameLength = 128     ImaTestProcStatus = disabled 
           ImaGroupTestLink  = 0         ImaGroupTestPattern = 0xFF 

MIB Value

Explanation

ImaGroupMinNumTxLinks

Minimum number of transmit links required to be Active for the IMA group to be in the Operational state.

ImaGroupMinNumRxLinks

Minimum number of receive links required to be Active for the IMA group to be in the Operational state.

ImaGroupDiffDelayMax

Maximum number of milliseconds of differential delay among the links that can be tolerated on this interface. If a link delay exceeds the specified maximum, the link is dropped.

ImaGroupNeTxClkMode

The transmit clocking mode used by the near-end IMA group has two modes:

  • Common - If all the links in the group share a clock source.

  • Independent - If all the links use a different clock source.

ImaGroupFrameLength

Number of ATM cells in a single IMA frame. The default value is 128. IMA frames are numbered sequentially, and each contains an IMA Control Protocol (ICP) cell at a specific position.

ImaTestProcStatus

Status of test pattern procedure tests. Use the ima test [link port] [pattern pattern-id] command to enable the test procedure tests on your PA-A3-8T1IMA adapter. Click here for more information.

ImaGroupTestLink

Designates an interface as the test link for use in the test pattern procedure.

ImaGroupTestPattern

Specifies the transmit test pattern in an IMA group loopback operation. A value in the range of zero to 255 designates a specific pattern.

IMA MIB Information

   IMA MIB Information: 
         ImaGroupSymmetry         = symmetricOperation 
         ImaGroupFeTxClkMode      = common(ctc) 
         ImaGroupRxFrameLength    = 128 
         ImaGroupTxTimingRefLink  = 0      ImaGroupRxTimingRefLink = 0 
         ImaGroupTxImaId          = 0      ImaGroupRxImaId         = 0 
         ImaGroupNumTxCfgLinks    = 2      ImaGroupNumRxCfgLinks   = 2 
         ImaGroupNumTxActLinks    = 2      ImaGroupNumRxActLinks   = 2 
         ImaGroupLeastDelayLink   = 1      ImaGroupDiffDelayMaxObs = 0 

MIB Value

Explanation

ImaGroupSymmetry

Group symmetry mode, which can be one of three states. The default mode is symmetric configuration and operation, in which the router only can use links for which both the transmit and receive state on each end is Active.

ImaGroupFeTxClkMode

Transmit clocking mode used by the far-end IMA group.

ImaGroupRxFrameLength

Value of IMA frame length as received from the far-end.

ImaGroupTxTimingRefLink

Interface index (ifIndex) of the transmit timing reference link to be used by the near-end for IMA data cell clock recovery from the ATM layer.

ImaGroupRxTimingRefLink

Interface index (ifIndex) of the transmit timing reference link to be used by the near-end for IMA data cell clock recovery toward the ATM layer.

ImaGroupTxImaId

IMA ID currently in use by the near-end IMA function.

ImaGroupRxImaId

IMA ID currently in use by the far-end IMA function.

ImaGroupNumTxCfgLinks

Number of links that are configured to transmit in this IMA group.

ImaGroupNumRxCfgLinks

Number of links that are configured to receive in this IMA group.

ImaGroupNumTxActLinks

Number of links that are configured to transmit and are currently in the Active state in this IMA group.

ImaGroupNumRxActLinks

Number of links that are configured to receive and are currently in the Active state in this IMA group.

ImaGroupLeastDelayLink

Interface index (ifIndex) of the member link which has the smallest link propagation delay. A value of zero can be used if no link has been configured in the IMA group, or if the link with the smallest link propagation delay has not yet been determined.

ImaGroupDiffDelayMaxObs

Latest maximum differential delay observed (in milliseconds) between the links that has the least and the most link propagation delay, among the receive links that are currently configured in the IMA group.

IMA Group Counters

   IMA group counters: 
         ImaGroupNeNumFailures    = 78    ImaGroupFeNumFailures   = 68 
         ImaGroupUnAvailSecs      = 441453  ImaGroupRunningSecs = 445036 

MIB Value

Explanation

ImaGroupNeNumFailures

Number of times that a near-end group failure has been reported since power-up or reboot. Failure states include Config-Aborted, Insufficient-Links, and other states described in the table in the Status of the State Machine section.

ImaGroupFeNumFailures

Number of times that a far-end group failure has been reported since power-up or reboot. Failure states include Config-Aborted, Insufficient-Links, and other states described in the table in the Status of the State Machine section.

ImaGroupUnAvailSecs

Number of one-second intervals where the IMA group traffic state machine was down.

ImaGroupRunningSecs

Amount of time in seconds since this IMA group has been in the Operational state.

Physical Link Counters

An IMA interface builds an IMA link table that contains status information about a link, which is part of an IMA group. Each link is assigned an interface index (IfIndex), which network management stations use to poll for statistics or set configuration parameters.

    ATM1/0 is up 
           ImaLinkRowStatus = LinkRowStatusUnknown    
           ImaLinkIfIndex   =    0       ImaLinkGroupIndex= 0 
           ImaLinkState: 
                      NeTx = active 
                      NeRx = active 
                      FeTx = active 
                      FeRx = active 
           ImaLinkFailureStatus: 
                      NeRx = noFailure 
                      FeRx = noFailure 
           ImaLinkTxLid              = 0      ImaLinkRxLid = 0 
           ImaLinkRxTestPattern      = 65     ImaLinkTestProcStatus  = disabled 
           ImaLinkRelDelay           = 0 

MIB Value

Explanation

ImaLinkTxLid

Outbound link ID (LID) used currently on the link by the local end. This value has significance only if the link belongs to an IMA group.

ImaLinkRxLid

Inbound link ID used currently on the link by the remote end as reported through IMA control protocol (ICP) cells. This value has significance only if the link belongs to an IMA group.

ImaLinkRxTestPattern

Specifies the transmit test pattern in an IMA group loopback operation. A value in the range of zero to 255 designates a specific pattern.

ImaLinkTestProcStatus

Status of test pattern procedure tests. Use the ima test [link port] [pattern pattern-id] command to enable the test procedure tests on your PA-A3-8T1IMA adapter. Click here for more information.

ImaLinkRelDelay

Latest measured delay on this link relative to the link, in the same IMA group, with the least delay.

An IMA interface follows a state machine, in which the interface moves through several states before it becomes active. Special cells, called IMA control protocol (ICP) cells, carry the state information between the two ends. This table explains the possible states:

IMA Link State

Explanation

Not in group

The link is not configured to be an IMA group member.

Unusable

The link is configured to be an IMA group member, but it is not in use due to fault, inhibition, etc. Link error conditions, such as physical links or IMA errors, and vendor-dependent conditions, such as the exceedance of a certain bit error rate (BER), can lead to an unusable state.

Usable

The link is ready to operate but waits for the other end to be usable or active.

Active

The link can pass ATM layer cells to and from the ATM layer.

Blocking

(Receive state only.) The link transitions to the Unusable state. The sub-state Blocking allows a graceful transition into the Unusable state without a loss of ATM cells.

When the near end reaches a Usable receive state, it moves into an Active receive state only if the far end (FE) reports a Usable transmit state. Similarly, when the near end reaches a Usable transmit state, it moves into an Active transmit state only if the far end reports an Active receive state.

Note: IMA defines separate states for the transmit and receive directions at each end, and each end can report a different state.

IMA Link Counters

   IMA Link counters : 
         ImaLinkImaViolations   = 1 
         ImaLinkNeSevErroredSec = 41      ImaLinkFeSevErroredSec = 34 
         ImaLinkNeUnavailSec    = 441505 ImaLinkFeUnAvailSec     = 28 
         ImaLinkNeTxUnusableSec = 2       ImaLinkNeRxUnUsableSec = 441542 
         ImaLinkFeTxUnusableSec = 74      ImaLinkFeRxUnusableSec = 57 
         ImaLinkNeTxNumFailures = 0       ImaLinkNeRxNumFailures = 15 
         ImaLinkFeTxNumFailures = 4       ImaLinkFeRxNumFailures = 3  

In order to understand the counters in the table requires you to understand these terms:

  • Unavailable second (UAS) - A second in which the interface was not available because the router detected 10 contiguous severely errored seconds or a condition that led to a failure.

  • Severely errored second (SES) - A second with one or more out of frame defects or a detected alarm indication signal (AIS) defect.

  • Unusable - An ATM physical interface enters the UnusableFailed state when it is configured to be a member of an IMA group, but it cannot be used because of one of these fault conditions:

    • Link Defects - Interface experiences loss of signal, loss of frame, alarm indication signal, or loss of cell delineation.

    • Loss of IMA Frame (LIF) - Interface experiences an out of IMA frame (OIF) or loss of synchronization state for at least two IMA frames. When this fault condition is active, the IMA sublayer replaces all received data cells with filler cells.

    • Loss of Delay Synchronization (LODS) - Interface has detected that the timing delay between this link and other links in the IMA group has exceeded the configured maximum value. This value ranges from 25 to 250 milliseconds. Normally, the IMA protocol adjusts for differences in delay so that all links in a group actively carry network traffic. Otherwise, an ATM interface that exceeds the differential timing delay max value is removed from the IMA group. Refer to Troubleshooting Bouncing IMA Links for more information.

IMA Link Counter

Explanation

ImaLinkImaViolations

Number of errored, invalid, or omitted ICP cells, except within severely errored second (SES) or unavailable seconds (UAS) fault conditions.

ImaLinkNeSevErroredSec

Number of one-second intervals with one of these fault conditions:

  • 30% or more invalid ICP cells

  • Link defects such as loss of signal, loss of frame, alarm indication signal, or loss of cell delineation

  • IMA defects such as loss of IMA framing (LIF) or loss of delay synchronization (LODS)

ImaLinkNeUnavailSec

Number of unavailable seconds at the near end. Unavailability begins when ten contiguous severely errored seconds are recorded by the ATM interface.

ImaLinkNeTxUnusableSec

Number of transmit unusable seconds at the near end.

ImaLinkFeTxUnusableSec

Number of transmit unusable seconds at the far end.

ImaLinkNeTxNumFailures

Number of times that a near-end transmit failure alarm condition has been entered on this link (that is, some form of implementation-specific transmit fault).

ImaLinkFeTxNumFailures

Number of times the far-end transmit failure alarm condition has been entered on this link (that is, some form of implementation-specific transmit fault).

ImaLinkFeSevErroredSec

Number of one-second intervals with one or more remote defect indicator (RDI) defects.

ImaLinkFeUnAvailSec

Number of unavailable seconds at the far end. Unavailability begins when ten contiguous severely errored seconds are recorded by the ATM interface.

ImaLinkNeRxUnusableSec

Number of receive unusable seconds at the near end.

ImaLinkFeRxUnusableSec

Number of receive unusable seconds at the far end.

ImaLinkNeRxNumFailure

Number of near-end receive failure alarm conditions.

ImaLinkFeRxNumFailures

Number of far-end receive failure alarm conditions.

To Understand Show Controllers Output

The PA-A3-8T1IMA uses the ATMizer II segmentation and reassembly (SAR) chip. The name of the SAR is displayed in the output of show controllers atm.

   7200-2#show controller atm 3/0 
   Interface ATM3/0 is up 
   Hardware is ENHANCED ATM PA - DS3 (45Mbps) 
   Lane client mac address is 0030.7b1e.9054 
   Framer is PMC PM7345 S/UNI-PDH, SAR is LSI ATMIZER II 
   Firmware rev: G119, Framer rev: 1, ATMIZER II rev: 3 
     idb=0x61499630, ds=0x6149E9C0, vc=0x614BE940 
     slot 3, unit 2, subunit 0, fci_type 0x005B, ticks 73495 
     400 rx buffers: size=512, encap=64, trailer=28, magic=4 
   [snip]

This simple diagram illustrates the path that bits take when they are received from the physical wire at the PA-A3-8T1IMA.

Note: There are various locations inside the system where cells and reassembled packets are stored.

DS1 -> PMC PM734 S/UNI-PDH -> ATMizer II SAR Rx cell buffer -> PCI bus -> RX host buffers

The show controllers interface atm{mod#}/ima{group#} command displays several important values. These values are highlighted in bold:

    Curr Stats: 
     rx_cell_lost=0, rx_no_buffer=0, rx_crc_10=0    
     rx_cell_len=0, rx_no_vcd=0, rx_cell_throttle=0, tx_aci_err=0 
      

Counter

Explanation

rx_cell_lost

Number of times that the SAR detected lost or misinserted cells through a comparison of the accumulated payload length, X, with the payload length, LenCell, extracted from the length field of the AAL5 trailer. The accumulated payload length is the number of received cells since the last cell with the end-of-AAL5-PDU bit set to one multiplied by 48. (The third bit of the payload type identifier (PTI) field indicates whether the cell is the final cell of a higher-layer data frame.)

rx_no_buffer

Number of times that a packet buffer was not available to store an inbound cell. In this condition, the router drops the complete packet inside the onboard memory of the PA-A3.

Note: The packet never makes it to the host memory on the Network Processing Engine (NPE) or Versatile Interface Processor (VIP).

rx_crc_10

Number of times that an ATM cell failed the CRC-10 checksum used by operation, administration, and maintenance (OAM) cells, RM cells, and AAL3/4 packets.

rx_cell_len

Number of times that the received cell payload length was less than 48 bytes.

rx_no_vcd

Number of times that the PA-A3 received a cell without a correspondent virtual circuit descriptor (VCD) in its local VC table.

rx_cell_throttle

Number of times that the PA-A3 microcode cannot handle the inbound cell rate and proactively dropped cells. Internally, the PA-A3 owns 73 cell buffers and starts to throttle the interface if the total cell buffer usage exceeds the preset high water mark.

Known Issues

Line Protocol Down on Physical Interface

Before Cisco IOS® Software Release 12.0(11)S and 12.1(3)E, ATM physical interfaces configured as a member of an IMA group were able to have a "line protocol is down" status even though the IMA interface was up/up and passed traffic without any problems. This state was able to occur on the Cisco 7200 Router Series because the ATM interfaces are the raw links, and all protocol-related configuration is done on the virtual IMA interface. Cisco Bug ID CSCdr22203 changed this default behavior on the 7200 Router. On the Cisco 7500 and 3600 Series, the line protocol status on the ATM physical interfaces is brought up when the links are operational.

Active-Links-Minimum for Bandwidth

Originally, the bandwidth of an IMA group interface was limited to the minimum number of active IMA links needed to keep the IMA interface up. The command to define this value is ima active-links-minimum. For example, if four physical ATM interfaces are configured as members of IMA group zero and the ima active-links-minimum value is set to one, the bandwidth is equal to one T1 or 1.5Mbps, not 6 Mbps.

Cisco Bug ID CSCdr12395 changes this behavior. Now the PA-A3-8T1IMA adapter uses the bandwidth of all up/up ATM physical interfaces configured as IMA group members.

Cisco bug IDs CSCdt67354 and CSCdv67523 are subsequent enhancement requests to update the IMA group VC bandwidth when an interface is added or removed from the IMA group, shut/no shut, or bounces due to a link failure or change at the remote end. The changes implemented in CSCdr12395 configure the IMA group bandwidth to the total bandwidth of its member links only when the IMA group comes up. Changes to the IMA group after the initial up status are not reflected.

Supported MIBs

The IMA port adapter supports the IMA MIB and the DS1 MIB (Request for Comments [RFC] 1406) when used in either the 7200 Series or 7500 Series. (We recommend that you use Cisco IOS 12.2 or 12.2T for the latest functionality.) Refer to the Cisco MIBs page.

In this sample output, we use the snmpwalk command from a UNIX workstation to poll the IMA MIB variables on a router with an IP address of 10.1.1.1.

# snmpwalk -m all 10.1.1.1 public imaGroupNumber    
   enterprises.atmForum.atmForumNetworkManagement.atmfIma.atmfImaMib.atmfImaMib   
   Objects.imaGroupNumber.0 = 1 

# snmpwalk -m all -O s 10.1.1.1 public atmfImaMibObjects    
   imaGroupNumber.0 = 1 
   imaGroupRowStatus.126 = active(1) 
   imaGroupIfIndex.126 = 126 
   imaGroupNeState.126 = operational(9) 
   imaGroupFeState.126 = operational(9) 
   imaGroupFailureStatus.126 = noFailure(1)    
   imaGroupSymmetry.126 = symmetricOperation(1)    
   imaGroupMinNumTxLinks.126 = 1 
   imaGroupMinNumRxLinks.126 = 1 
   imaGroupNeTxClkMode.126 = ctc(1) 
   [output omitted] 
   imaLinkInvalidIntervals.2 = 0 
   imaLinkInvalidIntervals.3 = 0 
   imaLinkTimeElapsed.1 = 0
   imaLinkTimeElapsed.2 = 0 
   imaLinkTimeElapsed.3 = 0

Related Information



Updated: Jun 05, 2005 Document ID: 10463