Internet Draft                                        S. M. Shahrier 
   Document: draft-shahrier-mpls-lsp-00.txt                InterDigital 
   Expires: 2001                                              June 2001 
 
           A Bi-Directional LSP Tunneling Architecture for MPLS 
         
Status of this Memo 
    
   This document is an Internet-Draft and is in full conformance 
   with all provisions of Section 10 of RFC2026. 
    
    
   Internet-Drafts are working documents of the Internet Engineering 
   Task Force (IETF), its areas, and its working groups.  Note that      
   other groups may also distribute working documents as Internet-
   Drafts. 
    
   Internet-Drafts are draft documents valid for a maximum of six 
   months and may be updated, replaced, or obsolete by other documents 
   at any time.  It is inappropriate to use Internet-Drafts as 
   reference material or to cite them other than as "work in progress." 
    
   The list of current Internet-Drafts can be accessed at 
        http://www.ietf.org/ietf/1id-abstracts.txt 
   The list of Internet-Draft Shadow Directories can be accessed at 
        http://www.ietf.org/shadow.html. 
    
Conventions used in this document 
    
   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 
   "SHOULD", "SHOULD NOT", "RECOMMENDED",  "MAY", and "OPTIONAL" in 
   this document are to be interpreted as described in RFC-2119 [1]. 
    
Abstract 
       An LSP tunnel in an MPLS network is currently defined to be 
   unidirectional. Hence, the set of label bindings associated with the 
   forward path cannot be used to transmit packets over the reverse 
   path. This draft suggests a new method of setting up bi-directional 
   LSP tunnels within an MPLS network. Then given mappings for the 
   labels and ports for the ôforward LSPö, an equivalent mapping for 
   the reverse path is readily derived. A ôcontent addressingö look-up 
   technique is proposed to look up the label and port bindings for the 
   reverse tunnel. This draft presents the bi-directional LSP tunneling 
   architecture and the method of mapping labels and output ports for 
   the reverse LSP path. 
    
1. Introduction 
 
   MPLS is a switching technology for fast forwarding of IP packets. 
   The basic idea to the switching approach is the label in the packet 
   header is examined at each LSR, and is associated with an outgoing 
     
   Shahrier     Informational - Expires December 2001               1 
          A Bi-Directional Tunneling Architecture for MPLS June 2001 
    
   label and an output port which are used in the forwarding to the 
   next hop. The incoming label is swapped with the outgoing label in 
   the header, and the packet is sent out through the output port to 
   the next hop in the LSP. The process of label switching occurs at 
   each LSR on the LSP from the ingress to the egress node. The 
   following example illustrates the basic operation of MPLS. 
    
                     ---                             --- 
                     | X |                           | Y | 
                      ---                             --- 
                     4\                               /3 
                       \ Label=1             Label=2 / 
                       1\                           /8 
                       ---  Label=3  ---  Label=4  --- 
                      | A |---------| B |---------| C | 
                       --- 5       4 --- 3       2 --- 
    
                    Figure 1 An LSP setup in an MPLS Network 
    
   Fig.1 depicts an MPLS network connecting two customer sites X and Y. 
   The LSP connecting sites X and Y, pass through three LSRs denoted by 
   A, B and C. Each LSR uses the In-Label to index into a mapping 
   table, and retrieves the Out-Label and the designated Out-Port of 
   the router. The Out-Label replaces the In-Label in the header, and 
   the packet is sent out through the Out-Port. The final node in the 
   LSP, node C, determines that it is the exit of the tunnel, and the 
   packet is forwarded to the egress Y. The binding between the In-
   Label and the Out-Label for the next hop is accomplished by an LDP 
   protocol. The MPLS Working Group has specified several LDPs for 
   distributing labels to the LSRs, based on IP routing information. 
   The base protocol is called LDP [1]. Two other protocols CR-LDP [2] 
   and RSVP-TE [3] have also been proposed for LSPs that require QoS 
   guarantees. 
    
   Currently, the MPLS Working Group has specified the direction of an 
   LSP as ôunidirectionalö. In other words, in the LSP shown in Fig. 
   1., traffic must follow the route in the direction of A->B->C, 
   because the bindings of the labels are only specified for that 
   direction. In this draft, we propose a scheme for tunneling IP 
   packets in the reverse direction, over the same LSP, thus 
   effectively performing a traceroute operation. We refer to this 
   technique as ôreverse MPLSö, as contrasting with ôforward MPLSö. The 
   binding of labels and ports in the reverse MPLS is opposite to the 
   bindings for the forward direction. For example, if the mapping at 
   an LSR in the forward path are as follows: 
    
              -------------------------------- 
             |  In-Port  = 3 | In-Label  = 12 | 
             |  Out-Port = 5 | Out-Label = 7  | 
              -------------------------------- 
    
   then the mappings in the reverse direction are: 
                Internet Draft - Expires December 2001               2 
    
          A Bi-Directional Tunneling Architecture for MPLS June 2001 
    
    
                
               ------------------------------- 
               | In-Port  = 5 | In-Label  = 7  | 
              | Out-Port = 3 | Out-Label = 12 | 
               ------------------------------- 
    
   Thus, the mappings of the labels and ports are interchanged in the 
   reverse direction, and corresponds to the flow of packets from Y to 
   X, effectively tracing back the route set up by the forward LSP. 
   Thus, it remains to be determined how given a set of mappings of 
   labels and ports for the forward direction, an equivalent set of 
   mappings for the reverse direction may be obtained. The procedure is 
   explained in the next section. 
    
