draft-ietf-pce-global-concurrent-optimization-02.txt   draft-ietf-pce-global-concurrent-optimization-03.txt 
Network Working Group Y. Lee Network Working Group Y. Lee
Internet-Draft Huawei Internet-Draft Huawei
Intended status: Standards Track JL. Le Roux Intended status: Standards Track JL. Le Roux
Expires: August 24, 2008 France Telecom Expires: December 26, 2008 France Telecom
D. King D. King
Aria Networks Aria Networks
E. Oki E. Oki
NTT NTT
February 21, 2008 June 24, 2008
Path Computation Element Communication Protocol (PCECP) Requirements and Path Computation Element Communication Protocol (PCECP) Requirements and
Protocol Extensions In Support of Global Concurrent Optimization Protocol Extensions In Support of Global Concurrent Optimization
draft-ietf-pce-global-concurrent-optimization-02.txt draft-ietf-pce-global-concurrent-optimization-03.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 Task Force (IETF), its areas, and its working groups. Note that
skipping to change at page 1, line 40 skipping to change at page 1, line 40
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."
The list of current Internet-Drafts can be accessed at The list of current Internet-Drafts can be accessed at
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.
This Internet-Draft will expire on August 24, 2008. This Internet-Draft will expire on December 26, 2008.
Copyright Notice
Copyright (C) The IETF Trust (2008).
Abstract Abstract
The Path Computation Element (PCE) is a network component, The Path Computation Element (PCE) is a network component,
application, or node that is capable of performing path computations application, or node that is capable of performing path computations
at the request of Path Computation Clients (PCCs). The PCE is at the request of Path Computation Clients (PCCs). The PCE is
applied in Multiprotocol Label Switching Traffic Engineering applied in Multiprotocol Label Switching Traffic Engineering
(MPLS-TE) networks and in Generalized MPLS (GMPLS) networks to (MPLS-TE) networks and in Generalized MPLS (GMPLS) networks to
determine the routes of Label Switched Paths (LSPs) through the determine the routes of Label Switched Paths (LSPs) through the
network. The Path Computation Element Communication Protocol (PCEP) network. The Path Computation Element Communication Protocol (PCEP)
is specified for communications between PCCs and PCEs, and between is specified for communications between PCCs and PCEs, and between
cooperating PCEs. cooperating PCEs.
When computing or re-optimizing the routes of a set of LSPs through a When computing or re-optimizing the routes of a set of LSPs through a
network it may be advantageous to perform bulk path computations in network it may be advantageous to perform bulk path computations in
order to avoid blocking problems and to achieve more optimal network- order to avoid blocking problems and to achieve more optimal network-
wide solutions. Such bulk optimization is termed Global Concurrent wide solutions. Such bulk optimization is termed Global Concurrent
Optimization (GCO). A Global Concurrent Optimization is able to Optimization (GCO). A GCO is able to simultaneously consider the
simultaneously consider the entire topology of the network and the entire topology of the network and the complete set of existing LSPs,
complete set of existing LSPs, and their respective constraints, and and their respective constraints, and look to optimize or re-optimize
look to optimize or re-optimize the entire network to satisfy all the entire network to satisfy all constraints for all LSPs. A GCO
constraints for all LSPs. The Global Concurrent Optimization (GCO) may also be applied to some subset of the LSPs in a network. The GCO
application is primarily an NMS based solution. application is primarily a Network Management System (NMS) solution.
This document provides application-specific requirements and the PCEP This document provides application-specific requirements and the PCEP
extensions in support of a global concurrent optimization (GCO) extensions in support of GCO applications.
application.
Table of Contents Table of Contents
1. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 4 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4
2. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 5 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 6
3. Applicability of Global Concurrent Optimization (GCO) . . . . 7 3. Applicability of Global Concurrent Optimization (GCO) . . . . 7
3.1. Application of the PCE Architecture . . . . . . . . . . . 7 3.1. Application of the PCE Architecture . . . . . . . . . . . 7
3.2. Re-optimization of Existing Networks . . . . . . . . . . . 8 3.2. Re-optimization of Existing Networks . . . . . . . . . . . 8
3.2.1. Reconfiguration of the Virtual Network Topology 3.2.1. Reconfiguration of the Virtual Network Topology
(VNT) . . . . . . . . . . . . . . . . . . . . . . . . 8 (VNT) . . . . . . . . . . . . . . . . . . . . . . . . 8
3.2.2. Traffic Migration . . . . . . . . . . . . . . . . . . 8 3.2.2. Traffic Migration . . . . . . . . . . . . . . . . . . 8
3.3. Greenfield Optimization . . . . . . . . . . . . . . . . . 9 3.3. Greenfield Optimization . . . . . . . . . . . . . . . . . 9
3.3.1. Single-layer Traffic Engineering . . . . . . . . . . . 10 3.3.1. Single-layer Traffic Engineering . . . . . . . . . . . 10
3.3.2. Multi-layer Traffic Engineering . . . . . . . . . . . 10 3.3.2. Multi-layer Traffic Engineering . . . . . . . . . . . 10
4. PCECP Requirements . . . . . . . . . . . . . . . . . . . . . . 11 4. PCECP Requirements . . . . . . . . . . . . . . . . . . . . . . 11
5. Protocol extensions for support of global concurrent 5. Protocol extensions for support of global concurrent
optimization . . . . . . . . . . . . . . . . . . . . . . . . . 15 optimization . . . . . . . . . . . . . . . . . . . . . . . . . 15
5.1. Global Objective Function (GOF) Specification . . . . . . 15 5.1. Global Objective Function (GOF) Specification . . . . . . 15
5.2. Indication of Global Concurrent Optimization Requests . . 16 5.2. Indication of Global Concurrent Optimization Requests . . 16
5.3. Request for the order of LSP . . . . . . . . . . . . . . . 16 5.3. Request for the order of LSP . . . . . . . . . . . . . . . 16
5.4. The Order Response . . . . . . . . . . . . . . . . . . . . 17 5.4. The Order Response . . . . . . . . . . . . . . . . . . . . 17
5.5. GLOBAL CONSTRAINTS (GC) Object . . . . . . . . . . . . . . 19 5.5. GLOBAL CONSTRAINTS (GC) Object . . . . . . . . . . . . . . 18
5.6. Error Indicator . . . . . . . . . . . . . . . . . . . . . 20 5.6. Error Indicator . . . . . . . . . . . . . . . . . . . . . 19
5.7. NO-PATH Indicator . . . . . . . . . . . . . . . . . . . . 21 5.7. NO-PATH Indicator . . . . . . . . . . . . . . . . . . . . 20
6. Manageability Considerations . . . . . . . . . . . . . . . . . 22 6. Manageability Considerations . . . . . . . . . . . . . . . . . 21
6.1. Control of Function and Policy . . . . . . . . . . . . . . 22 6.1. Control of Function and Policy . . . . . . . . . . . . . . 21
6.2. Information and Data Models, e.g. MIB module . . . . . . . 22 6.2. Information and Data Models, e.g. MIB module . . . . . . . 21
6.3. Liveness Detection and Monitoring . . . . . . . . . . . . 22 6.3. Liveness Detection and Monitoring . . . . . . . . . . . . 21
6.4. Verifying Correct Operation . . . . . . . . . . . . . . . 22 6.4. Verifying Correct Operation . . . . . . . . . . . . . . . 21
6.5. Requirements on Other Protocols and Functional 6.5. Requirements on Other Protocols and Functional
Components . . . . . . . . . . . . . . . . . . . . . . . . 23 Components . . . . . . . . . . . . . . . . . . . . . . . . 22
6.6. Impact on Network Operation . . . . . . . . . . . . . . . 23 6.6. Impact on Network Operation . . . . . . . . . . . . . . . 22
7. Security Considerations . . . . . . . . . . . . . . . . . . . 24 7. Security Considerations . . . . . . . . . . . . . . . . . . . 23
8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 25 8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 24
9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 26 9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 25
9.1. Request Parameter Bit Flags . . . . . . . . . . . . . . . 25
9.2. New PCEP TLV . . . . . . . . . . . . . . . . . . . . . . . 25
9.3. New PCEP Object . . . . . . . . . . . . . . . . . . . . . 25
9.4. New PCEP Error Codes . . . . . . . . . . . . . . . . . . . 26
9.4.1. New Error-Values for Existing Error-Types . . . . . . 26
9.4.2. New Error-Types and Error-Values . . . . . . . . . . . 26
9.5. New No-Path Reasons . . . . . . . . . . . . . . . . . . . 26
10. References . . . . . . . . . . . . . . . . . . . . . . . . . . 27 10. References . . . . . . . . . . . . . . . . . . . . . . . . . . 27
10.1. Normative References . . . . . . . . . . . . . . . . . . . 27 10.1. Normative References . . . . . . . . . . . . . . . . . . . 27
10.2. Informative References . . . . . . . . . . . . . . . . . . 27 10.2. Informative References . . . . . . . . . . . . . . . . . . 27
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 29 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 29
Intellectual Property and Copyright Statements . . . . . . . . . . 30 Intellectual Property and Copyright Statements . . . . . . . . . . 30
1. Terminology 1. Introduction
The terminology explained herein complies with [RFC4655]. [RFC4655] defines the Path Computation Element (PCE) based
Architecture and explains how a PCE may compute Label Switched Paths
(LSP) in Multiprotocol Label Switching Traffic Engineering (MPLS-TE)
and Generalized MPLS (GMPLS) networks at the request of Path
Computation Clients (PCCs). A PCC is shown to be any network
component that makes such a request and may be for instance a Label
Switching Router (LSR) or a Network Management System (NMS). The
PCE, itself, is shown to be located anywhere within the network, and
may be within an LSR, an NMS or Operational Support System (OSS), or
may be an independent network server.
The PCE Communication Protocol (PCEP) is the communication protocol
used between PCC and PCE, and may also be used between cooperating
PCEs. [RFC4657] sets out generic protocol requirements for PCEP.
Additional application-specific requirements for PCEP are defined in
separate documents.
This document provides a set of requirements and PCEP extensions in
support of concurrent path computation applications. A concurrent
path computation is a path computation application where a set of TE
paths are computed concurrently in order to efficiently utilize
network resources. The computation method involved with a concurrent
path computation is referred to as global concurrent optimization in
this document. Appropriate computation algorithms to perform this
type of optimization are out of the scope of this document.
The Global Concurrent Optimization (GCO) application is primarily an
NMS or a PCE Server based solution. Owing to complex synchronization
issues associated with GCO applications, the management based PCE
architecture defined in section 5.5 of [RFC4655] is considered as the
most suitable usage to support GCO application. This does not
preclude other architectural alternatives to support GCO application,
but they are NOT RECOMMENDED. For instance, GCO might be enabled by
distributed LSRs through complex synchronization mechanisms.
However, this approach might suffer from significant synchronization
overhead between the PCE and each of the PCCs. It would likely
affect the network stability and hence significantly diminish the
benefits of deploying PCEs.
As new LSPs are added or removed from the network over time, the
global network resources become fragmented and the existing placement
of LSPs within network no longer provides optimal use of the
available capacity. A global concurrent path computation is able to
simultaneously consider the entire topology of the network and the
complete set of existing LSPs and their respective constraints, and
look to re-optimize the entire network to satisfy all constraints for
all LSPs. Alternatively, the application may consider a subset of
the LSPs and/or a subset of the network topology.
The need for global concurrent path computation may also arise when
network operators need to establish a set of TE LSPs in their network
planning process. It is also envisioned that network operators might
require global concurrent path computation in the event of
catastrophic network failures, where a set of TE LSPs need to be
optimally rerouted. The nature of this work promote the use of such
systems for offline processing. Online application of this work
should only be considered with proven empirical validation.
As the PCE has the potential to provide solutions in all path
computation solutions in a variety of environments and is a candidate
for performing path computations in support of GCO.
The main focus of this document is to highlight the PCC-PCE
communication needs in support of a concurrent path computation
applications and to define protocol extensions to meet those needs.
The PCC-PCE requirements addressed herein are specific to the context
where the PCE is a specialized PCE that is capable of performing
computations in support of GCO. Discovery of such capabilities might
be desirable and could be achieved through extensions to the PCE
discovery mechanisms [RFC4674], [RFC5058], [RFC5059], but that is out
of the scope of this document.
It is to be noted that BRPC [BRPC] is a multi-PCE path computation
technique used to compute a shortest constrained inter-domain path
wheres this ID specifies a technique where a set of path computation
requests are bundled and send to a PCE with the objective of
"optimizing" the set of computed paths.
2. Terminology
Most of the terminology used in this document is explained in
[RFC4655]. A few key terms are repeated here for clarity.
PCC: Path Computation Client: Any client application requesting a PCC: Path Computation Client: Any client application requesting a
path computation to be performed by a Path Computation Element. path computation to be performed by a Path Computation Element.
PCE: Path Computation Element: An entity (component, application or PCE: Path Computation Element: An entity (component, application or
network node) that is capable of computing a network path or route network node) that is capable of computing a network path or route
based on a network graph and applying computational constraints. based on a network graph and applying computational constraints.
TED: Traffic Engineering Database which contains the topology and TED: Traffic Engineering Database which contains the topology and
resource information of the domain. The TED may be fed by IGP resource information of the domain. The TED may be fed by IGP
skipping to change at page 5, line 5 skipping to change at page 7, line 5
entire network to satisfy all constraints for all LSPs. A GCO path entire network to satisfy all constraints for all LSPs. A GCO path
computation can also provide an optimal way to migrate from an computation can also provide an optimal way to migrate from an
existing set of LSPs to a reoptimized set (Morphing Problem). existing set of LSPs to a reoptimized set (Morphing Problem).
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].
These terms are also used in the parts of this document that specify These terms are also used in the parts of this document that specify
requirements for clarity of specification of those requirements. requirements for clarity of specification of those requirements.
2. Introduction
[RFC4655] defines the PCE based Architecture and explains how a Path
Computation Element (PCE) may compute Label Switched Paths (LSP) in
Multiprotocol Label Switching Traffic Engineering (MPLS-TE) and
Generalized MPLS (GMPLS) networks at the request of PCCs. A PCC is
shown to be any network component that makes such a request and may
be for instance a Label Switching Router (LSR) or a Network
Management System (NMS). The PCE, itself, is shown to be located
anywhere within the network, and may be within an LSR, an NMS or
Operational Support System (OSS), or may be an independent network
server.
The PCECP is the communication protocol used between PCC and PCE, and
may also be used between cooperating PCEs. [RFC4657] sets out the
common protocol requirements for the PCECP. Additional application-
specific requirements for PCECP are deferred to separate documents.
This document provides a set of PCECP extension requirements and
solutions in support of concurrent path computation applications that
may arise during network operations. A concurrent path computation
is a path computation application where a set of TE paths are
computed concurrently in order to efficiently utilize network
resources. The computation method involved with a concurrent path
computation is referred to as global concurrent optimization in this
document. Appropriate computation algorithms to perform this type of
optimization are out of the scope of this document.
The Global Concurrent Optimization (GCO) application is primarily an
NMS or a PCE Server based solution. Due to complex synchronization
issues associated with GCO application, the management based PCE
architecture defined in section 5.5 of [RFC4655] is considered as the
most suitable usage to support GCO application. This does not
automatically preclude other architectural alternatives to support
GCO application, but they are not recommended. For instance, GCO may
be enabled by distributed LSRs through complex synchronization.
However, this approach may suffer from significant synchronization
overhead between the PCE and each of the PCCs. It would likely
affect the network stability and hence significantly diminish the
benefits of deploying PCEs.
As new LSPs are added sequentially or removed from the network over
time, the global network resources become fragmented and the network
no longer provides the optimal use of the available capacity. A
global concurrent path computation is able to simultaneously consider
the entire topology of the network and the complete set of existing
LSPs, and their respective constraints, and look to re-optimize the
entire network to satisfy all constraints for all LSPs.
Alternatively, the application may consider a subset of the LSPs
and/or a subset of the network topology.
The need for a global concurrent path computation may also arise when
network operators need to establish a set of TE LSPs in their network
planning process. It is also envisioned that network operators might
require a global concurrent path computation in the event of
catastrophic network failures, where a set of TE LSPs need to be
optimally rerouted. The nature of this work does promote such
systems for offline processing. Online application of this work
should only be considered with proven empirical validation.
As the PCE is envisioned to provide solutions in all path computation
matters, it is anticipated that the PCE would provide solutions for
global concurrent path computation needs.
The main focus of this document is to highlight the PCC-PCE
communication needs in support of a concurrent path computation
application and to define protocol extensions to meet those needs.
The PCC-PCE requirements addressed herein are specific to the context
where the PCE is a specialized PCE that is capable of solving global
concurrent path computation applications. Discovery of such
capabilities might be desirable and could be achieved through
extensions to the PCE discovery mechanisms [RFC4674], but that is out
of the scope of this document.
It is to be noted that BRPC [BRPC] is a multi-PCE path computation
technique used to compute a shortest constrained inter-domain path
wheres this ID specifies a technique where a set of path computation
requests are bundled and send to a PCE with the objective of
"optimizing" the set of computed paths.
3. Applicability of Global Concurrent Optimization (GCO) 3. Applicability of Global Concurrent Optimization (GCO)
This section discusses the PCE architecture to which GCO is applied. This section discusses the PCE architecture to which GCO is applied.
It also discusses various application scenarios for which global It also discusses various application scenarios for which global
concurrent path computation may be applied. concurrent path computation may be applied.
3.1. Application of the PCE Architecture 3.1. Application of the PCE Architecture
Figure 1 shows the PCE-based network architecture as defined in Figure 1 shows the PCE-based network architecture as defined in
[RFC4655] to which GCO application is applied. It must be observed [RFC4655] to which GCO application is applied. It must be observed
skipping to change at page 15, line 44 skipping to change at page 15, line 44
should be allowed to specify multiple RRO objects in the PCReq should be allowed to specify multiple RRO objects in the PCReq
message. message.
5.1. Global Objective Function (GOF) Specification 5.1. Global Objective Function (GOF) Specification
The global objective function can be specified in the PCEP Objective The global objective function can be specified in the PCEP Objective
Function (OF) object, defined in [PCE-OF]. The OF object includes a Function (OF) object, defined in [PCE-OF]. The OF object includes a
16 bit Objective Function identifier. As per discussed in [PCE-OF], 16 bit Objective Function identifier. As per discussed in [PCE-OF],
objective function identifier code points are managed by IANA. objective function identifier code points are managed by IANA.
Two global objective functions are defined in this document and their Two global objective functions defined in [PCE-OF] are used in the
identifier should be assigned by IANA (suggested value) context of GCO.
Function Function
Code Description Code Description
1 Minimize the sum of all TE LSP costs (min cost) 5 Minimize the load of the Most Loaded Link (MLL)
2 Evenly allocate the network load to achieve the 6 Minimize Cumulative Cost of a set of paths (MCC)
most uniform link utilization across all links*
* Note: This can be achieved by the following objective function: * Note: This can be achieved by the following objective function:
minimize max over all links {(C(i)-A(i))/C(i)} where C(i) is the link minimize max over all links {(C(i)-A(i))/C(i)} where C(i) is the link
capacity for link i and A(i) is the total bandwidth allocated on link capacity for link i and A(i) is the total bandwidth allocated on link
i.) i.)
5.2. Indication of Global Concurrent Optimization Requests 5.2. Indication of Global Concurrent Optimization Requests
All the path requests in this application should be indicated so that All the path requests in this application should be indicated so that
the global objective function and all of the global constraints are the global objective function and all of the global constraints are
skipping to change at page 16, line 37 skipping to change at page 16, line 37
5.3. Request for the order of LSP 5.3. Request for the order of LSP
In order to minimize disruption associated with bulk path In order to minimize disruption associated with bulk path
provisioning, the PCC may indicate to the PCE that the response MUST provisioning, the PCC may indicate to the PCE that the response MUST
be ordered. That is, the PCE has to include the order in which LSPs be ordered. That is, the PCE has to include the order in which LSPs
MUST be moved so as to minimize traffic disruption. To support such MUST be moved so as to minimize traffic disruption. To support such
indication a new flag, the D flag, is defined in the RP object as indication a new flag, the D flag, is defined in the RP object as
follows: 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reserved | Flags |D|M|F|O|B|R| Pri |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Request-ID-number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
// Optional TLV(s) //
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 4: RP object body format in the PCReq Message
D bit (orDer - 1 bit): when set, in a PCReq message, the requesting D bit (orDer - 1 bit): when set, in a PCReq message, the requesting
PCC requires the PCE to specify in the PCRep message the order in PCC requires the PCE to specify in the PCRep message the order in
which this particular path request is to be provisioned relative to which this particular path request is to be provisioned relative to
other requests. other requests.
To support the determination of whether make-before-break
optimization is required, a new flag, the M flag, is defined in the
RP object as follows.
M bit (Make-before-break - 1 bit): when set, this indicates that a M bit (Make-before-break - 1 bit): when set, this indicates that a
make-before-break reoptimization is required for this request. make-before-break reoptimization is required for this request.
When M bit is not set, this implies that a break-before-make When M bit is not set, this implies that a break-before-make
reoptimization is allowed for this request. Note that M bit can be reoptimization is allowed for this request. Note that M bit can be
set only if the R (Reoptimization) flag is set. set only if the R (Reoptimization) flag is set.
5.4. The Order Response 5.4. The Order Response
The PCE MUST specify the order number in response to the Order The PCE MUST specify the order number in response to the Order
Request made by the PCC in the PCReq message if so requested by the Request made by the PCC in the PCReq message if so requested by the
setting of the D bit in the RP object in the PCReq message. To setting of the D bit in the RP object in the PCReq message. To
support such ordering indication a new optional TLV is defined in the support such ordering indication a new optional TLV, the Order TLV,
RP object, the Order TLV, as follows: is defined in the RP 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reserved | Flags |D|M|F|O|B|R| Pri |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Request-ID-number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
// Order TLV (Optional TLV) //
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 5: RP object body format in the PCRep Message
The Order TLV is an optional TLV in the RP object, that indicates the The Order TLV is an optional TLV in the RP object, that indicates the
order in which the old LSP must be removed and the new LSP must be order in which the old LSP must be removed and the new LSP must be
setup during a reoptimization. It is carried in the PCRep message in setup during a reoptimization. It is carried in the PCRep message in
response to a reoptimization request. response to a reoptimization request.
The Order TLV SHOULD be included in the RP object in the PCRep The Order TLV SHOULD be included in the RP object in the PCRep
message if the D bit is set in the RP object in the PCReq message. message if the D bit is set in the RP object in the PCReq message.
The format of the Order TLV is as follows: The format of the Order TLV is as follows:
skipping to change at page 18, line 15 skipping to change at page 17, line 33
0 1 2 3 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 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 | | Type | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Delete Order | | Delete Order |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Setup Order | | Setup Order |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type To be defined by IANA (suggested value = ) Figure 2: The Order TLV in the RP object in the PCRep Message
Length Variable
Value Orders in which the old path should be removed
and the new path should be setup
Figure 6: The Order TLV in the RP object in the PCRep Message Type: To be defined by IANA (suggested value = 5)
Length: Variable
Delete Order: 32 bit integer that indicates the order in which the Delete Order: 32 bit integer that indicates the order in which the
old LSP should be removed old LSP should be removed
Setup Order: 32 bit integer that indicates the order in which the new Setup Order: 32 bit integer that indicates the order in which the new
LSP should be setup LSP should be setup
The delete order should not be equal to the setup order. If the The delete order should not be equal to the setup order. If the
delete order is higher than the setup order, this means that the delete order is higher than the setup order, this means that the
reoptimization can be done in a make-before-break manner, else it reoptimization can be done in a make-before-break manner, else it
skipping to change at page 19, line 15 skipping to change at page 18, line 35
make-before-break manner. make-before-break manner.
5.5. GLOBAL CONSTRAINTS (GC) Object 5.5. GLOBAL CONSTRAINTS (GC) Object
The Global Constraints (GC) Object is used in a PCReq message to The Global Constraints (GC) Object is used in a PCReq message to
specify the necessary global constraints that should be applied to specify the necessary global constraints that should be applied to
all individual path computations for a global concurrent path all individual path computations for a global concurrent path
optimization request. optimization request.
GLOBAL CONSTRAINT Object-Class is to be assigned by IANA (recommended GLOBAL CONSTRAINT Object-Class is to be assigned by IANA (recommended
value=22) value=24)
GLOBAL CONSTRAINT Object-Type is to be assigned by IANA (recommended GLOBAL CONSTRAINT Object-Type is to be assigned by IANA (recommended
value=1) value=1)
The format of the GC object body that includes the global constraints The format of the GC object body that includes the global constraints
is as follows: is as follows:
0 1 2 3 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 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 | | Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MH | MU | mU | OB | | MH | MU | mU | OB |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | |
// Optional TLV(s) // // Optional TLV(s) //
| | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 9: GC body object format Figure 3: GC body object format
MH (Max Hop: 8 bits): 8 bit integer that indicates the maximum hop MH (Max Hop: 8 bits): 8 bit integer that indicates the maximum hop
count for all the LSPs. count for all the LSPs.
MU (Max Utilization Percentage: 8 bits) : 8 bits integer that MU (Max Utilization Percentage: 8 bits) : 8 bits integer that
indicates the upper bound utilization percentage by which all link indicates the upper bound utilization percentage by which all link
should be bound. Utilization = (Link Capacity - Allocated Bandwidth should be bound. Utilization = (Link Capacity - Allocated Bandwidth
on the Link)/ Link Capacity on the Link)/ Link Capacity
mU (minimum Utilization Percentage: 8 bits) : 8 bits integer that mU (minimum Utilization Percentage: 8 bits) : 8 bits integer that
skipping to change at page 20, line 22 skipping to change at page 19, line 50
The exclusion of the list of nodes/links from a global path The exclusion of the list of nodes/links from a global path
computation can be done by including the XRO object following the GC computation can be done by including the XRO object following the GC
object in the new SVEC list definition. object in the new SVEC list definition.
5.6. Error Indicator 5.6. Error Indicator
To indicate errors associated with the global concurrent path To indicate errors associated with the global concurrent path
optimization request, a new Error-Type (14) and subsequent error- optimization request, a new Error-Type (14) and subsequent error-
values are defined as follows for inclusion in the PCEP-ERROR object: values are defined as follows for inclusion in the PCEP-ERROR object:
A new Error-Type (14) and subsequent error-values are defined as A new Error-Type (15) and subsequent error-values are defined as
follows: follows:
Error-Type=14 and Error-Value=1: if a PCE receives a global Error-Type=15 and Error-Value=1: if a PCE receives a global
concurrent path optimization request and the PCE is not capable of concurrent path optimization request and the PCE is not capable of
the request due to insufficient memory, the PCE MUST send a PCErr the request due to insufficient memory, the PCE MUST send a PCErr
message with a PCEP ERROR object (Error-Type=14) and an Error-Value message with a PCEP ERROR object (Error-Type=15) and an Error-Value
(Error-Value=1). The corresponding global concurrent path (Error-Value=1). The corresponding global concurrent path
optimization request MUST be cancelled. optimization request MUST be cancelled.
Error-Type=14; Error-Value=2: if a PCE receives a global concurrent Error-Type=15; Error-Value=2: if a PCE receives a global concurrent
path optimization request and the PCE is not capable of global path optimization request and the PCE is not capable of global
concurrent optimization, the PCE MUST send a PCErr message with a concurrent optimization, the PCE MUST send a PCErr message with a
PCEP-ERROR Object (Error-Type=14) and an Error-Value (Error-Value=2). PCEP-ERROR Object (Error-Type=15) and an Error-Value (Error-Value=2).
The corresponding global concurrent path optimization MUST be The corresponding global concurrent path optimization MUST be
cancelled. cancelled.
To indicate an error associated with policy violation, a new error To indicate an error associated with policy violation, a new error
value "global concurrent optimization not allowed" should be added to value "global concurrent optimization not allowed" should be added to
an existing error code for policy violation (Error-Type=5) as defined an existing error code for policy violation (Error-Type=5) as defined
in [PCEP]. in [PCEP].
Error-Type=5; Error-Value=3: if a PCE receives a global concurrent Error-Type=5; Error-Value=5: if a PCE receives a global concurrent
path optimization request which is not compliant with administrative path optimization request which is not compliant with administrative
privileges (i.e., the PCE policy does not support global concurrent privileges (i.e., the PCE policy does not support global concurrent
optimization), the PCE sends a PCErr message with a PCEP-ERROR Object optimization), the PCE sends a PCErr message with a PCEP-ERROR Object
(Error-Type=5) and an Error-Value (Error-Value=3). The corresponding (Error-Type=5) and an Error-Value (Error-Value=5). The corresponding
global concurrent path computation MUST be cancelled. global concurrent path computation MUST be cancelled.
5.7. NO-PATH Indicator 5.7. NO-PATH Indicator
To communicate the reason(s) for not being able to find global To communicate the reason(s) for not being able to find global
concurrent path computation, the NO-PATH object can be used in the concurrent path computation, the NO-PATH object can be used in the
PCRep message. The format of the NO-PATH object body is as follows: PCRep message. The format of the NO-PATH object body is defined in
[PCEP]. The object may contain a NO-PATH-VECTOR TLV to provide
0 1 2 3 additional information about why a path computation has failed.
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|C| Flags | Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
// Optional TLV(s) //
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 10: NO-PATH object format
Flags (16 bits). The C flag is defined in [PCEP].
Two new bit flags are defined in the NO-PATH-VECTOR TLV carried in Two new bit flags are defined to be carried in the Flags field in the
the NO-PATH Object: NO-PATH-VECTOR TLV carried in the NO-PATH Object.
0x08: when set, the PCE indicates that no migration path was found. Bit 6: When set, the PCE indicates that no migration path was found.
0x10: when set, the PCE indicates no feasible solution was found that Bit 7: When set, the PCE indicates no feasible solution was found
meets all the constraints associated with global concurrent path that meets all the constraints associated with global concurrent path
optimization in the PCRep message. optimization in the PCRep message.
6. Manageability Considerations 6. Manageability Considerations
Manageability of Global Concurrent Path Computation with PCE must Manageability of Global Concurrent Path Computation with PCE must
address the following considerations: address the following considerations:
6.1. Control of Function and Policy 6.1. Control of Function and Policy
In addition to the parameters already listed in section 8.1 of In addition to the parameters already listed in section 8.1 of
skipping to change at page 26, line 7 skipping to change at page 25, line 7
to secure global concurrent path computation requests/responses. to secure global concurrent path computation requests/responses.
8. Acknowledgements 8. Acknowledgements
We would like to thank Jerry Ash, Adrian Farrel, J-P Vasseur, Ning We would like to thank Jerry Ash, Adrian Farrel, J-P Vasseur, Ning
So, Lucy Yong and Fabien Verhaeghe for their useful comments and So, Lucy Yong and Fabien Verhaeghe for their useful comments and
suggestions. suggestions.
9. IANA Considerations 9. IANA Considerations
A future revision of this document will present requests to IANA for IANA maintains a registry of PCEP parameters. IANA is requested to
codepoint allocation. make allocations from the sub-registries as described in the
following sections.
9.1. Request Parameter Bit Flags
As described in Section 5.3, two new bit lfags are defined for
inclusion in the Flags field of the RP object. IANA is requested to
make the following allocations from the "Request Parameter Bit Flags"
sub-registry.
Bit Name Description Reference
11 D-bit Report the request order [This.I-D]
12 M-bit Make-before-break [This.I-D]
9.2. New PCEP TLV
As described in Section 5.4, a new PCEP TLV is defined to indicate
the setup and delete order of LSPs in a GCO. IANA is requested to
make the following allocation from the "PCEP TLV Types" sub-registry.
TLV Type Meaning Reference
5 Order TLV [This.I-D]
9.3. New PCEP Object
As descried in Section 5.5, a new PCEP object is defined to carry
global constraints. IANA is requested to make the following
allocation from the "PCEP Objects" sub-registry.
Object Name Reference
Class
24 GLOBAL-CONSTRAINTS [This.I-D]
Object-Type
1: Global Constraints [This.I-D]
9.4. New PCEP Error Codes
As described in Section 5.6, new PCEP error codes are defined for GCO
errors. IANA is requested to make allocations from the "PCEP Error
Types and Values" sub-registry as set out in the following sections.
9.4.1. New Error-Values for Existing Error-Types
Error
Type Meaning Reference
5 Policy violation
Error-value=5: [This.I-D]
Global concurrent optimization not allowed
9.4.2. New Error-Types and Error-Values
Error
Type Meaning Reference
15 Global Concurrent Optimization Error [This.I-D]
Error-value=1:
Insufficient memory [This.I-D]
Error-value=2:
Global concurrent optimization not supported
[This.I-D]
9.5. New No-Path Reasons
IANA is requested to make the following allocations from the "No-Path
Reasons" sub-registry for bit flags carried in the NO-PATH-VECTOR TLV
in the PCEP NO-PATH object as described in Section 5.7.
Bit
Number Name Reference
6 No GCO migration path found [This.I-D]
7 No GCO solution found [This.I-D]
10. References 10. References
10.1. Normative References 10.1. Normative References
[BRPC] Vasseur, JP., Ed., "A Backward Recursive PCE-based [BRPC] Vasseur, JP., Ed., "A Backward Recursive PCE-based
Computation (BRPC) procedure to compute shortest inter- Computation (BRPC) procedure to compute shortest inter-
domain Traffic Engineering Label Switched Paths, domain Traffic Engineering Label Switched Paths,
draft-ietf-pce-brpc-05.txt, work in progress". draft-ietf-pce-brpc-05.txt, work in progress".
skipping to change at page 30, line 44 skipping to change at line 1109
attempt made to obtain a general license or permission for the use of attempt made to obtain a general license or permission for the use of
such proprietary rights by implementers or users of this such proprietary rights by implementers or users of this
specification can be obtained from the IETF on-line IPR repository at specification can be obtained from the IETF on-line IPR repository at
http://www.ietf.org/ipr. http://www.ietf.org/ipr.
The IETF invites any interested party to bring to its attention any The IETF invites any interested party to bring to its attention any
copyrights, patents or patent applications, or other proprietary copyrights, patents or patent applications, or other proprietary
rights that may cover technology that may be required to implement rights that may cover technology that may be required to implement
this standard. Please address the information to the IETF at this standard. Please address the information to the IETF at
ietf-ipr@ietf.org. ietf-ipr@ietf.org.
Acknowledgment
Funding for the RFC Editor function is provided by the IETF
Administrative Support Activity (IASA).
 End of changes. 35 change blocks. 
185 lines changed or deleted 226 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/