RFC 7771

Switching Provider Edge (S-PE) Protection for MPLS and MPLS Transport Profile (MPLS-TP) Static Multi-Segment Pseudowires

πŸ“… published January 2016, from ietf

RFC 7771 πŸŽ€ Part 1 of 2 πŸ’–

Okay bestie, here's the title block at a glance πŸ‘‘:

  • Who wrote it: A. Malis (Ed.), L. Andersson, H. van Helvoort, J. Shin, L. Wang, and A. D'Alessandro, from Huawei Technologies Co., Ltd., Hai Gaoming BV, SK Telecom, China Mobile, and Telecom Italia 🌸
  • Category: Standards Track ✨
  • Date: January 2016 πŸ¦‹
  • ISSN: 2070-1721
  • Updates: RFC 6870. It doesn't list anything it obsoletes. πŸ’…

The title is Switching Provider Edge (S-PE) Protection for MPLS and MPLS Transport Profile (MPLS-TP) Static Multi-Segment Pseudowires 🧚


Abstract

okay so in MPLS and MPLS Transport Profile (MPLS-TP) land, statically provisioned Single-Segment Pseudowires (SS-PWs) are already protected against tunnel failure with MPLS-level and MPLS-TP-level tunnel protection πŸ›‘οΈ. Statically provisioned Multi-Segment Pseudowires (MS-PWs) get that same protection, segment by segment. BUT here's the tea 🍡: static MS-PWs are NOT protected end-to-end if one of the Switching Provider Edge Routers (S-PEs) on the path fails 😭. This document fixes that with redundant MS-PWs by updating the existing procedures in RFC 6870 πŸ’œ. It also has an optional approach based on MPLS-TP Linear Protection 🌈.

Status of This Memo

This is an Internet Standards Track document. ✨

This document is a product of the Internet Engineering Task Force (IETF). It represents the consensus of the IETF community, and it got public review and was approved for publication by the Internet Engineering Steering Group (IESG). More info about Internet Standards is in Section 2 of RFC 5741 πŸŽ€.

Info about the current status of this document, any errata, and how to send feedback lives at http://www.rfc-editor.org/info/rfc7771 🌸.

