< draft-alvarez-pce-path-profiles-01.txt   draft-alvarez-pce-path-profiles-02.txt >
Internet Engineering Task Force S. Alvarez Internet Engineering Task Force S. Alvarez
Internet-Draft S. Sivabalan Internet-Draft S. Sivabalan
Intended status: Standards Track Z. Ali Intended status: Standards Track Z. Ali
Expires: August 18, 2014 Cisco Systems, Inc. Expires: September 5, 2014 Cisco Systems, Inc.
L. Tomotaki L. Tomotaki
Verizon Verizon
V. Lopez V. Lopez
Telefonica I+D Telefonica I+D
February 14, 2014 March 4, 2014
PCE Path Profiles PCE Path Profiles
draft-alvarez-pce-path-profiles-01 draft-alvarez-pce-path-profiles-02
Abstract Abstract
This document describes extensions to the Path Computation Element This document describes extensions to the Path Computation Element
(PCE) Communication Protocol (PCEP) to signal path profile (PCE) Communication Protocol (PCEP) to signal path profile
identifiers. A profile represents a list of path parameters or identifiers. A profile represents a list of path parameters or
policies that a PCEP peer may invoke on a remote peer using an opaque policies that a PCEP peer may invoke on a remote peer using an opaque
identifier. When a path computation client (PCC) initiates a path identifier. When a path computation client (PCC) initiates a path
computation request, the PCC can signal profile identifiers to invoke computation request, the PCC can signal profile identifiers to invoke
path parameters or policies defined on the PCE which would influence path parameters or policies defined on the PCE which would influence
skipping to change at page 1, line 45 skipping to change at page 1, line 45
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/. Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on August 18, 2014. This Internet-Draft will expire on September 5, 2014.
Copyright Notice Copyright Notice
Copyright (c) 2014 IETF Trust and the persons identified as the Copyright (c) 2014 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of (http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
skipping to change at page 2, line 30 skipping to change at page 2, line 30
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1. Requirements Language . . . . . . . . . . . . . . . . . . 2 1.1. Requirements Language . . . . . . . . . . . . . . . . . . 2
2. Path Profiles . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Path Profiles . . . . . . . . . . . . . . . . . . . . . . . . 3
3. Procedures . . . . . . . . . . . . . . . . . . . . . . . . . 3 3. Procedures . . . . . . . . . . . . . . . . . . . . . . . . . 3
3.1. Capability Advertisement . . . . . . . . . . . . . . . . 3 3.1. Capability Advertisement . . . . . . . . . . . . . . . . 3
3.2. PCC-Initiated Paths . . . . . . . . . . . . . . . . . . . 3 3.2. PCC-Initiated Paths . . . . . . . . . . . . . . . . . . . 3
3.2.1. Point-to-Point Paths . . . . . . . . . . . . . . . . 4 3.2.1. Point-to-Point Paths . . . . . . . . . . . . . . . . 4
3.2.2. Point-to-Multipoint Paths . . . . . . . . . . . . . . 5 3.2.2. Point-to-Multipoint Paths . . . . . . . . . . . . . . 5
3.3. PCE-Initiated Paths . . . . . . . . . . . . . . . . . . . 5 3.3. PCE-Initiated Paths . . . . . . . . . . . . . . . . . . . 6
4. Object Extensions . . . . . . . . . . . . . . . . . . . . . . 6 4. Object Extensions . . . . . . . . . . . . . . . . . . . . . . 7
4.1. OPEN Object . . . . . . . . . . . . . . . . . . . . . . . 6 4.1. OPEN Object . . . . . . . . . . . . . . . . . . . . . . . 7
4.2. PATH-PROFILE Object . . . . . . . . . . . . . . . . . . . 7 4.2. PATH-PROFILE Object . . . . . . . . . . . . . . . . . . . 8
5. Error Codes for PATH-PROFILE Object . . . . . . . . . . . . . 8 5. Error Codes for PATH-PROFILE Object . . . . . . . . . . . . . 9
6. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 8 6. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 9
7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 8 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 9
8. Security Considerations . . . . . . . . . . . . . . . . . . . 8 8. Security Considerations . . . . . . . . . . . . . . . . . . . 9
9. References . . . . . . . . . . . . . . . . . . . . . . . . . 8 9. References . . . . . . . . . . . . . . . . . . . . . . . . . 9
9.1. Normative References . . . . . . . . . . . . . . . . . . 8 9.1. Normative References . . . . . . . . . . . . . . . . . . 10
9.2. Informative References . . . . . . . . . . . . . . . . . 9 9.2. Informative References . . . . . . . . . . . . . . . . . 11
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 10 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 11
1. Introduction 1. Introduction
1.1. Requirements Language 1.1. Requirements Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC 2119 [RFC2119]. document are to be interpreted as described in RFC 2119 [RFC2119].
2. Path Profiles 2. Path Profiles
skipping to change at page 3, line 32 skipping to change at page 3, line 32
OPEN object. A PCEP peer can only signal path profile identifiers if OPEN object. A PCEP peer can only signal path profile identifiers if
both peers advertised this capability. A peer MUST send a PCErr both peers advertised this capability. A peer MUST send a PCErr
message with Error-Type=4 (Not supported object), Error-value=1 (Not message with Error-Type=4 (Not supported object), Error-value=1 (Not
supported object class) and close the session if it receives a supported object class) and close the session if it receives a
message with a path profile identifier, it supports the extensions in message with a path profile identifier, it supports the extensions in
this document and both peers did not advertise this capability. this document and both peers did not advertise this capability.
3.2. PCC-Initiated Paths 3.2. PCC-Initiated Paths
A PCC MAY include a PATH-PROFILE object when sending a PCReq message. A PCC MAY include a PATH-PROFILE object when sending a PCReq message.
The PCE uses the path profile identifier to select path parameters or The PCE uses the path profile identifiers to select path parameters
path policies to fulfill the request. The means by which the PCC or path policies to fulfill the request. The PCE MUST process the
learns about a particular path profile identifier and decides to identifiers in the PATH-PROFILE object in the order received. The
include it in a PCReq message are outside the scope of this document. means by which the PCC learns about a particular path profile
Similarly, the means by which the PCE selects a set of parameters or identifier and decides to include it in a PCReq message are outside
policies based on the profile identifier for a specific request are the scope of this document. Similarly, the means by which the PCE
outside the scope of this document. The P flag of the PATH-PROFILE selects a set of parameters or policies based on the profile
object MUST be set. identifier for a specific request are outside the scope of this
document. The P flag of the PATH-PROFILE object MUST be set.
A PCE may receive a path computation request with an unknown or A PCE may receive a path computation request with one or more
invalid path profile identifier. The PCE sends a PCErr message with unexpected path profile identifiers. The PCE sends a PCErr message
Error-Type=[TBA] (PATH-PROFILE Error), Error-value=1 (Unknown path with Error-Type=[TBA] (PATH-PROFILE Error), Error-value=1 (Unknown
profile) if the path profile identifier is not known to the PCE. The path profile) if the path profile identifier is not known to the PCE.
PCE sends a PCErr message with Error-Type=[TBA] (PATH-PROFILE Error), The PCE sends a PCErr message with Error-Type=[TBA] (PATH-PROFILE
Error-value=2 (Invalid path profile) if the PCE knows about the path Error), Error-value=2 (Invalid path profile) if the PCE knows about
profile identifier, but considers the request invalid. As an the path profile identifier, but considers the request invalid. As
example, the profile may be invalid because of the path type, the an example, the profile may be invalid because of the path type, the
PCEP session type or the originating PCC. The PCEP-ERROR object PCEP session type or the originating PCC. The PCE sends a PCErr
SHOULD include the path profile identifiers that generated the error message with Error-Type=[TBA] (PATH-PROFILE Error), Error-value=3
condition. (Incompatible path profiles) if two or more path profile identifiers
are incompatible. That is, they are known and valid, but can not
occur simultanously. The PCEP-ERROR object SHOULD include the path
profile identifiers that generated the error condition.
The PCE will determine whether to consider any additional optional The PCE will determine whether to consider any additional optional
objects included in a PCReq message based on policy. As illustrated 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 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 optional objects along with a PATH-PROFILE object as part of a path
computation request. The PCC will use the processing-rule (P) flag computation request. The PCC will use the processing-rule (P) flag
in the common object header to signal whether it considers those in the common object header to signal whether it considers those
objects mandatory or optional when the PCE performs path computation. objects mandatory or optional when the PCE performs path computation.
Those objects may overlap with the path parameters that the PCE Those objects may overlap with the path parameters that the PCE
associates with the path profile identifier. associates with the path profile identifier.
skipping to change at page 5, line 18 skipping to change at page 5, line 20
If present in a PCReq message, the PATH-PROFILE object MUST be the If present in a PCReq message, the PATH-PROFILE object MUST be the
first optional object in the request portion of the message. first optional object in the request portion of the message.
3.2.2. Point-to-Multipoint Paths 3.2.2. Point-to-Multipoint Paths
[RFC6006] defines the basic structure of a PCReq message for point- [RFC6006] defines the basic structure of a PCReq message for point-
to-multipoint paths. This documents extends the message format as to-multipoint paths. This documents extends the message format as
follows: follows:
TBD <PCReq Message>::= <Common Header>
<request>
where:
<request>::= <RP>
<end-point-rro-pair-list>
[<PATH-PROFILE>]
[<OF>]
[<LSPA>]
[<BANDWIDTH>]
[<metric-list>]
[<IRO>]
[<LOAD-BALANCING>]
where:
<end-point-rro-pair-list>::=
<END-POINTS>[<RRO-List>][<BANDWIDTH>]
[<end-point-rro-pair-list>]
<RRO-List>::=<RRO>[<BANDWIDTH>][<RRO-List>]
<metric-list>::=<METRIC>[<metric-list>]
If present in a PCReq message, the PATH-PROFILE object MUST be the
first optional object in the request portion of the message.
3.3. PCE-Initiated Paths 3.3. PCE-Initiated Paths
A PCE MAY include a PATH-PROFILE object when sending a PCInitiate A PCE MAY include a PATH-PROFILE object when sending a PCInitiate
message as defined in [I-D.ietf-pce-pce-initiated-lsp]. The PCC uses message as defined in [I-D.ietf-pce-pce-initiated-lsp]. The PCC uses
the path profile identifier to select path parameters or path the path profile identifiers to select path parameters or path
policies to be applied during the instantiation of the path. The policies to be applied during the instantiation of the path. The PCC
means by which the PCE learns about a particular path profile MUST process the identifiers in the PATH-PROFILE object in the order
identifier and decides to include it in a PCInitiate message are received. The means by which the PCE learns about a particular path
outside the scope of this document. Similarly, the means by which profile identifier and decides to include it in a PCInitiate message
the PCC selects a set of parameters or policies based on the profile are outside the scope of this document. Similarly, the means by
identifier for a specific path are outside the scope of this which the PCC selects a set of parameters or policies based on the
profile identifier for a specific path are outside the scope of this
document. document.
A PCC may receive a path instantiation request with an unknown or A PCC may receive a path instantiation request with one or more
invalid path profile identifier. The PCC sends a PCErr message with unexpected path profile identifiers. The PCC sends a PCErr message
Error-Type=[TBA] (PATH-PROFILE Error), Error-value=1 (Unknown path with Error-Type=[TBA] (PATH-PROFILE Error), Error-value=1 (Unknown
profile) if the path profile identifier is not known to the PCC. The path profiles) if the path profile identifier is not known to the
PCC sends a PCErr message with Error-Type=[TBA] (PATH-PROFILE Error), PCC. The PCC sends a PCErr message with Error-Type=[TBA] (PATH-
Error-value=2 (Invalid path profile) if the PCC knows about the path PROFILE Error), Error-value=2 (Invalid path profiles) if the PCC
profile identifier, but considers the request invalid. As an knows about the path profile identifier, but considers the request
example, the profile may be invalid because of the path type, the invalid. As an example, the profile may be invalid because of the
PCEP session type or the originating PCE. The PCEP-ERROR object path type, the PCEP session type or the originating PCE. The PCC
SHOULD include the path profile identifiers that generated the error sends a PCErr message with Error-Type=[TBA] (PATH-PROFILE Error),
Error-value=3 (Incompatible path profiles) if two or more path
profile identifiers are incompatible. That is, they are known and
valid, but can not occur simultanously. The PCEP-ERROR object SHOULD
include the path profile identifiers that generated the error
condition. condition.
[I-D.ietf-pce-pce-initiated-lsp] defines the basic structure of a [I-D.ietf-pce-pce-initiated-lsp] defines the basic structure of a
PCInitiate message. This documents extends the message format as PCInitiate message. This documents extends the message format as
follows: follows:
<PCInitiate Message> ::= <Common Header> <PCInitiate Message> ::= <Common Header>
<PCE-initiated-lsp-list> <PCE-initiated-lsp-list>
Where: Where:
skipping to change at page 8, line 15 skipping to change at page 9, line 15
MUST be set to zero on transmission and ignored on receipt. MUST be set to zero on transmission and ignored on receipt.
Flags (8 bits): Flags (8 bits):
Unassigned bits are considered reserved. They MUST be set to zero Unassigned bits are considered reserved. They MUST be set to zero
on transmission and ignored on receipt. No flags are currently on transmission and ignored on receipt. No flags are currently
defined. defined.
Path Profile Id (32 bits): Path Profile Id (32 bits):
(non-zero) unsigned path profile identifier. (non-zero) unsigned path profile identifier.
If more than one PATH-PROFILE object is present, the first one MUST
be processed and subsequent objects ignored.
5. Error Codes for PATH-PROFILE Object 5. Error Codes for PATH-PROFILE Object
Error-Type Meaning Error-Value Error-Type Meaning Error-Value
<TBA> PATH-PROFILE Error 1: Unknown path profile <TBA> PATH-PROFILE Error 1: Unknown path profiles
2: Invalid path profile 2: Invalid path profiles
3: Unexpected mandatory object 3: Incompatible path profiles
4: Unexpected mandatory object
6. Acknowledgements 6. Acknowledgements
The authors would like to thank Clarence Filsfils for his valuable The authors would like to thank Clarence Filsfils for his valuable
comments. comments.
7. IANA Considerations 7. IANA Considerations
IANA is requested to assign the following code points. IANA is requested to assign the following code points.
skipping to change at page 8, line 44 skipping to change at page 10, line 4
PATH-PROFILE Object-Type PATH-PROFILE Object-Type
PATH-PROFILE Error-Type PATH-PROFILE Error-Type
8. Security Considerations 8. Security Considerations
TBD TBD
9. References 9. References
9.1. Normative References 9.1. Normative References
[I-D.ali-pce-remote-initiated-gmpls-lsp] [I-D.ali-pce-remote-initiated-gmpls-lsp]
Ali, Z., Sivabalan, S., Filsfils, C., Varga, R., Lopez, Ali, Z., Sivabalan, S., Filsfils, C., Varga, R., Lopez,
V., Dios, O., and X. Zhang, "Path Computation Element V., Dios, O., and X. Zhang, "Path Computation Element
Communication Protocol (PCEP) Extensions for remote- Communication Protocol (PCEP) Extensions for remote-
initiated GMPLS LSP Setup", draft-ali-pce-remote- initiated GMPLS LSP Setup", draft-ali-pce-remote-
initiated-gmpls-lsp-02 (work in progress), October 2013. initiated-gmpls-lsp-03 (work in progress), February 2014.
[I-D.ietf-pce-gmpls-pcep-extensions] [I-D.ietf-pce-gmpls-pcep-extensions]
Margaria, C., Dios, O., and F. Zhang, "PCEP extensions for Margaria, C., Dios, O., and F. Zhang, "PCEP extensions for
GMPLS", draft-ietf-pce-gmpls-pcep-extensions-08 (work in GMPLS", draft-ietf-pce-gmpls-pcep-extensions-09 (work in
progress), July 2013. progress), February 2014.
[I-D.ietf-pce-pce-initiated-lsp] [I-D.ietf-pce-pce-initiated-lsp]
Crabbe, E., Minei, I., Sivabalan, S., and R. Varga, "PCEP Crabbe, E., Minei, I., Sivabalan, S., and R. Varga, "PCEP
Extensions for PCE-initiated LSP Setup in a Stateful PCE Extensions for PCE-initiated LSP Setup in a Stateful PCE
Model", draft-ietf-pce-pce-initiated-lsp-00 (work in Model", draft-ietf-pce-pce-initiated-lsp-00 (work in
progress), December 2013. progress), December 2013.
[I-D.ietf-pce-stateful-pce] [I-D.ietf-pce-stateful-pce]
Crabbe, E., Medved, J., Minei, I., and R. Varga, "PCEP Crabbe, E., Medved, J., Minei, I., and R. Varga, "PCEP
Extensions for Stateful PCE", draft-ietf-pce-stateful- Extensions for Stateful PCE", draft-ietf-pce-stateful-
pce-07 (work in progress), October 2013. pce-08 (work in progress), February 2014.
[I-D.sivabalan-pce-segment-routing] [I-D.sivabalan-pce-segment-routing]
Sivabalan, S., Medved, J., Filsfils, C., Crabbe, E., and Sivabalan, S., Medved, J., Filsfils, C., Crabbe, E., and
R. Raszuk, "PCEP Extensions for Segment Routing", draft- R. Raszuk, "PCEP Extensions for Segment Routing", draft-
sivabalan-pce-segment-routing-02 (work in progress), sivabalan-pce-segment-routing-02 (work in progress),
October 2013. October 2013.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997. Requirement Levels", BCP 14, RFC 2119, March 1997.
 End of changes. 16 change blocks. 
61 lines changed or deleted 98 lines changed or added

This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/