Guest

Permanent Virtual Circuits (PVC) and Switched Virtual Circuits (SVC)

Understanding and Configuring ATM PVC Bundles

Cisco - Understanding and Configuring ATM PVC Bundles

Introduction

When you use Per-VC (distributed) Weighted Random Early Discard (Per-VC (D)WRED), you can perform an intelligent packet discard when congestion occurs. However, this solution limits you to the use of one Permanent Virtual Circuit (PVC) between two end devices. As a result, the different service classes (streams with different IP precedence values) experience different drop probabilities. The non-discarded packets experience the same Quality of Service (QoS) or delay characteristics. This means that the ATM PVC traffic class must be selected to satisfy the most demanding QoS. This can cause problems if you have different types of traffic, such as voice and data.

This limitation is solved by PVC bundles, which allow you to assign different QoS parameters to various types of traffic while you are still able to use Per-VC DWRED.

Note: Distributed mechanisms (such as distributed Cisco Express Forwarding (DCEF) or DWRED) are specific to a 7500/Virtual Interface Processor (VIP) architecture. These mechanisms are not handled by the Route Switch Processor (RSP) CPU, but by the CPU on the VIP module.

Prerequisites

Requirements

There are no specific requirements for this document.

Components Used

The information in this document is based on these software and hardware versions:

  • Cisco IOS® Software Release 12.0(3)T and later

  • Cisco 7500: VIP2-50, all PA-A3 versions. (only one PA-A3 per VIP2-50)

  • Cisco 7200: NPE200 or later, all PA-A3 versions

  • Cisco 2600 and 3600:

    • Cisco IOS® Software Release 12.0(7)T and later with the NM-1A-OC3 and the NM-4E1-IMA, NM-4T1-IMA, NM-8E1-IMA, NM-8T1-IMA network modules

    • Cisco IOS® Software Release 12.1(2)T and later with the NM-1A-T3 and NM-1A-E3 network modules

Note: With the Cisco 2600 platform, the NM-1A-OC3 is only supported on the Cisco 2691 and requires at least Cisco IOS® Software Release 12.2(13)T and an IP Plus of service provider (-p) feature set.

Note: Both ends of the connection (routers) must support PVC bundles.

The information presented in this document was created from 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 before you use it.

Conventions

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

Understand PVC Bundles

ATM PVC bundle management allows you to configure multiple PVCs that have different QoS characteristics between two end devices.

You bind a PVC from the bundle to one, or several, precedence values. To determine which VC in the bundle is to be used to forward specific traffic, the ATM VC bundle management software matches precedence levels between packet and VCs.

Additionally, you can run Per-VC DWRED to perform intelligent discards per-vc and per precedence value on each VC.

Configure

In this section, you are presented with the information to configure the features described in this document.

Note: To find additional information on the commands used in this document, use the Command Lookup Tool (registered customers only) .

Network Diagram

This document uses the network setup shown in this diagram:

pvcbundle.gif

Two PVCs are created between Ema and Bernard (two 7507s that use a PA-A3 in a VIP2-50 and run Cisco IOS® version 12.0(7)T).

These two PVCs have been assigned the values 1/130 and 1/131 on both ends of the connection. For the sake of clarity, 1/130 is switched to 1/130 by the ATM switch and 1/131 is switched to 1/131.

The PVC 1/130 is configured as a variable bit rate-nonreal time (VBR-nrt) VC and 1/131 is configured as an available bit-rate (ABR) VC. The precedence values 0 to 4 are bound to PVC 1/130, and precedence values 5 to 7 are bound to the PVC 1/131. Per-VC DWRED is used as the packet discard mechanism.

Configurations

This document uses the configurations shown here:

Bernard
random-detect-group testWRED 
 exponential-weighting-constant 2 
 precedence 3   100   1000  3 
 precedence 5   200   1000  5 
! 
ip cef distributed 
! 
interface ATM2/0/0 
 ip route-cache distributed 
 ip route-cache cef 
! 
interface ATM2/0/0.6 point-to-point 
 ip address 14.0.0.1 255.0.0.0 
 no ip directed-broadcast 
 bundle bernard 
  protocol ip 14.0.0.2 broadcast 
  broadcast 
  oam-bundle manage 
  pvc-bundle 1/131 
   class-vc ABR 
   random-detect attach testWRED 
   precedence 5-7 
  pvc-bundle 1/130 
   random-detect attach testWRED 
   vbr-nrt 100 10 
   precedence 0-4 
! 
vc-class atm ABR 
  abr 1000 100

Ema
random-detect-group testWRED
 exponential-weighting-constant 2
 precedence 3   300   1000  3    
 precedence 5   2000  4000  5    
!
ip cef distributed
!
interface ATM2/0/0
 ip route-cache distributed
 ip route-cache cef