Copyright (c) 2016 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 (http://trustee.ietf.org/license-info) as in effect on the date of publication. Please review these documents carefully, because 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 they are provided without warranty as described in the Simplified BSD License πŸ’€.

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
     1.1.  Requirements Language . . . . . . . . . . . . . . . . . .   3
   2.  Extension to RFC 6870 to Protect Statically Provisioned
       SS-PWs and MS-PWs . . . . . . . . . . . . . . . . . . . . . .   3
   3.  Operational Considerations  . . . . . . . . . . . . . . . . .   5
   4.  Security Considerations . . . . . . . . . . . . . . . . . . .   5
   5.  References  . . . . . . . . . . . . . . . . . . . . . . . . .   5
     5.1.  Normative References  . . . . . . . . . . . . . . . . . .   5
     5.2.  Informative References  . . . . . . . . . . . . . . . . .   6
   Appendix A.  Optional Linear Protection Approach  . . . . . . . .   7
     A.1.  Introduction  . . . . . . . . . . . . . . . . . . . . . .   7
     A.2.  Encapsulation of the PSC Protocol for Pseudowires . . . .   8
   Acknowledgements  . . . . . . . . . . . . . . . . . . . . . . . .   8
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .   9

1. Introduction ✨

In MPLS and MPLS Transport Profile (MPLS-TP) Packet Switched Networks (PSNs), pseudowires (PWs) get carried by MPLS(-TP) Label Switched Paths (LSPs), which are also called tunnels πŸš‡.

As RFC 5659 [RFC5659] describes, Multi-Segment Pseudowires (MS-PWs) are made of Terminating Provider Edge Routers PEs (T-PEs), one or more Switching Provider Edge Routers (S-PEs), and a sequence of tunneled PW segments. One segment connects one T-PE to its "adjacent" S-PE, that S-PE connects to the next S-PE in line, and this keeps going until the last S-PE hooks up to the other T-PE via the last PW segment πŸ”—. In MPLS and MPLS-TP environments, statically provisioned SS-PWs are protected against tunnel failure via MPLS-level and MPLS-TP-level tunnel protection. With statically provisioned MS-PWs, each PW segment is protected from tunnel failure the same way πŸ™Œ. But tunnel protection does NOT protect static MS-PWs from failures of S-PEs along the path, and that's the gap we're fixing 😀.

RFC 6718 [RFC6718] gives a general framework for PW protection. RFC 6870 [RFC6870] is built on that framework and describes protection procedures for MS-PWs that get dynamically signaled using LDP πŸ’…. This document shows how to protect a static MS-PW against S-PE failure by extending RFC 6870 so it also applies to statically provisioned MS-PWs (and PWs in general) πŸ¦‹.

This document also has an OPTIONAL alternative approach based on MPLS-TP Linear Protection. That approach, which is described in Appendix A, MUST be identically provisioned in the PE endpoints for the protected MS-PW before it can be used. Check Appendix A for more details on this alternative 🧐.

This document is different from [PW-REDUNDANCY]. This one gives end-to-end resiliency for static MS-PWs, whereas [PW-REDUNDANCY] gives resiliency at intermediate S-PEs AND resiliency for both dynamically signaled and static MS-PWs 🌈.

PWs based on the Layer 2 Tunneling Protocol Version 3 (L2TPv3) are outside the scope of this document πŸ™…β€β™€οΈ.

1.1. Requirements Language πŸŽ€

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 [RFC2119]. These are the BCP 14 key words, so read them carefully 🫢.

2. Extension to RFC 6870 to Protect Statically Provisioned SS-PWs and MS-PWs πŸ’–

Section 3.2.3 of RFC 6718 and Appendix A.5 of RFC 6870 explain how to use redundant MS-PWs to protect an MS-PW against S-PE failure when the Customer Edge (CE) is singly homed. They use the following network model from RFC 6718 πŸ—ΊοΈ:

       Native   |<----------- Pseudowires ----------->|  Native
       Service  |                                     |  Service
        (AC)    |     |<-PSN1-->|     |<-PSN2-->|     |  (AC)
          |     V     V         V     V         V     V   |
          |     +-----+         +-----+         +-----+   |
   +----+ |     |T-PE1|=========|S-PE1|=========|T-PE2|   |   +----+
   |    |-------|......PW1-Seg1.......|.PW1-Seg2......|-------|    |
   | CE1|       |     |=========|     |=========|     |       | CE2|
   |    |       +-----+         +-----+         +-----+       |    |
   +----+        |.||.|                          |.||.|       +----+
                 |.||.|         +-----+          |.||.|
                 |.||.|=========|     |========== .||.|
                 |.||...PW2-Seg1......|.PW2-Seg2...||.|
                 |.| ===========|S-PE2|============ |.|
                 |.|            +-----+             |.|
                 |.|============+-----+============= .|
                 |.....PW3-Seg1.|     | PW3-Seg2......|
                  ==============|S-PE3|===============
                                |     |
                                +-----+

              Figure 1: Single-Homed CE with Redundant MS-PWs

In this figure, Customer Edge Router 1 (CE1) connects to T-PE1, and CE2 connects to T-PE2 through Attachment Circuits (ACs) πŸ”Œ. There are three MS-PWs: PW1 is switched at S-PE1, PW2 is switched at S-PE2, and PW3 is switched at S-PE3 🌟. This setup gives you N:1 protection against S-PE failure for the part of the emulated service's path from T-PE1 to T-PE2 πŸ¦‹.

The procedures in RFCs 6718 and 6870 use LDP-based PW status signaling. That's how they signal the state of the primary MS-PW being protected, and the order in which the redundant MS-PW(s) should be used to protect the primary MS-PW if it fails πŸ“Ά. These procedures use info carried in the PW Status TLV, which for dynamically signaled PWs is carried by LDP πŸ’Œ.

But statically provisioned PWs (SS-PWs or MS-PWs) don't use LDP for setup and signaling. Instead, network management systems or other means provision them at each T-PE and S-PE along their paths πŸ› οΈ. They also don't use LDP for status signaling. They use the procedures defined in RFC 6478 [RFC6478] for status signaling, via the PW Operations, Administration, and Maintenance (OAM) message over the PW Associated Channel Header (ACH) πŸ“¨. The PW Status TLV carried by this status signaling is the same as the PW Status TLV carried by LDP-based status signaling, including the identical PW Status Codes 🧩.

Sections 6 and 7 of RFC 6870 describe how to manage a primary PW and its secondary PW(s) so you have resiliency if the primary PW fails πŸ›Ÿ. They use status codes sent between the endpoint T-PEs in the PW Status TLV over LDP. For this management to work on statically provisioned PWs, the PW status signaling defined in RFC 6478 MUST be used for the primary and secondary PWs πŸ”₯. When that's the case, the endpoint T-PEs can use the PW status signaling from RFC 6478 in place of LDP-based status signaling, so the status-signaling-based procedures in RFC 6870 work exactly the same as they do with LDP-based status signaling πŸ™Œ. Heads up though: the optional S-PE Bypass Mode defined in Section 5.5 of RFC 6478 can NOT be used, because it needs LDP signaling 🚫.


5.1. Normative References

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

[RFC6378]  Weingarten, Y., Ed., Bryant, S., Osborne, E., Sprecher,
           N., and A. Fulignoli, Ed., "MPLS Transport Profile (MPLS-
           TP) Linear Protection", RFC 6378, DOI 10.17487/RFC6378,
           October 2011, <http://www.rfc-editor.org/info/rfc6378>.

