Page 1
Note on the Problem of Partially Link Disjoint Paths
Alexander A. Kist and Richard J. Harris
RMIT University Melbourne
BOX 2476V, Victoria 3001, Australia
kist@ieee.org, richard@catt.rmit.edu.au
Abstract
This paper discusses the problem of partially link disjoint
paths in communication networks. The problem is situ-
ated in between the well-known shortest path generation
and the synthesis of two disjoint paths. The contributions
of this paper are twofold: Firstly, topologies and relevant
graph properties are investigated and the degree of di-
vergence is defined as a metric to distinguish the degree
of commonality for the two partially disjoint paths. Sec-
ondly, heuristic approaches are introduced that solve the
problem of generating partly disjoint paths.
1. Introduction
The creation of backup paths in networks is an impor-
tant network design problem. These paths are needed to
restore connections in the case of link failure and it is
a convenient way to improve the reliability and quality
of a connection. The ideal backup path for link failure
would have no links in common with the original path for
a connection. The second objective is to find the path
with minimum cost, where the cost is a general network
optimisation parameter. In certain topologies it is not
possible to find two completely disjoint paths due to the
network structure. In such a case it would be helpful to
find the best partially disjoint path to decide if it is still
a reasonable backup path. The second motivation to find
partially disjoint paths is, that it is good enough to find
two paths that satisfy a degree of divergence and still meet
network design objectives.
Robust backup path generation is a problem that oc-
curs in relation to all virtual path connections in com-
munication networks. Possible applications include ATM
networks, light path design and MPLS based traffic en-
gineering. Partially disjoint path algorithms can also be
used as intelligent alternatives to k-th shortest path algo-
rithms. Where backup path generation and load balanc-
ing have been extensively investigated in the past (e.g. [1]
and [2]), the problem of partial link disjointness has not
been widely considered. Iwata [3] discusses a special case
for partially link disjointness where shared paths are al-
ready known. Brander gives in [4] a comprehensive study
between several k-th shortest path algorithms without the
disjointness condition.
The problem discussed in this paper is specified as fol-
lows: Synthesise a pair of partially link-disjoint paths be-
tween an origin node and a destination node (OD-pair)
in a given generic network such that the global cost of
this synthesis is minimal. The problem is further speci-
fied with the assumptions that the underlying network has
only links that allow a traffic flow in one direction (uni-
directional links) and that the underlying network has at
most one link between a node pair. The nodes are singly
connected. Choudhury [5] gives references which allow
the avoidance of these assumptions. The link cost is an
additive positive cost value assigned to all network links.
In this context the shortest path is defined as the path
with the minimum global cost (cost sum of all links that
are part of the path) as opposed to the definition that the
shortest path is the one with the least number of hops.
The situation for Shortest Path (SP) and Disjoint Paths
(DPs) will be discussed in the next section. Both prob-
lems are well known and a number of heuristics exist to
address both challenges. Examples include the Dijkstra
shortest path algorithm [6] and Suurballes two disjoint
shortest paths algorithm [7]. The section also outlines
helpful conclusions which are useful for the partially dis-
joint paths algorithm design. Generally, analysis in this
paper follow rather intuitive approaches than strict math-
ematical proofs. Section 3 discusses the basic situation
for metrics for disjointness. It defines values to judge the
level of disjointness of two paths in the graph. Several
different approaches are possible and different Degrees of
Divergence (DoD) are defined and discussed in this sec-
tion. Section 4 introduces two algorithmic approaches and
the paper concludes with a summary.
2. Graph Properties
Disjointness and minimized global cost (cost sum of both
paths) are the main objectives for backup paths. In a
link disjoint case two paths have no links in common. A
weaker condition is the partial disjointness where parts
of connections are link disjoint and parts of the connec-
tions use the same hops. Two cases are of interest. In
the first case the global cost of the partially link disjoint
paths is better than the global cost of the two link disjoint
paths and in the second case, only partially link disjoint
paths exist. This section discusses topologies and proper-
ties for both, the link disjoint and the partly link disjoint
ICICS-PCM 2003?
15-18 December 2003?
Singapore
0-7803-8185-8/03/$17.00 © 2003 IEEE
3B6.1
Page 2
case. Note that discussions in this section ignore addi-
tional paths with greater cost.
The simplest approach to generate link disjoint paths
is to build a subgraph of the original network without the
shortest path arcs, then find a second path in this subnet-
work. However, there is a special called the trap topology
where this approach does not work. It can be shown that
for the disjoint paths a graph can be divided into two pos-
sible topologies the trap topology and the shortest path
topology. A graph comprises a SP topology for a given
OD-pair if the shortest path is one path of the two com-
pletely disjoint paths. In a graph with a trap topology
for a given OD-pair one DP uses the root part of the SP
and the other DP uses the spur part of the SP and one of
the shortest path hops is neither used by the first disjoint
path nor by the second disjoint path. Figure 1 depicts
an example of a trap topology. The OD-pair is a-d. The
shortest path in this example is a−b−c−d (cost 3). The
two best partially disjoint paths are a−c−d (cost 4) and
a − b − d (cost 3). The first DP uses the spur part (in
Figure 1 arc cd) of the SP and the other DP uses the root
part of the SP (in Figure 1 arc ab) and one of the shortest
path hops is neither used by the first disjoint path nor by
the second disjoint path (in Figure 1 arc bc).
a? b?c?d?
1? 1? 1?
3?
4?
Figure 1: Trap Topology Example
The previous statements were concerned with the com-
plete disjointness of two paths; now the case of partial dis-
jointness is considered. All discussions use the assumption
that the cost of the partially disjoint path has to be bet-
ter than the global cost of disjoint paths for a reasonable
solution. Otherwise there is no need to weaken the com-
plete disjointness. As above, the situation is discussed for
the shortest path and trap topology. Equation (1) states
the global cost situation for a given OD-pair.
2 · CSP≤ CPD≤ CDP
(1)
By definition the smallest cost is given by the length of the
shortest path. It is the best possible result and therefore
the lower bound. The best cost for two disjoint paths is
CDP and therefore is the upper bound. The cost of the
shortest partially disjoint path pair has to be somewhere
in between these two bounds for a reasonable result.
It can be shown that in an SP topology the SP is one
part of the solution. Furthermore it is not possible to
reduce the cost in a trap topology by sharing hops between
the two disjoint paths, except the parts that are similar to
SP hops and therefore an SP topology. Figure 2 depicts
an example of a trap topology with the OD-pair a − d
and the SP abcd. The two disjoint paths are aefcd and
abghd. The link that could be shared between the two
paths is gh in this example. The partially disjoint paths
are aeghfcd and abghd. For simplicity no paths of equal
a? b?c?d?
f? e?
g? h?
Figure 2: Trap Topology Condition
cost exist in this example, but discussions can be easily
adapted for this case. To improve the global cost by path
sharing, the path eghf has to have a smaller cost than
the link ef. The second condition uses the SP: since bc is
part of the SP the path bghfc has to have a higher cost
than bc. Combining the two conditions shows that the
added cost of the paths bc and eg have to be smaller than
the added cost of the paths ef, bg and fc (Equation (2)).
Cbc+ Ceg< Cef+ Cbg+ Cfc
(2)
The added cost of the two DPs aefcd and abghd has to be
smaller than the added cost of the alternative paths abcd
and aeghd that this example comprises a trap topology.
This yields the third condition: the cost sum of the links
bc + eg has to be higher than the cost sum of the paths
efc and bg (Equation (3)).
Cbc+ Ceg> Cef+ Cfc+ Cbg
(3)
Obviously Equation (2) and Equation (3), exclude each
other, therefore the global cost cannot be improved by
sharing non SP paths in a trap topology.
Simiarly, it can also be shown that if a trap topology is
included in the best solution for two disjoint paths, it is
not possible to get a better result by sharing the SP part
that is not part of any of the two disjoint paths (in Figure
1 the hop bc). If a solution exists for the SP link that
is not used by both paths it provides no improvement as
long as the condition for a trap topology is meet.
3. Metrics for Disjointness
One major difficulty in solving the two partially disjoint
path problem is the definition of a metric that measures
the independence of the two paths. In the partially link
disjoint case, common hops are used by different paths.
To compare the degree of independence of the two par-
tially disjoint paths, it is necessary to define a metric that
reflects this. Two metrics for partial disjointness are pro-
posed. The first uses a hop count as the parameter and
measures the proportion of the links that are different,
the second uses the cost associated with the links.
Page 3
Degree of Divergence (Hop Count)
proach involves the number of hops used by each of the
two partially disjoint paths. For example, the path abd
(Figure 1) has two hops while the path abcd has three
hops. Hop ab is common to both paths. They are partially
link-disjoint. The degree of disjointness can be defined by
the number of common hops divided by the number of
hops of the shorter of the two paths. For this example,
it is 1/2. If hA and hB are the number of hops on two
partially disjoint paths A and B, and hcomis the number
of hops common to both then the degree of divergence
(hop count) dhis defined as Equation (4)
A first ap-
dmin
h
= 1 −
hcom
min[hA,hB]
(4)
This metric is only sensitive to the shorter of the two
partially disjoint paths. An alternative definition is shown
in Equation (5). This is sensitive to the length of both
paths.
dh= 1 −2 · hcom
For this DoD definition the example yields dh=3
drawback in this definition is the fact that making one of
the paths longer and longer using links that are not part
of the other path decreases the divergence. This seems to
encourage resource-wastage, but the second major objec-
tive of the path generation is to minimize the global cost.
This encourages the use of as few links as possible.
hA+ hB
(5)
5. The
Degree of Divergence (Cost)
cost based disjointness metric and its bound. As in the
previous section two definitions are possible. Two paths
A, B in a graph are called partially disjoint, if they have
one or more links in common. The part that is used by
both partially disjoint paths is called the common path
with a cost of Ccom. The Degree of Divergence (Cost) dc
is defined by Equation (6)
This section defines a
dmin
c
= 1 −
Ccom
min[CA,CB]
(6)
where CAis the cost of path A, CBis the cost of path B
and Ccomis the cost of the links that both paths have in
common. The degree of divergence has two extreme cases:
If the two links A, B are completely disjoint dc= 100%.
In this case Ccom= 0 and the fraction is equal to zero.
For two paths that use the same hops 2·Ccom= CA+CB
and the fraction equals one. The degree of divergence
in this case is d = 0%.For the example in Figure 1
with the O node a and the D node d the shortest path is
abcd with a total cost of CSP = 3. The partially disjoint
path is acd with a cost of 4. The degree of divergence
is dmin
c
= 1 − 1/3 = 67%. As before, it is also possible
to define a Degree of Divergence (Equation (7)) that is
sensitive to both paths.
dc= 1 −
2 · Ccom
CA+ CB
(7)
The extreme cases are dp= 100% and dp= 0%. For the
example in Figure 1 Equation (7) yields dc= 1 − 2/7 =
71%. The next definition with reference to the SP is given
in Equation (8). For a given OD-pair with two partially
disjoint paths the degree of divergence with reference to
the shortest path is given by the Pseudo Degree of Diver-
gence
dp= 1 −Ccom
where CSP is the cost of the shortest path and Ccom is
the cost of the common part of the path. The SP in this
definition is the SP for the given OD-pair, not the shorter
path of the two partially disjoint paths. The bounds for
this definition are the same as before. For two paths shar-
ing all hops dp= 0% and for two complete disjoint paths
dp= 100%. The pseudo degree of divergence for the ex-
ample in Figure 1 is dp= 1 − 1/3 = 66%. This result is
different from the result of the first definition. If a default
bound is specified for the pseudo degree of divergence this
places an upper bound on the allowed cost of the common
part of the path, according to Equation (8).
CSP
(8)
Discussion
disadvantages of the different metrics: Should the met-
rics be based on the hop count or on the cost assigned to
the links? Two lines of argumentation are possible. The
first one is solely based on reliability. It can be argued
that without knowing anything about probabilities of in-
dividual links failing it has to be assumed that all links
have an equal probability of failure and therefore a good
backup path will have the greatest proportion of disjoint
links irrespective of the cost of any of the links. An addi-
tional consideration is that most paths in telecommunica-
tion networks have a limited number of hops (e.g. because
of the delay). This means that several different paths with
different costs would have the same degree of divergence
and the choice between them would be arbitrary.
This section discusses the advantages and
The second argument is based on the generic network
optimisation link metrics. The shortest path is defined
using these metrics and the disjointness is also defined
in relation to them. In this context the disjointness is
not necessarily concerned with the reliability of the con-
nections but in sharing links with a small cost value. The
inverse capacity (1/cij) is an example of a commonly used
metric. Here a link with a high capacity is a short link
and therefore a short common path would indicate a high
capacity link.
The second question that has to be addressed is if the
definitions with the minimum in the denominator (Equa-
tions (4) & (6)) are more reasonable than the definitions
using the sum of both path parameters (Equations (5)
& (7)). Whereas the first is sensitive to the length of
the shorter of the two paths, the latter is sensitive to the
length of both paths. As mentioned before, the “sum” en-
courages longer backup paths to minimise the DoD, but
this is discouraged by the minimum global cost objective.
Page 4
The degree of divergence in Equation (7) has the disad-
vantage that for the case where one of the two paths is
very long compared it to the other path it would indi-
cate a reasonable degree of divergence even when most
of the shorter path is also used by the longer path. If
it is assumed that the DoD is only used to measure the
commonality of two paths and the global cost is part of
the global cost objective, the definition in Equation (7)
can provide suitable results.
definitions is that the length of the paths is not known
before the execution of a path generation algorithm. A
trap topology could be part of the solution and therefore
the degree of divergence on such a structure can only be
calculated after both paths are found. Following this ar-
gument a successive approximation would be necessary.
An algorithmic approach that is independent of the de-
gree of divergence would be the best solution. This way
the appropriate degree definition can be chosen on the
actual requirements.
One problem of all DoD
The pseudo degree of divergence can be calculated be-
fore the partially disjoint path generating algorithm is
executed, but it sometimes provides an invalid result, be-
cause the whole SP is not part of the solution at all times.
It provides only an upper bound. If the algorithm starts
from a pseudo degree of divergence, a found solution is
within the degree of divergence. If the SP is one of the
two solution paths, the pseudo degree of divergence pro-
vides an optimal measurement. In a trap topology, where
the SP path is not part of the solution, the shorter of the
two solution paths is longer than the SP path and the
pseudo degree of divergence gives only an upper bound.
The algorithmic approaches have to take these facts into
account. This paper provides a general overview of the
problem. If the presented algorithm is used for a practical
network, it is likely that the network design parameters
provide more detailed objectives, e.g. the shareable paths
are restricted or known before hand. In this case the al-
gorithm can be modified to find an optimal solution for
such special cases.
4. Different Approaches
This section is concerned with different algorithmic ap-
proaches to solve the problem of synthesis of two partially
disjoint paths in a graph. Based on the discussion of the
metric for the disjointness in Section 3, two general types
of approaches appear to be likely. The first approach cal-
culates partially disjoint path pairs in an order, where the
global cost is constantly increasing from path pair to path
pair, and the cost of common paths has to be constantly
decreasing from calculation to calculation. This way it
is possible to calculate the degree of divergence for every
pair found. If the degree is not satisfied, the next path
pair is generated. An approach of this kind is the k-th
SP approach described in the next section. The second
type of approach should be able to generate “all best”
partially disjoint paths. These are partially disjoint paths
that have a decreasing degree of divergence for smaller
global cost paths. After the execution of the algorithm,
the path pair satisfying the requested degree of divergence
is chosen as a solution.
K-th SP Approach
rithms, which generate a set of k SPs between a given
OD-pair. k-th SP algorithms are not concerned with the
disjointness condition. A solution can be found by gener-
ating a number of shortest paths and comparison of their
disjointness. The two parameters of interest are the dis-
jointness and the global cost. An iterative process is nec-
essary: Calculate the SP and the second SP, compare
them and if they do not meet the termination condition,
calculate the third SP and compare this path with all the
others. This process continues until the termination con-
dition is fulfilled. The terminating condition is important
for the correctness of the solution. After a disjoint path
pair within the degree of divergence is found during the
k-th iteration, two cases are possible, viz.:
This approach uses k-th SP algo-
(1) The algorithm terminates if one path of the two
solution paths is the SP. This is possible because the path
generated with the next iteration is longer or equal than
all previously calculated paths. There is no better solution
possible because the SP is already part of the solution and
all combinations with the new found path would have a
higher global cost. It is possible that the next path has the
same length as the current path. In this case it is possible
that this combination has a better degree of divergence
than the already found solution, but the global cost will
remain the same.
(2) The shortest path is not one of the found path pairs.
Here this solution provides only an upper bound. More
iterations are necessary to make sure the best solution is
found. The bound is that the cost of the k-th shortest
path is higher than the global cost of the already found
solution minus the SP cost. If, for example, the set of the
path costs found at first is {1,3,4} and the solution path
pair is the second and the third path, the global cost of
this combination is then 7. If the next path provides a
solution with a cost better than (7 − 1), this solution is
better. When the algorithm terminates a better solution
has to be found or it does not exist.
The algorithm will find the best solution with this stop
condition since the best paths are compared iteratively.
The approach requests no specific definition for the degree
of divergence. Three disadvantages can be identified. The
first problem is that k-SP algorithms are slow. The best
example presented in [4] is of order O(k · n2). The more
important second problem is that the algorithm has to
perform k · (k − 1) comparisons. The algorithm has to
compare the new path with all previously found paths.
A possible trap topology would be missed if the result is
only compared with the shortest path. The third problem
is the unpredictable size of k. There exists no obvious
Page 5
polynomial bound for k, which ensures that the disjoint
paths are found. The next section discusses an approach
based on a disjoint path algorithm.
DP Approach
known the solution for the partially disjoint path prob-
lem is found somewhere in between. This approach is
based on a completely disjoint path algorithm. Suurballe
[8] describes an efficient implementation of an algorithm
for solving the problem of finding two disjoint paths in a
network with a total minimum cost.
When the SP and the two DPs are
Firstly the algorithm finds the shortest path between
an OD-pair. In the next step the network is transformed.
A second run of an SP algorithm finds the second disjoint
path. The suggested modification requires that an addi-
tional label be assigned to every network node. This label
is similar to the label used by the Dijkstra algorithm, but
it stores not only the path cost but also the cost of the
shared path and the path itself. The label holds all best
partially disjoint paths. Every time, the second run of the
SP algorithm marks a SP node finally, SP nodes are pro-
cessed in a forward order and partially disjoint paths are
added to the label. The observations in Section 2 make
this possible since only SP links provide a better global
cost.
One problem is that the algorithm could finally mark
nodes before all partly disjoint paths are collected and
therefore part of the path is missed. This can be handled
by a “step back” to the origin node and a restart of the
algorithm where the node labels are not reset. The second
problem is a gap topology (e.g. Figure 1 link ac has infi-
nite cost). The node behind the gap will never be marked
unless a special condition is implemented. The fact that a
gap divides the network into two subnetworks can be ex-
ploited to implement a restart condition. The influence of
the degree of divergence depends on the implementation
of the assigned label. In general this approach is capa-
ble of calculating all best partially disjoint paths for an
OD-pair. In the worst case there are k · n restarts neces-
sary. If all network nodes are SP nodes, k is bounded by
(n−2). The expected worst case running time is bounded
by O(n3) using a Dijkstra implementation. An algorith-
mic solution in [9] is based on this approach.
5. Conclusion
The first part of this paper outlined observations concern-
ing the problem of synthesising partially disjoint paths in
graphs. Different network topologies and their properties
were discussed. The degree of divergence was introduced
and several different definitions were proposed.
The second part discussed two approaches to solving
the problem of the synthesis of partially disjoint paths in
a generic network. The second approach seems to be the
most promising one. Several reasons make this approach
interesting. The expected running time is acceptable and
the generation of “all best” paths allows the use of any
disjointness metric without influence on the algorithmic
procedure.
6. Acknowledgments
The helpful discussions with the colleagues at the Cen-
tre for Advanced Technology in Telecommunications
(CATT), in particular Sayaan Choudhury, are gratefully
acknowledged. The authors also would like to thank An-
dreas Christ (University of Applied Science, Offenburg,
Germany) for his support.
References
[1] D. Torrieri, “Algorithms for finding an optimal set
of short disjoint paths in a communication network,”
IEEE Transactions on Communications, vol. 40, no.
11, pp. 1698–1702, 1992.
[2] R. G. Ogier, V. Rutenburg, and N. Shacham, “Dis-
tributed algorithms for computing shortest pairs of
disjoint paths,”IEEE Transaction on Information
Theory, vol. 39, no. 2, pp. 443–455, 1993.
[3] A. Iwata, R. Izmailov, and B. Sengupta, “Alternative
routing methods for pnni networks with partially dis-
joint paths,” IEEE Globecom -New York- 1998, vol.
1, pp. 621–626, 1998.
[4] A.W. Brander and M. C. Sinclair, “A comparative
study of k-shortest path algorithms,” Proc 11th UK
Performance Engineering Workshop, Liverpool, pp.
370–379, 1996.
[5] S. Choudhury, Approaches for Robust Virtual Path
Synthesis in ATM Networks, Ph.D. thesis, Depart-
ment of Computer Systems Engineering, RMIT Uni-
versity, Melbourne, July 1999, Thesis submitted for
the degree of Doctor of Philosophy.
[6] E.W. Dijkstra, “Note on two problem in connection
with graphs,” Numerische Mathematik, pp. 269–271,
1959.
[7] J.W. Suurballe, “Disjoint paths in a network,” Net-
works, vol. 4, pp. 125–145, 1974.
[8] J.W. Suurballe and R. E Tarjan, “A quick method
for finding shortest pairs of disjoint paths,” Networks,
vol. 14, pp. 325–336, 1984.
[9] A.A. Kist and R.J. Harris,
ate All Best Partially Disjoint Paths in a Communi-
cation Network, Eighth International Conference on
Communication Systems (ICCS 2002), Singapore, 25-
28 November 2002.
A Heuristic to Gener-
Download full-text