RFC 7025

Requirements for GMPLS Applications of PCE

πŸ“… published September 2013, from ietf

Requirements for GMPLS Applications of PCE ✨

Okay bestie, this one is an Informational RFC πŸ¦‹ (so it's not a standard, it's more of a "here's what we need and why" vibe). It's RFC 7025, published in September 2013, and it's part of the ISSN series 2070-1721 πŸŽ€. The authors are T. Otani and K. Ogaki (KDDI), D. Caviglia (Ericsson), F. Zhang (Huawei Technologies), and C. Margaria (Coriant R&D GmbH) πŸ‘‘. The header doesn't list any RFCs it obsoletes or updates, so it's not replacing or changing anybody else's work πŸ’œ.

Abstract 🌸

Okay so the PCE (Path Computation Element) WG's first big era was mostly about MPLS πŸ’…. As the next step, this document lays out the functional requirements for GMPLS applications of PCE 🧚.

Status of This Memo πŸ“œ

This document is not an Internet Standards Track specification, it's published just for informational purposes ✨.

It's a product of the Internet Engineering Task Force (IETF) and it represents the consensus of the IETF community 🫢. It got public review and was approved for publication by the Internet Engineering Steering Group (IESG). Not every document the IESG approves is a candidate for any level of Internet Standard, so check out Section 2 of RFC 5741 if you want the full tea 🍡.

If you want the current status, any errata, or a way to send feedback, head over to http://www.rfc-editor.org/info/rfc7025 πŸ’–.

Copyright (c) 2013 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 they stand on the date this document was published. Please actually read these, bestie, because they explain your rights and restrictions for this document πŸ™ˆ. Code Components pulled out of this document must include Simplified BSD License text, as described in Section 4.e of the Trust Legal Provisions, and they come with no warranty, as described in the Simplified BSD License βš–οΈ.

Table of Contents 🧾

   1.  Introduction . . . . . . . . . . . . . . . . . . . . . . . . .  2
   2.  GMPLS Applications of PCE  . . . . . . . . . . . . . . . . . .  3
     2.1.  Path Computation in GMPLS Networks . . . . . . . . . . . .  3
     2.2.  Unnumbered Interface . . . . . . . . . . . . . . . . . . .  5
     2.3.  Asymmetric Bandwidth Path Computation  . . . . . . . . . .  5
   3.  Requirements for GMPLS Applications of PCE . . . . . . . . . .  6
     3.1.  Requirements on Path Computation Request . . . . . . . . .  6
     3.2.  Requirements on Path Computation Reply . . . . . . . . . .  7
     3.3.  GMPLS PCE Management . . . . . . . . . . . . . . . . . . .  8
   4.  Security Considerations  . . . . . . . . . . . . . . . . . . .  8
   5.  Acknowledgement  . . . . . . . . . . . . . . . . . . . . . . .  9
   6.  References . . . . . . . . . . . . . . . . . . . . . . . . . .  9
     6.1.  Normative References . . . . . . . . . . . . . . . . . . .  9
     6.2.  Informative References . . . . . . . . . . . . . . . . . . 11

1. Introduction πŸ¦‹

Okay so the PCE (Path Computation Element) WG's first big glow-up focused mainly on solving the path computation problem, either within one domain or across different domains in MPLS networks πŸ’…. Just like MPLS, service providers (SPs) also came up with path computation requirements for GMPLS-controlled networks [RFC3945] 🌈. Those networks run stuff like Wavelength Division Multiplexing (WDM), Time Division Multiplexing (TDM), or Ethernet ✨.

[RFC4655] and [RFC4657] talk about the framework and requirements for PCE on both packet MPLS networks and GMPLS-controlled networks πŸ“š. This document is the sequel to those, giving considerations for GMPLS applications in both intradomain and interdomain networking environments, and listing a set of requirements for the extended definition of PCE-related protocols πŸ’œ.

