Guest

Cisco IOS Software Releases 12.2 T

Multiclass Multilink PPP Enhancement

Table Of Contents

Multiclass Multilink PPP

Feature Overview

Benefits

Restrictions

Related Features and Technologies

Related Documents

Supported Platforms

Supported Standards, MIBs, and RFCs

Prerequisites

Configuration Tasks

Configuring MLP LFI on a Bundle

Configuring MCMP on a Member Link

Verifying MCMP

Configuration Examples

Configuring MCMP on a Dialer Example

MCMP and MLP Interleaving and Queueing for Real-Time Traffic Examples

Command Reference

ppp multilink multiclass

show ppp multilink


Multiclass Multilink PPP


Feature History

Release
Modification

12.2(13)T

This feature was introduced.


This document describes the Multiclass Multilink PPP feature in Cisco IOS Release 12.2(13)T. It includes the following sections:

Feature Overview

Supported Platforms

Supported Standards, MIBs, and RFCs

Prerequisites

Configuration Tasks

Configuration Examples

Command Reference

Feature Overview

Previous implementations of Cisco IOS Multilink PPP (MLP) include support for Link Fragmentation Interleaving (LFI). This feature allows the delivery of delay-sensitive packets, such as the packets of a Voice call, to be expedited by omitting the PPP Multilink Protocol header and sending the packets as raw PPP packets in between the fragments of larger data packets. This feature works well on bundles consisting of a single link. However, when the bundle contains multiple links there is no way to keep the interleaved packets in sequence with respect to each other.

The Multiclass Multilink PPP (MCMP) feature in Cisco IOS Release 12.2(13)T addresses the limitations of MLP LFI on bundles containing multiple links by introducing multiple data classes. Normal data traffic and delay-sensitive data traffic are divided into Class 0 and Class 1, respectively. Class 0 data traffic is subject to fragmentation just as regular multilink packets are. Class 1 data traffic can be interleaved but never fragmented. The next transmit sequence number, expected sequence number, unassigned fragment list, working packet, lost fragment timer, fast-switching mode, and all statistics are managed per class, rather than for the bundle as a whole.

Benefits

The Multiclass Multilink PPP feature in Cisco IOS Release 12.2(13)T allows rapid delivery of real-time data over a bundle containing multiple links without loss of sequencing.

Restrictions

The ppp multilink multiclass command must be configured on each link that will be joining the bundle. Failure to configure this command could result in the peer refusing to allow mismatched links to join the bundle. The first link to join the bundle will determine whether MCMP is in effect for the bundle. Each subsequent link must negotiate the same MCMP parameters in order to join the bundle.

Because real-time traffic is encapsulated with multilink headers, the receiver will be required to buffer the packets when they arrive out of sequence. Therefore, the differential delay between the links must be small relative to the tolerable delay for such traffic. Otherwise, packets may be subject to additional delay while the receiver awaits the arrival of earlier sequence numbers sent over other links in the bundle.

The maximum number of links supported for an MCMP bundle is 64.

The Prefix Elision option specified in RFC 2686 is not supported.

Related Features and Technologies

Multilink PPP

Related Documents

Cisco IOS Dial Technologies Configuration Guide, Release 12.2

Cisco IOS Dial Technologies Command Reference, Release 12.2

Supported Platforms

Cisco 2600 series

Cisco 3600 series

Cisco 3700 series

Cisco 7200 series

Cisco AS5300

Cisco AS5350

Cisco AS5400

Determining Platform Support Through Cisco Feature Navigator

Cisco IOS software is packaged in feature sets that are supported on specific platforms. To get updated information regarding platform support for this feature, access Cisco Feature Navigator. Cisco Feature Navigator dynamically updates the list of supported platforms as new platform support is added for the feature.

Cisco Feature Navigator is a web-based tool that enables you to quickly determine which Cisco IOS software images support a specific set of features and which features are supported in a specific Cisco IOS image. You can search by feature or release. Under the release section, you can compare releases side by side to display both the features unique to each software release and the features in common.