!
interface ATM2/0/0.6 point-to-point
 ip address 14.0.0.2 255.0.0.0
 no ip directed-broadcast
 bundle ema
  protocol ip 14.0.0.1 broadcast
  broadcast
  oam-bundle manage
  pvc-bundle 1/131 
   class-vc ABR
   random-detect attach testWRED
   precedence 5-7 
  pvc-bundle 1/130 
   random-detect attach testWRED
   vbr-nrt 100 50
   precedence 0-4 
!
vc-class atm ABR
  abr 1000 100

Note: When you create the PVCs for a PVC bundle, do not use virtual channel identifier (VCI) equal to 3 or 4 as these values are reserved for F4 (virtual path connection [VPC] level) Operation, Administration, and Maintenance (OAM) segment and end-to-end loopback management. If you do this, you receive this error message:

Note:  %ATM: Invalid VCI of 4 requested: (ATM6/ima1): Not creating vc:63:4 as in the output here:

7200-16(config)#int atm 6/ima1.12 point-to-point
7200-16(config-subif)#bundle Test
7200-16(config-if-atm-bundle)#pvc-bundle Red 63/4
%ATM: Invalid VCI of 4 requested: (ATM6/ima1): Not creating vc:63:4

Selected Outputs

In order to show the results of the PVC bundle, a traffic generator sends two streams of data: one with the IP precedence equal to 3 and one with the IP precedence equal to 5.

In the configuration shownthe stream IP precedence three must go across the pvc 1/130, and the traffic with IP precedence 5 across the PVC 1/131. This can be verified in this show command output:

bernard#show queuing interface atm 2/0/0.6
Interface ATM2/0/0.6 VC 1/131
    Exp-weight-constant: 2 (1/4)
    Mean queue depth: 0
    Queue size: 0       Maximum available buffers: 2628
    Output packets: 802  WRED drops: 14  No buffer: 121515
 
    Class   Random       Tail    Minimum    Maximum     Mark       Output
              drop       drop  threshold  threshold  probability  Packets
      0          0          0         20         40     1/10            0
      1          0          0         22         40     1/10            0
      2          0          0         24         40     1/10            0
      3          0          0        100       1000     1/3             0
      4          0          0         28         40     1/10            0
      5         13          0        200       1000     1/5           772
      6          0          0         32         40     1/10            0
      7          0          0         34         40     1/10            0
 
Interface ATM2/0/0.6 VC 1/130
    Exp-weight-constant: 2 (1/4)
    Mean queue depth: 781
    Queue size: 781       Maximum available buffers: 2628
    Output packets: 53  WRED drops: 114  No buffer: 121413
 
    Class   Random       Tail    Minimum    Maximum     Mark       Output
              drop       drop  threshold  threshold  probability  Packets
      0          0          0         20         40     1/10           17
      1          0          0         22         40     1/10            0
      2          0          0         24         40     1/10            0
      3        114          0        100       1000     1/3           817
      4          0          0         28         40     1/10            0
      5          0          0        200       1000     1/5             0
      6          0          0         32         40     1/10            0
      7          0          0         34         40     1/10            0

You can see that traffic flows across the proper VC based on the traffic's PVC IP precedence.

bernard#show atm bundle
 
bernard on ATM2/0/0.6: UP
 
                       Config    Current   Bumping  PG/ Peak Avg/Min Burst
VC Name      VPI/ VCI  Preced.   Preced.   Preced./ PV  Kbps   kbps  Cells Sts
                                           Accept
 
3              1/131   7-5       7-5       4 / Yes  -    1000    100        UP
6              1/130   4-0       4-0       - / Yes  -      64     10   94   UP

Also note that when the VIP2-50/PA-A3 DWRED is turned on, there are no drops on the PA-A3. However, there are drops on the VIP. You can verify this in the output shown here:

