Internet DRAFT - draft-kompella-spring-rmr

draft-kompella-spring-rmr







SPRING Working Group                                         K. Kompella
Internet-Draft                                                   T. Saad
Intended status: Standards Track                             A. Deshmukh
Expires: September 9, 2020                              Juniper Networks
                                                          March 08, 2020


                   Resilient MPLS Rings using SPRING
                      draft-kompella-spring-rmr-02

Abstract

   This document describes the use of SPRING to setup LSP(s) for
   resilient MPLS ring networks.  It specifies how clockwise and anti-
   clockwise ring SIDs are allocated and signaled using IGP protocol
   extensions, and how such ring SIDs achieve ring protection.

Status of This Memo

   This Internet-Draft is submitted in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF).  Note that other groups may also distribute
   working documents as Internet-Drafts.  The list of current Internet-
   Drafts is at https://datatracker.ietf.org/drafts/current/.

   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."

   This Internet-Draft will expire on September 9, 2020.

Copyright Notice

   Copyright (c) 2020 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents
   (https://trustee.ietf.org/license-info) in effect on the date of
   publication of this document.  Please review these documents
   carefully, as they describe your rights and restrictions with respect
   to this document.  Code Components extracted from this document must
   include Simplified BSD License text as described in Section 4.e of
   the Trust Legal Provisions and are provided without warranty as
   described in the Simplified BSD License.



Kompella, et al.        Expires September 9, 2020               [Page 1]

Internet-Draft              SPRING RMR Rings                  March 2020


Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
   2.  Terminology . . . . . . . . . . . . . . . . . . . . . . . . .   3
     2.1.  Ring Terminology  . . . . . . . . . . . . . . . . . . . .   3
   3.  Protocol extensions . . . . . . . . . . . . . . . . . . . . .   4
   4.  Ring SPRING LSPs  . . . . . . . . . . . . . . . . . . . . . .   5
     4.1.  Ring SID Assignment . . . . . . . . . . . . . . . . . . .   5
       4.1.1.  Ring SID Assignment Using DHCP  . . . . . . . . . . .   5
     4.2.  Ring SPRING LSP Set Up  . . . . . . . . . . . . . . . . .   5
     4.3.  Protection and Fastreroute  . . . . . . . . . . . . . . .   6
   5.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .   6
   6.  Security Considerations . . . . . . . . . . . . . . . . . . .   6
   7.  Contributors  . . . . . . . . . . . . . . . . . . . . . . . .   6
   8.  References  . . . . . . . . . . . . . . . . . . . . . . . . .   6
     8.1.  Normative References  . . . . . . . . . . . . . . . . . .   7
     8.2.  Informative References  . . . . . . . . . . . . . . . . .   7
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .   8

1.  Introduction

   Ring topologies are very common in transport networks, and are
   ubiquitous in access and aggregation networks.

   This draft introduces extensions to IGP protocols to establish SPRING
   Label Switched Paths (LSPs) for Resilient MPLS Rings (RMR).  An RMR
   LSP is a multipoint to point (MP2P) LSP with simple protection.

   SPRING [RFC8402] defines the notion of node SIDs which guide packets
   along the IGP shortest path to the advertising node.  Node SIDs are
   typically advertised by an IGP.  This draft uses a similar notion to
   guide packets along a "clockwise" (CW) or "anti-clockwise" (AC) path
   to the advertising node.  The concept of CW and AC are well-defined
   in RMR rings.

   Rings are auto-discovered using the mechanisms described in the
   [I-D.ietf-mpls-rmr].  Signaling extensions for IS-IS and OSPF are
   introduced in [I-D.kompella-isis-ospf-rmr] to enable the auto-
   discovery of ring topologies.  After the ring topology is discovered,
   each node in the ring determines its CW and AC ring neighbors and
   associated ring links.

   [I-D.ietf-teas-rsvp-rmr-extension] describes RSVP-TE [RFC3209]
   extensions to set up Resilient MPLS Ring (RMR) LSPs.
   [I-D.ietf-mpls-ldp-rmr-extensions] describes LDP [RFC5036] extensions
   to set up LDP RMR LSPs.  This document does the same for SPRING RMR
   LSPs and the associated protection LSPs.




Kompella, et al.        Expires September 9, 2020               [Page 2]

Internet-Draft              SPRING RMR Rings                  March 2020


   The first revisions of this document will focus on the simple most
   common ring topologies in access networks that do not include any
   "express links".  Future revisions of this document will expand on
   express link(s) for the more general rings.

2.  Terminology

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
   "OPTIONAL" in this document are to be interpreted as described in BCP
   14 [RFC2119] [RFC8174] when, and only when, they appear in all
   capitals, as shown here.

2.1.  Ring Terminology

   A ring consists of a subset of n nodes {R_i, 0 <= i < n}. The
   direction from node R_i to R_i+1 is defined as as "clockwise" (CW)
   and the reverse direction is defined as "anti-clockwise" (AC).  As
   there may be several rings in a graph, each ring is numbered with a
   distinct Ring ID (RID).

   The following terminology is used for rings:

   Ring ID (RID):  A non-zero number that identifies a ring; this is
      unique in some scope of a Service Provider's network.  A node may
      belong to multiple rings, each identified by its unique RID

   Ring Node:  A member of a ring.  Note that a node may belong to
      several rings.

   Node Index:  A logical numbering of nodes in a ring, from zero up to
      one less than the ring size.  Used purely for exposition in this
      document.

   Ring Master:  The ring master initiates the ring identification
      process.  Mastership is indicated in the IGP by a two-bit field.

   Ring Neighbors:  Nodes whose indices differ by one (modulo ring
      size).

   Ring Size:  The ring size for a given instantiation is N.  This can
      change as nodes are added or removed, or go up or down.

   Ring Links:  Links that connect ring neighbors.

   Express Links:  Links that connect non-neighboring ring nodes.





Kompella, et al.        Expires September 9, 2020               [Page 3]

Internet-Draft              SPRING RMR Rings                  March 2020


   Ring LSP:  Each LSP in the ring is a multipoint to point LSP such
      that LSP can have multiple ingress nodes and one egress node.

   Ring Identification:  The process of discovering ring nodes, ring
      links, link directions, and express links.

   Ring SID:  Each ring node W advertises a pair of unique Ring Segment
      Identifiers (Ring SIDs): a CW ring SID CW-W, to send traffic
      clockwise to W, and an AC ring SID AC-W to send traffic anti-
      clockwise to W.

3.  Protocol extensions

   A node participating in an RMR ring that is capable of SPRING can
   choose to advertise this by setting the SPRING bit in the "Supported
   Signaling Protocols" (SS), as specified in [I-D.ietf-mpls-rmr].  If
   so, the node advertises a Ring SID sub-TLV as a sub-TLV of the RMR
   Node TLV, as follows:

   [RMR-SID Type] [Length = 8] [CW Ring SID Index] [AC Ring SID Index]

   This sub-TLV has the following format in IS-IS:

        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
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |   Type (TBD)  |  Length (8)   | CW Ring SID ...               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |              ... CW Ring SID  | AC Ring SID ...               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |              ... AC Ring SID  |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   where:

   Type:  is the type of the RMR SID sub-TLV (TBD)

   Length:  8

   Value:  The CW SID followed by the AC SID.

   In OSPF, the sub-TLV has the same format, except that the Type is two
   octets and the Length is two octets.








Kompella, et al.        Expires September 9, 2020               [Page 4]

Internet-Draft              SPRING RMR Rings                  March 2020


4.  Ring SPRING LSPs

   The semantics of Ring SIDs is very straightforward: a CW Ring SID
   advertised by node W (CW-W) simply says: to get to W, take the CW
   path.  Similarly, the AC Ring SID AC-W to W says, take the AC path to
   W.

   Protection involves switching directions and labels.

4.1.  Ring SID Assignment

   CW and AC Ring SIDs MUST be unique for each (RID, node) combination.
   This uniqueness can be guaranteed by configuration, or by the use of
   DHCP, as described next.

4.1.1.  Ring SID Assignment Using DHCP

   The Dynamic Host Configuration Protocol is uniquely well-suited for
   handling node and ring SID assignments.  When ring directions have
   been established for all links in the ring, each node can request, as
   a DHCP client, a pair of ring SIDs.  The DHCP server responds with
   two unique values from the SID block(s) for Ring SIDs with which it
   has been configured.  The DHCP server SHOULD be configured with very
   long leases for such assignments, as well as "sticky" assignments;
   that is, should a lease expire, the pair of values assigned should
   not be offered to another client unless the server has run out of
   ring SID values; also, should the same client re-request ring SIDs,
   the server SHOULD return the same SIDs if at all possible.

   Further details are provided in [I-D.kompella-spring-dhcp].

4.2.  Ring SPRING LSP Set Up

   When ring identification of ring R is complete, each node W that is
   SPRING capable advertises a pair of CW and AC Ring SIDs, CW-W and AC-
   W.  Each node Y that is a member of ring R then installs a FIB entry
   as follows:

   1.  Let X be Y's AC neighbor, and Z be Y's CW neighbor.

   2.  For each received CW Ring SID CW-W, Y installs an LFIB entry to
       forward the packet to Z.

   3.  For each received CW Ring SID AC-W, Y installs an LFIB entry to
       forward the packet to X.

   Note that Y must deal with the SRGB mapping corresponding to X and Z.




Kompella, et al.        Expires September 9, 2020               [Page 5]

Internet-Draft              SPRING RMR Rings                  March 2020


4.3.  Protection and Fastreroute

   At the same time that Y installs LFIB entries for CW-W and AC-W, it
   also installs backup LFIB entries as follows:

   1.  Let X be Y's AC neighbor, and Z be Y's CW neighbor.

   2.  For each received CW Ring SID CW-W, Y installs a backup LFIB
       entry to swap CW-W with AC-W and forward the packet to X (swap
       label and ring direction).  If all nodes AC of Y until W are
       NFFRR capable, the NFFRR SPL [I-D.kompella-mpls-nffrr] SHOULD be
       pushed below AC-W.

   3.  For each received AC Ring SID AC-W, Y installs a backup LFIB
       entry to swap AC-W with CW-W and forward the packet to Z (swap
       label and ring direction).  If all nodes CW of Y until W are
       NFFRR capable, the NFFRR SPL SHOULD be pushed below CW-W.

   Again, Y must deal with the corresponding SRGB mappings.

5.  IANA Considerations

   Need to allocate Ring SID sub-TLV Types for IS-IS and OSPF.

6.  Security Considerations

   It is not anticipated the extensions to IGP SR protocols described in
   this document may introduce additional security risk(s).  Future
   revisions of this document will update this section with details
   about those risks.

7.  Contributors

      Raveendra Torvi
      Juniper Networks

      Email: rtorvi@juniper.net

      Vishnu Pavan Beeram
      Juniper Networks

      Email: vbeeram@juniper.net

8.  References







Kompella, et al.        Expires September 9, 2020               [Page 6]

Internet-Draft              SPRING RMR Rings                  March 2020


8.1.  Normative References

   [I-D.ietf-mpls-rmr]
              Kompella, K. and L. Contreras, "Resilient MPLS Rings",
              draft-ietf-mpls-rmr-12 (work in progress), October 2019.

   [I-D.kompella-isis-ospf-rmr]
              Kompella, K., "IGP Extensions for Resilient MPLS Rings",
              draft-kompella-isis-ospf-rmr-00 (work in progress),
              October 2016.

   [I-D.kompella-mpls-nffrr]
              Kompella, K. and W. Lin, "No Further Fast Reroute", draft-
              kompella-mpls-nffrr-00 (work in progress), March 2020.

   [I-D.kompella-spring-dhcp]
              Kompella, K. and R. Bonica, "Using DHCP to Manage Node and
              Ring SID Assignment", draft-kompella-spring-dhcp-00 (work
              in progress), July 2019.

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119,
              DOI 10.17487/RFC2119, March 1997,
              <https://www.rfc-editor.org/info/rfc2119>.

   [RFC8174]  Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
              2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
              May 2017, <https://www.rfc-editor.org/info/rfc8174>.

   [RFC8402]  Filsfils, C., Ed., Previdi, S., Ed., Ginsberg, L.,
              Decraene, B., Litkowski, S., and R. Shakir, "Segment
              Routing Architecture", RFC 8402, DOI 10.17487/RFC8402,
              July 2018, <https://www.rfc-editor.org/info/rfc8402>.

