Inverse Multiplexing over ATM (IMA) involves inverse multiplexing and de-multiplexing of ATM cells in a cyclical fashion among physical links grouped to form a higher-bandwidth and logical link. The rate of the logical link is approximately the sum of the rate of the physical links in the IMA group. Streams of cells are distributed in a round-robin manner across the multiple T1/E1 links and reassembled at the destination to form the original cell stream. Sequencing is provided using IMA Control Protocol (ICP) cells.
In the transmit direction, the ATM cell stream received from the ATM layer is distributed on a cell by cell basis across the multiple links within the IMA group. At the far-end, the receiving IMA unit reassembles the cells from each link on a cell-by-cell basis and recreates the original ATM cell stream. The image below displays how cell streams are transmitted across multiple interfaces and recombined to form the original cell stream. The receiving interface discards the ICP cells, and the aggregate cell stream is then passed to the ATM layer.
Periodically, the transmit IMA sends special cells that permit reconstruction of the ATM cell stream at the receiving IMA. These ICP cells provide the definition of an IMA frame.
Cell streams are transmitted across multiple interfaces and recombined to form the original stream.
There are no specific requirements for this document.
The information in this document is based on these software and hardware versions:
For Cisco 7200 series routers, the eight-port T1/E1 IMA port adapters are supported since Cisco IOS® Software version 12.0(5)XE, 12.0(7)XE, 12.1(1)E, and 12.1(5)T.
For Cisco 7500 series routers, the eight-port T1/E1 IMA port adapters are supported on the following VIPs:
VIP2-40 - since Cisco IOS version 12.0(5)XE, 12.0(7)XE, 12.1(1)E.
VIP2-50 - since Cisco IOS version 12.0(5)XE, 12.0(7)XE, 12.1(1)E and 12.1(5)T.
VIP4-80 - since Cisco IOS 12.2(1)T, 12.2(1), 12.0(16)S, and 12.1(7)E.
For Cisco LightStream 1010 and Catalyst 8510 ATM switch routers, the eight-port T1/E1 IMA modules are supported since Cisco IOS version 12.0(4a)W5(11a) and require an ATM switch processor with a per-flow queuing feature card (FC-PFQ).
For Cisco Catalyst 8540 ATM switch routers, the eight-port T1/E1 IMA modules are supported since Cisco IOS version 12.0(7)W5(15c).
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, make sure that you understand the potential impact of any command.
This document uses this network setup:
For more information on document conventions, refer to Cisco Technical Tips Conventions.
ICP cells are transmitted between IMA interfaces. These cells are used for decoupling and restructuring of ATM cell streams. The transmitting IMA aligns the sending of IMA frames on all links. This allows the receiver to adjust for any delays that may be experienced across the links. In the image above (it has been simplified for this example), the transmission is from left to right. However, this data and the ICP cells are sent in both directions. The receiver can therefore detect delay by measuring the arrival times of the IMA frames on each physical port. By default, each frame consists of 128 cells. As a result, one of every 128 cells is an IMA cell. Frame length is viewed with the show ima interface command.
Note: ICP cells are discarded by the receiving interface. Therefore, counter information does not display ICP cells. Please refer to ATM Control Cells Illustrated for a more detailed explanation ATM control cells.
An IMA device always sends a continuous stream. If no ATM layer cells are being sent, then an IMA filler cell is transmitted to provide a constant stream at the physical layer. Inserted filler cells allow for rate decoupling at the IMA sublayer.
Note: Filler cells are discarded by the receiver. Therefore, counter information does not display filler cells. Please refer to ATM Control Cells Illustrated for a more detailed explanation on ATM control cells.
This document uses these configurations:
Follow these steps to configure the router labeled c7200-IMA:
Group the T1/E1 interfaces that you need. Note that the interface must be on the same port adapter.
Define any physical level parameters (if required). Scrambling would be one example.
Create an IMA interface and configure it with virtual circuits (VCs) just like you configure a standard, non-IMA ATM interface.
The IMA interface has the following syntax: interface atm x/imay where x is the slot number and y is the IMA-group number.
In the configuration below, only PVCs are configured.
c7200-IMA |
---|
hostname c7200-IMA ! interface ATM1/0 no ip address no ip directed-broadcast ima-group 0 ! interface ATM1/ima0 no ip address no ip directed-broadcast no atm ilmi-keepalive ! interface ATM1/ima0.1 point-to-point ip address 100.100.100.1 255.255.255.0 no ip directed-broadcast pvc 5/100 encapsulation aal5snap ubr 600 ! interface ATM1/1 no ip address no ip directed-broadcast ima-group 0 ! interface ATM1/2 no ip address no ip directed-broadcast ima-group 0 ! interface ATM1/3 no ip address no ip directed-broadcast ima-group 0 |
LightStream 1010-2 |
---|
hostname ls1010-2 ! interface ATM0/0/0 no ip directed-broadcast lbo short 133 ima-group 0 ! interface ATM0/0/1 no ip address no ip directed-broadcast clock source free-running lbo short 133 ima-group 0 ! interface ATM0/0/2 no ip address no ip directed-broadcast lbo short 133 ima-group 0 ! interface ATM0/0/3 no ip address no ip directed-broadcast lbo short 133 ima-group 0 ! interface ATM0/0/ima0 no ip address no ip directed-broadcast no ip route-cache cef no atm ilmi-keepalive atm pvc 5 100 interface ATM0/1/0 1 40 |
Router-B |
---|
hostname Router-B ! interface ATM5/1/0 no ip address no ip route-cache distributed atm pvc 1 0 16 ilmi no atm ilmi-keepalive ! interface ATM5/1/0.1 point-to-point ip address 100.100.100.2 255.255.255.0 pvc 1/40 ubr 600 encapsulation aal5snap |
These are additional considerations regarding this configuration:
Traffic shaping parameters can vary based on your environment. Please refer to Understanding Router Support for ATM Real-Time Service Categories.
Scrambling may or may not be required at the interface level depending on carrier configurations. Please refer to When Should Scrambling Be Enabled on ATM Virtual Circuits for more information.
This section provides information you can use to confirm your configuration is working properly.
Certain show commands are supported by the Output Interpreter Tool (registered customers only) , which allows you to view an analysis of show command output.
Use these commands to test whether your network is operating properly:
show atm vc
show interface atm 1/ima0
show ima interface atm1/ima0
show ima interface atm1/ima0 detail
show controller atm 1/0
ping
The output shown below is a result of entering these commands on the devices shown in the network diagram above. This output shows that the network is operating properly. Use the show atm vc command to display the PVCs and traffic information. As can be seen below, the PVC 1/500 is UP and using UBR with a Peak Cell Rate (PCR) of 600 kbps.
c7200-IMA# show atm vc Peak Avg/Min Burst Interface Name VCD VPI VCI Type Encaps SC Kbps Kbps Cells Status 1/ima0.1 1 5 100 PVC SNAP UBR 600 UP
Use the show interface atm 1/ima 0 command to look for input/output errors. A large number of input/output errors means that the line is not clean.
c7200-IMA# show interface atm 1/ima0 ATM1/ima0 is up, line protocol is up Hardware is IMA PA MTU 4470 bytes, sub MTU 4470, BW 1523 Kbit, DLY 20000 usec, reliability 255/255, txload 1/255, rxload 1/255 Encapsulation ATM, loopback not set Keepalive not supported Encapsulation(s): AAL5 2048 maximum active VCs, 1 current VCCs VC idle disconnect time: 300 seconds 3 carrier transitions Last input 00:01:24, output 00:01:24, output hang never Last clearing of "show interface" counters never Input queue: 0/75/0 (size/max/drops); Total output drops: 0 Queueing strategy: Per VC Queueing 5 minute input rate 0 bits/sec, 0 packets/sec 5 minute output rate 0 bits/sec, 0 packets/sec 464 packets input, 17320 bytes, 0 no buffer Received 0 broadcasts, 0 runts, 0 giants, 0 throttles 0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored, 0 abort 474 packets output, 17176 bytes, 0 underruns 0 output errors, 0 collisions, 0 interface resets 0 output buffer failures, 0 output buffers swapped out
Issue the show ima interface command to look for IMA failures. The output below shows that there are no falures, and that NearEnd and FarEnd are operational.
c7200-IMA# show ima interface atm1/ima0 ATM1/ima0 is up ImaGroupState: NearEnd = operational, FarEnd = operational ImaGroupFailureStatus = noFailure IMA Group Current Configuration: ImaGroupMinNumTxLinks = 1 ImaGroupMinNumRxLinks = 1 ImaGroupDiffDelayMax = 250 ImaGroupNeTxClkMode = common(ctc) ImaGroupFrameLength = 128 ImaTestProcStatus = disabled ImaGroupTestLink = 0 ImaGroupTestPattern = 0xFF IMA Link Information: Link Link Status Test Status ------ ---------------------------- -------------- ATM1/0 up disabled ATM1/1 up disabled ATM1/2 up disabled ATM1/3 up disabled c7200-IMA# show ima interface atm1/ima0 detail ATM1/ima0 is up ImaGroupState: NearEnd = operational, FarEnd = operational ImaGroupFailureStatus = noFailure IMA Group Current Configuration: ImaGroupMinNumTxLinks = 1 ImaGroupMinNumRxLinks = 1 ImaGroupDiffDelayMax = 250 ImaGroupNeTxClkMode = common(ctc) ImaGroupFrameLength = 128 ImaTestProcStatus = disabled ImaGroupTestLink = 0 ImaGroupTestPattern = 0xFF IMA MIB Information: ImaGroupSymmetry = symmetricOperation ImaGroupFeTxClkMode = common(ctc) ImaGroupRxFrameLength = 128 ImaGroupTxTimingRefLink = 0 ImaGroupRxTimingRefLink = 1 ImaGroupTxImaId = 0 ImaGroupRxImaId = 0 ImaGroupNumTxCfgLinks = 4 ImaGroupNumRxCfgLinks = 4 ImaGroupNumTxActLinks = 4 ImaGroupNumRxActLinks = 4 ImaGroupLeastDelayLink = 3 ImaGroupDiffDelayMaxObs = 0 IMA group counters: ImaGroupNeNumFailures = 3 ImaGroupFeNumFailures = 3 ImaGroupUnAvailSecs = 2 ImaGroupRunningSecs = 427185 IMA Detailed Link Information: ATM1/0 is up ImaLinkRowStatus = active ImaLinkIfIndex = 1 ImaLinkGroupIndex = 51 ImaLinkState: NeTx = active NeRx = active FeTx = active FeRx = active ImaLinkFailureStatus: NeRx = noFailure FeRx = noFailure ImaLinkTxLid = 0 ImaLinkRxLid = 0 ImaLinkRxTestPattern = 65 ImaLinkTestProcStatus = disabled ImaLinkRelDelay = 0 IMA Link counters : ImaLinkImaViolations = 1 ImaLinkNeSevErroredSec = 32 ImaLinkFeSevErroredSec = 8 ImaLinkNeUnavailSec = 543 ImaLinkFeUnAvailSec = 0 ImaLinkNeTxUnusableSec = 2 ImaLinkNeRxUnUsableSec = 572 ImaLinkFeTxUnusableSec = 78 ImaLinkFeRxUnusableSec = 78 ImaLinkNeTxNumFailures = 0 ImaLinkNeRxNumFailures = 9 ImaLinkFeTxNumFailures = 4 ImaLinkFeRxNumFailures = 4 ATM1/1 is up ImaLinkRowStatus = active ImaLinkIfIndex = 2 ImaLinkGroupIndex = 51 ImaLinkState: NeTx = active NeRx = active FeTx = active FeRx = active ImaLinkFailureStatus: NeRx = noFailure FeRx = noFailure ImaLinkTxLid = 1 ImaLinkRxLid = 1 ImaLinkRxTestPattern = 65 ImaLinkTestProcStatus = disabled ImaLinkRelDelay = 0 IMA Link counters : ImaLinkImaViolations = 1 ImaLinkNeSevErroredSec = 1 ImaLinkFeSevErroredSec = 0 ImaLinkNeUnavailSec = 0 ImaLinkFeUnAvailSec = 0 ImaLinkNeTxUnusableSec = 2 ImaLinkNeRxUnUsableSec = 2 ImaLinkFeTxUnusableSec = 0 ImaLinkFeRxUnusableSec = 0 ImaLinkNeTxNumFailures = 0 ImaLinkNeRxNumFailures = 0 ImaLinkFeTxNumFailures = 0 ImaLinkFeRxNumFailures = 0 ATM1/2 is up ImaLinkRowStatus = active ImaLinkIfIndex = 3 ImaLinkGroupIndex = 51 ImaLinkState: NeTx = active NeRx = active FeTx = active FeRx = active ImaLinkFailureStatus: NeRx = noFailure FeRx = noFailure ImaLinkTxLid = 2 ImaLinkRxLid = 2 ImaLinkRxTestPattern = 65 ImaLinkTestProcStatus = disabled ImaLinkRelDelay = 0 IMA Link counters : ImaLinkImaViolations = 1 ImaLinkNeSevErroredSec = 1 ImaLinkFeSevErroredSec = 0 ImaLinkNeUnavailSec = 0 ImaLinkFeUnAvailSec = 0 ImaLinkNeTxUnusableSec = 2 ImaLinkNeRxUnUsableSec = 2 ImaLinkFeTxUnusableSec = 0 ImaLinkFeRxUnusableSec = 0 ImaLinkNeTxNumFailures = 0 ImaLinkNeRxNumFailures = 0 ImaLinkFeTxNumFailures = 0 ImaLinkFeRxNumFailures = 0 ATM1/3 is up ImaLinkRowStatus = active ImaLinkIfIndex = 4 ImaLinkGroupIndex = 51 ImaLinkState: NeTx = active NeRx = active FeTx = active FeRx = active ImaLinkFailureStatus: NeRx = noFailure FeRx = noFailure ImaLinkTxLid = 3 ImaLinkRxLid = 3 ImaLinkRxTestPattern = 65 ImaLinkTestProcStatus = disabled ImaLinkRelDelay = 0 IMA Link counters : ImaLinkImaViolations = 1 ImaLinkNeSevErroredSec = 1 ImaLinkFeSevErroredSec = 0 ImaLinkNeUnavailSec = 0 ImaLinkFeUnAvailSec = 0 ImaLinkNeTxUnusableSec = 2 ImaLinkNeRxUnUsableSec = 2 ImaLinkFeTxUnusableSec = 0 ImaLinkFeRxUnusableSec = 0 ImaLinkNeTxNumFailures = 0 ImaLinkNeRxNumFailures = 0 ImaLinkFeTxNumFailures = 0 ImaLinkFeRxNumFailures = 0
Note: It is a good idea to check the controller to verify that is it up and that there are no alarms reported.
c7200-IMA# show controller atm 1/0 Interface ATM1/0 is up Hardware is IMA PA - DS1 (1Mbps) Framer is PMC PM7344, SAR is LSI ATMIZER II Firmware rev: G114, ATMIZER II rev: 3 idb=0x621903D8, ds=0x62198DE0, vc=0x621BA340, pa=0x62185EC0 slot 1, unit 1, subunit 0, fci_type 0x00BA, ticks 414377 400 rx buffers: size=512, encap=64, trailer=28, magic=4 Curr Stats: rx_cell_lost=0, rx_no_buffer=0, rx_crc_10=0 rx_cell_len=0, rx_no_vcd=827022, rx_cell_throttle=0, tx_aci_err=0 Rx Free Ring status: base=0x3CFF0040, size=1024, write=432 Rx Compl Ring status: base=0x7B095700, size=2048, read=464 Tx Ring status: base=0x3CFE8040, size=8192, write=476 Tx Compl Ring status: base=0x4B099740, size=4096, read=238 BFD Cache status: base=0x621B52C0, size=5120, read=5119 Rx Cache status: base=0x621A0D00, size=16, write=0 Tx Shadow status: base=0x621A1140, size=8192, read=463, write=476 Control data: rx_max_spins=2, max_tx_count=17, tx_count=13 rx_threshold=267, rx_count=0, tx_threshold=3840 tx bfd write indx=0x10DF, rx_pool_info=0x621A0DA0 Control data base address: rx_buf_base = 0x4B059E60 rx_p_base = 0x62199300 rx_pak = 0x621A0A14 cmd = 0x621990A0 device_base = 0x3C800000 ima_pa_stats = 0x4B09D860 sdram_base = 0x3CE00000 pa_cmd_buf = 0x3CFFFC00 vcd_base[0] = 0x3CE3C400 vcd_base[1] = 0x3CE1C000 chip_dump = 0x4B09E63C dpram_base = 0x3CD80000 sar_buf_base[0] = 0x3CE54000 sar_buf_base[1] = 0x3CF2A000 bfd_base[0] = 0x3CFD4000 bfd_base[1] = 0x3CFC0000 acd_base[0] = 0x3CE8CE00 acd_base[1] = 0x3CE5C800 pci_atm_stats = 0x4B09D780 fdl is DISABLED Scrambling is Disabled Yellow alarm is Enabled in Rx and Enabled in Tx linecode is B8ZS T1 Framing Mode: ESF ADM format LBO (Cablelength) is long gain36 0db Facility Alarms: No Alarm
To test connectivity, we ping from one end of the 7200 router to the other end (router B) and ensure that the pings are successful. Failure in the pings indicates that the IMA ports or IP addressing may be configured wrong.
c7200-IMA# ping 100.100.100.2 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 100.100.100.2, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 4/6/8 ms
There is currently no specific troubleshooting information available for this configuration.
Revision | Publish Date | Comments |
---|---|---|
1.0 |
06-Sep-2018 |
Initial Release |