Table Of Contents
ATM PVC Bundle Enhancement — MPLS EXP-Based PVC Selection
Prerequisites for ATM PVC Bundle Enhancement — MPLS EXP-Based PVC Selection
Restrictions for ATM PVC Bundle Enhancement — MPLS EXP-Based PVC Selection
Information About ATM PVC Bundle Enhancement — MPLS EXP-Based PVC Selection
Benefits of ATM VC Bundle Management
VC Bundle Management Supported Features
How to Configure ATM PVC Bundle Enhancement — MPLS EXP-Based PVC Selection
Configuring MPLS and Creating a VC Bundle
Configuring the Bundle-Level Protocol
Configuring Parameters on a VC Bundle Member Directly
Configuring a VC Class and Applying Parameters to a Bundle
Commands Ignored in a VC Class Bundle
Configuring a VC Bundle at the Subinterface Level
Assigning VC and Bundle Attributes
Verifying ATM PVC Bundle Enhancement — MPLS EXP-Based PVC Selection Configuration
Configuration Examples for ATM PVC Bundle Enhancement — MPLS EXP-Based PVC Selection
Defining ATM VC Classes and Parameters: Example
Associating an ATM VC Bundle with the Interface: Example
ATM PVC Bundle Enhancement — MPLS EXP-Based PVC Selection
This document describes enhancements to the ATM virtual circuit (VC) bundle management feature, which allows you to configure multiple VCs that have different quality of service (QoS) characteristics between any pair of ATM-connected routers that support this feature. VC bundle management allows multiple VCs with various QoS settings to be directed to the same destination and to map traffic to the VCs based on protocol criteria associated with the traffic. Three experimental (EXP) bits in the Multiprotocol Label Switching (MPLS) packets determine which VC in the bundle to use to forward the packets.
Feature History for the ATM PVC Bundle Enhancement — MPLS EXP-Based PVC Selection Feature
Finding Support Information for Platforms and Cisco IOS Software Images
Use Cisco Feature Navigator to find information about platform support and Cisco IOS software image support. Access Cisco Feature Navigator at http://www.cisco.com/go/fn. You must have an account on Cisco.com. If you do not have an account or have forgotten your username or password, click Cancel at the login dialog box and follow the instructions that appear.
Contents
•
Prerequisites for ATM PVC Bundle Enhancement — MPLS EXP-Based PVC Selection
•
Restrictions for ATM PVC Bundle Enhancement — MPLS EXP-Based PVC Selection
•
Information About ATM PVC Bundle Enhancement — MPLS EXP-Based PVC Selection
•
How to Configure ATM PVC Bundle Enhancement — MPLS EXP-Based PVC Selection
•
Configuration Examples for ATM PVC Bundle Enhancement — MPLS EXP-Based PVC Selection
Prerequisites for ATM PVC Bundle Enhancement — MPLS EXP-Based PVC Selection
This feature requires ATM VC management, Cisco Express Forwarding (CEF), and Forwarding Information Base (FIB) and Tag Forwarding Information Base (TFIB) switching functionality.
Restrictions for ATM PVC Bundle Enhancement — MPLS EXP-Based PVC Selection
•
The router at the remote end must be running a version of Cisco IOS software that supports MPLS and ATM VC management.
•
This feature is not supported on either the ATM interface processor (AIP) or the ATM Lite port adapter (PA-A1).
Information About ATM PVC Bundle Enhancement — MPLS EXP-Based PVC Selection
You need to understand the concepts in the following sections to configure the MPLS EXP Bits Based ATM PVC Bundles VC Selection feature:
•
Benefits of ATM VC Bundle Management
•
VC Bundle Management Supported Features
ATM VC Bundle Management
The MPLS EXP Bits Based ATM PVC Bundles VC Selection feature is an extension to the IP to ATM Class of Service feature suite. The IP to ATM Class of Service feature suite, using VC support and bundle management, maps QoS characteristics between IP and ATM. It provides customers that have multiple VCs (with varying qualities of service to the same destination) the ability to build a QoS differentiated network.
The IP to ATM Class of Service feature suite allows customers to use IP precedence level as the selection criterion for packet forwarding. This feature provides customers with the option of using the MPLS experimental level as an additional selection criterion for packet forwarding.
Note
If a selection criterion for packet forwarding is not selected (that is, if the packet is unlabeled), this feature uses the IP precedence level as the default selection criterion.
For more information about the IP to ATM Class of Service feature suite, see the "Related Documents" section.
ATM VC Bundle Configuration
ATM VC bundle management allows you to configure multiple VCs that have different QoS characteristics between any pair of ATM-connected routers. As shown in Figure 1, these VCs are grouped in a bundle and are referred to as bundle members.
Figure 1 ATM VC Bundle
ATM VC bundle management allows you to define an ATM VC bundle and add VCs to it. Each VC of a bundle has its own ATM traffic class and ATM traffic parameters. You can apply attributes and characteristics to discrete VC bundle members, or you can apply them collectively at the bundle level.
Using VC bundles, you can create differentiated service by flexibly distributing MPLS EXP levels over the different VC bundle members. You can map a single MPLS EXP level, or a range of these levels, to each discrete VC in the bundle, thereby enabling individual VCs in the bundle to carry packets marked with different MPLS EXP levels. You can use Weighted Random Early Detection (WRED) or distributed WRED (dWRED) to further differentiate service across traffic that has different MPLS EXP levels.
To determine which VC in the bundle to use to forward a packet to its destination, the ATM VC bundle management software matches MPLS EXP levels between packets and VCs (see Figure 2). IP traffic is sent to the next hop address for the bundle because all VCs in a bundle share the same destination, but the VC used to carry a packet depends on the value set for that packet in the MPLS EXP level of the type of service (ToS) byte of its header. The ATM VC bundle management software matches the MPLS EXP level of the packet to the MPLS EXP levels assigned to a VC, sending the packet out on the appropriate VC.
Moreover, the ATM VC bundle management software allows you to configure how traffic will be redirected when the VC to which the packet was initially directed goes down. Figure 2 illustrates how the ATM VC bundle management software determines which permanent virtual circuit (PVC) bundle member to use to carry a packet and how WRED (or dWRED) is used to differentiate traffic on the same VC.
Figure 2 ATM VC Bundle PVC Selection for Packet Transfer
The support of multiple parallel ATM VCs allows you to create stronger service differentiation at the IP layer. For example, you might want to configure the network to provide IP traffic belonging to real-time class of service (CoS) such as Voice over IP traffic on an ATM VC with strict constraints on constant bit rate (CBR) or variable bit rate real-time (VBR-rt), while also allowing the network to transport nonreal-time traffic over a more elastic ATM unspecified bit rate (UBR) PVC. UBR is effectively the ATM version of best-effort service. Using a multiple parallel ATM VC configuration allows you to make full use of your network capacity.
Benefits of ATM VC Bundle Management
ATM VC bundle management was designed to provide a true working solution to class-based services, without the investment of new ATM network infrastructures. It allows networks to offer different service classes (sometimes termed differential service classes) across the entire WAN, not just the routed portion. Mission-critical applications can be given exceptional service during periods of high network usage and congestion. In addition, noncritical traffic can be restricted in its network usage, ensuring greater QoS for more important traffic and user types.
ATM VC bundle management gives customers the option of using the MPLS EXP level, in addition to IP precedence, as a selection criterion for packet forwarding.
VC Bundle Management Supported Features
The following features are supported on an MPLS over VC bundle:
•
PVC support only (no switched virtual circuits or SVCs):
–
Support for multipoint and point-to-point subinterfaces.
–
Support for AAL5SNAP (RFC1483 bridging) and multiplex (MUX) type VCs encapsulation.
–
Use of static mapping and Inverse Address Resolution Protocol (Inverse ARP) for the next hop protocol address (supported on multipoint subinterfaces only).
–
PVCs associated with VC bundles through explicit configuration.
–
Use of Interim Local Management Interface (ILMI) and Operation, Administration, and Maintenance (OAM) functionality in the PVC management feature for PVC failure detection.
•
VC selection within the bundle:
–
Uses three EXP bits in the MPLS header to define the precedence levels, with level 7 being the highest for MPLS traffic.
–
No automapping of VCs to precedence levels can be done. The user must use the mpls experimental command under each member VC to explicitly specify the mapping.
–
Multiple precedence levels can be mapped to one VC.
–
Packets with the PAK_PRIORITY_CRUCIAL flag set go on a high precedence (level 6) VC. These packets include IP routing packets such as Intermediate System-Intermediate System (IS-IS) packets for integrated IP routing. Label Distribution Protocol (LDP) and Tag Distribution Protocol (TDP) messages, and Inverse ARP packets also use a precedence level 6 VC. However, OAM cells still flow in the individual VC to detect PVC failures, although the PAK_PRIORITY_CRUCIAL flag is set for them.
–
Regular ping commands use the lowest precedence (level 0) VC. If other protocols such as Internetwork Packet Exchange (IPX) are configured in the bundle, they will also use the lowest precedence level VC for their traffic.
•
ATM Inverse ARP:
–
Inverse ARP is viewed as a parameter at the bundle level and can be enabled or disabled only for the bundle, not for individual VCs in the bundle.
–
The PAK_PRIORITY_CRUCIAL flag is set in each ATM Inverse ARP packet and the packets use the precedence level 6 VC.
–
Inverse ARP for other protocols such as IPX is off by default unless it is configured in the bundle.
•
Broadcast and multicast:
–
Broadcasting can be turned on or off at the bundle level, not at the individual VC level in the bundle.
–
Pseudobroadcasting is used for forwarding the broadcast traffic.
–
VC selection for the broadcast traffic is based on the precedence levels of the broadcast packets.
•
Bundle management:
–
According to the protected group rule, when all members in the protected group fail, the bundle is declared down.
–
According to the protected VC rule, when a protected VC goes down, the bundle goes down.
–
A VC can be a standalone VC or belong to only one bundle.
–
When a bundle goes down, no traffic should be forwarded out the bundle, even if some of the VCs in the bundle are still up.
–
In VC bumping, each bundle member can specify if bumping is allowed. If bumping is allowed, the next lower precedence level VC is selected when a VC goes down. This is the implicit bumping rule. Traffic is restored to the original VC when it comes back.
–
In explicit VC bumping, a VC can specify to which precedence level it wants to bump its traffic when it goes down. Only one precedence level can be specified for bumping. If the VC that carries the bumped traffic also fails, the traffic will follow the bumping rules specified for that VC.
–
In reject bumping, a VC may also be configured not to accept the bumped traffic.
–
When no alternate VC can be found for some bumped traffic, the bundle has to be declared down.
–
To avoid bringing down a bundle because of a failure of the lowest precedence VC, configure explicit bumping on the lowest precedence VC.
–
Bundle status attributes and their current status for each VC in the bundle can be displayed in a tabular form using EXEC commands.
–
Bundle statistics are the same statistics provided for VC that have been aggregated for a VC bundle.
–
Bundle debugging commands, when enabled, print bundle events and bundle errors.
•
Packet forwarding:
–
There are four possible paths for MPLS packet forwarding over the VC bundle: IP to MPLS, MPLS to MPLS, MPLS to IP, and locally generated packets.
–
Process switching is used for locally generated packets.
–
CEF FIB switching is used for the IP to MPLS path.
–
CEF TFIB switching is used for the MPLS to MPLS and MPLS to IP paths.
–
No fast switching is supported for transit IP packets. The fast switching path does not classify IP packets based on their precedence levels.
–
VC bundle configuration is already added to handle the IP VC bundle feature and may be used without any modification.
How to Configure ATM PVC Bundle Enhancement — MPLS EXP-Based PVC Selection
This section contains the following procedures:
•
Configuring MPLS and Creating a VC Bundle (required)
•
Configuring the Bundle-Level Protocol (required)
•
Configuring Parameters on a VC Bundle Member Directly (optional)
•
Configuring a VC Class and Applying Parameters to a Bundle (optional)
•
Attaching a Class to a Bundle (optional)
•
Configuring a VC Bundle at the Subinterface Level (optional)
•
Assigning VC and Bundle Attributes (optional)
•
Verifying ATM PVC Bundle Enhancement — MPLS EXP-Based PVC Selection Configuration (optional)
Configuring MPLS and Creating a VC Bundle
Perform the following steps to enable MPLS and create a VC bundle. When you create a VC bundle, you enter bundle configuration mode, in which you can assign attributes and parameters to the bundle and to all of its member VCs.
SUMMARY STEPS
1.
enable
2.
configure terminal
3.
ip cef [distributed]
4.
mpls ldp advertise-labels
5.
interface atm interface-number[.subinterface-number {mpls | multipoint | point-to-point}]
6.
ip address ip-address mask
7.
mpls ip
8.
bundle bundle-name
DETAILED STEPS
What to Do Next
Decide whether you want to configure the VC bundle member directly or use a VC class attached to a bundle.
You can apply parameters (or attributes) to bundles either by applying the parameters directly to the bundle or by applying the parameters to a VC class assigned to the bundle.
Applying parameters by using VC classes assigned to the bundle allows you to apply multiple parameters at once because you apply the VC class to the bundle and to all of its VC members. This method allows you to apply a parameter across all VCs for the bundle, after which (for some parameters) you can later modify that parameter for individual VCs. After configuring the parameters for the VC class, you need to attach the VC class to the bundle.
To configure the VC bundle member directly, complete the procedure in the "Configuring Parameters on a VC Bundle Member Directly" section. To use a VC class attached to a bundle, instead complete the procedures in both the "Configuring a VC Class and Applying Parameters to a Bundle" section and the "Attaching a Class to a Bundle" section.
Parameters applied directly to a bundle take priority over those applied to VC classes assigned to the bundle, and the steps for this task are in the "Configuring the Bundle-Level Protocol" section. Parameters applied to VC classes assigned to the bundle take priority over those applied to individual VCs.
Note
Note that some parameters applied through a VC class or directly to the bundle can be superseded by commands that you apply directly to individual VCs in bundle-VC configuration mode.
Configuring the Bundle-Level Protocol
Perform the following steps to configure a protocol that applies to the bundle and to all of its members. The commands in these steps are entered in bundle configuration mode.
SUMMARY STEPS
1.
protocol protocol {protocol-address | inarp} [[no] broadcast]
2.
encapsulation [aal5mux | aal5snap]
DETAILED STEPS
Configuring Parameters on a VC Bundle Member Directly
Perform the following steps to configure parameters on an individual VC bundle member directly. The commands in these steps are entered in bundle configuration mode.
SUMMARY STEPS
1.
ubr pcr
2.
ubr+ pcr mcr
3.
vbr-nrt pcr scr [mbs]
4.
mpls experimental [other | range]
5.
bump {implicit | explicit precedence-level | traffic}
6.
protect {group | vc}
7.
exit
DETAILED STEPS
Configuring a VC Class and Applying Parameters to a Bundle
This section describes the task to configure a VC class to contain commands that configure all VC members of a bundle when the class is applied to that bundle. The parameters are applied in VC-class configuration mode. Use the vc-class atm command in global configuration mode to enter the VC-class configuration mode.
Commands Ignored in a VC Class Bundle
When a VC is part of a bundle, some of the VC configuration in the VC class will no longer be applicable to the VC and will be ignored. The inheritance rule for VCs in VC bundles follows this order: VC configuration, bundle configuration, subinterface configuration. In VC mode and bundle mode, the configuration with the individual command takes precedence over the configuration with the class command.
SUMMARY STEPS
1.
enable
2.
configure terminal
3.
vc-class atm name
4.
oam-bundle [manage] [frequency]
5.
mpls experimental [other | range]
6.
bump {implicit | explicit precedence-level | traffic}
7.
protect {group | vc}
8.
exit
DETAILED STEPS
Attaching a Class to a Bundle
Perform the following steps to attach a VC class containing bundle-level configuration commands to a bundle. Enter the bundle command in global configuration mode to enter bundle configuration mode.
SUMMARY STEPS
1.
enable
2.
configure terminal
3.
bundle bundle-name
4.
class-bundle vc-class-name
5.
exit
DETAILED STEPS
Configuring a VC Bundle at the Subinterface Level
The commands in the following steps can be used to configure a bundle at the subinterface configuration level. The bundle submode is activated by entering the bundle command. This mode is similar to the VC mode.
SUMMARY STEPS
1.
enable
2.
configure terminal
3.
interface atm interface-name
4.
bundle bundle-name
5.
encapsulation [aal5mux | aal5snap]
6.
protocol protocol {protocol-address | inarp} [[no] broadcast]
7.
class class-name
8.
ubr pcr
9.
ubr+ pcr mcr
10.
vbr-nrt pcr scr [mbs]
11.
oam-bundle [manage] [frequency]
12.
oam retry [up-count] [down-count] [retry-frequency]
13.
inarp [minutes]
14.
broadcast
15.
exit
DETAILED STEPS
Assigning VC and Bundle Attributes
The pvc-bundle command activates the bundle-VC configuration mode, in which specific VC and bundle member attributes can be assigned.
SUMMARY STEPS
1.
enable
2.
configure terminal
3.
pvc-bundle pvc-name [vpi/][vci]
4.
class class-name
5.
ubr pcr
6.
ubr+ pcr mcr
7.
vbr-nrt pcr scr [mbs]
8.
mpls experimental [other | range]
9.
bump {implicit | explicit precedence-level | traffic}
10.
protect {group | vc}
11.
exit
DETAILED STEPS
Verifying ATM PVC Bundle Enhancement — MPLS EXP-Based PVC Selection Configuration
Use the commands in the following steps as needed, to verify configurations for the MPLS EXP Bits Based ATM PVC Bundles VC Selection feature.
SUMMARY STEPS
1.
enable
2.
debug atm bundle adjacency
3.
debug atm bundle error
4.
debug atm bundle events
5.
debug atm bundle inarp
6.
show atm bundle [bundle-name]
7.
show mpls forwarding-table [{network {mask | length} | labels label [- label] | interface interface | next-hop address | lsp-tunnel [tunnel-id]}] [detail]
DETAILED STEPS
Configuration Examples for ATM PVC Bundle Enhancement — MPLS EXP-Based PVC Selection
This section contains the following examples:
•
Defining ATM VC Classes and Parameters: Example
•
Associating an ATM VC Bundle with the Interface: Example
Configuring MPLS: Example
The following example shows how to configure MPLS:
ip cefmpls ldp advertise labels!interface atm 0/0/3ip address 10.13.11.3 255.255.0.0mpls ipbundle bundle1Defining ATM VC Classes and Parameters: Example
In the following example, VC classes are defined with parameters applicable to individual VCs in the bundle. Each VC class is preceded by a description of how it will be used.
! The following commands define the bundle class. Any bundle that uses this class will! have AAL5snap encapsulation, broadcast on, use of Inverse ARP to resolve IP addresses,