8.2.  Informative References

   [I-D.ietf-mpls-ldp-rmr-extensions]
              Esale, S. and K. Kompella, "LDP Extensions for RMR",
              draft-ietf-mpls-ldp-rmr-extensions-02 (work in progress),
              June 2019.

   [I-D.ietf-teas-rsvp-rmr-extension]
              Deshmukh, A. and K. Kompella, "RSVP Extensions for RMR",
              draft-ietf-teas-rsvp-rmr-extension-02 (work in progress),
              July 2019.






Kompella, et al.        Expires September 9, 2020               [Page 7]

Internet-Draft              SPRING RMR Rings                  March 2020


   [RFC3209]  Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan, V.,
              and G. Swallow, "RSVP-TE: Extensions to RSVP for LSP
              Tunnels", RFC 3209, DOI 10.17487/RFC3209, December 2001,
              <https://www.rfc-editor.org/info/rfc3209>.

   [RFC5036]  Andersson, L., Ed., Minei, I., Ed., and B. Thomas, Ed.,
              "LDP Specification", RFC 5036, DOI 10.17487/RFC5036,
              October 2007, <https://www.rfc-editor.org/info/rfc5036>.

Authors' Addresses

   Kireeti Kompella
   Juniper Networks

   Email: kireeti.kompella@gmail.com


   Tarek Saad
   Juniper Networks

   Email: tsaad@juniper.net


   Abhishek Deshmukh
   Juniper Networks

   Email: adeshmukh@juniper.net
























Kompella, et al.        Expires September 9, 2020               [Page 8]