CCAMP C. Margaria, Ed.
Internet-Draft Nokia Siemens Networks
Intended status: Standards Track D. Schroetter
Expires: January 16, 2013 NUTS:iX GmbH
G. Martinelli
Cisco
S. Balls
B. Wright
Metaswitch
July 15, 2012
LSP Attribute in ERO
draft-margaria-ccamp-lsp-attribute-ero-01
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, 2013.
Copyright Notice
Copyright (c) 2012 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
Margaria, et al. Expires January 16, 2013 [Page 1]
Internet-Draft General ERO LSP parameters July 2012
carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must
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 . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1. Contributing Authors . . . . . . . . . . . . . . . . . . . 3
1.2. Requirements Language . . . . . . . . . . . . . . . . . . 3
2. Requirements . . . . . . . . . . . . . . . . . . . . . . . . . 4
3. Solutions . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3.1. ERO LSP Attribute Subobject . . . . . . . . . . . . . . . 5
3.1.1. ERO LSP_ATTRIBUTE subobject . . . . . . . . . . . . . 5
3.1.2. Procedures . . . . . . . . . . . . . . . . . . . . . . 6
3.1.3. Pros and Cons . . . . . . . . . . . . . . . . . . . . 6
3.2. Information carried in the LSP Attribute object . . . . . 7
3.2.1. Solution overview . . . . . . . . . . . . . . . . . . 7
3.2.2. ERO Hop Info Index Subobject . . . . . . . . . . . . . 7
3.2.3. RRO Hop Info Index Subobject . . . . . . . . . . . . . 8
3.2.4. LSP Attribute Hop Info TLV . . . . . . . . . . . . . . 8
3.2.5. Procedures . . . . . . . . . . . . . . . . . . . . . . 9
3.2.6. Pros and Cons . . . . . . . . . . . . . . . . . . . . 10
4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 11
5. Security Considerations . . . . . . . . . . . . . . . . . . . 12
6. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 13
7. References . . . . . . . . . . . . . . . . . . . . . . . . . . 14
7.1. Normative References . . . . . . . . . . . . . . . . . . . 14
7.2. Informative References . . . . . . . . . . . . . . . . . . 14
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 15
Margaria, et al. Expires January 16, 2013 [Page 2]
Internet-Draft General ERO LSP parameters July 2012
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].
This document proposes mechanisms to target LSP attributes at a
specific hop. This document present several solutions for
discussion, final document will contains only one document after WG
consensus.
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].
Margaria, et al. Expires January 16, 2013 [Page 3]
Internet-Draft General ERO LSP parameters July 2012
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.
LSP attribute defined [RFC5420] should be expressed in ERO and SERO
objects.
Margaria, et al. Expires January 16, 2013 [Page 4]
Internet-Draft General ERO LSP parameters July 2012
3. Solutions
3.1. ERO LSP Attribute Subobject
The ERO LSP 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.1. ERO LSP_ATTRIBUTE subobject
The length is variable and content MUST be the same as for the
LSP_ATTRIBUTE object with Attributes TLVs.
The ERO LSP 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 //
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
See [RFC3209] for a description of L parameters. The attributes TLV
are encoded as defined in [RFC5420] section 3.
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. 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.1.2.
Margaria, et al. Expires January 16, 2013 [Page 5]
Internet-Draft General ERO LSP parameters July 2012
Attributes TLVs as defined in [RFC5420] section 3.
3.1.2. 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 LSP attribute subobject must be appended
after the existing subobjects defined in [RFC3209], [RFC3473],
[RFC3477], [RFC4873], [RFC4874], [RFC5520] and [RFC5553]. Several
LSP attribute subobject MAY be present.
If a node is processing an LSP 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. If more than one ERO LSP attribute subobject having the
R bit set is present, the first one MUST be processed and the others
SHOULD be ignored. If more than one ERO LSP attribute subject having
the R bit cleared is present, the first one MUST be processed and the
others SHOULD be ignored. [[anchor8: This need to be revised due to
object length Pb --Ed.]]
3.1.3. Pros and Cons
This solution minimize the changes to the ERO object and so
implementations can access all per-hop information when processing
the ERO.
However, per hop ERO sub-objects are limited to 255 bytes in length
which may limit its extensibility. Subsequent uses of this mechanism
may wish to carry large amounts of contiguous information targeted at
a single hop, which would need to split across multiple sub-objects.
It also requires the sub-object to be duplicated multiple times in
the ERO if the same information needs to be targeted at multiple
nodes.
Margaria, et al. Expires January 16, 2013 [Page 6]
Internet-Draft General ERO LSP parameters July 2012
3.2. Information carried in the LSP Attribute object
3.2.1. Solution overview
A new ERO/RRO sub-object (Hop info index) is defined to be an index/
pointer to a new TLV (Hop info) carried in the LSP_ATTRIBUTES object.
This TLV is formed of sub-TLVs carrying information targeted at a
specific node.
3.2.2. ERO Hop Info Index Subobject
The ERO Hop Info Index subobject may be carried in the ERO or SERO
object if they are present. The subobject uses the standard format
of an ERO subobject.
The ERO Hop info index 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 |R| Res | Index |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
See [RFC3209] for a description of L parameters.
Type 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.
Res 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 If set, the corresponding Hop Info TLV should be handled as
required and according to the rules of the LSP_REQUIRED_ATTRIBUTE
object. If clear, the corresponding Hop Info TLV should be
handled as optional and according to the rules of the
LSP_ATTRIBUTE object. This bit is present in the ERO to allow
attributes mandatory on some node and optional on others.
Index A value used to refer to an LSP Attribute Hop Info TLV
containing information targeted at the node processing this ERO.
Each hop on an LSP may have at most two ERO Hop Info Index subobjects
associated with it. One for optional attributes, and one for
Margaria, et al. Expires January 16, 2013 [Page 7]
Internet-Draft General ERO LSP parameters July 2012
required attributes. Note that both these attributes are carried as
separate Hop Info TLVs within the LSP_ATTRIBUTE object as they are
not Required on the LSP as a whole.
3.2.3. RRO Hop Info Index Subobject
The RRO Hop Info Index subobject may be carried in the RRO object if
it is present. The subobject uses the standard format of an RRO
subobject.
The RRO Hop info index 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length | Res | Index |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
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.
Res 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.
Index A value used to refer to an LSP Attribute Hop Info TLV
containing information targeted at the node processing this ERO.
Each hop on an LSP may have at most one RRO Hop Info Index subobjects
associated with it.
3.2.4. LSP Attribute Hop Info TLV
The LSP Attribute Hop Info TLV may be carried in the LSP Attribute
object if present. It MUST be carried if an ERO Hop Info Index
subobject is present in an ERO or SERO.
The LSP Attribute Hop Info TLV is defined as follows:
Margaria, et al. Expires January 16, 2013 [Page 8]
Internet-Draft General ERO LSP parameters July 2012
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 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Index | Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
// Sub-TLVs //
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
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.
Index A value referred to by the Index field in the ERO Hop Info
Index Subobject.
Reserved Reserved, must be set to 0 when the subobject is inserted
in the LSP Attributes, MUST NOT be changed when a node process the
LSP Attributes and must be ignored on the node processing the Hop
Info TLV.
Sub-TLVs The information that is targeted at the specific hop or
hops identified by the Index field.
This document defines 1 sub-TLV type as below.
3.2.4.1. Per Hop Attribute sub-TLV
The Per Hop Attribute sub-TLV is defined to be identical to the
Attributes TLV in [RFC5420]. Thus using this sub-TLV means any
Attribute TLV can now be targeted at specific nodes using the LSP
Attribute Hop Info TLV.
Note that this means the number space for the Type value of
Attributes for the whole LSP and those that can only ever be targeted
at specific hops is shared.
3.2.5. 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 Hop Info Index subobject must be appended
Margaria, et al. Expires January 16, 2013 [Page 9]
Internet-Draft General ERO LSP parameters July 2012
after the existing subobjects defined in [RFC3209], [RFC3473],
[RFC3477], [RFC4873], [RFC4874], [RFC5520] and [RFC5553]. Only one
Hop Info Index subobject may be added per node or link entry.
If a node is processing an ERO Hop Info Index 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.
If the node does supports the Hop Info Index subobject it will look
for a corresponding (Both having the same Index field value) LSP
Attribute Hop Info TLV in the LSP Attribute object. If one is not
present it will return a PathErr with error code "Routing Error" and
error value "Bad EXPLICIT_ROUTE object".
A node processing the LSP Attribute Hop Info TLV should not alter it.
It is valid for multiple ERO entries to refer to the same Hop Info
TLV, thus targeting the same information at multiple nodes.
The RRO Hop Info Index subobject should be processed according to the
rules of section 7.3.1 of [RFC5420]. A node inserting an RRO Hop
Info Index subobject should not also insert an RRO Attributes
subobject.
3.2.6. Pros and Cons
This solution is more complex in term of processing, but addresses
some of the restrictions in the first solution. LSP Attribute TLVs
allow a length of up to 65535 bytes and the indexing system allows
multiple nodes to target the same information. The LSP Attribute Hop
Info TLV may be extended by further sub-TLV types
Other objects may be candidate to contain the Indexed ERO attribute,
for instance the ERO object with a new C-Type.
Margaria, et al. Expires January 16, 2013 [Page 10]
Internet-Draft General ERO LSP parameters July 2012
4. IANA Considerations
TBD once a final approach has been chosen.
Margaria, et al. Expires January 16, 2013 [Page 11]
Internet-Draft General ERO LSP parameters July 2012
5. Security Considerations
None.
Margaria, et al. Expires January 16, 2013 [Page 12]
Internet-Draft General ERO LSP parameters July 2012
6. 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].
Margaria, et al. Expires January 16, 2013 [Page 13]
Internet-Draft General ERO LSP parameters July 2012
7. References
7.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.
7.2. Informative References
[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.
Margaria, et al. Expires January 16, 2013 [Page 14]
Internet-Draft General ERO LSP parameters July 2012
Authors' Addresses
Cyril Margaria (editor)
Nokia Siemens Networks
St Martin Strasse 76
Munich, 81541
Germany
Phone: +49 89 5159 16934
Email: cyril.margaria@nsn.com
Dirk Schroetter
NUTS:iX GmbH
Langer Weg 88
Eschborn, 65185
DE
Phone: +49 6173 39198411
Email: dirk.schroetter@nutsix.de
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
Margaria, et al. Expires January 16, 2013 [Page 15]
Internet-Draft General ERO LSP parameters July 2012
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, 2013 [Page 16]