draft-ietf-pce-of-03.txt   draft-ietf-pce-of-04.txt 
Network Working Group J.L. Le Roux Network Working Group J.L. Le Roux
Internet Draft France Telecom Internet Draft France Telecom
Category: Standard Track Category: Standard Track
Expires: January 2009 J.P. Vasseur Created: August 5, 2008 J.P. Vasseur
Cisco System Inc. Expires: February 5, 2009 Cisco System Inc.
Y. Lee Y. Lee
Huawei Huawei
Encoding of Objective Functions in Path Computation Element
communication Protocol (PCEP)
draft-ietf-pce-of-03.txt Encoding of Objective Functions in the Path Computation Element
Communication Protocol (PCEP)
draft-ietf-pce-of-04.txt
Status of this Memo Status of this Memo
By submitting this Internet-Draft, each author represents that any By submitting this Internet-Draft, each author represents that any
applicable patent or other IPR claims of which he or she is aware applicable patent or other IPR claims of which he or she is aware
have been or will be disclosed, and any of which he or she becomes have been or will be disclosed, and any of which he or she becomes
aware will be disclosed, in accordance with Section 6 of BCP 79. aware will be disclosed, in accordance with Section 6 of BCP 79.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that other Task Force (IETF), its areas, and its working groups. Note that other
skipping to change at page 2, line 10 skipping to change at page 1, line 43
http://www.ietf.org/ietf/1id-abstracts.txt. http://www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html. http://www.ietf.org/shadow.html.
Abstract Abstract
The computation of one or a set of Traffic Engineering Label Switched The computation of one or a set of Traffic Engineering Label Switched
Paths (TE LSPs) in MultiProtocol Label Switching (MPLS) and Paths (TE LSPs) in MultiProtocol Label Switching (MPLS) and
Generalized MPLS (GMPLS) networks, is subject to a set of one or more Generalized MPLS (GMPLS) networks, is subject to a set of one or more
specific optimization criteria, referred to as an objective function specific optimization criteria, referred to as objective functions
(e.g. minimum cost path, widest path, etc.). (e.g. minimum cost path, widest path, etc.).
A Path Computation Client (PCC) may want a path to be computed for
one or more TE LSPs according to a specific objective function. Thus, In the Path Computation Element (PCE) architecture, a Path
the PCC needs to instruct the PCE to use the correct objective Computation Client (PCC) may want a path to be computed for one or
function. Furthermore, it is possible that not all PCEs support the more TE LSPs according to a specific objective function. Thus, the
same set of objective functions, therefore it is useful for the PCC PCC needs to instruct the PCE to use the correct objective function.
to be able to automatically discover the set of objective functions Furthermore, it is possible that not all PCEs support the same set of
supported by each PCE. objective functions, therefore it is useful for the PCC to be able to
automatically discover the set of objective functions supported by
each PCE.
This document defines extensions to the PCE communication Protocol This document defines extensions to the PCE communication Protocol
(PCEP) to allow a PCE to indicate the set of objective functions it (PCEP) to allow a PCE to indicate the set of objective functions it
supports. Extensions are also defined so that a PCC can indicate in supports. Extensions are also defined so that a PCC can indicate in
a path computation request the required objective function, and so a path computation request the required objective function, and so
that a PCE can report in a path computation reply the objective that a PCE can report in a path computation reply the objective
function that was used for path computation. function that was used for path computation.
Conventions used in this document
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.
Table of Contents Table of Contents
Terminology.........................................................3
1. Introduction................................................3 1. Introduction................................................3
1.1. Terminology.................................................4
2. Discovery of PCE Objective Functions........................5 2. Discovery of PCE Objective Functions........................5
2.1. OF-List TLV.................................................5 2.1. OF-List TLV.................................................5
2.2. Elements of procedure.......................................6 2.2. Elements of procedure.......................................6
3. Objective Function in PCEP Path Computation Request and 3. Objective Function in PCEP Path Computation Request and
Reply Messages............................................6 Reply Messages............................................6
3.1. OF Object...................................................6 3.1. OF Object...................................................6
3.1.1. Elements of Procedure.......................................7 3.1.1. Elements of Procedure.......................................7
3.2. Carrying The OF Object In a PCEP Message....................8 3.2. Carrying The OF Object In a PCEP Message....................8
3.3. New RP Object Flag.........................................10 3.3. New RP Object Flag.........................................10
3.3.1. Elements Of Procedure......................................11 3.3.1. Elements Of Procedure......................................10
4. Objective Functions Definition.............................11 4. Objective Functions Definition.............................11
5. New Metric Types...........................................12 5. New Metric Types...........................................12
6. IANA Considerations........................................13 6. IANA Considerations........................................13
6.1. PCE Objective Function Sub-registry........................13 6.1. PCE Objective Function Sub-registry........................13
6.2. PCEP Code Points...........................................14 6.2. PCEP Code Points...........................................13
6.2.1. OF Object..................................................14 6.2.1. OF Object..................................................13
6.2.2. OF-List TLV................................................14 6.2.2. OF-List TLV................................................14
6.2.3. PCEP Error values..........................................14 6.2.3. PCEP Error values..........................................14
6.2.4. RP Object Flag.............................................14 6.2.4. RP Object Flag.............................................14
6.2.5. Metric Types...............................................15 6.2.5. Metric Types...............................................15
7. Security Considerations....................................15 7. Security Considerations....................................15
8. Manageability Considerations...............................15 8. Manageability Considerations...............................15
8.1. Control of Function and Policy.............................15 8.1. Control of Function and Policy.............................15
8.2. Information and Data Models................................15 8.2. Information and Data Models................................15
8.3. Liveness Detection and Monitoring..........................16 8.3. Liveness Detection and Monitoring..........................15
8.4. Verify Correct Operations..................................16 8.4. Verify Correct Operations..................................16
8.5. Requirements On Other Protocols............................16 8.5. Requirements On Other Protocols............................16
8.6. Impact On Network Operations...............................16 8.6. Impact On Network Operations...............................16
9. Acknowledgments............................................16 9. Acknowledgments............................................16
10. References.................................................16 10. References.................................................16
10.1. Normative Feferences.......................................16 10.1. Normative Feferences.......................................16
10.2. Informative References.....................................16 10.2. Informative References.....................................16
11. Authors' Addresses.........................................17 11. Authors' Addresses.........................................17
12. Intellectual Property Statement............................17 12. Intellectual Property Statement............................17
Terminology Conventions used in this document
Terminology used in this document
LSR: Label Switching Router.
OF: Objective Function: A set of one or more optimization
criteria used for the computation of a single path (e.g. path
cost minimization), or the synchronized computation of a set of
paths (e.g. aggregate bandwidth consumption minimization, etc.).
PCC: Path Computation Client: Any client application requesting a
path computation to be performed by a Path Computation Element.
PCE: Path Computation Element: An entity (component, application,
or network node) that is capable of computing a network path or
route based on a network graph, and applying computational
constraints.
PCEP: Path Computation Element communication Protocol.
TE LSP: Traffic Engineered Label Switched Path. 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 [RFC2119].
1. Introduction 1. Introduction
The PCE-based network architecture [RFC4655] defines a Path The Path Computation Element-based network architecture [RFC4655]
Computation Element (PCE) as an entity capable of computing TE LSP defines a Path Computation Element (PCE) as an entity capable of
paths based on a network graph, and applying computational computing the paths of Traffic Engineered Label Switched Paths (TE
LSPs) based on a network graph, and applying computational
constraints. A PCE services path computation requests sent by Path constraints. A PCE services path computation requests sent by Path
Computation Clients (PCC). Computation Clients (PCC).
The PCE communication Protocol (PCEP), defined in [PCEP], allows for The PCE communication Protocol (PCEP), defined in [PCEP], allows for
communication between a PCC and a PCE or between two PCEs, in communication between a PCC and a PCE or between two PCEs, in
compliance with requirements and guidelines set forth in [RFC4657]. compliance with requirements and guidelines set forth in [RFC4657].
Such interactions include path computation requests and path Such interactions include path computation requests and path
computation replies. computation replies.
The computation of one or a set of TE LSPs is subject to a set of one The computation of one or a set of TE LSPs is subject to a set of one
skipping to change at page 4, line 20 skipping to change at page 3, line 38
objective function is used by the PCE, when it computes a path or a objective function is used by the PCE, when it computes a path or a
set of paths, in order to select the "best" candidate paths. There is set of paths, in order to select the "best" candidate paths. There is
a variety of objective functions: an objective function could apply a variety of objective functions: an objective function could apply
either to a set of non-synchronized path computation requests, or to either to a set of non-synchronized path computation requests, or to
a set of synchronized path computation requests. In the former case, a set of synchronized path computation requests. In the former case,
the objective function refers to an individual path computation the objective function refers to an individual path computation
request (e.g. computation of the shortest constrained path where the request (e.g. computation of the shortest constrained path where the
metric is the IGP metric, computation of the least loaded constrained metric is the IGP metric, computation of the least loaded constrained
path, etc.). Conversely in the latter case, the objective function path, etc.). Conversely in the latter case, the objective function
refers to a set of path computation requests the computation of which refers to a set of path computation requests the computation of which
is synchronized (e.g. minimize the aggregate bandwidth consumption of is synchronized (e.g., minimize the aggregate bandwidth consumption
all LSPs, minimize the sum of the delays for two diverse paths, or of all LSPs, minimize the sum of the delays for two diverse paths, or
the delta between those delays, etc.). Moreover, some objective the delta between those delays, etc.). Moreover, some objective
functions relate to the optimization of a single metric and others to functions relate to the optimization of a single metric and others to
the optimization of a set of metrics (organized in a hierarchical the optimization of a set of metrics (organized in a hierarchical
manner, using a weighted function, etc.). manner, using a weighted function, etc.).
As spelled out in [RFC4674], it may be useful for a PCC to discover As spelled out in [RFC4674], it may be useful for a PCC to discover
the set of objective functions supported by a PCE. Furthermore, the set of objective functions supported by a PCE. Furthermore,
[RFC4657] requires the ability for a PCC to indicate in a path [RFC4657] requires the ability for a PCC to indicate in a path
computation request a required/desired objective function, as well as computation request a required/desired objective function, as well as
optional function parameters. optional function parameters.
For these purposes, this document extends the PCE communication For these purposes, this document extends the PCE communication
Protocol (PCEP). It defines PCEP extensions allowing a PCE to Protocol (PCEP). It defines PCEP extensions allowing a PCE to
advertise a list of supported objective functions, as well as advertise a list of supported objective functions, as well as
extensions to carry the objective function in PCEP request and reply extensions to carry the objective function in PCEP request and reply
messages. It complements the PCEP base specification [PCEP]. messages. It complements the PCEP base specification [PCEP].
Note that IS-IS and OSPF based PCE Discovery mechanisms are defined Note that IS-IS and OSPF-based PCE Discovery mechanisms are defined
in ([RFC5089], [RFC5088]). These mechanisms are dedicated to the in ([RFC5089], [RFC5088]). These mechanisms are dedicated to the
discovery of a few generic parameters while more detailed PCE discovery of a few generic parameters while more detailed PCE
parameters should be discovered using the PCE communication Protocol. parameters should be discovered using the PCE communication Protocol.
Objective functions are in this second category; thus the Objective Objective functions are in this second category; thus the Objective
Function discovery procedure is handled by PCEP. Function discovery procedure is handled by PCEP.
A new PCEP TLV, named the OF-List TLV is defined in Section 2. The A new PCEP TLV, named the OF-List TLV is defined in Section 2. The
OF-List TLV is carried in the PCEP OPEN object and allows a PCE to OF-List TLV is carried in the PCEP OPEN object and allows a PCE to
list, during PCEP session setup phase, the objective functions that list, during PCEP session setup phase, the objective functions that
it supports. it supports.
A new PCEP object, the OF object, is defined in Section 3. The OF A new PCEP object, the OF object, is defined in Section 3. The OF
object is carried within a PCReq message to indicate the object is carried within a PCReq message to indicate the
required/desired objective function to be applied by a PCE, or in a required/desired objective function to be applied by a PCE, or in a
PCRep message to indicate the objective function that was used for PCRep message to indicate the objective function that was used for
path computation. path computation.
Six mandatory objective functions that must be supported by PCEP are Six mandatory objective functions that must be supported by PCEP are
listed in [RFC4657]. This document provides, in Section 4, a listed in [RFC4657]. This document provides a definition of these six
definition of these six mandatory objective functions. Additional mandatory objective functions. Additional objective functions may be
objective functions may be defined in other documents. Note that defined in other documents. Note that additional objective functions
additional objective functions are defined for PCE Global Concurrent are defined for PCE Global Concurrent Optimization (GCO) application,
Optimization (GCO) application, in [PCE-GCO]. This document also in [PCE-GCO].
provides, in Section 5, the definition of four new metric types that
apply to a set of synchronized requests. This document also provides the definition of four new metric types
that apply to a set of synchronized requests.
1.1. Terminology
LSR: Label Switching Router.
OF: Objective Function: A set of one or more optimization criteria
used for the computation of a single path (e.g. path cost
minimization), or the synchronized computation of a set of paths
(e.g., aggregate bandwidth consumption minimization, etc.).
PCC: Path Computation Client: Any client application requesting a
path computation to be performed by a Path Computation Element.
PCE: Path Computation Element: An entity (component, application, or
network node) that is capable of computing a network path or route
based on a network graph, and applying computational constraints.
PCEP: Path Computation Element communication Protocol.
TE LSP: Traffic Engineered Label Switched Path.
2. Discovery of PCE Objective Functions 2. Discovery of PCE Objective Functions
This section defines PCEP extensions (see [PCEP]) so as to support This section defines PCEP extensions (see [PCEP]) so as to support
the advertisement of the objective functions supported by a PCE. the advertisement of the objective functions supported by a PCE.
A new PCEP OF-List (Objective Function list) TLV is defined. The PCEP A new PCEP OF-List (Objective Function list) TLV is defined. The PCEP
OF-List TLV is carried within an OPEN object, in order for a PCE to OF-List TLV is carried within an OPEN object, in order for a PCE to
advertise to a PCEP peer the list of objective functions it supports, advertise to a PCEP peer the list of objective functions it supports,
during PCEP session setup phase. during PCEP session setup phase.
skipping to change at page 7, line 37 skipping to change at page 7, line 29
code point registry (see Section 6). code point registry (see Section 6).
Reserved (2 bytes): This field MUST be set to zero on transmission Reserved (2 bytes): This field MUST be set to zero on transmission
and MUST be ignored on receipt. and MUST be ignored on receipt.
Optional TLVs may be defined in the future so as to encode objective Optional TLVs may be defined in the future so as to encode objective
function parameters. function parameters.
3.1.1. Elements of Procedure 3.1.1. Elements of Procedure
To request the use of a specific objective function by the PCE, a To request the use of a specific objective function by the PCE, a PCC
PCC includes an OF object in the PCReq message. includes an OF object in the PCReq message.
[PCEP] specifies a bit flag, referred to as the P bit, carried in [PCEP] specifies a bit flag, referred to as the P bit, carried in the
the common PCEP object header. The P bit is set by a PCC to mandate common PCEP object header. The P bit is set by a PCC to mandate that
that a PCE must take the information carried in the object into a PCE must take the information carried in the object into account
account during the path computation. during the path computation.
If the P bit is set in the OF object, the objective function is If the P bit is set in the OF object, the objective function is
mandatory (required objective function) and the PCE MUST use the mandatory (required objective function) and the PCE MUST use the
objective function during path computation. If the P bit is clear objective function during path computation. If the P bit is clear
in the OF object, the objective function is optional (desired in the OF object, the objective function is optional (desired
objective function) and the PCE SHOULD apply the function if it is objective function) and the PCE SHOULD apply the function if it is
supported, but MAY choose to apply a different objective function supported, but MAY choose to apply a different objective function
according to local capabilities and policies. according to local capabilities and policies.
On receipt of a PCReq message with an OF object, a PCE MUST proceed On receipt of a PCReq message with an OF object, a PCE MUST proceed
as follows: as follows:
- If the OF object is unknown/unsupported, the PCE MUST follow - If the OF object is unknown/unsupported, the PCE MUST follow
procedures defined in [PCEP], that is if the P bit is set, it procedures defined in [PCEP], that is if the P bit is set, it sends
sends a PCErr message with error type 3 or 4 a PCErr message with error type 3 or 4 (Unknown / Not supported
(Unknown / Not supported object) and error value 1 or 2 object) and error value 1 or 2 (unknown / unsupported object class
(unknown / unsupported object class / object type), and the / object type), and the related path computation request MUST be
related path computation request MUST be discarded. If the P discarded. If the P bit is cleared it is free to ignore the object.
bit is cleared it is free to ignore the object.
- If the objective function is unknown / unsupported and the P - If the objective function is unknown / unsupported and the P bit is
bit is set, the PCE MUST send a PCErr message with error type set, the PCE MUST send a PCErr message with error type 3 or 4
3 or 4 (Unknown/Not supported Object) and error value 4 (Unknown / Not supported Object) and error value 4 (Unrecognized /
(Unrecognized/Unsupported parameter), and the related path Unsupported parameter), and the related path computation request
computation request MUST be discarded. MUST be discarded.
- If the objective function is unknown / unsupported and the P - If the objective function is unknown / unsupported and the P bit is
bit is cleared, the PCE SHOULD apply another (default) cleared, the PCE SHOULD apply another (default) objective function.
objective function.
- If the objective function is supported but policy does not - If the objective function is supported but policy does not permit
permit applying it, and the P bit is set, the PCE MUST send a applying it, and the P bit is set, the PCE MUST send a PCErr
PCErr message with the PCEP error type "policy-violation" message with the PCEP error type "policy-violation" (type 5) and a
(type 5) and a new error value "objective function not new error value "objective function not allowed" (defined in this
allowed" (defined in this document). document).
- If the objective function is supported but policy does not - If the objective function is supported but policy does not allow
allow applying it, and the P bit is cleared, the PCE SHOULD applying it, and the P bit is cleared, the PCE SHOULD apply another
apply another (default) objective function. (default) objective function.
- If the objective function is supported and policy allows - If the objective function is supported and policy allows applying
applying it, then if the P bit is set the PCE MUST apply the it, then if the P bit is set the PCE MUST apply the requested
requested objective function, else if the P bit is cleared the objective function, else if the P bit is cleared the PCE is free to
PCE is free to apply any other objective function. apply any other objective function.
The default objective function may be locally configured. The default objective function may be locally configured.
3.2. Carrying The OF Object In a PCEP Message 3.2. Carrying The OF Object In a PCEP Message
The OF object MAY be carried within a PCReq message. If an objective The OF object MAY be carried within a PCReq message. If an objective
function is to be applied to a set of synchronized path computation function is to be applied to a set of synchronized path computation
requests, the OF object MUST be carried just after the corresponding requests, the OF object MUST be carried just after the corresponding
SVEC object, and MUST NOT be repeated for each elementary request. SVEC object, and MUST NOT be repeated for each elementary request.
Similarly if a metric is to be applied to a set of synchronized Similarly if a metric is to be applied to a set of synchronized
requests, the METRIC object MUST follow the SVEC object and MUST not requests, the METRIC object MUST follow the SVEC object and MUST NOT
be repeated for each elementary request. Note that metrics applied to be repeated for each elementary request. Note that metrics applied to
a set of synchronized requests are defined in section 5. a set of synchronized requests are defined in section 5.
An OF object specifying an objective function that applies to an An OF object specifying an objective function that applies to an
individual path computation request (non synchronized case) MUST individual path computation request (non synchronized case) MUST
follow the RP object for which it applies. follow the RP object for which it applies.
The format of the PCReq message is updated as follows: The format of the PCReq message is updated as follows:
<PCReq Message>::= <Common Header> <PCReq Message>::= <Common Header>
skipping to change at page 9, line 32 skipping to change at page 9, line 21
<request>::= <RP> <request>::= <RP>
<END-POINTS> <END-POINTS>
[<LSPA>] [<LSPA>]
[<BANDWIDTH>] [<BANDWIDTH>]
[<metric-list>] [<metric-list>]
[<OF>] [<OF>]
[<RRO>] [<RRO>]
[<IRO>] [<IRO>]
[<LOAD-BALANCING>] [<LOAD-BALANCING>]
where:
and where:
<metric-list>::=<METRIC>[<metric-list>] <metric-list>::=<METRIC>[<metric-list>]
The OF object MAY be carried within a PCRep message to indicate the The OF object MAY be carried within a PCRep message to indicate the
objective function used by the PCE during path computation. objective function used by the PCE during path computation.
When the PCE wants to indicate to the PCC the objective function that When the PCE wants to indicate to the PCC the objective function that
was used for the synchronized computation of a set of paths, the was used for the synchronized computation of a set of paths, the
PCRep message MUST include the corresponding SVEC object directly PCRep message MUST include the corresponding SVEC object directly
followed by the OF object, which MUST NOT be repeated for each followed by the OF object, which MUST NOT be repeated for each
skipping to change at page 10, line 34 skipping to change at page 10, line 19
<path-list>::=<path>[<path-list>] <path-list>::=<path>[<path-list>]
<path>::= <ERO> <path>::= <ERO>
[<OF>] [<OF>]
[<LSPA>] [<LSPA>]
[<BANDWIDTH>] [<BANDWIDTH>]
[<metric-list>] [<metric-list>]
[<IRO>] [<IRO>]
where: and where:
<metric-list>::=<METRIC>[<metric-list>] <metric-list>::=<METRIC>[<metric-list>]
Note: The OF object MAY be associated to a negative reply, i.e. Note: The OF object MAY be associated to a negative reply, i.e., a
a reply with a NO-PATH object. reply with a NO-PATH object.
3.3. New RP Object Flag 3.3. New RP Object Flag
In some cases, where no objective function is specified in the In some cases, where no objective function is specified in the
request, or an optional objective function is desired (P flag cleared request, or an optional objective function is desired (P flag cleared
in the OF object common header) but the PCE does not follow the in the OF object common header) but the PCE does not follow the
request, the PCC may desire to know the objective function that was request, the PCC may desire to know the objective function that was
used by the PCE during path computation. To that end, a new flag is used by the PCE during path computation. To that end, a new flag is
defined in the RP object, named the OF flag, allowing a PCC to defined in the RP object, named the OF flag, allowing a PCC to
request for the inclusion in the path computation reply of the request for the inclusion in the path computation reply of the
objective function that was used by the PCE during path computation. objective function that was used by the PCE during path computation.
The following new bit flag of the RP object is defined: The following new bit flag of the RP object is defined:
Objective Function (OF) flag (1 bit): 0x200 (bit number 16) Objective Function (OF) flag (1 bit): 0x200 (bit number 16)
(suggested value, to be assigned by IANA). When set in a PCReq (suggested value, to be assigned by IANA). When set in a PCReq
message, this indicates that the PCE MUST provide the applied message, this indicates that the PCE MUST provide the applied
objective function (should a path satisfying the constraints be found) objective function (should a path satisfying the constraints be
in the PCRep message. When set in a PCRep message this indicates that found) in the PCRep message. When set in a PCRep message this
the Objective Function that was used during path computation is indicates that the Objective Function that was used during path
included. computation is included.
3.3.1. Elements Of Procedure 3.3.1. Elements Of Procedure
If the PCC wants to know the objective function used by the PCE If the PCC wants to know the objective function used by the PCE
during path computation for a given request, it sets the OF flag in during path computation for a given request, it sets the OF flag in
the RP object. the RP object.
On receipt of a PCReq message with the OF flag in the RP object set, On receipt of a PCReq message with the OF flag in the RP object set,
the PCE proceeds as follows: the PCE proceeds as follows:
- If policy permits it MUST include in the PCRep message an OF - If policy permits it MUST include in the PCRep message an OF object
object indicating the objective function it used during path indicating the objective function it used during path computation.
computation.
- If policy does not permit, it MUST send a PCErr message with - If policy does not permit, it MUST send a PCErr message with the
the PCEP error code "policy-violation" (type 5) and a new PCEP error code "policy-violation" (type 5) and a new error value
error value "objective function indication not allowed" "objective function indication not allowed" (defined in this
(defined in this document). document).
4. Objective Functions Definition 4. Objective Functions Definition
Six objective functions that must be supported by PCEP are listed in Six objective functions that must be supported by PCEP are listed in
[RFC4657]. Objective function codes should be assigned by IANA and [RFC4657]. Objective function codes should be assigned by IANA and
are suggested below. are suggested below.
Objective functions are formulated using the following terminology: Objective functions are formulated using the following terminology:
- a network comprises a set of N links {Li, (i=1...N)} - a network comprises a set of N links {Li, (i=1...N)}
- a path P is a list of K links {Lpi,(i=1...K)} - a path P is a list of K links {Lpi,(i=1...K)}
- metric of link L is noted M(L), this can be the IGP metric the - metric of link L is denoted M(L), this can be the IGP metric the TE
TE metric, or any other metric. metric, or any other metric.
- the cost of a path P is noted C(P), - the cost of a path P is denoted C(P), where
C(P) = sum {M(Lpi), (i=1...K)}. C(P) = sum {M(Lpi), (i=1...K)}.
- residual bandwidth on link L is noted r(L) - residual bandwidth on link L is denoted r(L)
- maximum reservable bandwidth on link L is noted R(L). - maximum reservable bandwidth on link L is denoted R(L).
There are three objective functions that apply to the computation of There are three objective functions that apply to the computation of
a single path: a single path:
Objective Function Code: 1 (suggested value, to be assigned by IANA) Objective Function Code: 1 (suggested value, to be assigned by IANA)
Name: Minimum Cost Path (MCP) Name: Minimum Cost Path (MCP)
Description: Find a path P such that C(P) is minimized. Description: Find a path P such that C(P) is minimized.
Objective Function Code: 2 (suggested value, to be assigned by IANA) Objective Function Code: 2 (suggested value, to be assigned by IANA)
Name: Minimum Load Path (MLP) Name: Minimum Load Path (MLP)
skipping to change at page 12, line 36 skipping to change at page 12, line 32
Other objective functions may be defined in separate documents. Other objective functions may be defined in separate documents.
5. New Metric Types 5. New Metric Types
Three metric types are defined in PCEP for the METRIC object: TE Three metric types are defined in PCEP for the METRIC object: TE
metric, IGP metric and hop count. These metric types apply to an metric, IGP metric and hop count. These metric types apply to an
individual request. Here we define four new metric types that apply individual request. Here we define four new metric types that apply
to a set of synchronized requests: to a set of synchronized requests:
Type 4 (suggested value to be assigned by IANA) : Aggregate bandwidth Type 4 (suggested value to be assigned by IANA) : Aggregate
consumption bandwidth consumption.
Type 5 (suggested value to be assigned by IANA) : Load of the most Type 5 (suggested value to be assigned by IANA) : Load of the most
loaded link loaded link.
Type 6 (suggested value to be assigned by IANA) : Cumulative IGP Type 6 (suggested value to be assigned by IANA) : Cumulative IGP
cost cost.
Type 7 (suggested value to be assigned by IANA) : Cumulative TE cost
Type 7 (suggested value to be assigned by IANA) : Cumulative TE
cost.
These metrics may be used to indicate a bound (B bit set in the These metrics may be used to indicate a bound (B bit set in the
METRIC object) or a computed metric (C bit set in the METRIC object). METRIC object) or a computed metric (C bit set in the METRIC
object).
A METRIC object with one of these four types follows the SVEC object A METRIC object with one of these four types follows the SVEC object
for which it applies. for which it applies.
6. IANA Considerations 6. IANA Considerations
6.1. PCE Objective Function Sub-registry 6.1. PCE Objective Function Sub-registry
This document defines a 16-bit PCE Objective Function identifier to This document defines a 16-bit PCE Objective Function identifier to
be carried within the PCEP OF object, as well as the PCEP OF-List TLV. be carried within the PCEP OF object, as well as the PCEP OF-List
TLV.
IANA is requested to create and manage the 16-bit "PCE Objective IANA is requested to create and manage the 16-bit "PCE Objective
Function" code point registry, starting from 1 and continuing through Function" code point registry, starting from 1 and continuing through
32767, as follows: 32767, as follows:
- Objective Function code point value - Objective Function code point value
- Objective Function name - Objective Function name
- Defining RFC - Defining RFC
The same registry is applicable to the OF object and the OF-List TLV The same registry is applicable to the OF object and the OF-List TLV
defined in this document. defined in this document.
The guidelines (using terms defined in [RFC5226]) for the The guidelines (using terms defined in [RFC5226]) for the
assignment of objective function code point values are as follows: assignment of objective function code point values are as follows:
- Function code value 0 is reserved. - Function code value 0 is reserved.
- Function code values in the range 1-32767 are to be assigned as - Function code values in the range 1-32767 are to be assigned as
follows: follows:
- Function code values 1 through 1023 are to be assigned by - Function code values 1 through 1023 are to be assigned by IANA
IANA using the "IETF Consensus" policy. using the "IETF Consensus" policy.
- Function code values 1024 through 32767 are to be - Function code values 1024 through 32767 are to be assigned by
assigned by IANA, using the "First Come First Served" IANA, using the "First Come First Served" policy.
policy. - Function code values in the range 32768-65535 are for "Private
- Function code values in the range 32768-65535 are for Use".
"Private Use".
Six objective functions are defined in Section 4 of this document and Six objective functions are defined in Section 4 of this document and
should be assigned by IANA: should be assigned by IANA:
Code Point Name Defining RFC Code Point Name Defining RFC
1 MCP this doc 1 MCP this doc
2 MLP this doc 2 MLP this doc
3 MBP this doc 3 MBP this doc
4 MBC this doc 4 MBC this doc
5 MLL this doc 5 MLL this doc
6 MCC this doc 6 MCC this doc
6.2. PCEP Code Points 6.2. PCEP Code Points
6.2.1. OF Object 6.2.1. OF Object
The IANA has been requested to manage the PCEP Objects code point The IANA has been requested to manage the PCEP Objects code point
registry (see [PCEP]). registry (see [PCEP]).
This document defines a new PCEP object, the OF object, to be This document defines a new PCEP object, the OF object, to be carried
carried in PCReq and PCRep messages. The IANA is requested to make in PCReq and PCRep messages. The IANA is requested to make the
the following allocation (suggested value): following allocation (suggested value):
Object Name Object Name Reference Object Name Object Name Reference
Class Type Class Type
21 OF 1 Objective (this document) 21 OF 1 Objective Function (this document)
Function
6.2.2. OF-List TLV 6.2.2. OF-List TLV
IANA is requested to manage the PCEP TLV code point registry (see IANA is requested to manage the PCEP TLV code point registry (see
[PCEP]). [PCEP]).
This document defines a new PCEP TLV, the OF-List TLV, to be carried This document defines a new PCEP TLV, the OF-List TLV, to be carried
in the OPEN object. The IANA is requested to make the following in the OPEN object. The IANA is requested to make the following
allocation (suggested value): allocation (suggested value):
Type TLV name References Type TLV name References
----- -------- ---------- ----- -------- ----------
4 OF-List (This document) 4 OF-List (This document)
6.2.3. PCEP Error values 6.2.3. PCEP Error values
skipping to change at page 14, line 41 skipping to change at page 14, line 34
----- -------- ---------- ----- -------- ----------
4 OF-List (This document) 4 OF-List (This document)
6.2.3. PCEP Error values 6.2.3. PCEP Error values
Two new error values are defined for the error type "policy Two new error values are defined for the error type "policy
violation" (type 5): violation" (type 5):
Error-type Meaning and error values Reference Error-type Meaning and error values Reference
5 Policy violation 5 Policy violation (this doc)
Error-value=3: objective function not allowed (this doc)
(request rejected) Error-value=3: objective function not (this doc)
Error-value=4: OF bit of the RP object set (this doc) allowed (request rejected)
(request rejected)
Error-value=4: OF bit of the RP object (this doc)
set (request rejected)
6.2.4. RP Object Flag 6.2.4. RP Object Flag
A new flag of the RP object (specified in [PCEP]) is defined in this A new flag of the RP object (specified in [PCEP]) is defined in this
document. The IANA is requested to make the following allocation document. The IANA is requested to make the following allocation
(suggested value): (suggested value):
Bit Hex Name Reference Bit Hex Name Reference
Number Number
skipping to change at page 15, line 23 skipping to change at page 15, line 18
object (specified in [PCEP]). The IANA is requested to make the object (specified in [PCEP]). The IANA is requested to make the
following allocation (suggested values): following allocation (suggested values):
-Type 4 : Aggregate bandwidth consumption -Type 4 : Aggregate bandwidth consumption
-Type 5 : Load of the most loaded link -Type 5 : Load of the most loaded link
-Type 6 : Cumulative IGP cost -Type 6 : Cumulative IGP cost
-Type 7 : Cumulative TE cost -Type 7 : Cumulative TE cost
7. Security Considerations 7. Security Considerations
Mechanisms discussed in [PCEP] to secure a PCEP session can be used to Mechanisms discussed in [PCEP] to secure a PCEP session can be used
secure the PCEP OF object and OF list TLV as well. to secure the PCEP OF object and OF list TLV as well.
8. Manageability Considerations 8. Manageability Considerations
8.1. Control of Function and Policy 8.1. Control of Function and Policy
It MUST be possible to configure the activation/deactivation of It MUST be possible to configure the activation/deactivation of
Objective Function Discovery in PCEP. Objective Function Discovery in PCEP.
In addition to the parameters already listed in section 8.1 of [PCEP], In addition to the parameters already listed in section 8.1 of
a PCEP implementation SHOULD allow configuring on a PCE a list of [PCEP], a PCEP implementation SHOULD allow configuring on a PCE a
authorized objective functions. This may apply to any session the list of authorized objective functions. This may apply to any session
PCEP speaker participates in, to a specific session with a given PCEP the PCEP speaker participates in, to a specific session with a given
peer or to a specific group of sessions with a specific group of PCEP PCEP peer or to a specific group of sessions with a specific group of
peers. PCEP peers.
Note that it is not mandatory for an implementation to support all Note that it is not mandatory for an implementation to support all
objective functions defined in Section 4. objective functions defined in Section 4.
It MUST be possible to configure a default objective function used It MUST be possible to configure a default objective function used
for path computation when a path request is received that requests to for path computation when a path request is received that requests to
use an optional objective function. use an optional objective function.
8.2. Information and Data Models 8.2. Information and Data Models
skipping to change at page 16, line 29 skipping to change at page 16, line 23
Mechanisms defined in this document do not imply any requirements on Mechanisms defined in this document do not imply any requirements on
other protocols in addition to those already listed in [PCEP]. other protocols in addition to those already listed in [PCEP].
8.6. Impact On Network Operations 8.6. Impact On Network Operations
Mechanisms defined in this document do not have any impact on network Mechanisms defined in this document do not have any impact on network
operations in addition to those already listed in [PCEP]. operations in addition to those already listed in [PCEP].
9. Acknowledgments 9. Acknowledgments
The authors would like to thank Jerry Ash, Fabien Verhaeghe and The authors would like to thank Jerry Ash, Fabien Verhaeghe, and
Adrian Farrel for their useful comments. Adrian Farrel for their useful comments.
10. References 10. References
10.1. Normative References 10.1. Normative References
[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.
[RFC4655] Farrel, A., Vasseur, J.P., Ash, J., "Path Computation [RFC4655] Farrel, A., Vasseur, J.P., Ash, J., "Path Computation
Element (PCE)-based Architecture", RFC4655, august 2006. Element (PCE)-based Architecture", RFC4655, august 2006.
[PCEP] Vasseur, Le Roux, et al., "Path Computation Element (PCE) [PCEP] Vasseur, Le Roux, et al., "Path Computation Element (PCE)
communication Protocol (PCEP)", draft-ietf-pce-pcep, work in communication Protocol (PCEP)", draft-ietf-pce-pcep, work
progress. in progress.
10.2. Informative References 10.2. Informative References
[RFC4657] Ash, J., Le Roux, J.L., " PCE Communication Protocol [RFC4657] Ash, J., Le Roux, J.L., " PCE Communication Protocol
Generic Requirements", RFC4657, September 2006. Generic Requirements", RFC4657, September 2006.
[RFC4674] Le Roux, J.L., et al. "Requirements for PCE discovery", [RFC4674] Le Roux, J.L., et al. "Requirements for PCE discovery",
RFC4674, October 2006. RFC4674, October 2006.
[RFC5088] Le Roux, Vasseur, et al. "OSPF protocol extensions for
Path Computation Element (PCE) Discovery", RFC5088, January
2008.
[RFC5089] Le Roux, Vasseur, et al. "IS-IS protocol extensions for [RFC5089] Le Roux, Vasseur, et al. "IS-IS protocol extensions for
Path Computation Element (PCE) Discovery", RFC5088, January 2008. Path Computation Element (PCE) Discovery", RFC5089, January
2008.
[RFC5088] Le Roux, Vasseur, et al. "OSPF protocol extensions for [RFC5226] Narten, T. and Alverstrand, H., "Guidelines for Writing an
Path Computation Element (PCE) Discovery", RFC5088, January 2008. IANA Considerations Section in RFCs", BCP 26, RFC 5226, May
2008.
[PCE-GCO] Y. Lee, J.L. Le Roux, D. King, and E. Oki, "Path [PCE-GCO] Y. Lee, J.L. Le Roux, D. King, and E. Oki, "Path
Computation Element Communication Protocol (PCECP) Requirements and Computation Element Communication Protocol (PCECP)
Protocol Extensions In Support of Global Concurrent Optimization", Requirements and Protocol Extensions In Support of Global
draft-ietf-pce-global-concurrent-optimization, work in Concurrent Optimization", draft-ietf-pce-global-concurrent-
progress. optimization, work in progress.
[PCEP-MIB] Koushik, K., and Stephan, E., "PCE communication protocol
(PCEP) Management Information Base", draft-kkoushik-pce-
pcep-mib, work in progress.
11. Authors' Addresses 11. Authors' Addresses
Jean-Louis Le Roux Jean-Louis Le Roux
France Telecom France Telecom
2, avenue Pierre-Marzin 2, avenue Pierre-Marzin
22307 Lannion Cedex 22307 Lannion Cedex
FRANCE FRANCE
Email: jeanlouis.leroux@orange-ftgroup.com Email: jeanlouis.leroux@orange-ftgroup.com
 End of changes. 54 change blocks. 
154 lines changed or deleted 173 lines changed or added

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