bernard#show atm pvc 1/130
ATM2/0/0.6: VCD: 6, VPI: 1, VCI: 130
VBR-NRT, PeakRate: 64, Average Rate: 10, Burst Cells: 94
AAL5-LLC/SNAP, etype:0x0, Flags: 0x100020, VCmode: 0x0
OAM frequency: 10 second(s), OAM retry frequency: 1 second(s), OAM retry frequency: 1 second(s)
OAM up retry count: 3, OAM down retry count: 5
OAM Loopback status: OAM Received
OAM VC state: Verified
ILMI VC state: Not Managed
VC is managed by OAM.
InARP frequency: 15 minutes(s)
Transmit priority 2
InPkts: 55, OutPkts: 86, InBytes: 3700, OutBytes: 105654
InPRoc: 49, OutPRoc: 17
InFast: 0, OutFast: 0, InAS: 7, OutAS: 69
InPktDrops: 42, OutPktDrops: 0
CrcErrors: 0, SarTimeOuts: 0, OverSizedSDUs: 0
OAM cells received: 169
F5 InEndloop: 169, F5 InSegloop: 0, F5 InAIS: 0, F5 InRDI: 0
F4 InEndloop: 0, F4 InSegloop: 0, F4 InAIS: 0, F4 InRDI: 0
OAM cells sent: 169
F5 OutEndloop: 169, F5 OutSegloop: 0, F5 OutRDI: 0
F4 OutEndloop: 0, F4 OutSegloop: 0, F4 OutRDI: 0
OAM cell drops: 0
Status: UP
bernard#show atm pvc 1/131
ATM2/0/0.6: VCD: 3, VPI: 1, VCI: 131
ABR, PeakRate: 1000, Minimum Rate: 100, Initial Rate: 1000, Current Rate: 998
RIF: 16, RDF: 16
FRM cells received: 165, BRM cells received: 910
RM cells sent: 1073
AAL5-LLC/SNAP, etype:0x0, Flags: 0x110820, VCmode: 0x0
OAM frequency: 10 second(s), OAM retry frequency: 1 second(s), OAM retry frequency: 1 second(s)
OAM up retry count: 3, OAM down retry count: 5
OAM Loopback status: OAM Received
OAM VC state: Verified
ILMI VC state: Not Managed
VC is managed by OAM.
InARP frequency: 15 minutes(s)
Transmit priority 3
InPkts: 31, OutPkts: 854, InBytes: 3640, OutBytes: 1227090
InPRoc: 31, OutPRoc: 34InFast: 0, OutFast: 0, InAS: 0, OutAS: 820
InPktDrops: 0, OutPktDrops: 0
CrcErrors: 0, SarTimeOuts: 0, OverSizedSDUs: 0
OAM cells received: 180
F5 InEndloop: 180, F5 InSegloop: 0, F5 InAIS: 0, F5 InRDI: 0
F4 InEndloop: 0, F4 InSegloop: 0, F4 InAIS: 0, F4 InRDI: 0
OAM cells sent: 184
F5 OutEndloop: 184, F5 OutSegloop: 0, F5 OutRDI: 0
F4 OutEndloop: 0, F4 OutSegloop: 0, F4 OutRDI: 0
OAM cell drops: 0
Status: UP

Alternative Configuration Method

The other configurations included in this document are based on Cisco 7500 routers. As you can see, the PVC bundle options are configured on the bundle and the PVCs themselves. This type of configuration is also achieved through the use of vc-classes. Here is an example:

Configuration
vc-class atm atm-bundle 
    broadcast 
    oam-pvc manage 1 
    oam retry 3 3 1 
    encapsulation aal5snap 
    protocol ip inarp broadcast 
    oam-bundle manage 1 
! 
vc-class atm data 
    vbr-nrt 4096 2048 32 
    precedence 0-4 
    no bump traffic 
    protect vc 
! 
vc-class atm vo-ip 
    vbr-nrt 4096 2048 32 
    precedence 5-7 
    no bump traffic 
    protect vc 
! 
interface ATM1/0.100 point-to-point 
   mtu 1500 
   bandwidth 2000 
   ip address 1.1.1.1 255.0.0.0 
   bundle test 
    class-bundle atm-bundle 
    max-vcnum  0 
    pvc-bundle vo-ip 2/202 
     class-vc vo-ip 
    pvc-bundle data 1/101 
     class-vc data 

The vc-class atm-bundle allows you to define the bundle parameters, while the classes vo-ip and data define the parameters of each of the VCs.

Incomplete Configuration Or PV Down Message

If the PVC bundle configuration is not complete, the bundle goes down, and provides this reason:

Incomplete config, PV down 

This error is usually caused by a precedence which is not mapped to a PVC. Even if a precedence is not used, the precedence must be mapped to a PVC in the bundle. This is an example:

Configuration
vc-class atm atm-bundle 
     broadcast 
     oam-pvc manage 1 
     oam retry 3 3 1 
     encapsulation aal5snap 
     protocol ip inarp broadcast 
     oam-bundle manage 1 
! 
vc-class atm dus-mun-data 
     vbr-nrt 4096 2048 32 
     precedence 0-4 
     no bump traffic 
     protect vc 
! 
vc-class atm vo-ip 
     vbr-nrt 4096 2048 32 
     precedence 5-6 
     no bump traffic 
     protect vc 

Issue the show atm bundle command:

Damme#show atm bundle 
 test on ATM1/0.100: DOWN, Incomplete config, PV down
  
                        Config    Current   Bumping  PG/ Peak Avg/Min Burst
 VC Name      VPI/ VCI  Preced.   Preced.   Preced./ PV  Kbps   kbps  Cells Sts
                                            Accept
  
 dus-mun-data   1/101   4-0                 - / No   PV   4096   2048   32   UP
 vo-ip          2/202   6-5                 - / No   PV   4096   2048   32   UP

