draft-ietf-pce-pcep-svec-list-01.txt   draft-ietf-pce-pcep-svec-list-02.txt 
Internet Engineering Task Force I. Nishioka Network Working Group I. Nishioka
Internet-Draft NEC Internet Draft NEC
Intended Status: Informational Daniel King Intended status: Informational Daniel King
Created: March 9, 2009 Old Dog Consulting Expires: February 2010 Old Dog Consulting
Expires: September 9, 2009 August 28, 2009
The use of SVEC (Synchronization VECtor) list for Synchronized The use of SVEC (Synchronization VECtor) list for Synchronized
dependent path computations dependent path computations
draft-ietf-pce-pcep-svec-list-01.txt
draft-ietf-pce-pcep-svec-list-02.txt
Status of this Memo Status of this Memo
This Internet-Draft is submitted to IETF in full conformance with This Internet-Draft is submitted to IETF in full conformance with
the provisions of BCP 78 and BCP 79. the provisions of BCP 78 and 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
other groups may also distribute working documents as Internet- other groups may also distribute working documents as Internet-
Drafts. Drafts.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six
and may be updated, replaced, or obsoleted by other documents at any months and may be updated, replaced, or obsoleted by other documents
time. It is inappropriate to use Internet-Drafts as reference at any time. It is inappropriate to use Internet-Drafts as
material or to cite them other than as "work in progress." reference 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 February 28, 2009.
Copyright Notice
Copyright (c) 2009 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents in effect on the date of
publication of this document (http://trustee.ietf.org/license-info).
Please review these documents carefully, as they describe your
rights and restrictions with respect to this document.
Abstract Abstract
A Path Computation Element (PCE) performing dependent path A Path Computation Element (PCE) performing dependent path
computations, for instance calculating a diverse working and computations, for instance calculating a diverse working and
protected path do not share common network points, would need to protected path do not share common network points, would need to
synchronize the computations in order to increase the probability of synchronize the computations in order to increase the probability of
meeting the working and protected path disjoint objective and meeting the working and protected path disjoint objective and
network resource optimization objective. When a PCE computes network resource optimization objective. When a PCE computes
multiple sets of dependent path computation requests concurrently, multiple sets of dependent path computation requests concurrently,
it is required to use Synchronization VECtor (SVEC) list for it is required to use Synchronization VECtor (SVEC) list for
association among the sets of dependent path computation requests. association among the sets of dependent path computation requests.
SVEC is also applicable to end-to-end diverse path computation SVEC is also applicable to end-to-end diverse path computation
across multiple domains. This document describes the usage of SVECs across multiple domains. This document describes the usage of SVECs
in the SVEC list and diverse path computation guideline, for the in the SVEC list and diverse path computation guideline, for the
synchronized computation of dependent paths. synchronized computation of dependent paths.
Contents Table of Contents
1. Terminology.................................................... 1. Terminology...................................................3
2. Introduction................................................... 2. Introduction..................................................3
3. SVEC association scenarios..................................... 3. SVEC association scenarios....................................5
3.1. Synchronized computation for diverse path requests......... 3.1. Synchronized computation for diverse path requests.......5
3.2. Synchronized computation for point-to-multipoint 3.2. Synchronized computation for point-to-multipoint path
path requests.............................................. requests......................................................6
4. SVEC association............................................... 4. SVEC association..............................................6
4.1. Associated SVECs........................................... 4.1. Associated SVECs.........................................7
4.2. Non-associated SVECs....................................... 4.2. Non-associated SVECs.....................................7
5. Processing of SVEC list........................................ 5. Processing of SVEC list.......................................8
5.1. Single PCE, single domain environments..................... 5.1. Single PCE, single domain environments...................8
5.2. Multi-PCE, single domain environments...................... 5.2. Multi-PCE, single domain environments....................8
5.3. Single PCE, Multi-domain environments...................... 5.3. Single PCE, multi-domain environments....................9
6. End-to-end diverse path computation............................ 6. End-to-end diverse path computation...........................9
6.1. Disjoint VSPTs............................................. 6.1. Disjoint VSPT............................................9
6.2. Disjoint VSPTs Encoding.................................... 6.2. Disjoint VSPT encoding..................................11
6.3. Path commutation in PCE.................................... 6.3. Path computation procedure..............................11
7. Manageability considerations................................... 7. Manageability considerations.................................12
7.1. Control of Function and Police............................. 7.1. Control of Function and Policy..........................12
7.2. Information and Data Models, e.g. MIB modules.............. 7.2. Information and Data Models, e.g. MIB modules...........12
7.3. Liveness Detection and Monitoring.......................... 7.3. Liveness Detection and Monitoring.......................12
7.4. Verifying Correct Operation................................ 7.4. Verifying Correct Operation.............................12
7.5. Requirements on Other Protocols and Functional Components.. 7.5. Requirements on Other Protocols and Functional Components12
7.6. Impact on Network Operation................................ 7.6. Impact on Network Operation.............................13
8. Security Considerations........................................ 8. Security Considerations......................................13
9. IANA Considerations............................................ 9. IANA Considerations..........................................13
10. References.................................................... 10. References..................................................13
10.1. Normative References...................................... 10.1. Normative References...................................13
10.2. Informative References.................................... 10.2. Informative References.................................14
11. Authors Addresses.............................................
12. Intellectual Property Consideration...........................
12. Disclaimer of Validity........................................
13. Full Copyright Statement......................................
1. Terminology 1. Terminology
This document uses PCE terminology defined in [RFC4655], This document uses PCE terminology defined in [RFC4655],[RFC4875],
[RFC4875], and [RFC5440]. and [RFC5440].
GCO (Global Concurrent Optimization): A GCO (Global Concurrent Optimization): A concurrent path computation
concurrent path computation application where a set of TE paths is application, defined in [RFC5557], where a set of TE paths is
computed concurrently in order to efficiently utilize network computed concurrently in order to efficiently utilize network
resources. resources.
Associated SVECs: A group of multiple SVECs (Synchronization Associated SVECs: A group of multiple SVECs (Synchronization
VECtors)to indicate a set of synchronized or concurrent path VECtors), defined in this document, to indicate a set of
computations. synchronized or concurrent path computations.
VSPT: Virtual Shortest Path Tree VSPT: Virtual Shortest Path Tree defined in [RFC5441].
Disjoint VSPT : A set of VSPTs, defined in this document, to
indicate a set of virtual diverse path tree.
2. Introduction 2. Introduction
[RFC5440] describes the specifications for PCEP (Path Computation [RFC5440] describes the specifications for PCEP (Path Computation
Element communication Protocol). PCEP facilitates the communication Element communication Protocol). PCEP facilitates the communication
between a Path Computation Client(PCC) and a Path Computation Element between a Path Computation Client(PCC) and a Path Computation
(PCE), or between two PCEs based on PCE architecture [RFC4655]. PCEP Element (PCE), or between two PCEs based on PCE architecture
interactions include path computation requests and path computation [RFC4655]. PCEP interactions include path computation requests and
replies. path computation replies.
[ID.pce-gco] specifies a global concurrent path computation [RFC5557] specifies the Global Concurrent (GCO) path computation
application for the efficient use of network resources, called GCO, mechanism. The GCO application provides the capability to re-
based on required objective functions (OFs). To compute a set of optimize a set of service within the network, in order to maximize
efficient use of network resources. A single or set of objective
functions (OFs) can be applied to a GCO. To compute a set of such
traffic-engineered paths for the GCO application, PCEP supports the traffic-engineered paths for the GCO application, PCEP supports the
synchronous and dependent path computation requests required in synchronous and dependent path computation requests required in
[RFC4657]. When a PCC or PCE sends such path computation requests to [RFC4657]. When a PCC or PCE sends such path computation requests to
a PCE, Synchronization VECtor (SVEC) allows the PCC or PCE to a PCE, Synchronization VECtor (SVEC) allows the PCC or PCE to
specify a list of multiple path computation requests that must be specify a list of multiple path computation requests that must be
synchronized along with a potential dependency.[RFC5440] defines synchronized along with a potential dependency.[RFC5440] defines
two synchronous path computation modes using SVEC. two synchronous path computation modes using SVEC.
o Bundle of a set of independent and synchronized path computation o Bundle of a set of independent and synchronized path computation
requests. requests,
o Bundle of a set of dependent and synchronized path computation o Bundle of a set of dependent and synchronized path computation
requests. requests.
These are exclusive modes. If one of the dependency flags (i.e. These are exclusive modes in a single SVEC. If one of the dependency
Node, Link or Shared Risk Link Groups (SRLG) diverse flags) in a SVEC flags (i.e. Node, Link or Shared Risk Link Groups (SRLG) diverse
is set, the SVEC indicates a set of synchronous path computation flags) in a SVEC is set, the SVEC indicates a set of synchronous
requests with a dependency. In order to be synchronized among path computation requests with a dependency. In order to be
multiple sets of path computation requests with a dependency, it is synchronized among multiple sets of path computation requests with a
necessary to use other SVECs. dependency, it is necessary to use other SVECs.
It is important for the PCE, when performing path computations, to It is important for the PCE, when performing path computations, to
synchronize any path computation requests with a dependency. For synchronize any path computation requests with a dependency. For
example, consider a protected end-to-end service. Two diverse path example, consider a protected end-to-end service. Two diverse path
computation requests are needed to compute the disjointed working and computation requests are needed to compute the disjointed working
protected paths. If the diverse path requests are computed and protected paths. If the diverse path requests are computed
sequentially, fulfillment of the initial diverse path computation sequentially, fulfillment of the initial diverse path computation
without consideration of the second diverse path computation and without consideration of the second diverse path computation and
disjoint constraint, may result in the PCE providing sub-optimal disjoint constraint may result in the PCE providing sub-optimal
results for the second one, or fail to meet the disjoint requirement results for the second one, or may fail to meet the disjoint
altogether. requirement altogether.
Additionally SVEC can be applied to an end-to-end diverse path Additionally, SVEC can be applied to end-to-end diverse path
computation that traverse multiple domains. [ID.pce-brpc] describes computation that traverses multiple domains. [RFC5441] describes two
two approaches, synchronous (i.e. simultaneous) and 2-step approaches, synchronous (i.e. simultaneous) and 2-step approaches,
approaches, for the end-to-end diverse path computation across a for the end-to-end diverse path computation across a chain of
chain of domains. The path computation procedure is specified for domains. The path computation procedure is specified for the 2-step
the 2-step approaches in [ID.xro], but no guidelines are provided approaches in [RFC5521], but no guidelines are provided for a
for a synchronous approach. synchronous approach.
This document defines the handling of synchronous path computation This document defines the handling of synchronous path computation
for PCE and multiple set of path computation request with a for PCE and multiple set of path computation request with a
dependency. The following scenarios are specifically described: dependency, based on the PCE architecture [RFC4655]. The following
scenarios are specifically described:
o Single domain, single PCE, dependent and synchronized path o Single domain, single PCE, dependent and synchronized path
computation request. computation request.
o Single domain, multiple-PCE, dependent and synchronized path o Single domain, multiple-PCE, dependent and synchronized path
computation request. computation request.
o Multi-domain, dependent and synchronized path computation o Multi-domain, dependent and synchronized path computation
request, including end-to-end diverse path computation. request, including end-to-end diverse path computation.
The association among multiple SVECs and the processing rules to The association among multiple SVECs for multiple sets of
support multiple sets of synchronized dependent path computation synchronized dependent path computation and disjoint VSPT encoding
requests is also described in this document. Path computation rule for end-to-end diverse path computation across domains are also
algorithms for the associated path computation requests are out of described in this document. Path computation algorithms for these
scope in this document. path computation scenarios are out of scope in this document.
The SVEC association and its processing rule do not require any The SVEC association and the disjoint VSPT described in this
extension to PCEP message and object formats, when computing a GCO document do not require any extension to PCEP message and object
for multiple diverse paths. In addition, the use of multiple SVECs is formats, when computing a GCO for multiple or end-to-end diverse
not restricted to only SRLG, Node and Link diversity currently paths. In addition, the use of multiple SVECs is not restricted to
defined in the SVEC object, [RFC5440], but is also available for only SRLG, Node and Link diversity currently defined in the SVEC
other dependent path computation requests. object [RFC5440], but is also available for other dependent path
computation requests.
The SVEC association is available to both multiple PCE path The SVEC association and disjoint VSPT are available to both
computations as well as a single PCE path computation. multiple PCE path computations as well as a single PCE path
computation.
3. SVEC association scenarios 3. SVEC association scenarios
This section clarifies several path computation scenarios, in which This section clarifies several path computation scenarios, in which
SVEC association can be applied. Also, any combination of scenarios SVEC association can be applied. Also, any combination of scenarios
described in this section could be applicable. described in this section could be applicable.
3.1. Synchronized computation for diverse path requests 3.1. Synchronized computation for diverse path requests
When computing two or more point-to-point diverse paths, a PCE may When computing two or more point-to-point diverse paths, a PCE may
compute these diverse paths concurrently, in order to increase the compute these diverse paths concurrently, in order to increase the
probability of meeting primary and secondary path disjoint objective probability of meeting primary and secondary path disjoint objective
and network resource optimization objective. and network resource optimization objective.
Two scenarios can be considered for the SVEC association of Two scenarios can be considered for the SVEC association of point-
point-to-point diverse paths. to-point diverse paths.
o Two or more end-to-end diverse paths o Two or more end-to-end diverse paths
When concurrent path computation of two or more end-to-end diverse When concurrent path computation of two or more end-to-end diverse
paths is requested, SVEC association is needed among diverse path paths is requested, SVEC association is needed among diverse path
requests. Note here that each diverse path request consists of requests. Note here that each diverse path request consists of
primary, secondary, and etc., in which are grouped with one SVEC. primary, secondary, and tertiary and beyond path requests, in which
all path requests are grouped with one SVEC association.
Example of this scenario: When there are two associated end-to-end Example of this scenario: When there are two associated end-to-end
diverse path requests with primary and secondary, all requests must diverse path requests with primary and secondary, all requests must
be computed in a synchronized manner. be computed in a synchronized manner.
o End-to-end primary path and its segmented secondary paths o End-to-end primary path and its segmented secondary paths
When concurrent path computation of an end-to-end primary path and When concurrent path computation of an end-to-end primary path and
several segmented secondary paths is requested, SVEC association is several segmented secondary paths is requested, SVEC association is
needed among primary/segmented secondary-1 request, primary/segmented needed among primary/segmented secondary-1 request,
secondary-2 request, and etc. primary/segmented secondary-2 request, and etc.
In this scenario, we assume that the primary path may be pre- In this scenario, we assume that the primary path may be pre-
computed, which is used for specifying the segment for secondary computed, which is used for specifying the segment for secondary
paths. Otherwise, segment for secondary path requests are specified paths. Otherwise, segment for secondary path requests are specified
in advance, by using XRO and/or IOR constraints in the primary in advance, by using XRO and/or IOR constraints in the primary
request. request.
3.2. Synchronized computation for point-to-multipoint path requests 3.2. Synchronized computation for point-to-multipoint path requests
For point-to-multipoint path requests, SVEC association can be For point-to-multipoint path requests, SVEC association can be
applied. applied.
o Two or more point-to-multipoint paths o Two or more point-to-multipoint paths
If a point-to-multipoint paths request is represented as a set of If a point-to-multipoint paths request is represented as a set of
point-to-point paths [ID-pce-p2mp-ext], two or more point-to- point-to-point paths [ID.pce-p2mp-ext], two or more point-to-
multipoint path computation requests can be associated for concurrent multipoint path computation requests can be associated for
path computation, in order to optimize network resources. concurrent path computation, in order to optimize network resources.
o point-to-multipoint paths and its secondary paths o point-to-multipoint paths and its secondary paths
When concurrent path computation of a point-to-multipoint path and When concurrent path computation of a point-to-multipoint path and
its point-to-point secondary paths [RFC4875], or a point-to- its point-to-point secondary paths [RFC4875], or a point-to-
multipoint path and its point-to-multipoint secondary paths multipoint path and its point-to-multipoint secondary paths is
[ID.p2mp-te-bypass] is requested, SVEC association is needed among requested, SVEC association is needed among these requests. In
these requests. this scenario, we use the same assumption as "end-to-end primary
In this scenario, we use the same assumption as "end-to-end primary
path and its segmented secondary paths scenario" in section 3.1 path and its segmented secondary paths scenario" in section 3.1
4. SVEC association 4. SVEC association
This section describes the associations among SVECs in a SVEC list. This section describes the associations among SVECs in a SVEC list.
4.1. Associated SVECs 4.1. Associated SVECs
Associated SVECs mean that there are relationships among multiple Associated SVECs mean that there are relationships among multiple
SVECs. Request-IDs in the SVEC objects are used to indicate the SVECs. Request-IDs in the SVEC objects are used to indicate the
association among SVEC objects. If the same request-IDs exist in more association among SVEC objects. If the same request-IDs exist in
than two SVECs, this indicates associated SVECs. When associating more than two SVECs, this indicates associated SVECs. When
among SVECs, only one request-ID may in the SVEC object may be associating among SVECs, only one request-ID may in the SVEC object
contained in the other SVEC object. This contributes to reducing the may be contained in the other SVEC object. This contributes to
message size of PCEP request. Even in this case, all of the path reducing the message size of PCEP request. Even in this case, all of
computation requests are synchronized. the path computation requests are synchronized.
Below is an example of associated SVECs. In this example, the first Below is an example of associated SVECs. In this example, the first
SVEC is associating the other SVECs, and path computation requests SVEC is associating the other SVECs, and path computation requests
from Request-ID#1 to Request-ID#Z must be synchronized. from Request-ID#1 to Request-ID#Z must be synchronized.
<SVEC-list> <SVEC-list>
<SVEC> without dependency flags <SVEC> without dependency flags
Request-ID #1, Request-ID #3, ..., Request-ID #X Request-ID #1, Request-ID #3, ..., Request-ID #X
<SVEC> with one or more dependency flags <SVEC> with one or more dependency flags
Request-ID #1, Request-ID #2 Request-ID #1, Request-ID #2
<SVEC> with one or more dependency flags <SVEC> with one or more dependency flags
Request-ID #3, Request-ID #4 Request-ID #3, Request-ID #4
........ ........
<SVEC> without dependency flag <SVEC> without dependency flag
Request-ID #X, Request-ID #Y, Request-ID #Z Request-ID #X, Request-ID #Y, Request-ID #Z
4.2. Non-associated SVECs 4.2. Non-associated SVECs
Non-associated SVECs mean that there are no relationships among Non-associated SVECs mean that there are no relationships among
SVECs. If SVEC objects in PECP request messages do not have the same SVECs. If SVEC objects in PECP request messages do not have the same
request-ID, the relationship among these SVECs is not associated. request-ID, the relationship among these SVECs is not associated.
Below is an example of non-associated SVECs that does not contain any Below is an example of non-associated SVECs that does not contain
same request-IDs. any same request-IDs.
<SVEC-list> <SVEC-list>
<SVEC> with one or more dependency flags <SVEC> with one or more dependency flags
Request-ID #1, Request-ID #2 Request-ID #1, Request-ID #2
<SVEC> with one or more dependency flags <SVEC> with one or more dependency flags
Request-ID #3, Request-ID #4 Request-ID #3, Request-ID #4
........ ........
<SVEC> without dependency flags <SVEC> without dependency flags
Request-ID #X, Request-ID #Y, Request-ID #Z Request-ID #X, Request-ID #Y, Request-ID #Z
5. Processing of SVEC list 5. Processing of SVEC list
5.1. Single PCE, single domain environments 5.1. Single PCE, single domain environments
When PCEP receives PCReq messages with more than two SVEC objects in When PCEP receives PCReq messages with more than two SVEC objects in
the SVEC list, PCEP has to first check the request-IDs in all SVEC the SVEC list, PCEP has to first check the request-IDs in all SVEC
objects in order to identify any associations among them. The SVEC objects in order to identify any associations among them. The SVEC
objects may be received in a single or multiple PCReq message(s). In objects may be received in a single or multiple PCReq message(s). In
skipping to change at page 7, line 47 skipping to change at page 8, line 24
Request-ID #X, Request-ID #Y, Request-ID #Z Request-ID #X, Request-ID #Y, Request-ID #Z
5. Processing of SVEC list 5. Processing of SVEC list
5.1. Single PCE, single domain environments 5.1. Single PCE, single domain environments
When PCEP receives PCReq messages with more than two SVEC objects in When PCEP receives PCReq messages with more than two SVEC objects in
the SVEC list, PCEP has to first check the request-IDs in all SVEC the SVEC list, PCEP has to first check the request-IDs in all SVEC
objects in order to identify any associations among them. The SVEC objects in order to identify any associations among them. The SVEC
objects may be received in a single or multiple PCReq message(s). In objects may be received in a single or multiple PCReq message(s). In
the later case, the PCE may start a SyncTimer as recommended in the latter case, the PCE may start a SyncTimer as recommended in
[RFC5440]. After receiving the whole path computation requests, [RFC5440]. After receiving the whole path computation requests, the
the analysis for associated SVECs has to be started. analysis for associated SVECs has to be started.
If there are no matching request-IDs in the different SVEC objects, If there are no matching request-IDs in the different SVEC objects,
these SVEC objects are not associated, and then each set of path these SVEC objects are not associated, and then each set of path
computation requests in the non-associated SVEC objects has to be computation requests in the non-associated SVEC objects has to be
computed separately. computed separately.
If there are matching request-IDs in the different SVEC objects, If there are matching request-IDs in the different SVEC objects,
these SVEC objects are associated, and then all path computation these SVEC objects are associated, and then all path computation
requests in the associated SVEC objects are treated in a synchronous requests in the associated SVEC objects are treated in a synchronous
manner for GCO application. manner for GCO application.
skipping to change at page 8, line 27 skipping to change at page 9, line 4
supported". supported".
5.2. Multi-PCE, single domain environments 5.2. Multi-PCE, single domain environments
Currently no mechanisms exist to manage co-ordination of dependent Currently no mechanisms exist to manage co-ordination of dependent
SVEC requests between multiple PCE`s in the same domain. If a PCC SVEC requests between multiple PCE`s in the same domain. If a PCC
sends a path computation request to a PCE and then sends a second sends a path computation request to a PCE and then sends a second
service path computation request, which is required to be disjoint service path computation request, which is required to be disjoint
from the first service, and this request is sent to a different PCE from the first service, and this request is sent to a different PCE
in the domain, no SVEC object correlation function between the PCEs in the domain, no SVEC object correlation function between the PCEs
is currently available. Equally, associated SVECs are not sent to the is currently available. Equally, associated SVECs are not sent to
different PCEs in the domain. the different PCEs in the domain.
5.3. Single PCE, Multi-domain environments 5.3. Single PCE, multi-domain environments
When multiple PCEs located in separate domains are used to When multiple PCEs located in separate domains are used to
concurrently compute an end-to-end diverse path across multiple concurrently compute an end-to-end diverse path across multiple
domains, additional processing may be required. The path computation domains, additional processing may be required. The path computation
process for the end-to-end diverse path is described in Section 6. process for the end-to-end diverse path is described in Section 6.
Furthermore, if the PCReq message contains multiple associated SVEC Furthermore, if the PCReq message contains multiple associated SVEC
objects and these SVEC objects contain path computation requests that objects and these SVEC objects contain path computation requests
will be sent to the next PCE along the path computation chain. that will be sent to the next PCE along the path computation chain.
Intermediate PCEs receiving such PCReq messages may re-construct Intermediate PCEs receiving such PCReq messages may re-construct
associations among SVEC objects, and then send PCReq messages to associations among SVEC objects, and then send PCReq messages to
corresponding PCEs located in neighboring domains. If the associated corresponding PCEs located in neighboring domains. If the associated
SVECs are re-constructed at the intermediate PCE, the PCE must not SVECs are re-constructed at the intermediate PCE, the PCE must not
start path computation until all PCRep messages have been received start path computation until all PCRep messages have been received
from neighbor PCEs. In addition, it is not recommended that SVEC from neighbor PCEs. In addition, it is not recommended that SVEC
objects coming from different PCReq messages are re-constructed. This objects coming from different PCReq messages are re-constructed.
may contribute to resource optimization from network operator`s point This may contribute to resource optimization from network operator`s
of view, but it is unrealistic in the case of multiple PCE path point of view, but it is unrealistic in the case of multiple PCE
computation scenarios. path computation scenarios.
6. End-to-end diverse path computation 6. End-to-end diverse path computation
End-to-end diverse path is a set of primary path and secondary paths, End-to-end diverse path is a set of primary path and secondary paths,
which do not share common network resources across domains. To which do not share common network resources across domains. To
compute the end-to-end diverse path, BRPC procedure can be used. compute the end-to-end diverse path, the BRPC procedure can be used.
[ID.pce-brpc] describes two approaches, synchronous (i.e. [RFC5441] describes two approaches, synchronous (i.e. simultaneous)
simultaneous)and 2-step approaches, for the end-to-end diverse and 2-step approaches, for the end-to-end diverse path computation
path computation across a chain of domains. The 2-step approach is across a chain of domains. The 2-step approach is described in
described in [ID.xro]. This section provides how to compute end-to [RFC5521]. This section provides how to compute end-to-end diverse
-end diverse path in the synchronous approach. path in the synchronous approach.
6.1. Disjoint VSPTs 6.1. Disjoint VSPT
BRPC procedure constructs a VSPT (virtual shortest path tree) to The BRPC procedure constructs a VSPT (virtual shortest path tree) to
inform the enquiring PCE of potential paths to the destination node. inform the enquiring PCE of potential paths to the destination node.
In the end-to-end diverse path computation, disjoint information In the end-to-end diverse path computation, disjoint information
among the potential paths must be preserved in the VSPT to ensure end among the potential paths must be preserved in the VSPT to ensure
-to-end disjoint path. In order to preserve disjoint information, end-to-end disjoint path. In order to preserve disjoint information,
disjoint VSPTs are sent in the PCEP PCRep message. disjoint VSPTs are sent in the PCEP PCRep message.
A definition of the disjoint VSPTs is a collection of VSPTs, in which A definition of the disjoint VSPT is a collection of VSPTs, in which
each VSPT contains a potential set of primary and secondary paths. each VSPT contains a potential set of primary and secondary paths.
Figure 1 is an example network and its disjoint VSPTs when primary Figure-1 shows an example network. Here, transit nodes in domains
path and secondary path are requested. Here, transit nodes within are not depicted, and PCE1 and PCE2 may be located in boarder nodes.
domains are not depicted, and PCE1 and PCE2 may be embedded in In this network, there are three VSPTs for the potential set of
boarder nodes. diverse paths shown in Figure 2, when the primary path and secondary
path are requested from S1 to D1. These VSPTs consist of a disjoint
Example network: VSPT, which is replied to PCE1. When receiving the disjoint VSPT,
PCE1 recognizes the disjoint request and disjoint VSPT information.
PCE1 will then continue to process the request and compute the
diverse path using the BRPC procedure [RFC5441]. The detail encoding
for the disjoint VSPT is described in Section 6.2.
Domain1 Domain2 Domain1 Domain2
+----------+ +----------+ +----------+ +----------+
| PCE1 | | PCE2 | S1: Source node | PCE1 | | PCE2 | S1: Source node
| BN1---BN4 | D1: Destination node | BN1---BN4 | D1: Destination node
| S1 BN2---BR5 D1 | BN1-BN6: Border nodes | S1 BN2---BR5 D1 | BN1-BN6: Border nodes
| BN3---BN6 | | BN3---BN6 |
| | | |
+----------+ +----------+ +----------+ +----------+
VSPTs from PCE2: Figure-1; Example network for diverse path computation
VSPT1; VSPT2; VSPT3; VSPT1; VSPT2; VSPT3;
D1 D1 D1 D1 D1 D1
/ \ / \ / \ / \ / \ / \
BR4 BR5 BR4 BR6 BR5 BR6 BR4 BR5 BR4 BR6 BR5 BR6
Figure 1: An example of diverse path computation Figure-2; Disjoint VSPT from PCE2 to PCE1
6.2. Disjoint VSPT Encoding 6.2. Disjoint VSPT encoding
Encoding for disjoint VSPTs follows the definition of PCEP message Encoding for disjoint VSPT follows the definition of PCEP message
encoding in [RFC5440]. encoding in [RFC5440].
PCEP PCRep message returns disjoint VSPTs as <path list> for each RP PCEP PCRep message returns a disjoint VSPT as <path list> for each
object. The order of <path> in <path list> among <responses> implies RP object. The order of <path> in <path list> among <responses>
a set of primary EROs and secondary EROs. implies a set of primary EROs and secondary EROs.
Below shows simple example in Figure 1 if a primary path and a A PCE sending PCRep with a disjoint VSPT can reply with a partial
secondary path are requested. disjoint VSPT based on its network operation policy, but the order
of <path> in <path list> must be aligned correctly.
If confidentiality is required between domains, path key mechanism
defined in [RFC5520] is used for a disjoint VSPT.
Detail disjoint VSPT encoding in Figure-2 is shown below, when a
primary path and a secondary path are requested from S1 to D1.
o Request ID #1 (Primary) o Request ID #1 (Primary)
- ERO1 BR4(TE route ID)- ...-D1(TE-Router ID) [for VSPT1] - ERO1 BR4(TE route ID)- ...-D1(TE-Router ID) [for VSPT1]
- ERO2 BR4(TE route ID)- ...-D1(TE-Router ID) [for VSPT2] - ERO2 BR4(TE route ID)- ...-D1(TE-Router ID) [for VSPT2]
- ERO3 BR5(TE route ID)- ...-D1(TE-Router ID) [for VSPT3] - ERO3 BR5(TE route ID)- ...-D1(TE-Router ID) [for VSPT3]
O Request ID #2 (Secondary) O Request ID #2 (Secondary)
- ERO4 BR5(TE route ID)- ...-D1(TE-Router ID) [for VSPT1] - ERO4 BR5(TE route ID)- ...-D1(TE-Router ID) [for VSPT1]
- ERO5 BR6(TE route ID)- ...-D1(TE-Router ID) [for VSPT2] - ERO5 BR6(TE route ID)- ...-D1(TE-Router ID) [for VSPT2]
- ERO6 BR6(TE route ID)- ...-D1(TE-Router ID) [for VSPT2] - ERO6 BR6(TE route ID)- ...-D1(TE-Router ID) [for VSPT2]
6.3. Path computation procedure 6.3. Path computation procedure
For end-to-end diverse path computation, the same mode of operation For end-to-end diverse path computation, the same mode of operation
as BRPC procedure can be applied (i.e. Step 1 to Step n in Section as BRPC procedure can be applied (i.e. Step 1 to Step n in Section
4.2 [ID.pce-brpc]). During this procedure, a questions is how to 4.2 [RFC5441]). During this procedure, a question is how to
recognize disjoint VSPTs. recognize disjoint VSPTs.
The recognition of disjoint VSPT is achieved by the PCE sending PCreq The recognition of disjoint VSPT is achieved by the PCE sending
to its neighbor PCE which maintains the path computation request PCreq to its neighbor PCE which maintains the path computation
(PCReq) information. If PCreq has one or more SVEC object(s) with the request (PCReq) information. If PCreq has one or more SVEC object(s)
appropriate diverse flags, the received PCrep will contain the with the appropriate diverse flags, the received PCrep will contain
disjoint VSPT. If not, the received VSTP is a normal VSPT based on the disjoint VSPT. If not, the received VSTP is a normal VSPT based
the shortest path computation. on the shortest path computation.
Note that the PCE can apply a suitable algorithm for computing Note that the PCE will apply a suitable algorithm for computing
disjoint VSPT. Selection and application of the appropriate disjoint VSPT. The selection and application of the appropriate
algorithm is out of scope in this draft. algorithm is out of scope in this draft.
7. Manageability considerations 7. Manageability considerations
This section describes manageability considerations specified in This section describes manageability considerations specified in
[ID.pce-mngabl-reqs]. [ID.pce-mngabl-reqs].
7.1. Control of Function and Policy 7.1. Control of Function and Policy
In addition to section 8.1 to [RFC5440], PCEP implementation In addition to [RFC5440], PCEP implementation should allow the
should allow the configuration of association among SVECs on PCCs. configuration of association among SVECs on PCCs.
o the capability to configure SVEC association. o the capability to configure SVEC association.
7.2. Information and Data Models, e.g. MIB modules 7.2. Information and Data Models, e.g. MIB modules
There are no additional parameters for MIB modules. There are no additional parameters for MIB modules.
7.3. Liveness Detection and Monitoring 7.3. Liveness Detection and Monitoring
The associated SVEC in this document allows PCEs to compute optimal The associated SVEC in this document allows PCEs to compute optimal
sets of diverse path. This type of path computation may require more sets of diverse path. This type of path computation may require more
time to obtain its results. Therefore, it is recommended for PCEP to time to obtain its results. Therefore, it is recommended for PCEP to
support PCE monitoring mechanism specified in [ID.pce-monitor]. support PCE monitoring mechanism specified in [ID.pce-monitor].
7.4. Verifying Correct Operation 7.4. Verifying Correct Operation
Section 8.4 in [RFC5440] provides the sufficient descriptions [RFC5440] provides the sufficient descriptions for this document. So,
for this document. So, there are no additional considerations. there are no additional considerations.
7.5. Requirements on Other Protocols and Functional Components 7.5. Requirements on Other Protocols and Functional Components
This document does not require anything on other protocol and This document does not require any other protocol and functional
functional components. components.
7.6. Impact on Network Operation 7.6. Impact on Network Operation
Section 8.6 in [RFC5440] provides the sufficient descriptions [RFC5440] provides the sufficient descriptions for this document. So,
for this document. So, there are no additional considerations. there are no additional considerations.
8. Security Considerations 8. Security Considerations
This document defines the usage of SVEC list, and does not have any This document defines the usage of SVEC list, and does not have any
extensions for PCEP protocol. Therefore the security of this document extensions for PCEP protocol. Therefore the security of this
depends on that of PCEP protocol. document depends on that of PCEP protocol.
9. IANA Considerations 9. IANA Considerations
This document has no specific extension for PCEP messages, objects This document has no specific extension for PCEP messages, objects
and its parameters and does not require any registry assignment and its parameters and does not require any registry assignment.
10. References 10. References
10.1. Normative References 10.1. Normative References
[RFC4655] A. Farrel, JP. Vasseur and J. Ash, "A Path Computation [RFC4655] A. Farrel, JP. Vasseur and J. Ash, "A Path Computation
Element (PCE)-Based Architecture," RFC 4655, September Element (PCE)-Based Architecture," RFC 4655, September
2006. 2006.
[RFC4657] J. Ash and J.L. Le Roux, "Path Computation Element (PCE) [RFC4657] J. Ash and J.L. Le Roux, "Path Computation Element (PCE)
Communication Protocol Generic Requirements," RFC 4757, Communication Protocol Generic Requirements," RFC 4757,
September 2006. September 2006.
[RFC4875] R. Aggarwal, D. Papadimitriou, and S. Yasukawa, " [RFC4875] R. Aggarwal, D. Papadimitriou, and S. Yasukawa,
Extensions to Resource Reservation Protocol - Traffic "Extensions to Resource Reservation Protocol - Traffic
Engineering (RSVP-TE) for Point-to-Multipoint TE Label Engineering (RSVP-TE) for Point-to-Multipoint TE Label
Switched Paths (LSPs)," RFCCC4875, May, 2007. Switched Paths (LSPs)," RFC4875, May 2007.
10.2. Informative References [RFC5440] Ayyangar, A., Farrel, A., Oki, E., Atlas, A., Dolganow A.
Ikejiri, Y., Kumaki, K., Vasseur, J., and J. Roux, "Path
Computation Element (PCE) communication Protocol (PCEP),"
RFC5440, March. 2009.
[RFC5440] Ayyangar, A., Farrel, A., Oki, E., Atlas, A., Dolganow, [RFC5441] JP. Vasseur, R. Zhang, N. Bitar and JL. Le Roux, "A
A., Ikejiri, Y., Kumaki, K., Vasseur, J., and J. Roux, Backward Recursive PCE-based Computation (BRPC) Procedure
"Path Computation Element (PCE) Communication Protocol to Compute Shortest Constrained Inter-domain Traffic
(PCEP)", RFC 5440, March 2009. Engineering Label Switched Paths," RFC5441, April 2009.
[ID.pce-gco] Y. Lee, JL. Le Roux, D. King and E. Oki, "Path [RFC5520] R. Bradford, JP. Vasseur, and A. Farrel, "Preserving
Computation Element Communication Protocol (PCECP) Topology Confidentiality in Inter-Domain Path Computations
Requirements and Protocol Extensions In Support of Using a Path-Key-Based mechanism," RFC5520, April 2009.
Global Concurrent Optimization," draft-ietf-pce-global-
concurrent-optimization-08 Work in progress, Jan. 2009.
[ID.pce-brpc] JP. Vasseur, R. Zhang, N. Bitar and JL. Le Roux, "A [RFC5521] E. Oki, T. Takeda and A. Farrel, "Extensions to the Path
Backward Recursive PCE-based Computation (BRPC) Computation Element Communication Protocol (PCEP) for
Procedure To Compute Shortest Constrained Inter- Route Exclusions," RFC5521, April 2009.
domain Traffic Engineering Label Switched Paths,"
draft-ietf-pce-brpc-09, Work in progress, April 2008.
[ID.xro] E. Oki, T. Takeda and A. Farrel, "Extensions to the [RFC5557] Y. Lee, JL. Le Roux, D. King and E. Oki, "Path Computation
Path Computation Element Communication Protocol (PCEP) Element Communication Protocol (PCECP) Requirements and
for Route Exclusions," draft-ietf-pce-pcep-xro-06, Protocol Extensions In Support of Global Concurrent
Work in progress, July 2008. Optimization," RFC5557, July 2009.
[ID-pce-p2mp-ext] Takeda, T., Chaitou M., Le Roux, J.L., Ali Z.,Zhao, 10.2. Informative References
Q., King, D.,"draft-ietf-pce-pcep-p2mp-extensions-
01,work in progress, October , 2008.
[ID.p2mp-te-bypass] JL. Le Roux, R. Aggarwal, J.P. Vasseur, [ID.pce-p2mp-ext] Takeda, T., Chaitou M., Le Roux, J.L., Ali Z.,Zhao,
and M. Vigoureux, "P2MP MPLS-TE Fast Q., King, D., "Extensions to the Path Computation Element
Reroute with P2MP Bypass Tunnels," draft- Communication Protocol (PCEP) for Point-to-Multipoint
ietf-mpls-p2mp-te-bypass-02," Work in progress, Mar. Traffic Engineering Label Switched Paths," draft-ietf-pce-
2008. pcep-p2mp-extensions, work in progress, August, 2009.
[ID.pce-mngabl-reqs] A. Farrel, "Inclusion of Manageability [ID.pce-mngabl-reqs] A. Farrel, "Inclusion of Manageability Sections
Sections in PCE Working in PCE Working Group Drafts," draft-ietf-pce-
Group Drafts," draft-ietf-pce-manageability- manageability-requirements, work in progress, July. 2009.
requirements-06 Work in progress, Jan. 2009.
[ID.pce-monitor] JP. Vasseur, JL. Le Roux and Y. Ikejiri, "A set of [ID.pce-monitor] JP. Vasseur, JL. Le Roux and Y. Ikejiri, "A set of
monitoring tools for Path Computation Element based monitoring tools for Path Computation Element based
Architecture," draft-ietf-pce-monitoring-04 Work in Architecture," draft-ietf-pce-monitoring, work in
progress, Jan. 2009. progress.txt, July. 2009.
11. Authors' Addresses Authors' Addresses
Itaru Nishioka Itaru Nishioka
NEC Corp. NEC Corp.
1753 Shimonumabe, 1753 Shimonumabe,
Kawasaki, 211-8555, Kawasaki, 211-8555,
Japan Japan
Phone: +81 44 396 3287 Phone: +81 44 396 3287
Email: i-nishioka@cb.jp.nec.com Email: i-nishioka@cb.jp.nec.com
Daniel King Daniel King
Old Dog Consulting Old Dog Consulting
UK UK
Phone: +44 7790 775187 Phone: +44 7790 775187
Email: daniel@olddog.co.uk Email: daniel@olddog.co.uk
12. Intellectual Property Consideration
The IETF Trust takes no position regarding the validity or scope of
any Intellectual Property Rights or other rights that might be
claimed to pertain to the implementation or use of the technology
described in any IETF Document or the extent to which any license
under such rights might or might not be available; nor does it
represent that it has made any independent effort to identify any
such rights.
Copies of Intellectual Property disclosures made to the IETF
Secretariat and any assurances of licenses to be made available, or
the result of an attempt made to obtain a general license or
permission for the use of such proprietary rights by implementers or
users of this specification can be obtained from the IETF on-line IPR
repository at http://www.ietf.org/ipr
The IETF invites any interested party to bring to its attention any
copyrights, patents or patent applications, or other proprietary
rights that may cover technology that may be required to implement
any standard or specification contained in an IETF Document. Please
address the information to the IETF at ietf-ipr@ietf.org.
The definitive version of an IETF Document is that published by, or
under the auspices of, the IETF. Versions of IETF Documents that are
published by third parties, including those that are translated into
other languages, should not be considered to be definitive versions
of IETF Documents. The definitive version of these Legal Provisions
is that published by, or under the auspices of, the IETF. Versions of
these Legal Provisions that are published by third parties, including
those that are translated into other languages, should not be
considered to be definitive versions of these Legal Provisions.
For the avoidance of doubt, each Contributor to the IETF Standards
Process licenses each Contribution that he or she makes as part of
the IETF Standards Process to the IETF Trust pursuant to the
provisions of RFC 5378. No language to the contrary, or terms,
conditions or rights that differ from or are inconsistent with the
rights and licenses granted under RFC 5378, shall have any effect and
shall be null and void, whether published or posted by such
Contributor, or included with or in such Contribution.
13. Disclaimer of Validity
All IETF Documents and the information contained therein are provided
on an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE
REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE
IETF TRUST AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL
WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY
WARRANTY THAT THE USE OF THE INFORMATION THEREIN WILL NOT INFRINGE
ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS
FOR A PARTICULAR PURPOSE.
14. Full Copyright Statement
Copyright (c) 2009 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents in effect on the date of
publication of this document (http://trustee.ietf.org/license-info).
Please review these documents carefully, as they describe your
rights and restrictions with respect to this document.
 End of changes. 96 change blocks. 
210 lines changed or deleted 262 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/