To access Cisco  Feature Navigator, you must have an account on Cisco.com. If you have forgotten or lost your account information, send a blank e-mail to cco-locksmith@cisco.com. An automatic check will verify that your e-mail address is registered with Cisco.com. If the check is successful, account details with a new random password will be e-mailed to you. Qualified users can establish an account on Cisco.com by following the directions found at this URL:

http://www.cisco.com/register

Cisco Feature Navigator is updated regularly when major Cisco IOS software releases and technology releases occur. For the most current information, go to the Cisco Feature Navigator home page at the following URL:

http://www.cisco.com/go/fn

Availability of Cisco IOS Software Images

Platform support for particular Cisco IOS software releases is dependent on the availability of the software images for those platforms. Software images for some platforms may be deferred, delayed, or changed without prior notice. For updated information about platform support and availability of software images for each Cisco IOS software release, refer to the online release notes or, if supported, Cisco Feature Navigator.

Supported Standards, MIBs, and RFCs

Standards

None

MIBs

None

To locate and download MIBs for selected platforms, Cisco IOS releases, and feature sets, use Cisco MIB Locator found at the following URL:

http://tools.cisco.com/ITDIT/MIBS/servlet/index

If Cisco  MIB Locator does not support the MIB information that you need, you can also obtain a list of supported MIBs and download MIBs from the Cisco  MIBs page at the following URL:

http://www.cisco.com/public/sw-center/netmgmt/cmtk/mibs.shtml

To access Cisco MIB Locator, you must have an account on Cisco.com. If you have forgotten or lost your account information, send a blank e-mail to cco-locksmith@cisco.com. An automatic check will verify that your e-mail address is registered with Cisco.com. If the check is successful, account details with a new random password will be e-mailed to you. Qualified users can establish an account on Cisco.com by following the directions found at this URL:

http://www.cisco.com/register

RFCs

RFC 2686, The Multi-Class Extension to Multi-Link PPP

Prerequisites

The dialer interface, BRI interface, PRI interface, multilink interface, or virtual template must be configured, and PPP encapsulation must be enabled. For information on completing these tasks, refer to the Cisco IOS Dial Technologies Configuration Guide, Release 12.2.

MLP LFI must be configured on the bundle. See the section "Configuring MLP LFI on a Bundle" in this document.

Configuration Tasks

See the following sections for configuration tasks for the Multiclass Multilink PPP feature. Each task in the list is identified as either required or optional.

Configuring MLP LFI on a Bundle (required)

Configuring MCMP on a Member Link (required)

Verifying MCMP (optional)

Configuring MLP LFI on a Bundle

To configure MLP LFI on a dialer, multilink, or virtual template, use the following commands beginning in interface configuration mode:

 
Command
Purpose

Step 1 

Router(config-if)# ppp multilink

Enables MLP.

Step 2 

Router(config-if)# ppp multilink interleave

Enables interleaving of packets among the fragments of larger packets on an MLP bundle.

Step 3 

Router(config-if)# ppp multilink fragment delay milliseconds

Specifies a maximum size, in units of time, for packet fragments on an MLP bundle.

Step 4 

Router(config-if)# ip rtp reserve lowest-udp-port range-of-ports [maximum-bandwidth]

Reserves a special queue for real-time packet flows to specified destination User Datagram Protocol (UDP) ports, allowing real-time traffic to have higher priority than other flows.

Step 5 

Router(config-if)# exit

Exits interface configuration mode.

Step 6 

Router(config)# multilink virtual-template number

For virtual templates only, applies the virtual template to the multilink bundle.1

1 This step is not used for dialer interfaces.

Configuring MCMP on a Member Link

To configure MCMP on a configured and operational member link, use the following commands in interface configuration mode:

 
Command
Purpose

Step 7 

Router(config-if)# ppp multilink