[RFC6478]  Martini, L., Swallow, G., Heron, G., and M. Bocci,
           "Pseudowire Status for Static Pseudowires", RFC 6478,
           DOI 10.17487/RFC6478, May 2012,
           <http://www.rfc-editor.org/info/rfc6478>.

[RFC6870]  Muley, P., Ed. and M. Aissaoui, Ed., "Pseudowire
           Preferential Forwarding Status Bit", RFC 6870,
           DOI 10.17487/RFC6870, February 2013,
           <http://www.rfc-editor.org/info/rfc6870>.

[RFC7271]  Ryoo, J., Ed., Gray, E., Ed., van Helvoort, H.,
           D'Alessandro, A., Cheung, T., and E. Osborne, "MPLS
           Transport Profile (MPLS-TP) Linear Protection to Match the
           Operational Expectations of Synchronous Digital Hierarchy,
           Optical Transport Network, and Ethernet Transport Network
           Operators", RFC 7271, DOI 10.17487/RFC7271, June 2014,
           <http://www.rfc-editor.org/info/rfc7271>.

[RFC7324]  Osborne, E., "Updates to MPLS Transport Profile Linear
           Protection", RFC 7324, DOI 10.17487/RFC7324, July 2014,
           <http://www.rfc-editor.org/info/rfc7324>.

5.2. Informative References

[PW-REDUNDANCY]
           Dong, J. and H. Wang, "Pseudowire Redundancy on S-PE",
           Work in Progress, draft-ietf-pals-redundancy-spe-02,
           August 2015.

[RFC5659]  Bocci, M. and S. Bryant, "An Architecture for Multi-
           Segment Pseudowire Emulation Edge-to-Edge", RFC 5659,
           DOI 10.17487/RFC5659, October 2009,
           <http://www.rfc-editor.org/info/rfc5659>.

[RFC6718]  Muley, P., Aissaoui, M., and M. Bocci, "Pseudowire
           Redundancy", RFC 6718, DOI 10.17487/RFC6718, August 2012,
           <http://www.rfc-editor.org/info/rfc6718>.

Appendix A. Optional Linear Protection Approach ✨

A.1. Introduction

