Guest

Multiprotocol Label Switching over ATM (MPLS over ATM)

Converting Packet MPLS to Cell MPLS on a 7200

Document ID: 28941



Contents

Introduction
Before You Begin
      Conventions
      Prerequisites
      Components Used
Configuring MPLS
      Packet Forwarding Across MPLS Enabled Interfaces
      How to Convert Packet MPLS to Cell MPLS
Related Information

Introduction

This document describes how to convert Packet Multiprotocol Label Switching (MPLS) to Cell MPLS on a 7200 router. While the configuration example given below use a 7200 router as an illustration, the operation is true for any platform that supports Frame based MPLS and Cell Based MPLS.

Before You Begin

Conventions

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

Prerequisites

Readers of this document should be knowledgeable of the following:

  • How to configure Frame mode MPLS

  • How to configure Cell Mode MPLS

  • How Label Distribution Protocol (LDP) works in MPLS to advertise the labels

  • How MPLS packet forwarding is done

Components Used

The information in this document is based on the software and hardware version(s) below.

  • Damme is a 3640 using an NM-1A-OC3, running 12.2(8)T4

  • Casimir is an LS1010 running 12.0(16)W5(21a), but could be any other version since its only use is for Virtual Path (VP) switching

  • Alcazaba is a 7206 using a PA-A3-OC3 and a PA-8E, running 12.2(8)T4

  • Tunis is a 7206 using using a PA-8E, running 12.2(8)T4

  • Lira is a 3640 using NM-4E, running 12.2(8)T4

Note: The most important devices here are Damme, Alcazaba and Tunis which are running 12.2(8)T4. Other routers may run any Cisco IOS® version that supports an Ethernet interface. On Casimir, the ATM switch is running 12.0(16)W5(21a) but again, all this switch is doing is VP switching..so it really doesn’t matter what version it is running.

Configuring MPLS

MPLS on the router is configured as indicated in the following documents:

Note: The above documents use the standard MPLS configuration. The Damme and Alcazaba configurations below use the same steps as the documents whose links are showed above.

Packet Forwarding Across MPLS Enabled Interfaces

When MPLS is enabled across the various interfaces, label distribution protocol (LDP) is responsible for exchanging the MPLS labels (Tags/Bindings) with its neighbors. Packet forwarding is based on the Tag Information Base / Label Information Base (TIB/LIB) that is built using the Forwarding Information Base (FIB), which in turn is based on the routing tables.

It is important to remember that routing has to exist between all the devices that the packet has to traverse to go from source to destination. This is because labels will be based upon this information and assigned accordingly, regardless of the type of interface (Frame or Cell).

Once the control plane has established the Label bindings with the its MPLS neighbors, it then populates the Label Information Base (also called Label Forwarding Table or Tag Forwarding Information Base (TFIB)).

This Label Forwarding Table (TFIB) can be seen by executing the Show tag tdp bindings command.

How to Convert Packet MPLS to Cell MPLS

In this scenario, the following setup is used:

p2cellmpls.gif

For the purpose of this document, only the relevant configuration sections are shown as below:

Damme

damme# show run in atm 1/0
Building configuration...

Current configuration : 62 bytes
!
interface ATM1/0
 no ip address
 no atm ilmi-keepalive
end

damme# show run in atm 1/0.10
Building configuration...

Current configuration : 165 bytes
!
interface ATM1/0.10 tag-switching
 ip unnumbered Loopback0
 tag-switching atm control-vc 10 32
 tag-switching atm vpi 10 vci-range 33-65535
 tag-switching ip
end
damme#

We can also see and confirm that our TDP neighbor is up and tagging is operational on this interface:

damme#show tag int
Interface              IP            Tunnel   Operational
ATM1/0.10              Yes (tdp)     No       Yes         (ATM tagging)
damme#

damme# show tag tdp neigh
Peer TDP Ident: 10.10.10.2:1; Local TDP Ident 10.10.10.1:1
        TCP connection: 10.10.10.2.11020 - 10.10.10.1.711
        State: Oper; PIEs sent/rcvd: 82/77; Downstream on demand
        Up time: 00:53:23
        TDP discovery sources:
          ATM1/0.10, Src IP addr: 10.10.10.2

We can see that the tag switching control VC is established and the concerned TVC is also established based on the number of prefixes received (excluding loopback 0 which is 10.10.10.1 and for which a TVC will not be setup).

damme#show atm vc
            VCD /                                      Peak  Avg/Min Burst
Interface   Name       VPI   VCI  Type   Encaps   SC   Kbps   Kbps   Cells  Sts
1/0.10     2           10    32   PVC    SNAP     UBR  155000                UP
1/0.10     6           10    33   TVC    MUX      UBR  155000                UP
1/0.10     9           10    36   TVC    MUX      UBR  155000                UP
1/0.10     10          10    37   TVC    MUX      UBR  155000                UP
1/0.10     11          10    38   TVC    MUX      UBR  155000                UP
1/0.10     12          10    39   TVC    MUX      UBR  155000                UP
1/0.10     13          10    40   TVC    MUX      UBR  155000                UP
1/0.10     14          10    41   TVC    MUX      UBR  155000                UP
1/0.10     15          10    42   TVC    MUX      UBR  155000                UP
1/0.10     16          10    43   TVC    MUX      UBR  155000                UP
damme# 