Enables MLP.

Step 8 

Router(config-if)# ppp multilink multiclass

Enables MCMP on an interface.

Verifying MCMP

To verify that the Multiclass Multilink PPP feature is configured correctly, enter the show ppp multilink EXEC command. The following output includes class-specific information for the PPP Multilink bundles:

Router# show ppp multilink

Virtual-Access3, bundle name is bundle1 
Bundle up for 01:59:35, 1/255 load, 2 receive classes, 2 transmit classes 
Receive buffer limit 12192 bytes per class, frag timeout 1524 ms 
Dialer interface is Dialer1 
!
Receive Class 0: 
0/0 fragments/bytes in reassembly list 
0 lost fragments, 0 reordered 
0/0 discarded fragments/bytes, 0 lost received 
0x0 received sequence 
!
Receive Class 1: 
0/0 fragments/bytes in reassembly list 
0 lost fragments, 0 reordered 
0/0 discarded fragments/bytes, 0 lost received 
0x0 received sequence 
!
Transmit Class 0: 
0x8 sent sequence 
!
Transmit Class 1: 
0x0 sent sequence 
!
Member links: 1 (max not set, min not set) 
BR2/0:1, since 01:59:35, 80 weight, 72 frag size

Configuration Examples

This section provides the following configuration example:

Configuring MCMP on a Dialer Example

MCMP and MLP Interleaving and Queueing for Real-Time Traffic Examples

Configuring MCMP on a Dialer Example

The following partial example configures a dialer for MCMP; it does not show the configuration of the physical interfaces:

interface Dialer0
 ip address 10.0.0.2 255.0.0.0
 encapsulation ppp
 dialer in-band
 dialer idle-timeout 500
 dialer map ip 10.0.0.1 name remote broadcast 81012345678901
 dialer load-threshold 30 either
 dialer-group 1
 ppp authentication chap
 ppp multilink
 ppp multilink multiclass

MCMP and MLP Interleaving and Queueing for Real-Time Traffic Examples

The following example enables MLP interleaving and MCMP on a dialer interface that controls a rotary group of BRI interfaces. This configuration permits IP packets to trigger calls.

interface BRI 0
 description connected into a rotary group 
 encapsulation ppp
 dialer rotary-group 1
!
interface BRI 1
 no ip address
 encapsulation ppp
 dialer rotary-group 1
!
interface BRI 2
 encapsulation ppp
 dialer rotary-group 1
!
interface BRI 3
 no ip address
 encapsulation ppp
 dialer rotary-group 1
! 
interface BRI 4
 encapsulation ppp
 dialer rotary-group 1
! 
interface Dialer 0
 description Dialer group controlling the BRIs
 ip address 10.1.1.1 255.255.255.0
 encapsulation ppp
 dialer map ip 10.1.1.2 name remote 14802616900
 dialer-group 1
 ppp authentication chap
! Enables Multilink Multiclass PPP interleaving on the dialer interface and reserves 
! a special queue.
 ppp multilink
 ppp multilink multiclass
 ppp multilink interleave
 ip rtp reserve 32768 20 1000
! Keeps fragments of large packets small enough to ensure delay of 20 ms or less.
 ppp multilink fragment delay 20 
dialer-list 1 protocol ip permit 

The following example defines a virtual interface template that enables MLP interleaving and a maximum real-time traffic delay of 20 milliseconds. The bundle interface will be a virtual access interface cloned from the virtual template. MCMP is then configured on a member link, Serial0.

interface virtual-template 1 
 ip unnumbered ethernet 0
 ppp multilink
 ppp multilink interleave
 ppp multilink fragment delay 20 
 ip rtp interleave 32768 20 1000
!
multilink virtual-template 1
!
interface Serial0
 encapsulation ppp
 ppp authentication chap
 ppp multilink
 ppp multilink multiclass