Note that the requirements for interlayer and inter-area traffic engineering (TE) described in [RFC6457] and [RFC4927] are outside the scope of this document πŸ™ˆ.

Constrained Shortest Path First (CSPF) computation, whether within a domain or across domains, for signaling GMPLS Label Switched Paths (LSPs) is usually more stringent than it is for MPLS TE LSPs [RFC4216] 😭. That's because extra constraints, e.g., interface switching capability, link encoding, link protection capability, Shared Risk Link Group (SRLG) [RFC4202], and so forth, need to be considered to set up GMPLS LSPs πŸ’€. The GMPLS signaling protocol [RFC3473] is designed with bidirectionality, switching type, encoding type, and protection attributes of the TE links spanned by the path in mind, plus the LSP encoding and switching type of the endpoints, all handled appropriately πŸ”₯.

This document provides requirements for GMPLS applications of PCE in support of GMPLS path computation, covering both intradomain and interdomain environments 🫢.

2. GMPLS Applications of PCE 🌸

2.1. Path Computation in GMPLS Networks πŸ“

Figure 1 shows a model GMPLS network made of an ingress link, a transit link, and an egress link 🧚. We'll use this model to work out consistent guidelines for GMPLS path computation πŸ’…. Each link at each interface has its own switching capability, encoding type, and bandwidth ✨.

             Ingress             Transit             Egress
   +-----+   link1-2   +-----+   link2-3   +-----+   link3-4   +-----+
   |Node1|------------>|Node2|------------>|Node3|------------>|Node4|
   |     |<------------|     |<------------|     |<------------|     |
   +-----+   link2-1   +-----+   link3-2   +-----+   link4-3   +-----+

               Figure 1: Path Computation in GMPLS Networks

To keep things simple, the following basic assumptions are made when the LSP is created πŸŽ€:

  1. Switching capabilities of outgoing links from the ingress and egress nodes (link1-2 and link4-3 in Figure 1) are consistent with each other.
  2. Switching capabilities of all transit links, including incoming links to the ingress and egress nodes (link2-1 and link3-4), are consistent with the switching type of an LSP to be created.
  3. Encoding types of all transit links are consistent with the encoding type of an LSP to be created.

GMPLS-controlled networks (e.g., GMPLS-based TDM networks) are usually responsible for transmitting data for the client layer 🌈. These networks can offer different kinds of connections for customer services, depending on the service bandwidth requests they get πŸ’–.

This section covers the applications and the extra requirements for applying PCE to GMPLS-based TDM networks πŸ¦‹. To keep the explanation simple, the document only walks through the Synchronous Digital Hierarchy (SDH) networks example (see Figure 2) πŸ’œ. Synchronous Optical Network (SONET) or Optical Transport Network (OTN) scenarios are similar 🫢.

                    N1                    N2
   +-----+       +------+              +------+
   |     |-------|      |--------------|      |       +-------+
   +-----+       |      |---|          |      |       |       |
      A1         +------+   |          +------+       |       |
                    |       |             |           +-------+
                    |       |             |              PCE
                    |       |             |
                    |      +------+       |
                    |      |      |       |
                    |      |      |-----| |
                    |      +------+     | |
                    |         N5        | |
                    |                   | |
                 +------+              +------+        +-----+
                 |      |              |      |        |     |
                 |      |--------------|      |--------|     |
                 +------+              +------+        +-----+
                    N3                    N4              A2

               Figure 2: A Simple TDM (SDH) Network

Figure 2 shows a simple TDM (SDH) network topology 🧾. N1, N2, N3, N4, and N5 are all SDH switches, and A1 and A2 are client devices (e.g., Ethernet switches) πŸ”₯. Imagine one Ethernet service with 100 Mbit/s bandwidth is required from A1 to A2 over this network 😭. The client Ethernet service could be provided by a Virtual Container 4 (VC-4) container from N1 to N4 πŸ’…. It could also be provided by three concatenated VC-3s (contiguous or virtual concatenation) from N1 to N4 ✨.