Okay so, in "MPLS Transport Profile (MPLS-TP) Linear Protection" [RFC6378], plus its later updates "MPLS Transport Profile (MPLS-TP) Linear Protection to Match the Operational Expectations of Synchronous Digital Hierarchy, Optical Transport Network, and Ethernet Transport Network Operators" [RFC7271] and "Updates to MPLS Transport Profile Linear Protection" [RFC7324], the Protection State Coordination (PSC) protocol was only defined for MPLS LSPs. 😀

This appendix extends those RFCs so they also work for PWs (SS-PW and MS-PW). It's especially useful for end-to-end static provisioned MS-PWs running over MPLS-TP, where tunnel protection alone cannot be relied upon for end-to-end protection of PWs against S-PE failure. It also gives you a uniform operational approach for protection at the LSP and PW layers, which makes management integration way easier for networks that already use the approach in RFCs 6378, 7271, and 7324. Literally a glow-up πŸ¦‹βœ¨

The protection architectures are the ones defined in [RFC6378]. For this appendix, we define the protection domain of a point-to-point PW as consisting of two terminating PEs (T-PEs) and the transport paths that connect them (see Figure 2). Picture it like this πŸ‘‡

              +-----+ //=======================\\ +-----+
              |T-PE1|//     Working Path        \\|T-PE2|
              |    /|                             |\    |
              |  ?< |                             | >?  |
              |    \|                             |/    |
              |     |\\    Protection Path      //|     |
              +-----+ \\=======================// +-----+

                  |<-------Protection Domain------->|

                     Figure 2: Protection Domain

This Appendix is an OPTIONAL alternative approach to the one in Section 2. For interoperability, all implementations MUST include the approach in Section 2, even if this alternative approach is used. πŸ™ˆ The operational considerations in Section 3 still apply when this approach is used, so operational care must be taken to make sure the endpoint T-PEs are identically provisioned regarding the use of this document. Not me saying "identically provisioned" like it's a vibe check πŸ’…

A.2. Encapsulation of the PSC Protocol for Pseudowires

The PSC protocol can be used to protect against defects on any LSP (segment, link, or path). For an MS-PW, the PSC protocol can also protect against failed intermediate nodes (S-PE). Linear protection protects an LSP or PW end-to-end, and if a failure is detected, it switches traffic over to another (redundant) set of resources. πŸ”₯

Obviously, the protected entity doesn't have to be the same type as the protecting entity. For example, you can protect a link with a path. Likewise, you can protect an SS-PW with an MS-PW, and vice versa. Mix and match, bestie πŸŽ€

From a PSC protocol point of view, you can think of an SS-PW as a single-hop LSP and an MS-PW as a multiple-hop LSP. So this gives end-to-end protection for the SS-PW or MS-PW. ✨ The Generic Associated Channel (G-Ach) carrying the PSC protocol information is placed in the label stack directly beneath the PW identifier. The PSC protocol then works exactly as specified in RFCs 6378, 7271, and 7324. Iconic, honestly πŸ‘‘

Acknowledgements

The authors would like to thank Matthew Bocci, Yaakov Stein, David Sinicrope, Sasha Vainshtein, and Italo Busi for their comments on this document. 🫢

Figure 1 and the explanatory paragraph following the figure were taken from RFC 6718. Figure 2 was adapted from RFC 6378. 🌸

Authors' Addresses

Andrew G. Malis (editor)
Huawei Technologies Co., Ltd.

Email: agmalis@gmail.com


Loa Andersson
Huawei Technologies Co., Ltd.

Email: loa@mail01.huawei.com


Huub van Helvoort
Hai Gaoming BV

Email: huubatwork@gmail.com


Jongyoon Shin
SK Telecom

Email: jongyoon.shin@sk.com


Lei Wang
China Mobile

Email: wangleiyj@chinamobile.com


Alessandro D'Alessandro
Telecom Italia

Email: alessandro.dalessandro@telecomitalia.it
πŸ“¦ where this page comes from