CCAMP C. Margaria, Ed.
Internet-Draft Juniper
Intended status: Standards Track G. Martinelli
Expires: January 4, 2015 Cisco
S. Balls
B. Wright
Metaswitch
July 03, 2014
LSP Attribute in ERO
draft-ietf-ccamp-lsp-attribute-ro-04
Abstract
RFC5420 extends RSVP-TE to specify or record generic attributes which
apply to the whole of the path of an LSP. This document proposes an
extension to the RSVP ERO and RRO objects to allow it to specify or
record generic attributes which apply to a given 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 4, 2015.
Copyright Notice
Copyright (c) 2014 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 4, 2015 [Page 1]
Internet-Draft General ERO LSP parameters July 2014
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 . . . . . . . . . . . . . . . . . . 3
1.2. Requirements Language . . . . . . . . . . . . . . . . . . 3
2. Requirements . . . . . . . . . . . . . . . . . . . . . . . . 3
3. Specifying Hop Attribute . . . . . . . . . . . . . . . . . . 3
3.1. ERO_HOP_ATTRIBUTE subobject . . . . . . . . . . . . . . . 3
3.2. HOP Attributes TLVs . . . . . . . . . . . . . . . . . . . 4
3.3. Procedures . . . . . . . . . . . . . . . . . . . . . . . 5
4. Recording Hop attribute . . . . . . . . . . . . . . . . . . . 6
4.1. RRO_HOP_ATTRIBUTE subobject . . . . . . . . . . . . . . . 6
4.2. Procedures . . . . . . . . . . . . . . . . . . . . . . . 7
4.2.1. Subobject presence rule . . . . . . . . . . . . . . . 7
4.2.2. Reporting Compliance with ERO Hop Attributes . . . . 7
5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 7
5.1. ERO LSP Attribute Subobject . . . . . . . . . . . . . . . 7
5.2. RRO LSP Attribute Subobject . . . . . . . . . . . . . . . 7
5.3. Existing LSP Attribute TLVs . . . . . . . . . . . . . . . 7
5.3.1. Attribute Flags . . . . . . . . . . . . . . . . . . . 8
5.3.2. Service ID TLV . . . . . . . . . . . . . . . . . . . 8
6. Security Considerations . . . . . . . . . . . . . . . . . . . 8
7. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 8
8. References . . . . . . . . . . . . . . . . . . . . . . . . . 8
8.1. Normative References . . . . . . . . . . . . . . . . . . 9
8.2. Informative References . . . . . . . . . . . . . . . . . 9
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 10
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].
Several documents have identified the need for attributes that can be
targeted at specific hops in the path of an LSP, including [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],. This document
provides a generic mechanism for use by these other documents.
RSVP already supports generic extension of LSP attributes in
[RFC5420]. In order to support current and future ERO constraint
Margaria, et al. Expires January 4, 2015 [Page 2]
Internet-Draft General ERO LSP parameters July 2014
extensions this document defines a mechanism to define per-Hop
attributes.
1.1. Contributing Authors
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 per-Hop attributes. The mechanism
defined in this document limits itself to single HOP attributes, and
does not address attributes valid for a LSP section [[CREF1: This can
be revised based on feedback --Ed.]]
3. Specifying Hop 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_HOP_ATTRIBUTE subobject
The length is variable and content is a list of HOP Attributes TLVs
defined in Section 3.2. The size of the ERO sub-object limits the
size of the 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_HOP_ATTRIBUTE subobject is defined as follows:
Margaria, et al. Expires January 4, 2015 [Page 3]
Internet-Draft General ERO LSP parameters July 2014
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 //
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
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 it indicates required hop
attributes to be processed by the node. When cleared, it
indicates that the hop attributes are not required as described in
Section 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.
Margaria, et al. Expires January 4, 2015 [Page 4]
Internet-Draft General ERO LSP parameters July 2014
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
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_HOP_ATTRIBUTE subobject must be
appended after the existing subobjects defined in [RFC3209],
[RFC3473], [RFC3477], [RFC4873], [RFC4874], [RFC5520] and [RFC5553].
Several ERO_HOP_ATTRIBUTE subobject MAY be present, for each hop.
If a node is processing an ERO_HOP_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_HOP_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
Margaria, et al. Expires January 4, 2015 [Page 5]
Internet-Draft General ERO LSP parameters July 2014
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
In some cases it is important to determine if an optional Hop
attribute has been processed by a node.
4.1. RRO_HOP_ATTRIBUTE subobject
The RRO_HOP_ATTRIBUTE 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:
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 .
Margaria, et al. Expires January 4, 2015 [Page 6]
Internet-Draft General ERO LSP parameters July 2014
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 MAY be present between a pair 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_ATTRIBUTE subobject
with the HOP Attribute TLV which describes the attribute to be
reported. The requirement to report compliance MUST be specified in
the document that defines the usage of an Hop attribute. [[CREF2:
This is not the most efficient encoding, a more efficient encoding
would use a bit field ala RFC5420 --Ed.]]
5. IANA Considerations
5.1. ERO LSP Attribute Subobject
IANA is requested to make the following subobject allocations from
the "EXPLICIT_ROUTE Subobject Type" registry.
Sub-object type TBA
Name ERO HOP Attribute
Reference This document
5.2. RRO LSP Attribute Subobject
IANA is requested to make the following subobject allocations from
the "RECORD_ROUTE Subobject Type" registry.
Sub-object type TBA
Name RRO HOP Attribute
Reference This document
5.3. Existing LSP Attribute TLVs
IANA is request to add the following information for each TLV in the
RSVP TLV type identifier registry.
o Whether allowed on LSP attribute ERO subobject
Margaria, et al. Expires January 4, 2015 [Page 7]
Internet-Draft General ERO LSP parameters July 2014
The existing registry is modified for existing TLVs.
5.3.1. Attribute Flags
The new TLV type definition is as follow
o TLV Type = 1
o TLV Name = Attribute Flags TLV
o Allowed on LSP_ATTRIBUTES object
o Allowed on LSP_REQUIRED_ATTRIBUTES object
o Allowed on LSP attribute ERO subobject
5.3.2. Service ID TLV
The new TLV type definition is as follow
o TLV Type = 2
o TLV Name = Attribute Flags TLV
o Allowed on LSP_ATTRIBUTES object
o Not allowed on LSP_REQUIRED_ATTRIBUTES object
o ? on LSP attribute ERO subobject
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
Margaria, et al. Expires January 4, 2015 [Page 8]
Internet-Draft General ERO LSP parameters July 2014
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.
[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.,
Kunze, R., Ceccarelli, D., and X. Zhang, "Resource
ReserVation Protocol-Traffic Engineering (RSVP-TE)
Extension for Signaling Objective Function and Metric
Bound", draft-ali-ccamp-rc-objective-function-metric-
bound-05 (work in progress), February 2014.
Margaria, et al. Expires January 4, 2015 [Page 9]
Internet-Draft General ERO LSP parameters July 2014
[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-07
(work in progress), March 2014.
[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)
Juniper
200 Somerset Corporate Boulevard, , Suite 4001
Bridgewater, NJ 08807
USA
Email: cmargaria@juniper.net
Giovanni Martinelli
Cisco
via Philips 12
Monza 20900
IT
Phone: +39 039 209 2044
Email: giomarti@cisco.com
Margaria, et al. Expires January 4, 2015 [Page 10]
Internet-Draft General ERO LSP parameters July 2014
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 4, 2015 [Page 11]