Internet Engineering Task Force S. Alvarez
Internet-Draft S. Sivabalan
Intended status: Standards Track Cisco Systems, Inc.
Expires: April 25, 2014 October 22, 2013
PCE Path Profiles
draft-alvarez-pce-path-profiles-00
Abstract
This document describes extensions to the Path Computation Element
(PCE) Communication Protocol (PCEP) to signal path profiles. A
stateful or stateless path computation element (PCE) can maintain an
association between a set of path parameters and a profile. A PCC
can use the path profile to initiate a path computation request
without having to specify a detailed list of path parameters. In
addition, a PCC can use the path profile to implement local policies
associated with a path.
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 April 25, 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
Alvarez & Sivabalan Expires April 25, 2014 [Page 1]
Internet-Draft PCE Path Profiles October 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. Requirements Language . . . . . . . . . . . . . . . . . . 2
2. Path Profiles . . . . . . . . . . . . . . . . . . . . . . . . 2
3. Procedures . . . . . . . . . . . . . . . . . . . . . . . . . 3
3.1. Capability Advertisement . . . . . . . . . . . . . . . . 3
3.2. PCC-Initiated Paths . . . . . . . . . . . . . . . . . . . 3
3.2.1. Point-to-Point Paths . . . . . . . . . . . . . . . . 4
3.2.2. Point-to-Multipoint Paths . . . . . . . . . . . . . . 5
3.3. PCE-Initiated Paths . . . . . . . . . . . . . . . . . . . 5
4. Object Extensions . . . . . . . . . . . . . . . . . . . . . . 6
4.1. OPEN Object . . . . . . . . . . . . . . . . . . . . . . . 6
4.2. PATH-PROFILE Object . . . . . . . . . . . . . . . . . . . 6
5. Error Codes for PATH-PROFILE Object . . . . . . . . . . . . . 7
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 7
7. Security Considerations . . . . . . . . . . . . . . . . . . . 7
8. References . . . . . . . . . . . . . . . . . . . . . . . . . 7
8.1. Normative References . . . . . . . . . . . . . . . . . . 8
8.2. Informative References . . . . . . . . . . . . . . . . . 8
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 9
1. Introduction
1.1. 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. Path Profiles
A path profile represents a list of path computation parameters or
attributes that a PCE owns. The PCC learns that association through
the interaction with the PCE. If the PCC initiates the path setup,
it uses the path profile as part of the path computation request. In
its simplest form, the request will only include mandatory path
request objects and a PATH-PROFILE object defined in Section 4.2.
The PCE uses the path profile to identify the appropriate path
computation parameters. Then, it performs the path computation and
sends a reply listing the detailed path parameters used. If the PCE
initiates the path setup, the PCE signals the path parameters and
includes a PATH-PROFILE object to indicate the path profile id
associated with the path.
Alvarez & Sivabalan Expires April 25, 2014 [Page 2]
Internet-Draft PCE Path Profiles October 2013
3. Procedures
3.1. Capability Advertisement
PCEP speakers advertise their capability to support path profiles
during the session initialization phase. They include the PATH-
PROFILE-CAPABILITY TLV defined in Section 4.1 as part of the OPEN
object. A PCEP speaker can only signal a path profile if both
speakers advertised this capability. A speaker MUST send a PCErr
message with Error-Type=4 (Not supported object), Error-value=1 (Not
supported object class) and close the session if it receives a
message with a path profile id, it supports the extensions in this
document and both speakers did not advertise this capability.
3.2. PCC-Initiated Paths
A PCC MAY include a PATH-PROFILE object when sending a PCReq message.
The PCE uses the path profile id to select the parameters to fullfil
the request. The means by which the PCC learns about a particular
path profile id and decides to include it in a PCReq message are
outside the scope of this document. Similarly, the means by which
the PCE selects a set of parameters based on the profile id for a
specific request are outside the scope of this document. The PCE may
be stateful or stateless.
A PCE may receive a path computation request with an unknown or
invalid path profile id. The PCE sends a PCErr message with Error-
Type=[TBA] (PATH-PROFILE Error), Error-value=1 (Unknown path profile)
if the path profile id is not known to the PCE. The PCE sends a
PCErr message with Error-Type=[TBA] (PATH-PROFILE Error), Error-
value=2 (Invalid path profile) if the PCE knows about the path
profile id, but considers the request invalid. The profile may be
invalid because of the path type, the PCEP session type or for the
originating PCC.
The PCE will determine whether to consider any additional optional
objects included in a PCReq message based on policy. As illustrated
in Section 3.2.1 and Section 3.2.2, the PCC MAY include other
optional objects along with a PATH-PROFILE object as part of a path
computation request. The PCC will use the processing-rule (P) flag
in the common object header to signal whether it considers those
objects mandatory or optional when the PCE performs path computation.
Those objects may overlap with the path parameters that the PCE
associates with the path profile id.
PCE policy may place different kinds of restrictions on PCReq
messages that include a PATH-PROFILE object and additional
parameters. A PCE MUST send an error message if it receives a
Alvarez & Sivabalan Expires April 25, 2014 [Page 3]
Internet-Draft PCE Path Profiles October 2013
request with optional objects signaled as mandatory (P flag = 1) for
path computation and PCE policy does not allow such behavior from the
originating PCC. In that case, the PCE sends a PCErr message with
Error-Type=[TBA] (PATH-PROFILE Error), Error-value=3 (Unexpected
mandatory object). If the objects are signaled as optional (P flag =
0) for path computation, the PCE will decide based on policy whether
to consider them or not. When sending the PCRep message for the
request, the PCE will use the ignore (I) flag in the common object
header to indicate to the PCC whether an object was ignored.
3.2.1. Point-to-Point Paths
[RFC5440] defines the basic structure of a PCReq message for point-
to-point paths. This documents extends the message format as
follows:
<PCReq Message>::= <Common Header>
[<svec-list>]
<request-list>
where:
<svec-list>::=<SVEC>[<svec-list>]
<request-list>::=<request>[<request-list>]
<request>::= <RP>
<END-POINTS>
[<PATH-PROFILE>]
[<path-computation>]
where:
<path-computation> is the list of optional objects used for path
computation as defined initially in [RFC5440] and modified in
subsequent PCEP extensions.
If present in a PCReq message, the PATH-PROFILE object MUST be the
first optional object in the request portion of the message.
Alvarez & Sivabalan Expires April 25, 2014 [Page 4]
Internet-Draft PCE Path Profiles October 2013
3.2.2. Point-to-Multipoint Paths
[RFC6006] defines the basic structure of a PCReq message for point-
to-multipoint paths. This documents extends the message format as
follows:
TBD
3.3. PCE-Initiated Paths
A PCE MAY include a PATH-PROFILE object when sending a PCInitiate
message as defined in [I-D.crabbe-pce-pce-initiated-lsp]. The PCC
can use the path profile id to select local behavior to apply to the
path. The means by which the PCE selects a profile id for a specific
PCInitiate message are outside the scope of this document.
Similarly, the means by which the PCC selects the local behavior to
apply to a path based on a path profile id are outside the scope of
this document.
[I-D.crabbe-pce-pce-initiated-lsp] defines the basic structure of a
PCInitiate message. This documents extends the message format as
follows:
<PCInitiate Message> ::= <Common Header>
<PCE-initiated-lsp-list>
Where:
<PCE-initiated-lsp-list> ::= <PCE-initiated-lsp-request>
[<PCE-initiated-lsp-list>]
<PCE-initiated-lsp-request> ::= (<PCE-initiated-lsp-instantiation>|
<PCE-initiated-lsp-deletion>)
<PCE-initiated-lsp-instantiation> ::= <SRP>
<LSP>
<END-POINTS>
<ERO>
[PATH-PROFILE>
[<attribute-list>]
<PCE-initiated-lsp-deletion> ::= <SRP>
<LSP>
where:
Alvarez & Sivabalan Expires April 25, 2014 [Page 5]
Internet-Draft PCE Path Profiles October 2013
<attribute-list> is defined in [RFC5440] and extended by PCEP
extensions.
4. Object Extensions
4.1. OPEN Object
This documents defines a new optional PATH-PROFILE-CAPABILITY TLV in
the OPEN object.
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=[TBA] | Length=4 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reserved | Flags |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
PATH-PROFILE-CAPABILITY TLV
Figure 1
Reserved (16 bits):
MUST be set to zero on transmission and ignored on recepit.
Flags (16 bits):
Unassigned bits are considered reserved. They MUST be set to zero
on transmission and ignored on recepit. No flags are currently
defined.
4.2. PATH-PROFILE Object
The PATH-PROFILE object may be carried in PCReq, PCInitiate and PCUpd
messages.
PATH-PROFILE Object-Class is [TBA].
PATH-PROFILE Object-Type is 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reserved | Path Profile Id |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
// Optional TLVs //
| |
Alvarez & Sivabalan Expires April 25, 2014 [Page 6]
Internet-Draft PCE Path Profiles October 2013
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
PATH-PROFILE Object
Figure 2
Reserved (16 bits):
MUST be set to zero on transmission and ignored on recepit.
Path Profile Id (16 bits):
(non-zero) unsigned path profile identifier.
The PATH-PROFILE object has a variable length and may contain
additional TLVs. No TLVs are currently defined.
5. Error Codes for PATH-PROFILE Object
Error-Type Meaning Error-Value
<TBA> PATH-PROFILE Error 1: Unknown path profile
2: Invalid path profile
3: Unexpected mandatory object
6. IANA Considerations
IANA is requested to assign the following code points.
PATH-PROFILE-CAPABILITY TLV
PATH-PROFILE Object-Class
PATH-PROFILE Object-Type
PATH-PROFILE Error-Type
7. Security Considerations
TBD
8. References
Alvarez & Sivabalan Expires April 25, 2014 [Page 7]
Internet-Draft PCE Path Profiles October 2013
8.1. Normative References
[I-D.ali-pce-remote-initiated-gmpls-lsp]
Ali, Z., Sivabalan, S., Filsfils, C., Varga, R., Lopez,
V., and O. Dios, "Path Computation Element Communication
Protocol (PCEP) Extensions for remote-initiated GMPLS LSP
Setup", draft-ali-pce-remote-initiated-gmpls-lsp-01 (work
in progress), July 2013.
[I-D.crabbe-pce-pce-initiated-lsp]
Crabbe, E., Minei, I., Sivabalan, S., and R. Varga, "PCEP
Extensions for PCE-initiated LSP Setup in a Stateful PCE
Model", draft-crabbe-pce-pce-initiated-lsp-03 (work in
progress), October 2013.
[I-D.ietf-pce-gmpls-pcep-extensions]
Margaria, C., Dios, O., and F. Zhang, "PCEP extensions for
GMPLS", draft-ietf-pce-gmpls-pcep-extensions-08 (work in
progress), July 2013.
[I-D.ietf-pce-stateful-pce]
Crabbe, E., Medved, J., Minei, I., and R. Varga, "PCEP
Extensions for Stateful PCE", draft-ietf-pce-stateful-
pce-07 (work in progress), October 2013.
[I-D.sivabalan-pce-segment-routing]
Sivabalan, S., Medved, J., Filsfils, C., Crabbe, E., and
R. Raszuk, "PCEP Extensions for Segment Routing", draft-
sivabalan-pce-segment-routing-02 (work in progress),
October 2013.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC5440] Vasseur, JP. and JL. Le Roux, "Path Computation Element
(PCE) Communication Protocol (PCEP)", RFC 5440, March
2009.
[RFC6006] Zhao, Q., King, D., Verhaeghe, F., Takeda, T., Ali, Z.,
and J. Meuric, "Extensions to the Path Computation Element
Communication Protocol (PCEP) for Point-to-Multipoint
Traffic Engineering Label Switched Paths", RFC 6006,
September 2010.
8.2. Informative References
[RFC4655] Farrel, A., Vasseur, J., and J. Ash, "A Path Computation
Element (PCE)-Based Architecture", RFC 4655, August 2006.
Alvarez & Sivabalan Expires April 25, 2014 [Page 8]
Internet-Draft PCE Path Profiles October 2013
Authors' Addresses
Santiago Alvarez
Cisco Systems, Inc.
170 West Tasman Drive
San Jose, CA 95134
USA
Email: saalvare@cisco.com
Siva Sivabalan
Cisco Systems, Inc.
2000 Innovation Drive
Kanata, ON K2K-3E8
Canada
Email: msiva@cisco.com
Alvarez & Sivabalan Expires April 25, 2014 [Page 9]