In this scenario, when the ingress node (e.g., N1) gets a client service transmitting request, the type of containers (one VC-4 or three concatenated VC-3s) could be decided by the PCC (Path Computation Client), e.g., N1 or Network Management System (NMS) 🌸. It could also be decided automatically by the PCE based on policy [RFC5394] 🧚. If the PCC makes that call, then the PCC should be capable of specifying the ingress node and egress node, signal type, the type of the concatenation, and the number of the concatenation in a PCReq (Path Computation Request) message πŸ“š. The PCE should consider those parameters during path computation πŸ’œ. The route information (co-routing or diverse routing) should be specified in a PCRep (Path Computation Reply) message if path computation succeeds 🫢.

As described above, the PCC should be capable of specifying the TE attributes defined in the next section, and the PCE should compute a path accordingly πŸŽ€.

Where a GMPLS network is made up of interdomain (e.g., inter-AS or inter-area) GMPLS-controlled networks, the path computation requirements follow [RFC5376] and [RFC4726] πŸ‘‘.

2.2. Unnumbered Interface 🌈

GMPLS supports unnumbered interface IDs as defined in [RFC3477], which means the endpoints of the path may be unnumbered πŸ’–. It should also be possible to request a path made of a mix of numbered and unnumbered links, or a P2MP (Point-to-Multipoint) path with different types of endpoints πŸ¦‹. So the PCC should be capable of indicating the unnumbered interface ID of the endpoints in the PCReq message 🧚.

2.3. Asymmetric Bandwidth Path Computation πŸ’œ

Per [RFC6387], GMPLS signaling can be used to set up an asymmetric bandwidth bidirectional LSP 🌸. If a PCE is responsible for path computation, it should be capable of computing a path for the bidirectional LSP with asymmetric bandwidth 🫢. That means the PCC should be able to indicate the asymmetric bandwidth requirements in the forward and reverse directions in the PCReq message πŸ’….

3. Requirements for GMPLS Applications of PCE ✨

3.1. Requirements on Path Computation Request

okay so, for path computation in GMPLS-controlled networks (the stuff we covered in Section 2 🫢), the PCE should appropriately consider the GMPLS TE attributes listed below once a PCC or another PCE asks for a path computation. ✨ The path calculation request message from the PCC or the PCE must contain the information that specifies those attributes. According to [RFC5440], [PCE-WSON-REQ], and RSVP procedures such as explicit label control (ELC), the extra attributes are these:

  1. Switching capability/type: as defined in [RFC3471], [RFC4203], and all current and future values. πŸ’–
  2. Encoding type: as defined in [RFC3471], [RFC4203], and all current and future values. πŸŽ€
  3. Signal type: as defined in [RFC4606] and all current and future values. πŸ¦‹
  4. Concatenation type: in SDH/SONET and OTN there are two concatenation modes, and they are not the same vibe at all πŸ’…. Contiguous concatenation requires co-routing for each member signal, and every interface along the path has to support this capability. Virtual concatenation allows diverse routing for member signals, and only the ingress and egress interfaces have to support this capability. For virtual concatenation, it may also specify co-routing or diverse routing. See [RFC4606] and [RFC4328] for concatenation information. 🧚
  5. Concatenation number: this one tells you how many signals are requested to be contiguously or virtually concatenated. Also see [RFC4606] and [RFC4328]. 🌸
  6. Technology-specific label(s): as defined in [RFC4606], [RFC6060], [RFC6002], or [RFC6205]. 🌈
  7. End-to-End (E2E) path protection type: as defined in [RFC4872], e.g., 1+1 protection, 1:1 protection, (pre-planned) rerouting, etc. πŸ›‘οΈ
  8. Administrative group: as defined in [RFC3630]. πŸ‘‘
  9. Link protection type: as defined in [RFC4203]. ⭐
  10. Support for unnumbered interfaces: as defined in [RFC3477]. πŸ“
  11. Support for asymmetric bandwidth requests: as defined in [RFC6387]. πŸ’œ
  12. Support for explicit label control during the path computation. 🫢
  13. Support of label restrictions in the requests/responses, similar to RSVP-TE ERO (Explicit Route Object) and XRO (Exclude Route Object), as defined in [RFC3473] and [RFC4874]. This is basically the same energy as the RSVP-TE ERO and XRO objects, just in PCEP form ✨

