Network Working Group T. Takeda (Ed.) Internet Draft NTT Category: Informational A. Farrel
(Ed.)Created: December 2008August 21, 2009 Old Dog Consulting Expires: February 21, 2010 PCC-PCE Communication and PCE Discovery Requirements for Inter-Layer Traffic Engineering draft-ietf-pce-inter-layer-req-09.txtdraft-ietf-pce-inter-layer-req-10.txt Status of this Memo This Internet-Draft is submitted to IETF in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet- Drafts. 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." The list of current Internet-Drafts can be accessed at http://www.ietf.org/ietf/1id-abstracts.txt. The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html. Abstract The Path Computation Element (PCE) provides functions of path computation in support of traffic engineering in Multi-Protocol Label Switching (MPLS) and Generalized MPLS (GMPLS) networks. MPLS and GMPLS networks may be constructed from layered client/server networks. It is advantageous for overall network efficiency to provide end-to-end traffic engineering across multiple network layers. PCE is a candidate solution for such requirements. Generic requirements for a communication protocol between Path Computation Clients (PCCs) and PCEs are presented in "PCE Communication Protocol Generic Requirements". Generic requirements for PCE discovery protocol are presented in "Requirements for Path Computation Element (PCE) Discovery". This document complements the generic requirements and presents detailed sets of PCC-PCE communication protocol requirements and PCE discovery protocol requirements for inter-layer traffic engineering. Table of Contents 1. Introduction...................................................3 1.1. Terminology..................................................3 2. Motivation for PCE-Based Inter-Layer Path Computation..........4 3. PCC-PCE Communication and Discovery Requirements for Inter-Layer Traffic Engineering...............................................5Engineering................................5 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...................6Constraints...................7 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................7Discovery................8 3.3. Supported Network Models.....................................8 4. Manageability considerations...................................8 4.1. Control of Function and Policy...............................8 4.2. Information and Data Models..................................8Models..................................9 4.3. Liveness Detection and Monitoring............................9 4.4. Verifying Correct Operation..................................9 4.5. Requirements on Other Protocols and Functional Components....9 4.6. Impact on Network Operation.................................10 5. Security Considerations.......................................10 6. IANA Considerations...........................................10 7. Acknowledgments...............................................10 8. References....................................................10References....................................................11 8.1. Normative References........................................10References........................................11 8.2. Informative References......................................11 9. Authors' Addresses............................................12 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 comprise multiple layers. These layers may represent separations of technologies (e.g., packet switch capable (PSC), time division multiplex (TDM), lambda switch capable (LSC)) [RFC3945], separation of data plane switching granularity levels (e.g., PSC-1 and PSC-2, or VC4 and VC12) [RFC5212], or a distinction between client and server networking roles (e.g., commercial or administrative separation of 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 under the operation of Multiprotocol Label Switching Traffic Engineering (MPLS-TE) and Generalized MPLS (GMPLS) protocols, it is important to provide mechanisms to allow global optimization of network resources. That is, to take into account all layers, rather than optimizing resource utilization at each layer independently. This allows better network efficiency to be achieved. This is what we call Inter-layer traffic engineering. This includes mechanisms allowing computation of end-to-end paths across layers (known as inter-layer path computation), and mechanisms for control and management of the VNT by setting up and releasing LSPs in the lower layers [RFC5212]. Inter-layer traffic engineering is included in the scope of the PCE architecture [RFC4655], and PCE can provide a suitable mechanism for resolving inter-layer path computation issues. The applicability of the PCE-based path computation architecture to inter-layer traffic engineering is described in [PCE-INTER-LAYER-FRWK]. This document presents sets of requirements for communication between path computation clients (PCCs) and PCEs using the PCE protocol (PCEP), and for PCE discovery for inter-layer traffic engineering. It supplements the generic requirements documented in [RFC4657] and [RFC4674]. 1.1. Terminology LSP: Label Switched Path. LSR: Label Switching Router. PCC: Path Computation Client, any client application requesting a path computation to be performed by a Path Computation Element. PCE: Path Computation Element, an entity (component, application or network node) that is capable of computing a network path or route based on a network graph and applying computational constraints. PCEP: PCE Communication Protocol, a protocol for communication between PCCs and PCEs. Although this requirements document is an informational document not a protocol specification, 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] 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 includes hops traversed by LSPs in lower layers of the network. The computation of end-to-end paths across layers is called Inter-Layer Path Computation. An LSR in the higher layer might not have information on the topology of lower layers, particularly in an overlay or augmented model, and hence might not be able to compute an end-to-end path across layers. PCE-based inter-layer path computation, consists of relying on one or more PCEs to compute an end-to-end path across layers. This could rely on a single PCE path computation where the PCE has topology information about multiple layers and can directly compute an end-to- end path across layers considering the topology of all of the layers. Alternatively, the inter-layer path computation could be performed as a multiple PCE computation where each member of a set of PCEs has information about the topology of one or more layers, but not all layers, and collaborate to compute an end-to-end path. Consider a two-layer network where the higher-layer network is a packet-based IP/MPLS or GMPLS network and the lower-layer network is a GMPLS 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 needs a path in the higher-layer network. However, suppose that there is no TE link between border LSRs, which are located on the boundary between the higher-layer and lower-layer networks, and that the ingress LSR does not have topology visibility in the lower layer. If a single-layer path computation is applied for the higher layer, the path computation fails. On the other hand, inter-layer path computation is able to provide a route in the higher layer and a suggestion that a lower-layer LSP be setup between border LSRs, considering both layers as TE topologies. Further discussion of the application of PCE to inter-layer path computation can be found in [PCE-INTER-LAYER-FRWK]. 3. PCC-PCE Communication and Discovery Requirements for Inter-Layer Traffic Engineering This section sets out additional requirements specific to the problems of multi-layer TE that are not covered in [RFC4657] or [RFC4674]. 3.1. PCC-PCE Communication The PCC-PCE communication protocol MUST allow requests and replies for inter-layer path computation. This requires no additional messages, but implies the following additional constraints to be added to the PCC-PCE communication protocol. 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. In the absence of such an indication, the default is that inter-layer path computation is not allowed. 3.1.2. Control of The Type of Path to be Computed The PCE computes and returns a path to the PCC that the PCC can use to build a higher-layer or lower-layer LSP once converted to an Explicit Route Object (ERO) for use in RSVP-TE signaling. There are two options [PCE-INTER-LAYER-FRWK]. - Option 1: Mono-layer path. The PCE computes a "mono layer" path, i.e., a path that includes only TE-links from the same layer. - Option 2: Multi-layer path. The PCE computes a "multi-layer" path, i.e., a path that includes TE links from distinct layers [RFC4206]. It may be necessary or desirable for a PCC to control the type of path that is produced by a PCE. For example, a PCC may know that it is not possible for technological or policy reasons to signal a multi-layer path and that a mono-layer path is required, or the PCC may know that it does not wish the layer border node to have control of path computation. In order to make this level of control possible, the 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 where a multi-layer path is returned, PCEP MUST support the inclusion, as part of end-to-end path, of the path of the lower-layer LSPs to be established. If a response message from a PCE to PCC carries a mono-layer path that is specified by strict hops but includes virtual TE link(s), or includes 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, the signaling of the higher-layer LSP may trigger the establishment of the lower-layer LSPs (triggered signaling). The triggered signaling may increase the higher-layer connection setup latency. An ingress LSR for the higher-layer LSP, or a PCC, needs to know whether triggered signaling is required or not. A request from a PCC to a PCE MUST allow indicating whether triggered signaling is acceptable or not. A response from a PCE to a PCC MUST allow indicating whether the computed path requires triggered signaling or not. Note that a PCE may not be able to distinguish virtual TE links from regular TE links. In such cases, even if a request from a PCC to a PCE indicates that triggered signaling is not acceptable, a PCE may choose virtual TE links in path computation. Therefore, when a network uses virtual TE links and a PCE is not able to distinguish virtual TE links from regular TE links, it MUST be understood that a PCE may choose virtual TE links even if a request from a PCC to a PCE indicates triggered signaling is not acceptable. Also note that an ingress LSR may be present in multiple layers. Thus, 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 the inclusion of constraints for a multi-layer path. This includes control over which network layers may, must, or must not be included in the computed path. Such control may be expressed in terms of the switching types of the layer networks. Furthermore, it may be desirable to constrain the number of layer boundaries crossed (i.e., the number of adaptations 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, and a mechanism to report that number when a path is supplied. The path computation request MUST also allow for different objective functions to be applied within different network layers. For example, the path in a packet-network may need to be optimized for least delay using the IGP metric as a measure of delay, while the path in an under-lying TDM network might be optimized for fewest hops. 3.1.4. Adaptation Capability It MUST be possible for the path computation request to indicate the desired adaptation function at the end points of the lower-layer LSP that is being computed. This will be particularly important where the ingress and egress LSR participate in more than one layer network but may not be capable of all associated adaptations. 3.1.5. Cooperation Between PCEs When each layer is controlled by a PCE, which only has access to the topology information of its layer, the PCEs of each layer need to cooperate to perform inter-layer path computation. In this case, communication between PCEs is required for inter-layer path computation. A PCE that behaves as a client is defined as a PCC [RFC4655]. The PCC-PCE communication protocol MUST allow requests and replies for multiple PCE inter-layer path computation. 3.1.6. Inter-Layer Diverse paths The PCE communication protocol MUST allow for the computation of diverse inter-Layer paths. A request from a PCC to a PCE MUST support the inclusion of multiple path requests, with the desired level of diversity at each layer (link, node, SRLG). 3.2. Capabilities Advertisements for PCE Discovery In the case where there are several PCEs with distinct capabilities available, a PCC has to select one or more appropriate PCEs. For that purpose, the PCE discovery mechanism MAY support the disclosure of some detailed PCE capabilities. A PCE MAY (to be consistent with the above text and RFC4674) be able to advise the following inter-layer-path-computation-related PCE capabilities: - 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 The PCC-PCE communication protocol SHOULD allow several architectural alternatives for interworking between MPLS and GMPLS 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 to allow support of inter-layer path computations to be enabled or disabled. When the level of support is changed, this SHOULD be re-advertised. However, a PCE MAY also elect to support inter-layer computations, but not to advertise the fact, so that only those PCCs configured to know of 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. Further, a PCE MAY 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 that makes the request. 4.2. Information and Data Models PCEP extensions to support inter-layer computations MUST be accompanied by MIB objects for the control and monitoring of the protocol and of the PCE that performs the computations. The MIB objects MAY be provided in the same MIB module as 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 necessary to the liveness detection and monitoring requirements as already embodied in [RFC4657]. It should be noted, however, that inter-layer path computations might require extended cooperation between PCEs (as is also the case for inter-AS and inter- area computations) and so the liveness detection and monitoring SHOULD be applied to each PCEP communication and aggregated to report the behavior of an individual PCECP request to the originating PCC. In particular, where a request is forwarded between multiple PCEs neither the PCC nor the first PCE can monitor the liveness of all inter-PCE-PCE connections or of the PCEs themselves. In this case, suitable performance of the original PCEP request relies on each PCE operating correct monitoring procedures and correlating any failures back to the PCEP requests that are outstanding. These requirements are no different from those for any cooperative PCE usage, and are expected to be already covered by general, and by inter-AS and inter- area implementations. Such a procedure is specified in [BRPC].[RFC5441]. In addition, [PCEP-MON] specifies mechanisms to gather various state metrics along the path computation chain. 4.4. Verifying Correct Operation There are no additional requirements beyond those expressed in [RFC4657] for verifying the correct operation of the PCEP. Note that verification of 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 using information distributed by TE extensions to the routing protocol operating within the network. In order that the PCE can select a suitable path for the signaling protocol to use to install 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 is used to collect the information to build the topology graph MUST include the requisite information. If the TE extensions to the routing protocol are used, these SHOULD satisfy the requirements as described in [RFC5212]. 4.6. Impact on Network Operation The use of a PCE to compute inter-layer paths is not expected to have significant impact on network operations. But it should be noted that the introduction of inter-layer support to a PCE that already provides mono-layer path computation might change the loading of the PCE and that might have an impact on the network behavior especially during recovery periods immediately after a network failure. On the other hand, it is envisioned that the use of inter-layer path computation will have significant benefits to the operation of a multi-layer network including improving the network resource usage and enabling a greater number of higher-layer LSPs to be supported. 5. Security Considerations Inter-layer traffic engineering with PCE may raise new security issues when PCE-PCE communication is done 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 [PCE-INTER-LAYER-FRWK] 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. IANA Considerations This Informational document makes no requests for IANA action. 7. Acknowledgments We would like to thank Kohei Shiomoto, Ichiro Inoue, and Dean Cheng for their useful comments. Thanks to members of ITU-T Study Group 15 Question 14 for their constructive comments during the liaison process. 8. References 8.1. Normative References [RFC2119] Bradner, S., "Key words for use in RFCs to indicate requirements levels", RFC 2119, March 1997. [RFC3945] Mannie, E., "Generalized Multi-Protocol Label Switching Architecture", RFC 3945, October 2004. [RFC4206] Kompella, K., and Rekhter, Y., "Label Switched Paths (LSP) Hierarchy with Generalized Multi-Protocol Label Switching (GMPLS) Traffic Engineering (TE)", RFC 4206, October 2005. 8.2. Informative References [RFC4655] A. Farrel, JP. Vasseur and J. Ash, "A Path Computation Element (PCE)-Based Architecture", RFC 4655, September 2006. [RFC4657] J. Ash, J.L Le Roux et al., " Path Computation Element (PCE) Communication Protocol Generic Requirements", RFC 4657, September 2006. [RFC4674] JL Le Roux et al., "Requirements for Path Computation Element (PCE) Discovery", RFC 4674, September 2006. [RFC5145] K. Shiomoto, "Framework for MPLS-TE to GMPLS Migration", RFC 5145, March 2008. [RFC5146] K. Kumaki et al., "Interworking Requirements to Support Operation of MPLS-TE over GMPLS Networks", RFC 5146, March 2008. [RFC5212] K. Shiomoto et al., "Requirements for GMPLS-Based Multi- Region and Multi-Layer Networks (MRN/MLN)", RFC 5212, July 2008. [PCE-INTER-LAYER-FRWK] E. Oki et al., "Framework for PCE-Based Inter-Layer MPLS and GMPLS Traffic Engineering", draft- ietf-pce-inter-layer-frwk (work in progress). [PCEP-MIB] A. Koushik, and E. Stephan, "PCE communication protocol (PCEP) Management Information Base", draft-kkoushik-pce- pcep-mibdraft-ietf-pce-pcep- mib (work in progress). [RFC5145] K. Shiomoto, "Framework for MPLS-TE to GMPLS Migration", RFC 5145, March 2008. [RFC5146] K. Kumaki et al., "Interworking Requirements to Support Operation of MPLS-TE over GMPLS Networks", RFC 5146, March 2008. [BRPC][RFC5441] JP. Vasseur (Ed.), "A Backward Recursive PCE-basedBackward-Recursive PCE-Based Computation (BRPC) Procedure Toto Compute Shortest Constrained Inter-domainInter-Domain Traffic Engineering Label Switched Paths", draft-ietf-pce-brpc (work in progress).RFC 5441, April 2009. [PCEP-MON] JP. Vasseur (Ed.), "A set of monitoring tools for Path Computation Element based Architecture", draft-ietf-pce- Monitoring (work in progress). 9. Authors' Addresses Eiji Oki University of Electro-Communications TokyoTokyo, Japan Email: firstname.lastname@example.org Jean-Louis Le Roux France Telecom R&D, Av Pierre Marzin, 22300 Lannion, France Email: email@example.com Kenji Kumaki KDDI Corporation Garden Air Tower Iidabashi, Chiyoda-ku, Tokyo 102-8460, JAPAN Phone: +81-3-6678-3103Email: firstname.lastname@example.org Adrian Farrel Old Dog Consulting Email: email@example.com Tomonori Takeda NTT 3-9-11 Midori-cho, Musashino-shi, Tokyo 180-8585, Japan Email: firstname.lastname@example.org Full Copyright Statement Copyright (c) 20082009 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.document (http://trustee.ietf.org/license-info). Please review these documents carefully, as they describe your rights and restrictions with respect to this document. All IETF Documents and the information contained therein are provided on an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION THEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Intellectual Property The IETF Trust takes no position regarding the validity or scope of any Intellectual Property Rights or other rights that might be claimed to pertain to the implementation or use of the technology described in any IETF Document or the extent to which any license under such rights might or might not be available; nor does it represent that it has made any independent effort to identify any such rights. Copies of Intellectual Property disclosures made to the IETF Secretariat and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementers or users of this specification can be obtained from the IETF on-line IPR repository at http://www.ietf.org/ipr The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights that may cover technology that may be required to implement any standard or specification contained in an IETF Document. Please address the information to the IETF at email@example.com. The definitive version of an IETF Document is that published by, or under the auspices of, the IETF. Versions of IETF Documents that are published by third parties, including those that are translated into other languages, should not be considered to be definitive versions of IETF Documents. The definitive version of these Legal Provisions is that published by, or under the auspices of, the IETF. Versions of these Legal Provisions that are published by third parties, including those that are translated into other languages, should not be considered to be definitive versions of these Legal Provisions. For the avoidance of doubt, each Contributor to the IETF Standards Process licenses each Contribution that he or she makes as part of the IETF Standards Process to the IETF Trust pursuant to the provisions of RFC 5378. No language to the contrary, or terms, conditions or rights that differ from or are inconsistent with the rights and licenses granted under RFC 5378, shall have any effect and shall be null and void, whether published or posted by such Contributor, or included with or in such Contribution.