The following example configures MLP interleaving and a maximum real-time traffic delay of 20 milliseconds on a multilink interface. MCMP is then configured on a member link, Serial1, and the member link is restricted to joining only the designated multilink group interface.

interface Multilink1 
 ip address 10.2.3.4 255.255.255.0 
 ppp multilink 
 ppp multilink interleave 
 ppp multilink fragment delay 20
!
interface Serial1
 encapsulation ppp 
 ppp authentication chap 
 ppp multilink 
 ppp multilink multiclass 
 ppp multilink group 1

Command Reference

This section documents new and modified commands. All other commands used with this feature are documented in the Cisco IOS Release 12.2 command reference publications.

ppp multilink multiclass

show ppp multilink

ppp multilink multiclass

To enable Multiclass Multilink PPP (MCMP) on an interface, use the ppp multilink multiclass command in interface configuration mode. To disable MCMP, use the no form of this command.

ppp multilink multiclass

no ppp multilink multiclass

Syntax Description

This command has no arguments or keywords.

Defaults

MCMP is disabled.

Command Modes

Interface configuration

Command History

Release
Modification

12.2(13)T

This command was introduced.


Usage Guidelines

This command applies only to interfaces that use PPP encapsulation.

MCMP and PPP reliable links do not work together.

When the ppp multilink multiclass command is used, the first channel will negotiate the appropriate Network Control Protocol (NCP) layers (such as the IP Control Protocol and IPX Control Protocol), but subsequent links will negotiate only the link control protocol and MCMP. NCP layers do not get negotiated. The dialer load-threshold command enables a rotary group to bring up additional links and to add them to a multilink bundle.

The ppp multilink multiclass command must be configured on each link that will be joining the bundle. Failure to configure this command could result in the peer refusing to allow mismatched links to join the bundle. The first link to join the bundle will determine whether MCMP is in effect for the bundle. Each subsequent link must negotiate the same MCMP parameters in order to join the bundle.

Examples

The following partial example configures a dialer for MCMP; it does not show the configuration of the physical interfaces:

interface Dialer0
 ip address 10.0.0.2 255.0.0.0
 encapsulation ppp
 dialer in-band
 dialer idle-timeout 500
 dialer map ip 10.0.0.1 name router broadcast 81012345678901
 dialer load-threshold 30 either
 dialer-group 1
 ppp authentication chap
 ppp multilink
 ppp multilink multiclass

The following example enables MLP interleaving and MCMP on a dialer interface that controls a rotary group of BRI interfaces. This configuration permits IP packets to trigger calls.

interface BRI 0
 description connected into a rotary group 
 encapsulation ppp
 dialer rotary-group 1
!
interface BRI 1
 no ip address
 encapsulation ppp
 dialer rotary-group 1
!
interface BRI 2
 encapsulation ppp
 dialer rotary-group 1
!
interface BRI 3
 no ip address
 encapsulation ppp
 dialer rotary-group 1
! 
interface BRI 4
 encapsulation ppp
 dialer rotary-group 1
! 
interface Dialer 0
 description Dialer group controlling the BRIs
 ip address 10.1.1.1 255.255.255.0
 encapsulation ppp
 dialer map ip 10.1.1.2 name router 14802616900
 dialer-group 1
 ppp authentication chap
! Enables Multilink Multiclass PPP interleaving on the dialer interface and reserves 
! a special queue.
 ppp multilink
 ppp multilink multiclass
 ppp multilink interleave
 ip rtp reserve 32768 20 1000
! Keeps fragments of large packets small enough to ensure delay of 20 ms or less.
 ppp multilink fragment delay 20 
dialer-list 1 protocol ip permit 

The following example defines a virtual interface template that enables MLP interleaving and a maximum real-time traffic delay of 20 milliseconds. The bundle interface will be a virtual access interface cloned from the virtual template. MCMP is then configured on a member link, Serial0.