3.2. Requirements on Path Computation Reply

ok so as we said above, a PCE should compute the path that satisfies the constraints in the PCReq message 🎯. After that, the PCE should send a PCRep message, including the computation result, back to the PCC. For a Path Computation Reply message (PCRep) in GMPLS networks, there are some extra requirements too. The PCEP (PCE communication protocol) PCRep message must be extended to meet the following requirements. πŸ’…

  1. Path computation with concatenation

So when path computation involves concatenation and a PCE gets a PCReq message with the concatenation constraints from Section 3.1, the PCE should compute a path to match πŸ’–.

For contiguous concatenation, you need a single route, and every interface along that route should support contiguous concatenation capability. So the PCE should compute the path using each interface's contiguous concatenation capability, and the response should carry only one ERO with the route information. πŸ¦‹

For virtual concatenation, only the ingress and egress interfaces need to support virtual concatenation capability, and the member signals can take different routes. Because of that, the response may need multiple EROs. Each ERO can represent the route of one or several member signals. When one ERO represents multiple member signals, the number has to be specified. 🌈

  1. Label constraint

If a PCC doesn't specify the exact label(s) when it asks for a label-restricted path, and the PCE can do both the route computation and the label assignment computation, then the PCE needs to be able to specify the label of the path in a PCRep message πŸŽ€.

Wavelength restriction is the classic example of a label restriction. More generally, label switching and selection constraints may apply in GMPLS-controlled networks. A PCC may ask a PCE to take label constraints into account, and then the PCE returns an ERO containing the label or set of labels that fulfill the PCC's request. 🧚

  1. Roles of the routes

When a PCC specifies the protection type of an LSP, the PCE should compute the working route and the corresponding protection route(s). That means the PCRep should allow you to tell the working (nominal) and the protection routes apart πŸ”₯. Based on those routes, the RSVP-TE procedure can create both the working and the protection LSPs properly, for example with the ASSOCIATION object [RFC6689]. πŸ‘‘

3.3. GMPLS PCE Management

this document doesn't change any of the management or operational details for networks that use PCE. (Please refer to [RFC4655] for manageability considerations for a PCE-based architecture.) πŸ™ˆ That said, it does propose a few new PCEP objects and data so PCE can integrate better with GMPLS networks ✨. Those protocol elements will need to be visible in any management tools that apply to the PCE, PCC, and PCEP. That includes, but isn't limited to, adding the right objects to the existing PCE MIB modules that are used for modeling and monitoring PCEP deployments [PCEP-MIB]. For ideas about which objects are needed, the relevant GMPLS extensions in GMPLS-TE-STD-MIB [RFC4802] are a good guide πŸ’œ.

4. Security Considerations

🚨 Serious security moment, bestie: PCEP extensions to support GMPLS should be considered under the same security as current PCE work, and this extension will not change the underlying security issues. Section 10 of [RFC5440] describes the list of security considerations in PCEP. When [RFC5440] was published, TCP Authentication Option (TCP-AO) hadn't been fully specified for securing the TCP connections underneath PCEP sessions. TCP-AO [RFC5925] is now published, and PCEP implementations should fully support TCP-AO according to [RFC6952]. πŸ”

5. Acknowledgement

the authors want to thank Ramon Casellas, Julien Meuric, Adrian Farrel, Yaron Sheffer, and Shuichi Okamoto for their comments πŸ«ΆπŸ’–.

6. References

6.1. Normative References

