Requirements for Path Computation Element (PCE) Discovery
Author(s): J.L. Le Roux
This document presents a set of requirements for a Path Computation Element (PCE) discovery mechanism that would allow a Path Computation Client (PCC) to discover dynamically and automatically a set of PCEs along with certain information relevant for PCE...
Network Working Group J.L. Le Roux, Ed. Request for Comments: 4674 France Telecom Category: Informational October 2006 Requirements for Path Computation Element (PCE) Discovery Status of This Memo This memo provides information for the Internet community. It does not specify an Internet standard of any kind. Distribution of this memo is unlimited. Copyright Notice Copyright (C) The Internet Society (2006). Abstract This document presents a set of requirements for a Path Computation Element (PCE) discovery mechanism that would allow a Path Computation Client (PCC) to discover dynamically and automatically a set of PCEs along with certain information relevant for PCE selection. It is intended that solutions that specify procedures and protocols or extensions to existing protocols for such PCE discovery satisfy these requirements. Table of Contents 1. Introduction ....................................................2 1.1. Conventions Used in This Document ..........................3 1.2. Terminology ................................................3 2. Problem Statement and Requirements Overview .....................4 2.1. Problem Statement ..........................................4 2.2. Requirements Overview ......................................5 3. Example of Application Scenario .................................6 4. Detailed Requirements ...........................................7 4.1. PCE Information to Be Disclosed ............................7 4.1.1. General PCE Information (Mandatory Support) .........8 188.8.131.52. Discovery of PCE Location ..................8 184.108.40.206. Discovery of PCE Domains and Inter-domain Functions .....................8 4.1.2. Detailed PCE Information (Optional Support) .........9 220.127.116.11. Discovery of PCE Capabilities ..............9 18.104.22.168. Discovery of Alternate PCEs ...............10 4.2. Scope of PCE Discovery ....................................10 4.2.1. Inter-AS Specific Requirements .....................10 Le Roux Informational [Page 1] RFC 4674 Requirements for PCE Discovery October 2006 4.3. PCE Information Synchronization ...........................11 4.4. Discovery of PCE Deactivation .............................11 4.5. Policy Support ............................................12 4.6. Security Requirements .....................................12 4.7. Extensibility .............................................13 4.8. Scalability ...............................................13 4.9. Operational Orders of Magnitudes ..........................13 4.10. Manageability Considerations .............................14 4.10.1. Configuration of PCE Discovery Parameters .........14 4.10.2. PCE Discovery MIB Modules .........................14 22.214.171.124. PCC MIB Module ...........................14 126.96.36.199. PCE MIB module ...........................15 4.10.3. Monitoring Protocol Operations ....................15 4.10.4. Impact on Network Operations ......................16 5. Security Considerations ........................................16 6. Acknowledgements ...............................................16 7. Contributors ...................................................17 8. References .....................................................17 8.1. Normative References ......................................17 8.2. Informative References ....................................17 1. Introduction The PCE-based network architecture [RFC4655] defines a Path Computation Element (PCE) as an entity capable of computing TE-LSP paths based on a network graph, and applying computational constraints. A PCE serves path computation requests sent by Path Computation Clients (PCC). A PCC is a client application requesting a path computation to be performed by a PCE. This can be, for instance, an LSR requesting a path for a TE-LSP for which it is the head-end, or a PCE requesting a path computation of another PCE (inter-PCE communication). The communication between a PCC and a PCE requires a client-server protocol whose generic requirements are listed in [RFC4657]. The PCE based architecture requires that a PCC be aware of the location of one or more PCEs in its domain, and also potentially of some PCEs in other domains, e.g., in case of inter-domain path computation. Le Roux Informational [Page 2] RFC 4674 Requirements for PCE Discovery October 2006 In that context, it would be highly desirable to define a mechanism for automatic and dynamic PCE discovery, which would allow PCCs to automatically discover a set of PCEs, to determine additional information required for PCE selection, and to dynamically detect new PCEs or any modification of the PCEs' information. This includes the discovery by a PCC of a set of one or more PCEs in its domain, and potentially in some other domains. The latter is a desirable function in the case of inter-domain path computation, for example. This document lists a set of functional requirements for such an automatic and dynamic PCE discovery mechanism. Section 2 points out the problem statement. Section 3 illustrates an application scenario. Finally, Section 4 addresses detailed requirements. It is intended that solutions that specify procedures and protocols or protocol extensions for PCE discovery satisfy these requirements. There is no intent either to specify solution-specific requirements or to make any assumption on the protocols that could be used for the discovery. Note that requirements listed in this document apply equally to PCEs that are capable of computing paths in MPLS-TE-enabled networks and PCEs that are capable of computing paths in GMPLS-enabled networks (and PCEs capable of both). It is also important to note that the notion of a PCC encompasses a PCE acting as PCC when requesting a path computation of another PCE (inter-PCE communication). Hence, this document does not make the distinction between PCE discovery by PCCs and PCE discovery by PCEs. 1.1. Conventions Used in This Document 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. 1.2. Terminology Terminology used in this document: LSR: Label Switch Router. TE-LSP: Traffic Engineered Label Switched Path. 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. Le Roux Informational [Page 3] RFC 4674 Requirements for PCE Discovery October 2006 PCC: Path Computation Client. Any client application requesting a path computation to be performed by a Path Computation Element. Interior Gateway Protocol (IGP) Area: OSPF Area or ISIS level/area. ABR: IGP Area Border Router (OSPF ABR or ISIS L1L2 router). AS: Autonomous System. ASBR: AS Border Router. Intra-area TE LSP: A TE LSP whose path does not cross IGP area boundaries. Inter-area TE LSP: A TE LSP whose path transits through two or more IGP areas. Inter-AS MPLS TE LSP: A TE LSP whose path transits through two or more ASs or sub-ASs (BGP confederations). Domain: Any collection of network elements within a common sphere of address management or path computational responsibility. Examples of domains include IGP areas and Autonomous Systems. 2. Problem Statement and Requirements Overview 2.1. Problem Statement A routing domain may, in practice, contain multiple PCEs: - The path computation load may be balanced among a set of PCEs to improve scalability. - For the purpose of redundancy, primary and backup PCEs may be used. - PCEs may have distinct path computation capabilities (multi- constrained path computation, backup path computation, etc.). - In an inter-domain context, there can be several PCEs with distinct inter-domain functions (inter-area, inter-AS, inter-layer), each PCE being responsible for path computation in one or more domains. In order to allow for effective PCE selection by PCCs, that is, to select the appropriate PCE based on its capabilities and perform efficient load balancing of requests, a PCC needs to know the location of PCEs in its domain, along with some information relevant to PCE selection, and also potentially needs to know the location of some PCEs in other domains, for inter-domain path computation purpose. Le Roux Informational [Page 4] RFC 4674 Requirements for PCE Discovery October 2006 Such PCE information could be learned through manual configuration, on each PCC, of the set of PCEs along with their capabilities. Such a manual configuration approach may be sufficient, and even desired in some particular situations (e.g., inter-AS PCE discovery, where manual configuration of neighbor PCEs may be preferred for security reasons), but it obviously faces several limitations: - This may imply a substantial configuration overhead. - This would not allow a PCC to dynamically detect that a new PCE is available, that an existing PCE is no longer available, or that there is a change in the PCE's information. Furthermore, as with any manual configuration approach, there is a risk of configuration errors. As an example, in a multi-area network made up of one backbone area and N peripheral areas, and where inter-area MPLS-TE path computation relies on multiple-PCE path computation with ABRs acting as PCEs, the backbone area would comprise at least N PCEs, and the configuration of PCC would be too cumbersome (e.g., in existing multi-area networks, N can be beyond fifty). Hence, an automated PCE discovery mechanism allowing a PCC to dynamically discover a set of PCEs is highly desirable. 2.2. Requirements Overview A PCE discovery mechanism that satisfies the requirements set forth in this document MUST allow a PCC to automatically discover the location of one or more of the PCEs in its domain. Where inter-domain path computation is required and policy permits, the PCE discovery method MUST allow a PCC to automatically discover the location of PCEs in other domains that can assist with inter- domain path computation. A PCE discovery mechanism MUST allow a PCC to discover the set of one or more domains where a PCE has TE topology visibility and can compute paths. It MUST also allow the discovery of the potential inter-domain path computation functions of a PCE (inter-area, inter- AS, inter-layer, etc.). A PCE discovery mechanism MUST allow the control of the discovery scope, that is the set of one or more domains (areas, ASs) where information related to a given PCE has to be disclosed. Le Roux Informational [Page 5] RFC 4674 Requirements for PCE Discovery October 2006 A PCE discovery mechanism MUST allow PCCs in a given discovery scope to dynamically discover that a new PCE has appeared or that there is a change in a PCE's information. A PCE discovery mechanism MUST allow PCCs to dynamically discover that a PCE is no longer available. A PCE discovery mechanism MUST support security procedures. In particular, key consideration MUST be given in terms of how to establish a trust model for PCE discovery. OPTIONALLY, a PCE discovery mechanism MAY be used so as to disclose a set of detailed PCE capabilities so that the PCC may make advanced and informed choices about which PCE to use. 3. Example of Application Scenario <----------------AS1--------------------> <----AS2--- Area 1 Area 0 Area 2 R1---------R3-----R5-------R6-----------R9----------R11----R13 | | | | | | | | R2---------R4-----R7-------R8-----------R10---------R12----R14 | | -- |S1| -- Figure 1 Figure 1 illustrates a multi-area/AS network with several PCEs: - The ABR R3 is a PCE that can take part in inter-area path computation. It can compute paths in area 1 and area 0. - The ABR R6 is a PCE that can take part in inter-area path computation. It can compute paths in area 0 and area 2. - The ASBR R9 is a PCE that can take part in inter-AS path computation. It is responsible for path computation in AS1 towards AS2. - The ASBR R12 is a PCE that can take part in inter-AS path computation. It is responsible for path computation in AS2 towards AS1. - The server S1 is a PCE that can be used to compute diverse paths and backup paths in area 1. Le Roux Informational [Page 6] RFC 4674 Requirements for PCE Discovery October 2006 By meeting the requirements set out in this document, the PCE discovery mechanism will allow: - each PCC in areas 1 and 0 to dynamically discover R3, as a PCE for inter-area path computation, and that R3 can compute paths in area 0 and area 1. - each PCC in areas 0 and 2 to dynamically discover R6, as a PCE for inter-area path computation, and that R6 can compute paths in area 2 and area 0. - each PCC in AS1 and one or more PCCs in AS2 to dynamically discover R9 as a PCE for inter-AS path computation in AS1 towards AS2. - each PCC in AS2 and one or more PCCs in AS1 to dynamically discover R12 as a PCE for inter-AS path computation in AS2 towards AS1. - each PCC in area 1 to dynamically discover S1, as a PCE for intra- area path computation in area1, and optionally to discover its path computation capabilities (diverse path computation and backup path computation). 4. Detailed Requirements 4.1. PCE Information to Be Disclosed We distinguish two levels of PCE information to be disclosed by a PCE discovery mechanism: - General information. Disclosure MUST be supported by the PCE discovery mechanism. - Detailed information. Disclosure MAY be supported by the PCE discovery mechanism. The PCE discovery mechanism MUST allow disclosure of general PCE information that will allow PCCs to select appropriate PCEs. This comprises discovery of PCE location, PCE domains supported by the PCEs, and PCE inter-domain functions. The PCE discovery mechanism MAY also allow disclosure of detailed PCE information. This comprises any or all information about PCE path computation capabilities and alternate PCEs. This information is not part of PCE discovery; this is additional information that can facilitate the selection of a PCE by a PCC. Support of the exchange of this information is optional in the context of the PCE discovery mechanism itself. This does not mean that the availability of this information is optional in the PCE-based architecture, but such information could also be obtained by other mechanisms, such as the PCC-PCE communication protocol. Le Roux Informational [Page 7] RFC 4674 Requirements for PCE Discovery October 2006 4.1.1. General PCE Information (Mandatory Support) 188.8.131.52. Discovery of PCE Location The PCE discovery mechanism MUST allow the discovery, for a given PCE, of the IPv4 and/or IPv6 address to be used to reach the PCE. This address will typically be an address that is always reachable, if there is any connectivity to the PCE. This address will be used by PCCs to communicate with a PCE, through a PCC-PCE communication protocol. 184.108.40.206. Discovery of PCE Domains and Inter-domain Functions Inter-domain path computation is a key application of the PCE-based architecture. This can rely on a multiple-PCE path computation, where PCEs in each domain compute a part of the end-to-end path and collaborate with each other to find the end-to-end-path. Inter- domain path computation can also rely on a single-PCE path computation where a PCE has visibility inside multiple domains and can compute an entire end-to-end inter-domain path (that is, a path from the inter-domain TE-LSP head-end to the inter-domain TE-LSP tail end). Hence, the PCE discovery mechanism MUST allow the discovery of the set of one or more domains where a PCE has visibility and can compute paths. These domains could be identified using a domain identifier: For instance, an IGP area can be identified by the Area ID (OSPF or ISIS), and an AS can be identified by the AS number. Also the PCE discovery mechanism MUST allow discovery of the inter- domain functions of a PCE, i.e., whether a PCE can be used to compute or to take part in the computation of end-to-end paths across domain borders. The inter-domain functions include nonexhaustively: inter- area, inter-AS and inter-layer path computation. Note that these functions are not mutually exclusive. Note that the inter-domain functions are not necessarily inferred from the set of domains where a PCE has visibility. For instance, a PCE may have visibility limited to a single domain, but may be able to take part in the computation of inter-domain paths by collaborating with PCEs in other domains. Conversely, a PCE may have visibility in multiple domains, but the operator may not want the PCE to be used for inter-domain path computations. The PCE discovery mechanisms MUST also allow discovery of the set of one or more domains toward which a PCE can compute paths. For instance, in an inter-AS path computation context, there may be Le Roux Informational [Page 8] RFC 4674 Requirements for PCE Discovery October 2006 several PCEs in an AS, each one responsible for taking part in the computation of inter-AS paths toward a set of one or more destination ASs, and a PCC may have to discover the destination ASs each PCE is responsible for. 4.1.2. Detailed PCE Information (Optional Support) 220.127.116.11. Discovery of PCE Capabilities 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. For the sake of illustration, this could include the following path- computation-related PCE capabilities: - The link constraints supported: e.g., bandwidth, affinities. - The path constraints supported: maximum IGP/TE cost, maximum hop count. - The objective functions supported: e.g., shortest path, widest path. - The capability to compute multiple correlated paths: e.g., diverse paths, load balanced paths. - The capability to compute bidirectional paths. - The GMPLS-technology-specific constraints supported: e.g., the supported interface switching capabilities, encoding types. And this could also include some specific PCE capabilities: - The capability to handle request prioritization. - The maximum size of a request message. - The maximum number of path requests in a request message. - The PCE computation power (static parameters to be used for weighted load balancing of requests). Such information regarding PCE capabilities could then be used by a PCC to select an appropriate PCE from a list of candidate PCEs. Note that the exact definition and description of PCE capabilities are out of the scope of this document. It is expected that this will be described in one or more separate documents which may be application specific. Le Roux Informational [Page 9] RFC 4674 Requirements for PCE Discovery October 2006 18.104.22.168. Discovery of Alternate PCEs In the case of a PCE failure, a PCC has to select another PCE, if one is available. It could be useful in various situations for a PCE to indicate a set of one or more alternate PCEs that can be selected in case the given PCE fails. Hence, the PCE discovery mechanism MAY allow the discovery, for a given PCE, of the location of one or more assigned alternate PCEs. The PCE discovery mechanism MAY also allow the discovery, for a given PCE, of the set of one or more PCEs for which it acts as alternate PCE. 4.2. Scope of PCE Discovery The PCE discovery mechanism MUST allow control of the scope of the PCE information disclosure on a per-PCE basis. In other words, it MUST allow control of to which PCC or group of PCCs the information related to a PCE may be disclosed. The choice for the discovery scope of a given PCE MUST include at least the followings settings: - All PCCs in a single IGP area. - All PCCs in a set of adjacent IGP areas. - All PCCs in a single AS. - All PCCs in a set of ASs. - A set of one or more PCCs in a set of one or more ASs. In particular, this also implies that the PCE discovery mechanism MUST allow for the discovery of PCE information across IGP areas and across AS boundaries. The discovery scope MUST be configurable on a per PCE basis. It MUST be possible to deactivate PCE discovery on a per PCE basis. 4.2.1. Inter-AS Specific Requirements When using a PCE-based approach for inter-AS path computation, a PCC in one AS may need to learn information related to inter-AS capable PCEs located in other ASs. For that purpose, and as pointed out in the previous section, the PCE discovery mechanism MUST allow Le Roux Informational [Page 10] RFC 4674 Requirements for PCE Discovery October 2006 disclosure of information related to inter-AS-capable PCEs across AS boundaries. Such inter-AS PCE discovery must be carefully controlled. For security and confidentiality reasons, particularly in an inter- provider context, the discovery mechanism MUST allow the discovery scope to be limited to a set of ASs and MUST also provide control of the PCE information to be disclosed across ASs. This is achieved by applying policies (see also Section 4.4). This implies the capability to contain a PCE advertisement to a restricted set of one or more ASs, and to filter and translate any PCE parameter (PCE domains, PCE inter-domain functions, PCE capabilities, etc.) in disclosures that cross AS borders. For the sake of illustration, it may be useful to disclose detailed PCE information (such as detailed capabilities) locally in the PCE's AS but only general information (such as location and supported domains) in other ASs. 4.3. PCE Information Synchronization The PCE discovery mechanism MUST allow a PCC to discover any change in the information related to a PCE that it has previously discovered. This includes changes to both general information (e.g., a change in the PCE domains supported) and detailed information if supported (e.g., a modification of the PCE's capabilities). In addition, the PCE discovery mechanism MUST allow dynamic discovery of new PCEs in a given discovery scope. Note that there is no requirement for real-time detection of these changes; the PCE discovery mechanism SHOULD rather allow discovery of these changes in a range of 60 seconds, and the operator should have the ability to configure the discovery delay. Note that PCE information is relatively static and is expected to be fairly stable and not to change frequently. 4.4. Discovery of PCE Deactivation The PCE discovery mechanism MUST allow a PCC to discover when a PCE that it has previously discovered is no longer alive or is deactivated. This may help in reducing or avoiding path computation service disruption. Note that there is no requirement for real-time detection of PCE failure/deactivation; the PCE discovery mechanism SHOULD rather allow such discovery in a range of 60 seconds, and the operator should have the ability to configure the discovery delay. Le Roux Informational [Page 11] RFC 4674 Requirements for PCE Discovery October 2006 4.5. Policy Support The PCE discovery mechanism MUST allow for policies to restrict the discovery scope to a set of authorized domains, to control and restrict the type and nature of the information to be disclosed, and also to filter and translate some information at domains borders. It MUST be possible to apply these policies on a per-PCE basis. Note that the discovery mechanisms MUST allow disclosing policy information so as to control the disclosure policies at domain boundaries. Also, it MUST be possible to apply different policies when disclosing PCE information to different domains. 4.6. Security Requirements The five major threats related to PCE discovery mechanisms are - impersonation of PCE; - interception of PCE discovery information (sniffing); - falsification of PCE discovery information; - information disclosure to non-authorized PCCs (PCC spoofing); - Denial of Service (DoS) Attacks. Note that security of the PCE discovery procedures is of particular importance in an inter-AS context, where PCE discovery may increase the vulnerability to attacks and the consequences of these attacks. Hence, mechanisms MUST be defined to ensure authenticity, integrity, confidentiality, and containment of PCE discovery information: - There MUST be a mechanism to authenticate discovery information. - There MUST be a mechanism to verify discovery information integrity. - There MUST be a mechanism to encrypt discovery information. - There MUST be a mechanism to restrict the scope of discovery to a set of authorized PCCs and to filter PCE information disclosed at domain boundaries (as per defined in Section 4.5). A PCE and PCC MUST be identified by a globally unique ID, which may be, for instance, a combination of AS number and IP address. Mechanisms MUST be defined in order to limit the impact of a DoS attack on the PCE discovery procedure (e.g., filter out excessive PCE information change and flapping PCEs). Note also that DoS attacks may be either accidental (caused by a misbehaving PCE system) or intentional. As discussed in [RFC4657], such mechanisms may include Le Roux Informational [Page 12] RFC 4674 Requirements for PCE Discovery October 2006 packet filtering, rate limiting, no promiscuous listening, and where applicable use of private addresses spaces. Also, key consideration MUST be given in terms of how to establish a trust model for PCE discovery. The PCE discovery mechanism MUST explicitly support a specific set of one or more trust models. 4.7. Extensibility The PCE discovery mechanism MUST be flexible and extensible so as to easily allow for the inclusion of additional PCE information that could be defined in the future. 4.8. Scalability The PCE discovery mechanism MUST be designed to scale well with an increase of any of the following parameters: - Number of PCCs discovering a given PCE. - Number of PCEs to be discovered by a given PCC. - Number of domains in the discovery scope. The PCE discovery mechanism MUST NOT have an adverse effect in the performance of other protocols (especially routing and signaling) already operating in the network. Note that there is no scalability requirement with regards to the amount of information to be exchanged. Information disclosed in the PCE discovery mechanism is relatively static. Changes in PCE information may occur as a result of PCE configuration updates, PCE deployment/activation, or PCE deactivation/suppression, and should not occur as a result of the PCE activity itself. Hence, this information is quite stable and will not change frequently. 4.9. Operational Orders of Magnitudes This section gives minimum order of magnitude estimates of what the PCE discovery mechanism should support. - Number of PCCs discovering a given PCE: 1000 - Number of PCEs to be discovered by a given PCC: 100 Le Roux Informational [Page 13] RFC 4674 Requirements for PCE Discovery October 2006 4.10. Manageability Considerations Mechanisms are REQUIRED to manage PCE discovery operations. This includes the configuration of PCE discovery functions and policies, as well as the monitoring of the discovery protocol activity. 4.10.1. Configuration of PCE Discovery Parameters It MUST be possible to enable and disable the PCE discovery function at a PCC and at a PCE. On the PCC, it MUST be possible for an operator to activate/deactivate automatic PCE discovery. The activation of automatic discovery MUST not prevent static configuration of PCE information that may supplement discovered information. On the PCE, it MUST be possible for an operator to control the application of discovery policies by which the specific PCE is discovered. As described in Section 4.5, this control MUST include the ability to - restrict the discovery scope to a set of authorized domains; - define the type and nature of the information disclosed; - specify the filtering and translation to be applied to the PCE information disclosed at domain borders. These configuration options MAY be supported through an implementation-specific local configuration interface, or MAY be supported via a standardised interface (such as a MIB module, as below). 4.10.2. PCE Discovery MIB Modules PCE discovery MIB modules MUST be specified for the control of the function on PCCs and PCEs. 22.214.171.124. PCC MIB Module The MIB module that will run on PCCs MUST include at least the following: - A control to disable automatic discovery by the PCC, - The set of known PCEs, - The number of known PCEs, and the number of discovered PCEs. For each PCE reported in the MIB module, the following information MUST be available: Le Roux Informational [Page 14] RFC 4674 Requirements for PCE Discovery October 2006 - Information advertised by the PCE (i.e., discovered information), - Information locally configured about the PCE, - The time since the PCE was discovered, - The time since any change to the discovered information for the PCE. Note that when a PCE is no longer alive (see Section 4.4), it SHOULD no longer be reported in the PCC MIB module. The MIB module SHOULD also provide the average and maximum rates of arrival, departure, and modification of PCE discovery to enable effective analysis of the operation of the protocols. Furthermore, the MIB module SHOULD report on the operation of the discovery protocol by counting the number of unacceptable and incomprehensible information exchanges. The PCC MIB module SHOULD also be used to provide notifications when thresholds (e.g., on the maximum rate of change, on the number of unacceptable messages) are crossed, or when important events occur (e.g., the number of discovered PCEs decreases to zero). 126.96.36.199. PCE MIB module The MIB module that will run on PCEs MUST include at least - a control to disable automatic discovery announcements by the PCE; - information to be advertised by the PCE, although this information MAY be present as read-only; - the discovery policies active on the PCE, although this information MAY be present as read-only. The MIB module SHOULD also include - the time since the last change to the advertised PCE information; - the time since the last change to the advertisement policies; - control of on which interfaces the PCE issues advertisements where this is applicable to the protocol solution selected. Note that a PCE MAY also be configured to discover other PCEs. In this case, it SHOULD operate the MIB module described in Section 188.8.131.52 as well as the module described here. 4.10.3. Monitoring Protocol Operations It MUST be possible to monitor the operation of any PCE discovery protocol. Where an existing protocol is used to support the PCE discovery function, this monitoring SHOULD be achieved using the techniques already defined for that protocol, enhanced by the MIB Le Roux Informational [Page 15] RFC 4674 Requirements for PCE Discovery October 2006 modules described above. Where those techniques are inadequate, new techniques MUST be developed. Monitoring of the protocol operation demands support for at least the following functions: - Correlation of information advertised against information received. - Counts of dropped, corrupt, and rejected information elements. - Detection of 'segmented' networks, that is, the ability to detect and diagnose the failure of a PCE advertisement to reach a PCC. 4.10.4. Impact on Network Operations Frequent changes in PCE information may have a significant impact on PCCs that receive the advertisements, might destabilize the operation of the network by causing the PCCs to swap between PCEs, and might harm the network through excessive advertisement traffic. Hence, it MUST be possible to apply at least the following controls: - Configurable limit on the rate of announcement of changed parameters at a PCE. - Control of the impact on PCCs such as through discovery messages rate-limiting. - Configurable control of triggers that cause a PCC to swap to another PCE. 5. Security Considerations This document is a requirement document and hence does not raise by itself any particular security issue. A set of security requirements that MUST be addressed when considering the design and deployment of a PCE discovery mechanism has been identified in Section 4.6. 6. Acknowledgements We would like to thank, in chronological order, Benoit Fondeviole, Thomas Morin, Emile Stephan, Jean-Philippe Vasseur, Dean Cheng, Adrian Farrel, Renhai Zhang, Mohamed Boucadair, Eric Gray, Igor Bryskin, Dimitri Papadimitriou, Arthi Ayyangar, Andrew Dolganow, Lou Berger, Nabil Bitar, and Kenji Kumaki. Thanks also to Ross Callon, Ted Hardie, Dan Romascanu, Russ Housley and Sam Hartman for their review and constructive discussions during the final stages of publication. Le Roux Informational [Page 16] RFC 4674 Requirements for PCE Discovery October 2006 7. Contributors The following are the authors who contributed to the present document: Jean-Louis Le Roux (France Telecom) Paul Mabey (Qwest Communications) Eiji Oki (NTT) Richard Rabbat (Fujitsu) Ting Wo Chung (Bell Canada) Raymond Zhang (BT Infonet) 8. References 8.1. Normative References [RFC 2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. [RFC4655] Farrel, A., Vasseur, J.-P., and J. Ash, "A Path Computation Element (PCE)-Based Architecture", RFC4655, August 2006. 8.2. Informative References [RFC4657] Ash, J., Ed. and J.L. Le Roux, Ed., "Path Computation Element (PCE) Communication Protocol Generic Requirements", RFC4657, September 2006. Contributors' Addresses Paul Mabey Qwest Communications 950 17th Street Denver, CO 80202 USA EMail: firstname.lastname@example.org Eiji Oki NTT Midori-cho 3-9-11 Musashino-shi, Tokyo 180-8585 JAPAN EMail: email@example.com Le Roux Informational [Page 17] RFC 4674 Requirements for PCE Discovery October 2006 Richard Rabbat Fujitsu Laboratories of America 1240 East Arques Ave, MS 345 Sunnyvale, CA 94085 USA EMail: firstname.lastname@example.org Ting Wo Chung Bell Canada 181 Bay Street, Suite 350 Toronto, Ontario, M5J 2T3 CANADA EMail: email@example.com Raymond Zhang BT Infonet 2160 E. Grand Ave. El Segundo, CA 90025 USA EMail: firstname.lastname@example.org Editor's Address Jean-Louis Le Roux (Editor) France Telecom 2, avenue Pierre-Marzin 22307 Lannion Cedex FRANCE EMail: email@example.com Le Roux Informational [Page 18] RFC 4674 Requirements for PCE Discovery October 2006 Full Copyright Statement Copyright (C) The Internet Society (2006). This document is subject to the rights, licenses and restrictions contained in BCP 78, and except as set forth therein, the authors retain all their rights. This document and the information contained herein are provided on an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY 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 HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Intellectual Property The IETF 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 this 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. Information on the procedures with respect to rights in RFC documents can be found in BCP 78 and BCP 79. Copies of IPR 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 this standard. Please address the information to the IETF at firstname.lastname@example.org. Acknowledgement Funding for the RFC Editor function is provided by the IETF Administrative Support Activity (IASA). Le Roux Informational [Page 19]