Network Working Group                             Kireeti Kompella
Internet Draft                                    Juniper Networks
Expiration Date: March 2002                          Yakov Rekhter
                                                  Juniper Networks
                                                     Alan Kullberg
                                                  NetPlane Systems


                 Signalling Unnumbered Links in CR-LDP

                   draft-ietf-mpls-crldp-unnum-02.txt


1. 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 obsoleted 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.


2. Abstract

   Current signalling used by MPLS TE doesn't provide support for
   unnumbered links.  This document defines procedures and extensions to
   CR-LDP, one of the MPLS TE signalling protocols, that are needed in
   order to support unnumbered links.










draft-ietf-mpls-crldp-unnum-01.txt                              [Page 1]


Internet Draft     draft-ietf-mpls-crldp-unnum-02.txt     September 2001


3. Overview

   Supporting MPLS TE over unnumbered links (i.e., links that do not
   have IP addresses) involves two components: (a) the ability to carry
   (TE) information about unnumbered links in IGP TE extensions (ISIS or
   OSPF), and (b) the ability to specify unnumbered links in MPLS TE
   signalling.  The former is covered in [ISIS-TE, OSPF-TE]. The focus
   of this document is on the latter.

   Current signalling used by MPLS TE doesn't provide support for
   unnumbered links because the current signalling doesn't provide a way
   to indicate an unnumbered link in its Explicit Route Objects.  This
   document proposes simple procedures and extensions that allow CR-LDP
   signalling [CR-LDP] to be used with unnumbered links.


4. Interface Identifiers

   Since unnumbered links are not identified by an IP address, then for
   the purpose of MPLS TE they need some other identifier.  We assume
   that each unnumbered link on a Label Switched Router (LSR) is given a
   unique 32-bit identifier.  The scope of this identifier is the LSR to
   which the link belongs; moreover, the IS-IS and/or OSPF and CR-LDP
   modules on an LSR must agree on interface identifiers.

   Note that links are directed, i.e., a link l is from some LSR A to
   some other LSR B.  LSR A chooses the interface identifier for link l.
   To be completely clear, we call this the "outgoing interface
   identifier from LSR A's point of view".  If there is a reverse link
   from LSR B to LSR A (for example, a point-to-point SONET interface
   connecting LSRs A and B would be represented as two links, one from A
   to B, and another from B to A), B chooses the outgoing interface
   identifier for the reverse link; we call this the link's "incoming
   interface identifier from A's point of view".  There is no a priori
   relationship between the two interface identifiers.
















draft-ietf-mpls-crldp-unnum-01.txt                              [Page 2]


Internet Draft     draft-ietf-mpls-crldp-unnum-02.txt     September 2001


5. Unnumbered Forwarding Adjacencies

   If an LSR that originates an LSP advertises this LSP as an unnumbered
   Forwarding Adjacency in IS-IS or OSPF (see [LSP-HIER]), or the LSR
   uses the Forwarding Adjacency formed by this LSP as an unnumbered
   component link of a bundled link (see [BUNDLE]), the LSR MUST
   allocate an interface identifier to that Forwarding Adjacency (just
   like for any other unnumbered link). Moreover, the Request message
   used for establishing the LSP that forms the Forwarding Adjacency
   MUST contain an LSP_TUNNEL_INTERFACE_ID object (described below),
   with the LSR's Router ID set to the head end's Router ID, and the
   Interface ID set to the interface identifier that the LSR allocated
   to the Forwarding Adjacency.

   If the LSP is bidirectional, and the tail-end LSR (of the forward
   LSP) advertises the reverse LSP as an unnumbered Forwarding
   Adjacency, the tail-end LSR MUST allocate an interface identifier to
   the reverse Forwarding Adjacency.  Furthermore, the MAPPING message
   for the LSP MUST contain an LSP_TUNNEL_INTERFACE_ID object, with the
   LSR's Router ID set to the tail end's router ID, and the Interface ID
   set to the interface identifier allocated by the tail-end LSR.


5.1. LSP_TUNNEL_INTERFACE_ID Object

   The LSP_TUNNEL_INTERFACE ID object has Type to be determined by IETF
   consensus and length 8.  The format is given below.

   Figure 1: Interface ID TLV

    0                   1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |0|0|            Type           |            Length             |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                        LSR's Router ID                        |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                    Interface ID (32 bits)                     |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+


   This object can optionally appear in either a REQUEST message or a
   MAPPING message.  In the former case, we call it the "Forward
   Interface ID" for that LSP; in the latter case, we call it the
   "Reverse Interface ID" for the LSP.






draft-ietf-mpls-crldp-unnum-01.txt                              [Page 3]


Internet Draft     draft-ietf-mpls-crldp-unnum-02.txt     September 2001


6. Signalling Unnumbered Links in EROs

   A new subobject of the Explicit Route Object (ERO) is used to specify
   unnumbered links.  This subobject has the following format:

   Figure 2: Unnumbered Interface ID Subobject

    0                   1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |0|0|            Type           |            Length             |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                           Router ID                           |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                     Interface ID (32 bits)                    |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+


   This subobject is strict.  The Type is 0x0805 (Unnumbered Interface
   ID) and the Length is 8.

   The Interface ID is the outgoing interface identifier with respect to
   the LSR specified by the router ID.