[RFC3471]  Berger, L., "Generalized Multi-Protocol Label Switching
           (GMPLS) Signaling Functional Description", RFC 3471,
           January 2003.

[RFC3473]  Berger, L., "Generalized Multi-Protocol Label Switching
           (GMPLS) Signaling Resource ReserVation Protocol-Traffic
           Engineering (RSVP-TE) Extensions", RFC 3473, January 2003.

[RFC3477]  Kompella, K. and Y. Rekhter, "Signalling Unnumbered Links
           in Resource ReSerVation Protocol - Traffic Engineering
           (RSVP-TE)", RFC 3477, January 2003.

[RFC3630]  Katz, D., Kompella, K., and D. Yeung, "Traffic Engineering
           (TE) Extensions to OSPF Version 2", RFC 3630,
           September 2003.

[RFC3945]  Mannie, E., "Generalized Multi-Protocol Label Switching
           (GMPLS) Architecture", RFC 3945, October 2004.

[RFC4202]  Kompella, K. and Y. Rekhter, "Routing Extensions in
           Support of Generalized Multi-Protocol Label Switching
           (GMPLS)", RFC 4202, October 2005.

[RFC4203]  Kompella, K. and Y. Rekhter, "OSPF Extensions in Support
           of Generalized Multi-Protocol Label Switching (GMPLS)",
           RFC 4203, October 2005.

[RFC4328]  Papadimitriou, D., "Generalized Multi-Protocol Label
           Switching (GMPLS) Signaling Extensions for G.709 Optical
           Transport Networks Control", RFC 4328, January 2006.

[RFC4606]  Mannie, E. and D. Papadimitriou, "Generalized Multi-
           Protocol Label Switching (GMPLS) Extensions for
           Synchronous Optical Network (SONET) and Synchronous
           Digital Hierarchy (SDH) Control", RFC 4606, August 2006.

[RFC4802]  Nadeau, T. and A. Farrel, "Generalized Multiprotocol Label
           Switching (GMPLS) Traffic Engineering Management
           Information Base", RFC 4802, February 2007.

[RFC4872]  Lang, J., Rekhter, Y., and D. Papadimitriou, "RSVP-TE
           Extensions in Support of End-to-End Generalized Multi-
           Protocol Label Switching (GMPLS) Recovery", RFC 4872,
           May 2007.

[RFC4927]  Le Roux, J., "Path Computation Element Communication
           Protocol (PCECP) Specific Requirements for Inter-Area MPLS
           and GMPLS Traffic Engineering", RFC 4927, June 2007.

[RFC5376]  Bitar, N., Zhang, R., and K. Kumaki, "Inter-AS
           Requirements for the Path Computation Element
           Communication Protocol (PCECP)", RFC 5376, November 2008.

[RFC5440]  Vasseur, JP. and JL. Le Roux, "Path Computation Element
           (PCE) Communication Protocol (PCEP)", RFC 5440,
           March 2009.

[RFC6002]  Berger, L. and D. Fedyk, "Generalized MPLS (GMPLS) Data
           Channel Switching Capable (DCSC) and Channel Set Label
           Extensions", RFC 6002, October 2010.

[RFC6060]  Fedyk, D., Shah, H., Bitar, N., and A. Takacs,
           "Generalized Multiprotocol Label Switching (GMPLS) Control
           of Ethernet Provider Backbone Traffic Engineering
           (PBB-TE)", RFC 6060, March 2011.

[RFC6205]  Otani, T. and D. Li, "Generalized Labels for Lambda-
           Switch-Capable (LSC) Label Switching Routers", RFC 6205,
           March 2011.

[RFC6387]  Takacs, A., Berger, L., Caviglia, D., Fedyk, D., and J.
           Meuric, "GMPLS Asymmetric Bandwidth Bidirectional Label
           Switched Paths (LSPs)", RFC 6387, September 2011.

[RFC6689]  Berger, L., "Usage of the RSVP ASSOCIATION Object",
           RFC 6689, July 2012.