damme# show tag tdp bindings
  tib entry: 1.1.100.0/24, rev 35
        local binding:  tag: 21
  tib entry: 1.2.100.0/24, rev 37
        local binding:  tag: 22
  tib entry: 1.3.100.0/24, rev 39
        local binding:  tag: 23
  tib entry: 1.4.100.0/24, rev 41
        local binding:  tag: 24
  tib entry: 10.10.10.1/32, rev 12
        local binding:  tag: imp-null
  tib entry: 10.10.10.2/32, rev 19
        local binding:  tag: 16
  tib entry: 10.10.10.3/32, rev 25
        local binding:  tag: 19
  tib entry: 10.10.10.4/32, rev 31
        local binding:  tag: 18
  tib entry: 100.100.100.0/24, rev 29
        local binding:  tag: 17
  tib entry: 200.200.200.0/24, rev 33
        local binding:  tag: 20
damme# 

Digging deeper into the TDP bindings, we can see that Damme is receiving network addresses of the form 1.x.1.100 where x=1,2,3,4 over ATM 1/0.10. Notice that Damme is is cell based MPLS as it only has an ATM interface. On the other hand, the IP addresses of the form 1.x.1.100 are the loopback interfaces addresses configured and advertised by la-lira router. Since la-lira router does not have any atm (cell based) interfaces, it is purely frame based.

The following is a show ip route from la-lira:

la-lira#show ip route
Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area 
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
       i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter area
       * - candidate default, U - per-user static route, o - ODR
       P - periodic downloaded static route

Gateway of last resort is not set

C    200.200.200.0/24 is directly connected, Ethernet0/0
     1.0.0.0/24 is subnetted, 4 subnets
C       1.4.100.0 is directly connected, Loopback4
C       1.1.100.0 is directly connected, Loopback1
C       1.3.100.0 is directly connected, Loopback3
C       1.2.100.0 is directly connected, Loopback2
     100.0.0.0/24 is subnetted, 1 subnets
O       100.100.100.0 [110/20] via 200.200.200.1, 00:56:54, Ethernet0/0
     10.0.0.0/32 is subnetted, 4 subnets
O       10.10.10.2 [110/21] via 200.200.200.1, 00:56:55, Ethernet0/0
O       10.10.10.3 [110/22] via 200.200.200.1, 00:56:55, Ethernet0/0
O       10.10.10.1 [110/22] via 200.200.200.1, 00:56:55, Ethernet0/0
O       10.10.10.4 [110/11] via 200.200.200.1, 00:56:55, Ethernet0/0
la-lira#

Now, looking at the Tag forwarding table on Damme for the prefix 1.1.100.0 which is tag 21, the following can be seen:

damme# show tag for tag 21 detail
Local  Outgoing    Prefix            Bytes tag  Outgoing   Next Hop    
tag    tag or VC   or Tunnel Id      switched   interface              
21     10/40       1.1.100.0/24      0          AT1/0.10   point2point  
        MAC/Encaps=4/8, MTU=4470, Tag Stack{10/40(vcd=13)}
        000D0900 0000D000
        No output feature configured
damme#

In the above output, we see the local tag assigned is 21, and that the outgoing tag is based on the vpi/vci of the Tag VC (TVC) that is being used for this prefix. Tracking the same prefix, we can see on Alcazaba the results:

Alcazaba#show tag atm-tdp binding local-tag 10 40 
 Destination: 1.1.100.0/24
    Tailend Router ATM3/0.10 10/40 Active, VCD=30

Alcazaba#show tag tdp binding      
  tib entry: 1.1.100.0/24, rev 33
        local binding:  tag: 20
        remote binding: tsr: 200.200.200.1:0, tag: 19

Alcazaba#show tag for tag 20 
Local  Outgoing    Prefix            Bytes tag  Outgoing   Next Hop    
tag    tag or VC   or Tunnel Id      switched   interface              
20     19          1.1.100.0/24      590        Et1/7      100.100.100.1 
Alcazaba#

Now, tracking the same on Tunis (this router is only configured for Frame based MPLS on its Ethernet interfaces) we can see that:

R9-0-Tunis#show tag tdp binding
  tib entry: 1.1.100.0/24, rev 585
        local binding:  tag: 19
        remote binding: tsr: 10.10.10.2:0, tag: 20

R9-0-Tunis#show tag for tag 19 detail
Local  Outgoing    Prefix            Bytes tag  Outgoing   Next Hop    
tag    tag or VC   or Tunnel Id      switched   interface              
19     Untagged    1.1.100.0/24      570        Et2/2      200.200.200.2 
        MAC/Encaps=0/0, MTU=1504, Tag Stack{}
        No output feature configured
    Per-packet load-sharing
R9-0-Tunis#

Here we will untag the packet and forward it out the outgoing interface in plain packet format without any MPLS labels.

Finally, the following shows the relevant configuration of Alcazaba (the 7200):