interface virtual-template 1 
 ip unnumbered ethernet 0
 ppp multilink
 ppp multilink interleave
 ppp multilink fragment delay 20 
 ip rtp interleave 32768 20 1000
!
multilink virtual-template 1
!
interface Serial0
 encapsulation ppp
 ppp authentication chap
 ppp multilink
 ppp multilink multiclass

The following example configures MLP interleaving and a maximum real-time traffic delay of 20 milliseconds on a multilink interface. MCMP is then configured on a member link, Serial1, and the member link is restricted to joining only the designated multilink group interface.

interface Multilink1 
 ip address 10.2.3.4 255.255.255.0 
 ppp multilink 
 ppp multilink interleave 
 ppp multilink fragment delay 20
!
interface Serial1
 encapsulation ppp 
 ppp authentication chap 
 ppp multilink 
 ppp multilink multiclass 
 ppp multilink group 1

Related Commands

Command
Description

dialer-group

Controls access by configuring an interface to belong to a specific dialing group.

encapsulation ppp

Enables PPP encapsulation.

ppp authentication

Enables CHAP or PAP or both and specifies the order in which CHAP and PAP authentication are selected on the interface.

ppp multilink

Enables MLP on an interface.

ppp multilink group

Restricts a physical link to joining only a designated multilink-group interface.

show ppp multilink

Displays bundle information for the MLP bundles.


show ppp multilink

To display bundle information for the Multilink PPP (MLP) bundles, use the show ppp multilink command in EXEC mode.

show ppp multilink [bundle-interface]

Syntax Description

bundle-interface

(Optional) The name of a bundle interface. Enter the name of a bundle interface to display information for only that bundle.


Command Modes

EXEC

Command History

Release
Modification

11.2

This command was introduced.

12.2(13)T

This command was modified to include per-class information when Multiclass Multilink PPP (MCMP) is negotiated, the bundle-name argument was added, and the command was integrated into Cisco IOS Release 12.2(13)T.


Examples

The following is example output from the show ppp multilink command when no bundles are on a system:

Router# show ppp multilink

No active bundles

The following is example output when a single MLP bundle (named bundle1) is on a system:

Router# show ppp multilink

Bundle bundle1, 3 members, first link is BRI0: B-channel 1
0 lost fragments, 8 reordered, 0 unassigned, sequence 0x1E/0x1E rcvd/sent

The following is example output when two active bundles are on a system. Subsequent bundles would be displayed below the previous bundle.

Router# show ppp multilink

Bundle bundle1, 3 members, first link is BRI0: B-Channel 1
  0 lost fragments, 8 reordered, 0 unassigned, sequence 0x1E/0x1E rcvd/sent
Bundle bundle2, 4 members, first link is BRI2: B-Channel 1
  0 lost fragments, 28 reordered, 0 unassigned, sequence 0x12E/0x12E rcvd/sent

The following example shows output when a stack group has been created. On stack group member systema, The MLP bundle named bundle1 has bundle interface Virtual-Access4. Two child interfaces are joined to this bundle interface. The first is a local PRI channel (serial 0:4), and the second is an interface from stack group member systemb.

Router# show ppp multilink

Bundle bundle1 2 members, Master link is Virtual-Access4
0 lost fragments, 0 reordered, 0 unassigned, 100/255 load
0 discarded,  0 lost received, sequence 40/66 rcvd/sent
members 2
 Serial0:4  
 systemb:Virtual-Access6    (10.1.1.1)

The following is example output when the PPP Bandwidth Allocation Control Protocol (BACP) is enabled for the multilink bundle:

Router# show ppp multilink

Bundle bundle1, 1 member, Master link is Virtual-Access1
Bundle under BAP control
Dialer Interface is Dialer1
  0 lost fragments, 0 reordered, 0 unassigned, sequence 0x0/0x0 rcvd/sent
  0 discarded, 0 lost received, 1/255 load
Member links: 1
BRI0:1
Discriminators Local Remote
BRI0:1            24      1

