RFC 6457
PCC-PCE Communication and PCE Discovery Requirements for Inter-Layer Traffic Engineering
RFC 6457 π PCC-PCE Communication and PCE Discovery Requirements for Inter-Layer Traffic Engineering
Okay bestie, let's get into RFC 6457 π This one is an IETF document (Request for Comments: 6457) called PCC-PCE Communication and PCE Discovery Requirements for Inter-Layer Traffic Engineering. It was written by T. Takeda, Ed. from NTT and A. Farrel from Old Dog Consulting. It's Informational, not a standards track thing, and it was published in December 2011 with ISSN 2070-1721. Its header doesn't list anything it obsoletes or updates, so it's a pretty chill standalone doc π«Ά
Here's the table of contents, in case you want to jump around π§
1. Introduction ....................................................2
1.1. Terminology ................................................3
2. Motivation for PCE-Based Inter-Layer Path Computation ...........4
3. PCC-PCE Communication and Discovery Requirements for
Inter-Layer .....................................................4
3.1. PCC-PCE Communication ......................................5
3.1.1. Control of Inter-Layer Path Computation .............5
3.1.2. Control of the Type of Path to Be Computed ..........5
3.1.3. Communication of Inter-Layer Constraints ............6
3.1.4. Adaptation Capability ...............................7
3.1.5. Cooperation between PCEs ............................7
3.1.6. Inter-Layer Diverse Paths ...........................7
3.2. Capabilities Advertisements for PCE Discovery ..............7
3.3. Supported Network Models ...................................8
4. Manageability Considerations ....................................8
4.1. Control of Function and Policy .............................8
4.2. Information and Data Models ................................8
4.3. Liveness Detection and Monitoring ..........................8
4.4. Verifying Correct Operation ................................9
4.5. Requirements on Other Protocols and Functional Components ..9
4.6. Impact on Network Operation ................................9
5. Security Considerations ........................................10
6. Acknowledgments ................................................10
7. References .....................................................10
7.1. Normative References ......................................10
7.2. Informative References ....................................10
Abstract
The Path Computation Element (PCE) is the thing that does path computation to help with traffic engineering in networks run by Multi-Protocol Label Switching (MPLS) and Generalized MPLS (GMPLS) πΈ
Networks running MPLS and GMPLS can be built out of layers of client and server networks, and it's really good for overall efficiency to do end-to-end traffic engineering across all of those layers. PCE is a candidate solution for that π¦
The generic requirements for a communication protocol between Path Computation Clients (PCCs) and PCEs are in RFC 4657, "Path Computation Element (PCE) Communication Protocol Generic Requirements". The generic requirements for a PCE discovery protocol are in RFC 4674, "Requirements for Path Computation Element (PCE) Discovery".
This document builds on those generic requirements and gets more detailed, with sets of PCC-PCE communication protocol requirements and PCE discovery protocol requirements for inter-layer traffic engineering π
Status of This Memo
This document is not an Internet Standards Track specification; it is published for informational purposes.
This document is a product of the Internet Engineering Task Force (IETF). It represents the consensus of the IETF community. It has received public review and has been approved for publication by the Internet Engineering Steering Group (IESG). Not all documents approved by the IESG are a candidate for any level of Internet Standard; see Section 2 of RFC 5741.
Information about the current status of this document, any errata, and how to provide feedback on it may be obtained at http://www.rfc-editor.org/info/rfc6457. β¨
Copyright Notice
Copyright (c) 2011 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) 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. π
1. Introduction β¨
The Path Computation Element (PCE) defined in [RFC4655] is an entity that is capable of computing a network path or route based on a network graph and applying computational constraints. π§
A network may have multiple layers. Those layers can show up in a few ways: separate technologies (like Packet Switch Capable (PSC), Time Division Multiplex (TDM), and lambda switch capable (LSC)) split into GMPLS regions [RFC3945]; separate data plane switching granularity levels (like PSC-1 and PSC-2, or Virtual Circuit 4 (VC4) and VC12) split into GMPLS layers [RFC5212]; or a client/server split in networking roles, like commercial or administrative separation between client and server networks. In this multi-layer network, Label Switched Paths (LSPs) in lower layers are used to carry upper-layer LSPs. The network topology formed by lower-layer LSPs and advertised to the higher layer is called a "Virtual Network Topology (VNT)" [RFC5212]. π
In layered networks running Multiprotocol Label Switching Traffic Engineering (MPLS-TE) and Generalized MPLS (GMPLS), it's important to have mechanisms for global optimization of network resources. That means taking every layer into account, instead of optimizing resource use at each layer on its own. Doing that gets you better network efficiency π This is what we call "inter-layer traffic engineering." It includes mechanisms for computing end-to-end paths across layers (known as "inter-layer path computation"), and mechanisms for controlling and managing the VNT by setting up and releasing LSPs in the lower layers [RFC5212]. π
Inter-layer traffic engineering is in scope for the PCE architecture [RFC4655], and PCE can be a suitable mechanism for solving inter-layer path computation problems. How the PCE-based path computation architecture applies to inter-layer traffic engineering is described in [RFC5623]. π
This document presents sets of requirements for communication between Path Computation Clients (PCCs) and PCEs using the PCE Communication Protocol (PCEP), and for PCE discovery, for inter-layer traffic engineering. It supplements the generic requirements documented in [RFC4657], [RFC4674], and the framework provided in [RFC5623]. π¦
1.1. Terminology
Here are the terms the document uses:
- LSP: Label Switched Path.
- LSR: Label Switching Router.
- PCC: A Path Computation Client is any client entity (component, application or network node) requesting a path computation to be performed by a Path Computation Element.
- PCE: A Path Computation Element is an entity that is capable of computing a network path or route based on a network graph and applying computational constraints.
- PCEP: A PCE Communication Protocol is a protocol for communication between PCCs and PCEs.
Even though this requirements document is informational and not a protocol specification, the key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" are to be interpreted as described in RFC 2119 [RFC2119] for clarity of requirement specification. π
2. Motivation for PCE-Based Inter-Layer Path Computation π
[RFC4206] defines a way to signal an MPLS or a GMPLS LSP with an explicit route in a higher layer of a network. That route includes hops traversed by LSPs in the lower layers of the network. Computing end-to-end paths across layers is called "inter-layer path computation." πΈ
An LSR in the higher layer might not have information about the topology of the lower layers, especially in an overlay or augmented model. So it might not be able to compute an end-to-end path across layers. π
PCE-based inter-layer path computation means relying on one or more PCEs to compute an end-to-end path across layers. This could be a single PCE path computation, where the PCE has topology information about multiple layers and can directly compute an end-to-end path across all of them. Or it could be a multiple PCE computation, where each PCE in a set has information about the topology of one or more layers (but not all of them), and they work together to compute an end-to-end path. β¨
Picture a two-layer network. The higher layer is a packet-based IP/MPLS or GMPLS network, and the lower layer is a GMPLS-controlled optical network. An ingress LSR in the higher-layer network tries to set up an LSP to an egress LSR, also in the higher-layer network, across the lower-layer network, and it needs a path in the higher layer. But say there's no TE link between the border LSRs (the ones on the boundary between the higher-layer and lower-layer networks), and the ingress LSR has no topology visibility into the lower layer. If you apply a single-layer path computation to the higher layer, the path computation fails π Inter-layer path computation, on the other hand, can provide a route in the higher layer and suggest that a lower-layer LSP be set up between the border LSRs, looking at both layers as TE topologies. π§
More discussion of applying PCE to inter-layer path computation is in [RFC5623]. π¦
3. PCC-PCE Communication and Discovery Requirements for Inter-Layer Traffic Engineering π
This section adds requirements for the multi-layer TE problems that aren't covered in [RFC4657] or [RFC4674]. π
3.1. PCC-PCE Communication
PCEP MUST allow requests and replies for inter-layer path computation. π₯
This doesn't need any additional messages, but it does imply the following additional constraints to be added to PCEP. π
3.1.1. Control of Inter-Layer Path Computation
A request from a PCC to a PCE MUST support the inclusion of an optional indication of whether inter-layer path computation is allowed. If there's no such indication, the default is that inter-layer path computation is not allowed. π
3.1.2. Control of the Type of Path to Be Computed
okay so the PCE works out a path and sends it back to the PCC π€οΈ the PCC can then turn it into an Explicit Route Object (ERO) and use it for RSVP - Traffic Engineering (RSVP-TE) signaling to build a higher-layer or lower-layer LSP π there are two options here [RFC5623].
- Option 1: Mono-Layer Path. The PCE computes a "mono-layer" path, aka a path that only includes TE links from the same layer πΈ
- Option 2: Multi-Layer Path. The PCE computes a "multi-layer" path, aka a path that includes TE links from distinct layers [RFC4206] β¨
sometimes a PCC needs to be the one in charge of what kind of path comes back π like, it might know that signaling a multi-layer path just isn't possible, for tech or policy reasons, so it needs a mono-layer path. or it might just not want the layer border node running the show on path computation π so to make that kind of control possible, PCEP MUST allow the PCC to select the path types to be computed, and that may be returned, by choosing one or more from the following list:
- A mono-layer path that is specified by strict hop(s). The path may include virtual TE link(s).
- A mono-layer path that includes loose hop(s).
- A multi-layer path that can include the path (as strict or loose hops) of one or more lower-layer LSPs not yet established.
the path computation response from a PCE to a PCC MUST report the type of path computed π and if a multi-layer path comes back, PCEP MUST support including the path of the lower-layer LSPs that are going to be established as part of the end-to-end path π§
now here's the spicy part πΆοΈ if a response from a PCE to a PCC carries a mono-layer path that's specified by strict hops but has virtual TE link(s), or has loose hop(s), or carries a multi-layer path that can include the complete path of one or more lower-layer LSPs not yet established, then signaling the higher-layer LSP may trigger the establishment of the lower-layer LSPs (triggered signaling) π and triggered signaling may bump up the higher-layer connection setup latency. so the ingress LSR for the higher-layer LSP, or the PCC, needs to know whether or not triggered signaling is required π«Ά
a request from a PCC to a PCE MUST allow indicating whether or not triggered signaling is acceptable π
a response from a PCE to a PCC MUST allow indicating whether or not the computed path requires triggered signaling π¦
plot twist: a PCE may not be able to tell virtual TE links apart from regular TE links π so even if a PCC's request says triggered signaling is not acceptable, the PCE may still pick virtual TE links during path computation. therefore, when a network uses virtual TE links and the PCE can't tell them apart from regular TE links, a PCE MAY choose virtual TE links even if a request from a PCC to a PCE indicates triggered signaling is not acceptable π
also, iykyk: an ingress LSR of a higher-layer or lower-layer LSP can be present in multiple layers π so even when a mono-layer path is requested or supplied, PCEP MUST be able to indicate the required/provided path layer π
3.1.3. Communication of Inter-Layer Constraints
a request from a PCC to a PCE MUST support including constraints for a multi-layer path π this covers control over which network layers may, must, or must not be included in the computed path. that control can be expressed in terms of the switching types of the layer networks β¨
it might also be desirable to limit how many layer boundaries get crossed (that's the number of adaptations, in the sense used in [RFC5212], performed on the end-to-end path) πΈ so PCEP SHOULD include a constraint or objective function to minimize or cap the number of adaptations on a path, plus a mechanism to report that number when a path is supplied π
the path computation request MUST also allow different objective functions to be applied within different network layers π₯ for example, a path in a packet network might need to be optimized for least delay, using the IGP metric as a measure of delay, while the path in an underlying TDM network might be optimized for fewest hops. main character energy for each layer π
3.1.4. Adaptation Capability
the concept of adaptation here is the same one introduced in [RFC5212] π¦
It MUST be possible for the path computation request to indicate the desired adaptation function at the end points of the lower-layer LSP being computed π this is especially important where the ingress and egress LSR participate in more than one layer network but may not be capable of all of the associated adaptations π«Ά
3.1.5. Cooperation between PCEs
when each layer is in scope of a different PCE, and each PCE only has access to the topology information of its own layer, the PCEs of each layer need to cooperate to do inter-layer path computation π€ in that case, communication between PCEs is required for inter-layer path computation β¨ a PCE that behaves as a client is defined as a PCC [RFC4655] π
PCEP MUST allow requests and replies for multiple PCE inter-layer path computation π
3.1.6. Inter-Layer Diverse Paths
PCEP MUST allow for the computation of diverse inter-layer paths π a request from a PCC to a PCE MUST support including multiple path requests, with the desired level of diversity at each layer (link, node, Shared Risk Link Group (SRLG)) π§
3.2. Capabilities Advertisements for PCE Discovery
if there are several PCEs with distinct capabilities available, a PCC has to pick one or more appropriate PCEs πΈ for that, the PCE discovery mechanism MAY support disclosing some detailed PCE capabilities. a PCE MAY (to be consistent with the above text and RFC 4674) be able to advertise these PCE capabilities related to inter-layer path computation π
- Support for inter-layer path computation
- Support for mono-layer/multi-layer paths
- Support for inter-layer constraints
- Support for adaptation capability
- Support for inter-PCE communication
- Support for inter-layer diverse path computation
3.3. Supported Network Models
PCEP SHOULD allow several architectural alternatives for interworking between MPLS- and GMPLS-controlled networks: overlay, integrated, and augmented models [RFC3945] [RFC5145] [RFC5146] π¦β¨
4. Manageability Considerations π
4.1. Control of Function and Policy
an individual PCE MAY elect to support inter-layer computations and advertise its capabilities as described in the previous sections π PCE implementations MAY provide a configuration switch so support for inter-layer path computations can be turned on or off π when the level of support changes, this SHOULD be re-advertised π₯
but wait, there's more π a PCE MAY also elect to support inter-layer computations without advertising the fact, so only the PCCs configured to know about the PCE and its capabilities can use it π
support for, and advertisement of support for, inter-layer path computation MAY be subject to policy, and a PCE MAY hide its inter-layer capabilities from certain PCCs by not advertising them through the discovery protocol and not reporting them to the specific PCCs in any PCEP capabilities exchange π«Ά a PCE MAY also be directed by policy to refuse an inter-layer path computation request for any reason, including but not limited to the identity of the PCC making the request π
if you want more on policy-enabled path computation, check [RFC5394] π§
4.2. Information and Data Models
PCEP extensions to support inter-layer computations MUST be accompanied by MIB objects for controlling and monitoring the protocol and the PCE that does the computations π the MIB objects MAY be provided in the same MIB module used for general PCEP control and monitoring [PCEP-MIB], or MAY be provided in a new MIB module πΈ
The MIB objects MUST provide the ability to control and monitor all aspects of PCEP relevant to inter-layer path computation π
4.3. Liveness Detection and Monitoring
no changes are needed to the liveness detection and monitoring requirements already covered in [RFC4657] π¦ it's worth noting, though, that inter-layer path computations might need extended cooperation between PCEs (same as inter-AS (Autonomous System) and inter-area computations π), so liveness detection and monitoring SHOULD be applied to each PCEP communication and aggregated to report the behavior of an individual PCEP request back to the originating PCC β¨
in particular, when a request gets forwarded between multiple PCEs, neither the PCC nor the first PCE can monitor the liveness of all the PCE-PCE connections or of the PCEs themselves π so the original PCEP request only performs well if each PCE runs correct monitoring procedures and correlates any failures back to the PCEP requests that are outstanding π«Ά these requirements aren't different from those for any cooperative PCE usage, and they're expected to already be covered by general, inter-AS, and inter-area implementations π that procedure is specified in [RFC5441] π also, [RFC5886] specifies mechanisms for gathering various state metrics along the path computation chain π§
4.4. Verifying Correct Operation
there are no additional requirements beyond those in [RFC4657] for verifying the correct operation of PCEP π verifying the correct operation of the PCE and its algorithms is out of scope for the protocol requirements, but a PCC MAY send the same request to more than one PCE and compare the results π₯
4.5. Requirements on Other Protocols and Functional Components
a PCE operates on a topology graph that may be built from information distributed by TE extensions to the routing protocol running within the network πΊοΈ for the PCE to pick a suitable path for the signaling protocol to use when installing the inter-layer LSP, the topology graph must include information about the inter-layer signaling and forwarding (i.e., adaptation) capabilities of each LSR in the network π
whatever means are used to collect the information that builds the topology graph, the graph MUST include the requisite information π if the TE extensions to the routing protocol are used, these SHOULD satisfy the requirements described in [RFC5212] β¨
4.6. Impact on Network Operation
this section looks at the impact on network operations of using a PCE for inter-layer traffic engineering πΈ it doesn't add any further requirements on the PCE or PCC, for the PCEP or for deployment π
using a PCE to compute inter-layer paths isn't expected to have a significant impact on network operations, as long as upper-layer traffic engineering practices are aware of the frequent changes that might happen in the VNT π¦ it should also be noted that adding inter-layer support to a PCE that already does mono-layer path computation might change the loading of the PCE, and that might impact network behavior, especially during recovery periods right after a network failure π¬
on the flip side, inter-layer path computation is envisioned to have big benefits for multi-layer networks, including better network resource usage and support for a greater number of higher-layer LSPs ππ
5. Security Considerations π
Okay bestie, this part is SERIOUS so let's be real π₯Ί Inter-layer traffic engineering with PCE may raise new security issues when PCE-PCE communication is used between different layer networks for inter-layer path computation. Security issues may also exist when a single PCE is granted full visibility of TE information that applies to multiple layers. π¨
The formal introduction of a VNT Manager component, as described in [RFC5623], provides the basis for the application of inter-layer security and policy. π
It is expected that solutions for inter-layer protocol extensions will address these issues in detail. β¨
6. Acknowledgments π«Ά
We would like to thank Kohei Shiomoto, Ichiro Inoue, Dean Cheng, Meral Shirazipour, Julien Meuric, and Stewart Bryant for their useful comments. Thanks to members of ITU-T Study Group 15, Question 14 for their constructive comments during the liaison process. πΈ
7. References π
7.1. Normative References
- [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997.
- [RFC3945] Mannie, E., Ed., "Generalized Multi-Protocol Label Switching (GMPLS) Architecture", RFC 3945, October 2004.
- [RFC4206] Kompella, K. and Y. Rekhter, "Label Switched Paths (LSP) Hierarchy with Generalized Multi-Protocol Label Switching (GMPLS) Traffic Engineering (TE)", RFC 4206, October 2005.
7.2. Informative References
- [RFC4655] Farrel, A., Vasseur, J.-P., and J. Ash, "A Path Computation Element (PCE)-Based Architecture", RFC 4655, August 2006.
- [RFC4657] Ash, J., Ed., and J. Le Roux, Ed., "Path Computation Element (PCE) Communication Protocol Generic Requirements", RFC 4657, September 2006.
- [RFC4674] Le Roux, J., Ed., "Requirements for Path Computation Element (PCE) Discovery", RFC 4674, October 2006.
- [RFC5145] Shiomoto, K., Ed., "Framework for MPLS-TE to GMPLS Migration", RFC 5145, March 2008.
- [RFC5146] Kumaki, K., Ed., "Interworking Requirements to Support Operation of MPLS-TE over GMPLS Networks", RFC 5146, March 2008.
- [RFC5212] Shiomoto, K., Papadimitriou, D., Le Roux, JL., Vigoureux, M., and D. Brungard, "Requirements for GMPLS-Based Multi-Region and Multi-Layer Networks (MRN/MLN)", RFC 5212, July 2008.
- [RFC5394] Bryskin, I., Papadimitriou, D., Berger, L., and J. Ash, "Policy-Enabled Path Computation Framework", RFC 5394, December 2008.
- [RFC5623] Oki, E., Takeda, T., Le Roux, JL., and A. Farrel, "Framework for PCE-Based Inter-Layer MPLS and GMPLS Traffic Engineering", RFC 5623, September 2009.
- [PCEP-MIB] A. Koushik, and E. Stephan, "PCE communication protocol (PCEP) Management Information Base", Work in Progress, July 2010.
- [RFC5441] Vasseur, JP., Ed., Zhang, R., Bitar, N., and JL. Le Roux, "A Backward-Recursive PCE-Based Computation (BRPC) Procedure to Compute Shortest Constrained Inter-Domain Traffic Engineering Label Switched Paths", RFC 5441, April 2009.
- [RFC5886] Vasseur, JP., Ed., Le Roux, JL., and Y. Ikejiri, "A Set of Monitoring Tools for Path Computation Element (PCE)-Based Architecture", RFC 5886, June 2010.
Contributing Authors π―
Eiji Oki
University of Electro-Communications
Tokyo, Japan
EMail: oki@ice.uec.ac.jp
Jean-Louis Le Roux
France Telecom R&D,
Av Pierre Marzin,
22300 Lannion, France
EMail: jeanlouis.leroux@orange-ftgroup.com
Kenji Kumaki
KDDI Corporation
Garden Air Tower
Iidabashi, Chiyoda-ku,
Tokyo 102-8460, JAPAN
EMail: ke-kumaki@kddi.com
Authors' Addresses π¦
Tomonori Takeda (editor)
NTT
3-9-11 Midori-cho,
Musashino-shi, Tokyo 180-8585, Japan
EMail: takeda.tomonori@lab.ntt.co.jp
Adrian Farrel
Old Dog Consulting
EMail: adrian@olddog.co.uk
π¦ where this page comes from
- ietf: rfc6457 2011-12
- π girlified by claude-haiku-5-5 on : a language model's rewrite of the original, under its terms