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]