Table 1 describes the significant fields shown in the display when PPP BACP is enabled.

Table 1 show ppp multilink Field Descriptions

Field
Description

Bundle

Configured name of the multilink bundle.

1 member

Number of interfaces in the group.

Master link is Virtual-Access1

Multilink bundle virtual interface.

Bundle under BAP control

Multilink bundle is controlled and bandwidth is allocated by BACP.

Dialer Interface is Dialer1

Name of the interface that dials the calls.

1/255 load

Load on the link in the range 1/255 to 255/255. (255/255 is a 100 percent load.)

Member links: 1

Number of child interfaces.

BRI0:1

Identity of the child interface. Link 1 is using physical interface BRI 0:1.

Discriminators Local Remote

BRI0:1 24 1

Link control protocol (LCP) link discriminators, which are identifiers negotiated for each link in the bundle. This information is specific to BACP. BACP uses these discriminators to determine which link to drop during negotiations.


The following example shows output when MCMP is negotiated on a virtual-access interface named Virtual-Access3:

Router# show ppp multilink Virtual-Access3

Virtual-Access3, bundle name is bundle1 
Bundle up for 01:59:35, 1/255 load, 2 receive classes, 2 transmit classes 
Receive buffer limit 12192 bytes per class, frag timeout 1524 ms 
Dialer interface is Dialer1 
!
Receive Class 0: 
0/0 fragments/bytes in reassembly list 
0 lost fragments, 0 reordered 
0/0 discarded fragments/bytes, 0 lost received 
0x0 received sequence 
!
Receive Class 1: 
0/0 fragments/bytes in reassembly list 
0 lost fragments, 0 reordered 
0/0 discarded fragments/bytes, 0 lost received 
0x0 received sequence 
!
Transmit Class 0: 
0x8 sent sequence 
!
Transmit Class 1: 
0x0 sent sequence 
!
Member links: 1 (max not set, min not set) 
BR2/0:1, since 01:59:35, 80 weight, 72 frag size

Table 2 describes the significant fields shown in the display when MCMP is enabled.

Table 2 show ppp multilink Field Descriptions with MCMP enabled 

Field
Description

Bundle

Configured name of the multilink bundle.

Bundle up for 01:59:35

Time (in hh:mm:ss) that the bundle has been up.

1/255 load

Load on the link in the range 1/255 to 255/255. (255/255 is a 100 percent load.)

2 receive classes, 2 transmit classes

The number of data classes defined for the multilink bundle.

Receive buffer limit

Maximum number of bytes that will be buffered for reassembly for each class of data.

frag timeout

Time, in milliseconds (ms), that the router will wait for the expected sequence number to arrive after receiving an out-of-order fragment.

Receive Class 0

Information about Class 0 (normal data) packets received by the router.

Receive Class 1

Information about Class 1 (high-priority) packets received by the router.

Transmit Class 0

Information about Class 0 (normal data) packets sent by the router.

Transmit Class 1

Information about Class 1 (high-priority) packets sent by the router.

fragments/bytes in reassembly list

The number of fragments and bytes currently buffered and awaiting reassembly.

lost fragments

The number of fragments that have been lost.

reordered

The number of fragments that have been reordered.

discarded fragments/bytes

The number of fragments and bytes that have been discarded. This usually occurs only if the fragment is a part of a packet for which one or more fragments were lost.

lost received

The number of fragments that arrived after they were declared lost.

Member links:

The number of child interfaces.

BR2/0:1

Identity of the child interface.

since 01:59:35

Time (in hh:mm:ss) that the interface has been active.

80 weight

The relative weight of the link (calculated as bandwidth x fragment delay). This value is used to calculate the fragment size and for load balancing. Each fragment should be less than or equal to the weight, including all link layer headers.

72 frag size

The fragment size of packets sent over the link, not including link layer headers. The difference between the weight and the fragment size indicates how much link layer overhead is being calculated for each fragment.