CCAMP C. Margaria, Ed. Internet-Draft Coriant GmbH Intended status: Standards Track G. Martinelli Expires: January 16, 2014 Cisco S. Balls B. Wright Metaswitch July 15, 2013 LSP Attribute in ERO draft-ietf-ccamp-lsp-attribute-ro-02 Abstract LSP attributes can be specified or recorded for whole path, but they cannot be targeted to a specific hop. This document proposes alternative ways to extend the semantic for RSVP ERO object to target LSP attributes to a specific hop. Status of This Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at http://datatracker.ietf.org/drafts/current/. 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." This Internet-Draft will expire on January 16, 2014. Copyright Notice Copyright (c) 2013 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) 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 Margaria, et al. Expires January 16, 2014 [Page 1] Internet-Draft General ERO LSP parameters July 2013 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. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 1.1. Contributing Authors . . . . . . . . . . . . . . . . . . 2 1.2. Requirements Language . . . . . . . . . . . . . . . . . . 3 2. Requirements . . . . . . . . . . . . . . . . . . . . . . . . 3 3. ERO Attribute . . . . . . . . . . . . . . . . . . . . . . . . 3 3.1. ERO_ATTRIBUTE subobject . . . . . . . . . . . . . . . . . 3 3.2. HOP Attributes TLVs . . . . . . . . . . . . . . . . . . . 4 3.3. Procedures . . . . . . . . . . . . . . . . . . . . . . . 5 4. Recording Hop attribute per LSP . . . . . . . . . . . . . . . 5 4.1. RRO Hop Attributes subobject . . . . . . . . . . . . . . 5 4.2. Procedures . . . . . . . . . . . . . . . . . . . . . . . 6 4.2.1. Subobject presence rule . . . . . . . . . . . . . . . 6 4.2.2. Reporting Compliance with ERO Hop Attributes . . . . 6 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 7 6. Security Considerations . . . . . . . . . . . . . . . . . . . 7 7. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 7 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 7 8.1. Normative References . . . . . . . . . . . . . . . . . . 7 8.2. Informative References . . . . . . . . . . . . . . . . . 8 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 8 1. Introduction Generalized MPLS (GMPLS) Traffic Engineering (TE) Label Switched Paths (LSPs) can be route-constrained by making use of the Explicit Route (ERO) object and related sub-objects as defined in [RFC3209], [RFC3473], [RFC3477], [RFC4873], [RFC4874], [RFC5520] and [RFC5553]. Those route constraints are extended by a number of documents, including element defined in [RFC6163], [I-D.ietf-ccamp-wson-signaling], [I-D.dong-ccamp-rsvp-te-mpls-tp-li-lb] or [I-D.ali-ccamp-rc-objective-function-metric-bound], for example the WSON_SIGNALING object, Metric and Objective Function subobjects. RSVP already supports generic extension of LSP attributes in [RFC5420]. In order to support current and future ERO constraint extensions this document defines a mechanism to target generic attributes at a specific hop. 1.1. Contributing Authors Margaria, et al. Expires January 16, 2014 [Page 2] Internet-Draft General ERO LSP parameters July 2013 1.2. Requirements Language 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. Requirements The requirement is to provide a generic mechanism to carry information related to specific nodes when signaling an LSP. This document does not restrict what that information can be used for. A mechanism similar to LSP attribute defined [RFC5420] should be expressed in ERO and SERO objects. A new ERO sub-object is defined, containing a list of generic Hop attributes. The mechanism defined in this document limits itself to single HOP attributes, and does not address attributes valid for a LSP section [[This can be revised based on feedback]] 3. ERO Attribute The ERO Attributes subobject may be carried in the ERO or SERO object if they are present. The subobject uses the standard format of an ERO subobject. 3.1. ERO_ATTRIBUTE subobject The length is variable and content MUST be the same as for the LSP_ATTRIBUTE object with Attributes TLVs. The size of the ERO sub- object limits the size of the LSP Attribute TLV to 250 bytes. The typical size of currently defined and forthcoming LSP_ATTRIBUTE TLVs applicable to a specific hop (WSON_SIGNALING, OF and Metric) is not foreseen to exceed this limit. The ERO attribute subobject is defined as follows: 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |L| Type | Length | Reserved |R| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | // Attributes TLVs // | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Margaria, et al. Expires January 16, 2014 [Page 3] Internet-Draft General ERO LSP parameters July 2013 See [RFC3209] for a description of L parameters. The attributes TLV are encoded as defined in section Section 3.2. Type x TBD by IANA. Length The Length contains the total length of the subobject in bytes, including the Type and Length fields. The Length MUST be always divisible by 4. Reserved Reserved, must be set to 0 when the subobject is inserted in the ERO, MUST NOT be changed when a node process the ERO and must be ignored on the node addressed by the preceding ERO subobjects. R This bit reflects the LSP_REQUIRED_ATTRIBUTE and LSP_ATTRIBUTE semantic defined in [RFC5420]. When set indicates required LSP attributes to be processed by the node, when cleared the LSP attributes are not required as described in Section 3.3. Attributes TLVs as defined in Section 3.2 . 3.2. HOP Attributes TLVs ERO Attributes carried by the new objects defined in this document are encoded within TLVs. One or more TLVs may be present in each object. There are no ordering rules for TLVs, and no interpretation should be placed on the order in which TLVs are received. Each TLV is encoded as follows. 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | // Value // | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Type The identifier of the TLV.. Length Indicates the total length of the TLV in octets. That is, the combined length of the Type, Length, and Value fields, i.e., four plus the length of the Value field in octets. The entire TLV MUST be padded with between zero and three trailing zeros to make Margaria, et al. Expires January 16, 2014 [Page 4] Internet-Draft General ERO LSP parameters July 2013 it four-octet aligned. The Length field does not count any padding. Value The data carried in the TLV. 3.3. Procedures As described in [RFC3209] and [RFC3473] the ERO is managed as a list where each hop information starts with a subobject identifying an abstract node or link. The ERO attribute subobject must be appended after the existing subobjects defined in [RFC3209], [RFC3473], [RFC3477], [RFC4873], [RFC4874], [RFC5520] and [RFC5553]. Several ERO attribute subobject MAY be present, for each hop. If a node is processing an ERO attribute subobject and does not support handling of the subobject it will behave as described in [RFC3209] when an unrecognized ERO subobject is encountered. This node will return a PathErr with error code "Routing Error" and error value "Bad EXPLICIT_ROUTE object" with the EXPLICIT_ROUTE object included, truncated (on the left) to the offending unrecognized subobject. When the R bit is set a node MUST examine the attribute TLV present in the subobject following the rules described in [RFC5420] section 5.2. When the R bit is not set a node MUST examine the attribute TLV present in the subobject following the rules described in [RFC5420] section 4.2. A node processing an ERO attribute subobject with an HOP attribute TLV longer than the ERO subobject SHOULD return a PathErr with error code "Routing Error" and error value "Bad EXPLICIT_ROUTE object" with the EXPLICIT_ROUTE object included, truncated (on the left) to the offending malformed subobject. The processing of the Hop attribute TLVs should be described in the documents defining them. 4. Recording Hop attribute per LSP In some cases it is important to determine if an optional Hop attribute has been processed by a node. 4.1. RRO Hop Attributes subobject The RRO Hop Attributes subobject may be carried in the RECORD_ROUTE object if it is present. The subobject uses the standard format of an RRO subobject. The RRO Hop attribute subobject is defined as follows: Margaria, et al. Expires January 16, 2014 [Page 5] Internet-Draft General ERO LSP parameters July 2013 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |L| Type | Length | Reserved | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | // Attributes TLVs // | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ See [RFC3209] for a description of L parameters. The attributes TLV are encoded as defined in section Section 3.2. Type x TBD by IANA. Length The Length contains the total length of the subobject in bytes, including the Type and Length fields. The Length MUST be always divisible by 4. Reserved Reserved, must be set to 0 when the subobject is inserted in the RRO, MUST NOT be changed when a node process the RRO and must be ignored on the node addressed by the preceding RRO subobjects. Attributes TLVs The processed or addition HOP attributes, using the format defined in Section 3.2 . 4.2. Procedures 4.2.1. Subobject presence rule The RRO rules defined in [RFC3209] are not changed. The RRO Hop attribute subobject must be pushed after the RRO attribute subobject (if present) defined in in [RFC5420]. The RRO Hop attribute subobject MAX be present between a pait of subobject identifying LSR or links. All such subobjects MUST be forwarded unmodified by transit LSRs. 4.2.2. Reporting Compliance with ERO Hop Attributes To report that an ERO Hop attribute has been considered, or to report an additional attribute, an LSR MAY add a RRO Hop Attributes subobject with the HOP Attribute used. The requirement to report compliance MUST be specified in the document that defines the usage of an Hop attribute. [[This is not the most efficient encoding, a more efficient encoding would use a bit field ala RFC5420 ]] Margaria, et al. Expires January 16, 2014 [Page 6] Internet-Draft General ERO LSP parameters July 2013 5. IANA Considerations TBD once a final approach has been chosen. 6. Security Considerations None. 7. Acknowledgments The authors would like to thanks Lou Berger for his directions and Attila Takacs for inspiring this [I-D.kern-ccamp-rsvpte-hop-attributes]. The authors also thanks Dirk Schroetter for his contribution to the initial versions of the documents (version -00 up to -02). 8. References 8.1. Normative References [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. [RFC3209] Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan, V., and G. Swallow, "RSVP-TE: Extensions to RSVP for LSP Tunnels", RFC 3209, December 2001. [RFC3473] Berger, L., "Generalized Multi-Protocol Label Switching (GMPLS) Signaling Resource ReserVation Protocol-Traffic Engineering (RSVP-TE) Extensions", RFC 3473, January 2003. [RFC3477] Kompella, K. and Y. Rekhter, "Signalling Unnumbered Links in Resource ReSerVation Protocol - Traffic Engineering (RSVP-TE)", RFC 3477, January 2003. [RFC4873] Berger, L., Bryskin, I., Papadimitriou, D., and A. Farrel, "GMPLS Segment Recovery", RFC 4873, May 2007. [RFC4874] Lee, CY., Farrel, A., and S. De Cnodder, "Exclude Routes - Extension to Resource ReserVation Protocol-Traffic Engineering (RSVP-TE)", RFC 4874, April 2007. [RFC5420] Farrel, A., Papadimitriou, D., Vasseur, JP., and A. Ayyangarps, "Encoding of Attributes for MPLS LSP Establishment Using Resource Reservation Protocol Traffic Engineering (RSVP-TE)", RFC 5420, February 2009. Margaria, et al. Expires January 16, 2014 [Page 7] Internet-Draft General ERO LSP parameters July 2013 [RFC5520] Bradford, R., Vasseur, JP., and A. Farrel, "Preserving Topology Confidentiality in Inter-Domain Path Computation Using a Path-Key-Based Mechanism", RFC 5520, April 2009. [RFC5553] Farrel, A., Bradford, R., and JP. Vasseur, "Resource Reservation Protocol (RSVP) Extensions for Path Key Support", RFC 5553, May 2009. 8.2. Informative References [I-D.ali-ccamp-rc-objective-function-metric-bound] Ali, Z., Swallow, G., Filsfils, C., Fang, L., Kumaki, K., and R. Kunze, "Resource ReserVation Protocol-Traffic Engineering (RSVP-TE) extension for signaling Objective Function and Metric Bound", draft-ali-ccamp-rc-objective- function-metric-bound-02 (work in progress), July 2012. [I-D.dong-ccamp-rsvp-te-mpls-tp-li-lb] Dong, J., Chen, M., and Z. Li, "GMPLS RSVP-TE Extensions for Lock Instruct and Loopback", draft-dong-ccamp-rsvp-te- mpls-tp-li-lb-05 (work in progress), December 2012. [I-D.ietf-ccamp-wson-signaling] Bernstein, G., Xu, S., Lee, Y., Martinelli, G., and H. Harai, "Signaling Extensions for Wavelength Switched Optical Networks", draft-ietf-ccamp-wson-signaling-06 (work in progress), July 2013. [I-D.kern-ccamp-rsvpte-hop-attributes] Kern, A. and A. Takacs, "Encoding of Attributes of LSP intermediate hops using RSVP-TE", draft-kern-ccamp-rsvpte- hop-attributes-00 (work in progress), October 2009. [RFC6163] Lee, Y., Bernstein, G., and W. Imajuku, "Framework for GMPLS and Path Computation Element (PCE) Control of Wavelength Switched Optical Networks (WSONs)", RFC 6163, April 2011. Authors' Addresses Cyril Margaria (editor) Coriant GmbH St Martin Strasse 76 Munich 81541 Germany Phone: +49 89 5159 16934 Email: cyril.margaria@coriant.com Margaria, et al. Expires January 16, 2014 [Page 8] Internet-Draft General ERO LSP parameters July 2013 Giovanni Martinelli Cisco via Philips 12 Monza 20900 IT Phone: +39 039 209 2044 Email: giomarti@cisco.com Steve Balls Metaswitch 100 Church Street Enfield EN2 6BQ UJ Phone: +44 208 366 1177 Email: steve.balls@metaswitch.com Ben Wright Metaswitch 100 Church Street Enfield EN2 6BQ UJ Phone: +44 208 366 1177 Email: Ben.Wright@metaswitch.com Margaria, et al. Expires January 16, 2014 [Page 9]