6.2. Informative References πŸ“š

okay so these are the "extra credit" refs, bestie πŸ€“ they're not required to implement the spec, but they give the backstory on the PCE stuff. no cap, the reading list is kinda iconic πŸ’…

[PCE-WSON-REQ]
           Lee, Y., Bernstein, G., Martensson, J., Takeda, T.,
           Tsuritani, T., and O. Dios, "PCEP Requirements for WSON
           Routing and Wavelength Assignment", Work in Progress,
           June 2013.

[PCEP-MIB] Koushik, K., Stephan, E., Zhao, Q., King, D., and J.
           Hardwick, "PCE communication protocol (PCEP) Management
           Information Base", Work in Progress, July 2013.

[RFC4216]  Zhang, R. and J. Vasseur, "MPLS Inter-Autonomous System
           (AS) Traffic Engineering (TE) Requirements", RFC 4216,
           November 2005.

[RFC4655]  Farrel, A., Vasseur, J., and J. Ash, "A Path Computation
           Element (PCE)-Based Architecture", RFC 4655, August 2006.

[RFC4657]  Ash, J. and J. Le Roux, "Path Computation Element (PCE)
           Communication Protocol Generic Requirements", RFC 4657,
           September 2006.

[RFC4726]  Farrel, A., Vasseur, J., and A. Ayyangar, "A Framework for
           Inter-Domain Multiprotocol Label Switching Traffic
           Engineering", RFC 4726, November 2006.

[RFC4874]  Lee, CY., Farrel, A., and S. De Cnodder, "Exclude Routes -
           Extension to Resource ReserVation Protocol-Traffic
           Engineering (RSVP-TE)", RFC 4874, April 2007.

[RFC5394]  Bryskin, I., Papadimitriou, D., Berger, L., and J. Ash,
           "Policy-Enabled Path Computation Framework", RFC 5394,
           December 2008.

[RFC5925]  Touch, J., Mankin, A., and R. Bonica, "The TCP
           Authentication Option", RFC 5925, June 2010.

[RFC6457]  Takeda, T. and A. Farrel, "PCC-PCE Communication and PCE
           Discovery Requirements for Inter-Layer Traffic
           Engineering", RFC 6457, December 2011.

[RFC6952]  Jethanandani, M., Patel, K., and L. Zheng, "Analysis of
           BGP, LDP, PCEP, and MSDP Issues According to the Keying
           and Authentication for Routing Protocols (KARP) Design
           Guide", RFC 6952, May 2013.

Authors' Addresses 🫢

these are the people who wrote it, so you know who to slide into the DMs of πŸ’Œ (ngl they did amazing)

Tomohiro Otani
KDDI Corporation
2-3-2 Nishi-shinjuku
Shinjuku-ku, Tokyo
Japan
Phone: +81-(3) 3347-6006
EMail: tm-otani@kddi.com
Kenichi Ogaki
KDDI Corporation
3-10-10 Iidabashi
Chiyoda-ku, Tokyo
Japan
Phone: +81-(3) 6678-0284
EMail: ke-oogaki@kddi.com
Diego Caviglia
Ericsson
16153 Genova Cornigliano
Italy
Phone: +390106003736
EMail: diego.caviglia@ericsson.com
Fatai Zhang
Huawei Technologies Co., Ltd.
F3-5-B R&D Center, Huawei Base
Bantian, Longgang District, Shenzhen 518129
P.R. China
Phone: +86-755-28972912
EMail: zhangfatai@huawei.com
Cyril Margaria
Coriant R&D GmbH
St Martin Strasse 76
Munich  81541
Germany
Phone: +49 89 5159 16934
EMail: cyril.margaria@coriant.com

that's the whole thing, bestie πŸ¦‹βœ¨ the PCE crew really said "we're putting GMPLS on the map" and honestly? iconic πŸ‘‘

πŸ“¦ where this page comes from