As you can see, precedence 7 was not mapped to a PVC, which causes the whole bundle to go down. If you add precedence 7 under the vo-ip pvc, the bundle comes UP.

Damme#configure terminal  
Enter configuration commands, one per line.  End with CNTL/Z.  
Damme(config)#vc-class atm vo-ip  
Damme(config-vc-class)#pre     
Damme(config-vc-class)#precedence 7  
Damme(config-vc-class)#^Z  
Damme#  
Damme#show atm bundle 

test on ATM1/0.100: UP
                        Config    Current   Bumping  PG/ Peak Avg/Min Burst
VC Name       VPI/ VCI  Preced.   Preced.   Preced./ PV  Kbps   kbps  Cells Sts
                                            Accept
  
vo-ip          2/202   7-5       7-5       - / No   PV   4096   2048   32   UP
dus-mun-data   1/101   4-0       4-0       - / No   PV   4096   2048   32   UP 

Known Caveats

Cisco Bug ID CSCdm43184

Bug CSCdm43184: CAR + PVC bundling = packets forwarded on wrong VC

Release Notes: If you use committed access rate (CAR) to set the precedence bits in the IP header, it is possible for the packets to be sent to the wrong PVC in a PVC bundle. This is observed in Cisco IOS® Software Release 12.0(4)T. In this situation, packets are switched if the packets come in with the precedence bits set out on the correct VCs in the bundle. The incoming packets without the precedence bits set (set by CAR) are switched out on the precedence 0 VC. This seems to imply that the precedence levels are changed by CAR after the decision to switch to CEF is made.

Cisco Bug ID CSCds80669

Bug CSCds80669: VBR-nrt not a configuration option with pvc-bundle command mode

Release Notes: VBR-nrt is not available under the PVC bundle configuration:

cop-ves9-wan-gw1#configure terminal      
      Enter configuration commands, one per line.  End with CNTL/Z.      
      cop-ves9-wan-gw1(config)#interface ATM2/0.100 point-to-point      
      cop-ves9-wan-gw1(config-subi)# bundle cop-sto 
      cop-ves9-wan-gw1(config-if-a)#  pvc-bundle cop-sto-data 103/1      
      cop-ves9-wan-gw1(config-if-a)#? 
      ATM VC bundle member configuration commands: 
        abr       Enter Available Bit Rate (pcr)(mcr) 
        class-vc  Configure default vc-class name 
        default   Set a command to its defaults 
        exit      Exit from ATM bundle member configuration mode 
        no        Negate a command      or set its defaults 
        ubr+      Enter Peak Cell Rate(pcr)Minimum Cell Rate(mcr) in Kbps.

For this example, Cisco IOS® Software Release 12.1(3a)T4 runs on a Cisco 3640 platform.

Verify

This section provides information you can use to confirm that your configuration functions 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.

  • show atm bundle bundle-name [stat] [detail] —Displays detailed statistics on a specified bundle

  • show atm map—Displays the list of all configured ATM static maps to remote hosts on an ATM network and on ATM bundle maps

  • show queuing interface atm [x/[y/[z]]].w —Displays the queueing statistics of an interface

  • show random-detect-group —Displays the WRED or DWRED parameter group

This is the command output for the show atm bundle bundle-name [stat] [detail] command:

Bundle Name: Bundle State: UP 
     AAL5-NLPID 
     OAM frequency: 0 second(s), OAM retry frequency: 1 second(s) 
     OAM up retry count: 3, OAM down retry count: 5 
     BUNDLE is managed by. 
     InARP frequency: 15 minutes(s) 
     InPkts: 3695, OutPkts: 4862, InBytes: 407836, OutBytes: 2848414 
     InPRoc: 3579, OutPRoc: 3211, Broadcasts: 0 
     InFast: 0, OutFast: 0, InAS: 116, OutAS: 1652 
     InPktDrops: 42, OutPktDrops: 0 
     CrcErrors: 0, SarTimeOuts: 0, OverSizedSDUs: 0

This is the command output for the show atm map command:

bernard#show atm map 
     Map list bernard_B_ATM2/0/0.6 : PERMANENT 
     ip 14.0.0.2 maps to bundle bernard, 1/131, 1/130, ATM2/0/0.6 
             , broadcast, aal5mux

Troubleshoot

This section provides information you can use to troubleshoot your configuration.

Troubleshooting Commands

Certain show commands are supported by the Output Interpreter Tool (registered customers only) , which allows you to view an analysis of show command output.

Note: Before you issue debug commands, refer to Important Information on Debug Commands.

  • debug atm bundle errors—Enables the display of information on bundle errors

  • debug atm bundle events—Enables the display of bundle events when use occurs

Related Information

Updated: Jun 05, 2005
Document ID: 10490