Network Working Group S. Sivabalan, Ed. Request for Comments: 5455 J. Parker Category: Standards Track S. Boutros Cisco Systems, Inc. K. Kumaki KDDI R&D Laboratories, Inc. March 2009 Diffserv-Aware Class-Type Object for the Path Computation Element Communication Protocol Status of This Memo This document specifies an Internet standards track protocol for the Internet community, and requests discussion and suggestions for improvements. Please refer to the current edition of the "Internet Official Protocol Standards" (STD 1) for the standardization state and status of this protocol. Distribution of this memo is unlimited. Copyright Notice Copyright (c) 2009 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 in effect on the date of publication of this document (http://trustee.ietf.org/license-info). Please review these documents carefully, as they describe your rights and restrictions with respect to this document. This document may contain material from IETF Documents or IETF Contributions published or made publicly available before November 10, 2008. The person(s) controlling the copyright in some of this material may not have granted the IETF Trust the right to allow modifications of such material outside the IETF Standards Process. Without obtaining an adequate license from the person(s) controlling the copyright in such materials, this document may not be modified outside the IETF Standards Process, and derivative works of it may not be created outside the IETF Standards Process, except to format it for publication as an RFC or to translate it into languages other than English. Abstract This document specifies a CLASSTYPE object to support Diffserv-Aware Traffic Engineering (DS-TE) where path computation is performed with the aid of a Path Computation Element (PCE). Sivabalan, et al. Standards Track [Page 1] RFC 5455 DS Aware CT Object for PCEP March 2009 Table of Contents 1. Introduction ....................................................2 1.1. Conventions Used in This Document ..........................3 2. Terminology .....................................................3 3. CLASSTYPE Object ................................................3 3.1. Object Definition ..........................................4 3.2. Path Computation Request Message with CLASSTYPE Object .....4 3.3. Processing CLASSTYPE Object ................................5 3.4. Determination of Traffic Engineering Class (TE-Class) ......6 3.5. Significance of Class-Type and TE-Class ....................6 3.6. Error Codes for CLASSTYPE Object ...........................6 4. Security Considerations .........................................7 5. IANA Considerations .............................................7 6. Acknowledgments .................................................7 7. References ......................................................8 7.1. Normative References .......................................8 7.2. Informative References .....................................8 1. Introduction [RFC5440] specifies the Path Computation Element Communication Protocol (PCEP) for communications between a Path Computation Client (PCC) and a Path Computation Element (PCE), or between two PCEs, in compliance with [RFC4657]. Diffserv-aware MPLS Traffic Engineering (DS-TE) addresses the fundamental requirement to be able to enforce different bandwidth constraints for different classes of traffic. It describes mechanisms to achieve per-class traffic engineering, rather than on an aggregate basis across all classes by enforcing Bandwidth Constraints (BCs) on different classes. Requirements for DS-TE and the associated protocol extensions are specified in [RFC3564] and [RFC4124], respectively. As per [RFC4657], PCEP must support traffic Class-Type as an MPLS- TE-specific constraint. However, in the present form, PCEP [RFC5440] does not have the capability to specify the Class-Type in the path computation request. In this document, we define a new PCEP object called CLASSTYPE, which carries the Class-Type of the TE LSP in the path computation request. During path computation, a PCE uses the Class-Type to identify the bandwidth constraint of the TE LSP. Sivabalan, et al. Standards Track [Page 2] RFC 5455 DS Aware CT Object for PCEP March 2009 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 [RFC2119]. 2. Terminology CT (Class-Type): A set of Traffic Trunks governed by a set of bandwidth constraints. Used for the purpose of link bandwidth allocation, constraint-based routing and admission control. A given Traffic Trunk belongs to the same CT on all links. DS-TE: Diffserv-Aware Traffic Engineering. LSR: Label Switching Router. LSP: Label Switched Path. 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 Peer: an element involved in a PCEP session (i.e., a PCC or the PCE). TE-Class: A pair consisting of a Class-Type and a preemption priority allowed for that Class-Type. An LSP transporting a Traffic Trunk from that Class-Type can use that preemption priority as the setup priority, the holding priority, or both. TE LSP: Traffic Engineering Label Switched Path. Traffic Trunk: An aggregation of traffic flows of the same class (i.e., treated equivalently from the DS-TE perspective), which is placed inside a TE LSP. 3. CLASSTYPE Object The CLASSTYPE object is optional and is used to specify the Class- Type of a TE LSP. This object is meaningful only within the path computation request, and is ignored in the path reply message. If the TE LSP for which the path is to be computed belongs to Class 0, the Sivabalan, et al. Standards Track [Page 3] RFC 5455 DS Aware CT Object for PCEP March 2009 path computation request MUST NOT contain the CLASSTYPE object. This allows backward compatibility with a PCE that does not support the CLASSTYPE object. 3.1. Object Definition The CLASSTYPE object contains a 32-bit word PCEP common object header defined in [RFC5440] followed by another 32-bit word object body as shown in Figure 1. 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | PCEP common header | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Reserved | CT | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 1: CLASSTYPE object format The fields in the common object header are processed as specified in [RFC5440]. The values of object class and object type are 22 and 1, respectively. If included, the CLASSTYPE object must be taken into account by the PCE. As such, the P flag MUST be set. The I flag is ignored. The CLASSTYPE object body contains the following fields: CT: 3-bit field that indicates the Class-Type. Values allowed are 1, 2, ... , 7. The value of 0 is Reserved. Reserved: 29-bit reserved field. It MUST be set to zero on transmission and MUST be ignored on receipt. 3.2. Path Computation Request Message with CLASSTYPE Object [RFC5440] specifies the order in which objects must be inserted in the PCEP messages. This document specifies that the CLASSTYPE object be inserted after the END-POINT objects as shown below: Sivabalan, et al. Standards Track [Page 4] RFC 5455 DS Aware CT Object for PCEP March 2009 The format of a Path Computation Request (PCReq) message is as follows:::= [ ] where: ::= [ ] ::= [ ] ::=
RFC, FYI, BCP