6.1. Processing the Unnumbered Interface ID Subobject

   First of all, the receiving LSR must validate that it received the
   Request message correctly. If the first subobject in the ERO is an
   Unnumbered Interface subobject, the check is done as follows (for
   other types of ERO subobjects, the rules in [CR-LDP] apply).

   The IF_ID TLV ([GMPLS-SIG], [GMPLS-CRLDP]), if present in the
   message, MUST contain the same Router ID (IP Address) as the Router
   ID carried in the Unnumbered Interface ID subobject. If not, the
   receiving LSR MUST return a "Bad Initial ER-Hop" error.  If IF_ID TLV
   is present, and it carries the IF_INDEX TLV, the receiving LSR SHOULD
   check that the value carried in this TLV is the same as carried in
   the Interface ID field of the Unnumbered Interface ID subobject.  If
   the value is different, the receiving LSR MUST return a  "Bad Initial
   ER-Hop" error.

   If the above checks are passes, the LSR checks whether the tuple
   <Router ID, Interface ID> from the Unnumbered Interface subobject
   matches the tuple <Router ID, Forward Interface ID> of any of the
   LSPs for which the LSR is a tail-end. If a match is found, the match
   identifies the Forwarding Adjacency for which the LSR has to perform
   label allocation.



draft-ietf-mpls-crldp-unnum-01.txt                              [Page 4]


Internet Draft     draft-ietf-mpls-crldp-unnum-02.txt     September 2001


   Otherwise, the LSR MUST check whether the tuple <Router ID, Interface
   ID> from the Unnumbered Interface subobject matches the tuple <Router
   ID, Reverse Interface ID> of any of the bidirectional LSPs for which
   the LSR is the head-end. If a match is found, the match identifies
   the Forwarding Adjacency for which the LSR has to perform label
   allocation, namely, the reverse Forwarding Adjacency for the LSP
   identified by the match.

   Otherwise, the LSR must have information about the identifiers
   assigned by its neighbors to the unnumbered links (i.e., incoming
   interface identifiers from LSR's point of view). The LSR uses this
   information to find a link with tuple <Router ID, incoming interface
   identifier> matching the tuple <Router ID, Interface ID> from the
   Unnumbered Interface subobject. If the matching tuple is found, and
   the link is not a bundled link, the match identifies the link for
   which the LSR has to perform label allocation. If the matching tuple
   is found, and the link is a bundled link, the LSR follows the
   procedures for label allocation as described in [LINK-BUNDLE].



6.2. Selecting the Next Hop

   Once an LSR determines the link for which the LSR has to perform
   label allocation, the LSR removes the initial subobject in the ERO,
   and computes the next hop.  The next hop for an Unnumbered Interface
   ID subobject is determined as follows.  The Interface ID MUST refer
   to an outgoing interface identifier that this node allocated; if not,
   the node SHOULD return a "Bad Strict Node" error.  The next hop is
   the LSR at the other end of the link that the Interface ID refers to.
   If this is the LSR itself, the subobject is removed, and the process
   repeated.  If the next node is some other LSR, this is the next hop
   to which a Request message must be sent.

   When sending a Request message to the next hop, if the message
   carries the IF_ID object, then this object MUST contain the IF_INDEX
   TLV, with IP Address in that TLV set to the LSR's Router ID, and
   Interface ID set to the Interface ID carried in the first subobject
   of the ERO.












draft-ietf-mpls-crldp-unnum-01.txt                              [Page 5]


Internet Draft     draft-ietf-mpls-crldp-unnum-02.txt     September 2001


7. Security Considerations

   This document raises no new security concerns for CR-LDP.


8. Acknowledgments

   Thanks to Rahul Aggarwal for his comments on the text.  Thanks too to
   Bora Akyol and Vach Kompella.


9. References

   [BUNDLE] Kompella, K., Rekhter, Y., and Berger, L., "Link Bundling in
   MPLS Traffic Engineering", draft-kompella-mpls-bundle-05.txt (work in
   progress)

   [CR-LDP] Jamoussi, B., editor, "Constraint-Based LSP Setup using
   LDP", draft-ietf-mpls-cr-ldp-04.txt (work in progress)

   [GMPLS-SIG] Ashwood, P., et al., "Generalized MPLS - Signalling
   Functional Description", draft-ietf-generalized-mpls-
   signalling-05.txt

   [GMPLS-CRLDP] Ashwood, P., et al., "Generalized MPLS Signaling - CR-
   LDP Extensions", draft-ietf-mpls-generalized-cr-ldp-04.txt

   [ISIS-TE] Smit, H., and Li, T., "IS-IS extensions for Traffic
   Engineering", draft-ietf-isis-traffic-02.txt (work in progress)

   [LSP-HIER] Kompella, K., and Rekhter, Y., "LSP Hierarchy with MPLS
   TE", draft-ietf-mpls-lsp-hierarchy-02.txt (work in progress)

   [OSPF-TE] Katz, D., and Yeung, D., "Traffic Engineering Extensions to
   OSPF", draft-katz-yeung-ospf-traffic-04.txt (work in progress)
















draft-ietf-mpls-crldp-unnum-01.txt                              [Page 6]


Internet Draft     draft-ietf-mpls-crldp-unnum-02.txt     September 2001


10. Author Information


Kireeti Kompella
Juniper Networks, Inc.
1194 N. Mathilda Ave.
Sunnyvale, CA 94089
e-mail: kireeti@juniper.net

Yakov Rekhter
Juniper Networks, Inc.
1194 N. Mathilda Ave.
Sunnyvale, CA 94089
e-mail: yakov@juniper.net

Alan Kullberg
NetPlane Systems, Inc.
Westwood Executive Center
200 Lowder Brook Drive
Westwood, MA  02090
e-mail: akullber@netplane.com






























draft-ietf-mpls-crldp-unnum-01.txt                              [Page 7]