Alcazaba

Alcazaba#show run int atm 3/0
Building configuration...

Current configuration : 98 bytes
!
interface ATM3/0
 no ip address
 no atm ilmi-keepalive
 pvc 0/5 qsaal
 !
 pvc 0/16 ilmi
 !
end

Alcazaba#show run int atm 3/0.10
Building configuration...

Current configuration : 165 bytes
!
interface ATM3/0.10 tag-switching
 ip unnumbered Loopback0
 tag-switching atm control-vc 10 32
 tag-switching atm vpi 10 vci-range 33-65535
 tag-switching ip
end

Alcazaba#show atm vc int atm 3/0.10
            VCD /                                      Peak  Avg/Min Burst
Interface   Name       VPI   VCI  Type   Encaps   SC   Kbps   Kbps   Cells  Sts
3/0.10     4           10    32   PVC    SNAP     UBR  149760                UP
3/0.10     10          10    33   TVC    MUX      UBR  149760                UP
3/0.10     16          10    36   TVC    MUX      UBR  149760                UP
3/0.10     20          10    37   TVC    MUX      UBR  149760                UP
3/0.10     22          10    38   TVC    MUX      UBR  149760                UP
3/0.10     24          10    39   TVC    MUX      UBR  149760                UP
3/0.10     30          10    40   TVC    MUX      UBR  149760                UP
3/0.10     31          10    41   TVC    MUX      UBR  149760                UP
3/0.10     32          10    42   TVC    MUX      UBR  149760                UP
3/0.10     33          10    43   TVC    MUX      UBR  149760                UP

Alcazaba#show tag tdp neigh
Peer TDP Ident: 10.10.10.1:1; Local TDP Ident 10.10.10.2:1
        TCP connection: 10.10.10.1.711 - 10.10.10.2.11020
        State: Oper; PIEs sent/rcvd: 141/145; ; Downstream on demand
        Up time: 01:48:36
        TDP discovery sources:
          ATM3/0.10
Peer TDP Ident: 10.10.10.3:1; Local TDP Ident 10.10.10.2:2
        TCP connection: 10.10.10.3.11007 - 10.10.10.2.711
        State: Oper; PIEs sent/rcvd: 132/134; ; Downstream on demand
        Up time: 01:43:09
        TDP discovery sources:
          ATM3/0.20
Peer TDP Ident: 200.200.200.1:0; Local TDP Ident 10.10.10.2:0
        TCP connection: 200.200.200.1.18467 - 10.10.10.2.711
        State: Oper; PIEs sent/rcvd: 90/94; ; Downstream
        Up time: 01:14:17
        TDP discovery sources:
          Ethernet1/7
        Addresses bound to peer TDP Ident:
          100.100.100.1   200.200.200.1   10.10.10.4      

Alcazaba#show tag tdp binding
  tib entry: 1.1.100.0/24, rev 33
        local binding:  tag: 20
        remote binding: tsr: 200.200.200.1:0, tag: 19
  tib entry: 1.2.100.0/24, rev 35
        local binding:  tag: 21
        remote binding: tsr: 200.200.200.1:0, tag: 20
  tib entry: 1.3.100.0/24, rev 37
        local binding:  tag: 22
        remote binding: tsr: 200.200.200.1:0, tag: 21
  tib entry: 1.4.100.0/24, rev 39
        local binding:  tag: 23
        remote binding: tsr: 200.200.200.1:0, tag: 22
  tib entry: 10.10.10.1/32, rev 15
        local binding:  tag: 16
        remote binding: tsr: 200.200.200.1:0, tag: 16
  tib entry: 10.10.10.2/32, rev 11
        local binding:  tag: imp-null
        remote binding: tsr: 200.200.200.1:0, tag: 17
  tib entry: 10.10.10.3/32, rev 21
        local binding:  tag: 18
        remote binding: tsr: 200.200.200.1:0, tag: 18
  tib entry: 10.10.10.4/32, rev 27
        local binding:  tag: 17
        remote binding: tsr: 200.200.200.1:0, tag: imp-null
  tib entry: 100.100.100.0/24, rev 25
        local binding:  tag: imp-null
        remote binding: tsr: 200.200.200.1:0, tag: imp-null
  tib entry: 200.200.200.0/24, rev 29
        local binding:  tag: 19
        remote binding: tsr: 200.200.200.1:0, tag: imp-null
Alcazaba#

This Cell MPLS to Packet MPLS was performed by the 7200 Alcazaba and as you can see it is quite transparent as we do not have to configure anything specific to this scenario. As long as the routing protocols are configured and the routes are being propagated, the MPLS control plane will populate the TFIB and forward packets based on the labels assigned without regard to the type of media. If a packet is received over a Frame MPLS interface, the outgoing tag will be looked up and the packet will be forwarded out that interface. If the outgoing interface is configured for Cell based MPLS, then the packet will be converted to the AAL5 frame and subsequently after segmentation, the vpi/vci being used for forwarding will be used in the ATM cells comprising that frame.


Related Information



Updated: Jun 16, 2005 Document ID: 28941