2. Reverse LSP Architecture 
    
   In MPLS, the process of mapping labels and ports is summarized by 
   the following expression.  
    
                <In-Label,In-Port> . <Out-Label,Out-Port> 
    
   i.e. the In-Label and In-Port numbers are mapped to the 
   corresponding Out-Label and Out-Port values. The mappings may be 
   represented as 1-D vectors, where the index is the In-Label (In-
   Port) and the vector element is the Out-Label (Out-Port). From the 
   LSP in Fig. 1, the mapping vectors are presented as follows: 
    
                _ 
                         1| 3 |         1| 5 | 
                         2| X |         2| 8 | 
                         3| 4 |         3| X | 
                         4| 2 |         4| 3 | 
    
                         Out-Label     Out-Port 
    
   These mappings are for the forward LSP direction, i.e. the In-Label 
   (In-Port) is used to index the mapping vectors, to retrieve the Out-
   Label (Out-Port) values. The Out-Label then replaces the In-Label in 
   the packet header, and the packet is sent out through the Out-Port. 
    
   For the reverse LSP forwarding, a tunnel is established from Y to X, 
   along the path C->B->A. The Out-Label (Out-Port) may be derived by 
   addressing via the contents of the vectors, as opposed to via the 
   indices. 
    
   For example, at LSR B the In-Label for the reverse LSP is ô4ö. In 
   the Out-Label mapping vector, using content addressable look-up, 
   element ô4ö corresponds to the index value ô3ö. This value is the 
   Out-Label of the packet for the reverse path at LSR B. Similarly, in 
   the Out-Port mapping vector, using content-addressable look-up, 
   element ô3ö corresponds to index ô4ö, i.e. the output port of the 
   router in the reverse path. A similar look-up procedure is used at 
   all the other LSRÆs on the reverse LSP. 
                Internet Draft - Expires December 2001               3 
    
          A Bi-Directional Tunneling Architecture for MPLS June 2001 
    
    
3. Conclusions. 
 
   This draft presented a new method of setting up a bi-directional LSP 
   tunnel in an MPLS network. We presented a method of obtaining the 
   Out-Label and Out-Port mappings for the reverse path from the 
   existing vectors for the forward path. This eliminates the need for 
   computing and storing two sets of mapping vectors for both the 
   forward and reverse paths. 
    
4. References 
 
  1. ôLDP Specificationö, RFC 3036. 
  2. ôConstraint Based LSP Setup using LDPö,Internet Draft. 
  3. ôRSVP-TE Extensions to RSVP for LSP Tunnelsö, Internet Draft. 
    
5. The author may be contacted at: 
 
   Sharif M. Shahrier 
   InterDigital  
   781 Third Ave.               Phone: 1-610-337-4343 
   King of Prussia, PA. USA     Email: sharif.shahrier@interdigital.com 
    
 
                Internet Draft - Expires December 2001               4