PCE support for Maximizing DiversityHuawei TechnologiesDivyashree Techno Park, WhitefieldBangaloreKarnataka560066Indiadhruv.ietf@gmail.comHuawei Technologies101 Software Avenue, Yuhua DistrictNanjingJiangsu210012Chinabill.wu@huawei.com
Routing
PCE Working GroupThe computation of one or a set of Traffic Engineering Label Switched
Paths (TE LSPs) in MultiProtocol Label Switching (MPLS) and
Generalized MPLS (GMPLS) networks is subject to a set of one or more
specific optimization criteria, referred to as objective functions.In the Path Computation Element (PCE) architecture, a Path
Computation Client (PCC) may want a set of
services that are required to be diverse (disjointed) from each
other. In case when full diversity could not be achieved, it is
helpful to maximize diversity as much as possible (or in other
words, minimize the common shared resources).This document defines objective function code types for three
new objective functions for this purpose to be applied to a set
of synchronized path computation requests. describes the specifications for the Path Computation
Element Communication Protocol (PCEP). PCEP specifies the
communication between a Path Computation Client (PCC) and a Path
Computation Element (PCE), or between two PCEs based on the PCE
architecture .Further describes dependent path
computation requests in which case computations cannot be
performed independently of each other, and usually used for diverse
path computation. and
describe the use of Synchronization VECtor (SVEC)
dependency flags (i.e., Node, Link, or Shared Risk Link Group (SRLG)
diverse flags).In some scenario it may be noted that full diversity cannot be
achieved because of topology considerations, deployment considerations,
transient network issues etc. In this case it would be
helpful to maximize diversity as much as possible (or in other
words minimize the common shared resources (Node, Link or SRLG)
between a set of paths during path computation).It is interesting to note that for non synchronized diverse path
computation the X bit in Exclude Route Object (XRO) or
Explicit Exclusion Route subobject (EXRS)
can be used, where X bit set as 1
indicates that the resource specified SHOULD be excluded from the path computed
by the PCE, but MAY be included subject to PCE policy and the absence of a
viable path that meets the other constraints and excludes the resource.
Thus X bit can be used in a way to maximize diversity (or minimize
common shared resources) when full diversity cannot be achieved.This document defines objective function code types for three
new objective functions for this purpose to be applied to a set
of synchronized path computation requests.The key words "MUST", "MUST NOT", "REQUIRED", "SHALL",
"SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY",
and "OPTIONAL" in this document are to be interpreted as
described in .The terminology is as per . describes and define Objective function (OF)
used in PCEP protocol.To minimize the common shared resources (Node, Link or SRLG)
between a set of paths during path computation three new OF codes are
proposed:MSLMinimize the number of shared (common) Links.TBD1Find a set of paths such that it passes through the least number of shared (common) links.MSNMinimize the number of shared (common) Nodes.TBD2Find a set of paths such that it passes through the least number of shared (common) nodes.MSSMinimize the number of shared (common) SRLG.TBD3Find a set of paths such that it share least number of common SRLGs. uses SVEC diversity flag for node,
link or SRLG to describe the potential disjointness between the
set of path computation requests used in PCEP protocol.
further extends
by adding domain-diverse O-bit in
SVEC object and a new OF Code for minimizing the number of
shared transit domain.This document defines three new OF codes
to maximize diversity as much as possible, in other words, minimize
the common shared resources (Node,Link or SRLG) between a set of
paths.It may be interesting to note that the diversity flags in
the SVEC object and OF for diversity can be used together. Some
example of usage are listed below - SVEC object with node-diverse bit=1 - ensure full node-diversity.SVEC object with node-diverse bit=1 and OF=MSS -
full node diverse with as much as SRLG-diversity as possible. SVEC object with domain-diverse bit=1;link diverse bit=1
and OF=MSS - full domain and node diverse path with as much as
SRLG-diversity as possible.SVEC object with node-diverse bit=1 and OF=MSN - ensure full
node-diversity.The mechanics for synchronous end to end path computations using
Backward-Recursive PCE-Based Computation (BRPC) procedure described in .In H-PCE architecture, the parent PCE is used to
compute a multi-domain path based on the domain connectivity information.
The parent PCE may be requested to provide a end to end path or only
the sequence of domains. Child PCE should be able to request synchronized
diverse end to end paths from its parent PCE.The new objective function described in this document can be used
to maximize diversity when full diverse paths cannot be found.As per .In case of non-synchronized path computation, PCE may
be requested to provide an
optimal primary path first and then PCC requests for a backup path with
exclusion. Note that this approach does not guarantee diversity
comparing to disjoint path computations for primary and backup path
in a synchronized manner.A synchronized path computation with diversity flags and/or
objective function is used to make sure that both the primary path and
the backup path can be computed simultaneously with full diversity
or optimized to be as diverse as
possible. In the latter case we may sacrifice optimal path for diversity,
thus there is a trade-off between the two.An implementation may further choose to analyze the trade-off
i.e. it may send multiple request to
PCE asking to optimize based on diversity as well as say, cost
and make an intelligent choice between them. PCEP security mechanisms are described in and are used to
secure entire PCEP messages. Nothing in this document changes the
message flows or introduces any new messages, so the security
mechanisms set out in continue to be applicable.This document add new OF codes that may optionally be
carried on PCEP messages with OF object
and will be automatically secured using the
mechanisms described in .If a PCEP message is vulnerable to attack (for example, because the
security mechanisms are not used), then the OF object could be used
as part of an attack; however, it is likely that other objects will
provide far more significant ways of attacking a PCE or PCC in this
case.In addition to , the PCC should
construct the SVECs to identify and associate diverse
SVEC relationships. Considerations for use of objective functions
are mentioned in .The PCEP MIB Module defined in ,
there are no additional parameters identified in this document. provides a sufficient description for this document. There
are no additional considerations. provides a sufficient description for this document. There
are no additional considerations. provides a sufficient description for this document. There
are no additional considerations.Mechanisms defined in this document do not have any impact on network
operations in addition to those already listed in and .As described in , three new Objective Functions have been
defined. IANA has made the following allocations from the PCEP
"Objective Function" sub-registry:We would like to thank Adrian Farrel for pointing out the need for this document.This section illustrate an example based on SRLG.Node A is Ingress, Node D is Egress. A synchronized path
computation requests for SRLG disjoint path may be issued using the
SVEC object as described in . In above topology
a full SRLG disjoint paths are not possible because of some topology
considerations.In such scenario, an OF MSS maybe used instead to minimize the
number of shared (common) SRLG to get maximum diversity when full
diversity may not be possible.In case of sequential non-synchronized path computation, primary
path will be computed first, say the path is (A--B--C--D) with SRLG
list (1,2,3). A backup path computation using XRO and SRLG sub-object
with X bit (loose) set as 1, can be used to achieve a similar
result.