A multiconstraint QoS routing scheme using the depth

A Multiconstraint QoS Routing Scheme using the
Depth-First Search Method with Limited Crankbacks
Dong-won Shin, Edwin K. P. Chong† , and Howard Jay Siegel†
Center for Education and Research in Information Assurance and Security (CERIAS), and
School of Electrical and Computer Engineering
Purdue University
West Lafayette, IN 47907-1285
{shin3, echong, hj}@purdue.edu
Abstract —We propose a multiconstraint QoS routing scheme
using the DFS (Depth-First Search) method to sequentially search
for a feasible routing path. Although the standard sequential
search approach has several advantages, it has not been explored
for multiconstraint QoS routing in literature due to its asymptotic exponential worst-case time complexity. Our scheme limits
the number of crankbacks per node (crankback degree) to control
the worst-case time complexity. The scheme uses a metric, called
the normalized margin, to reduce the average-case time complexity by first exploring the paths that are most likely to be feasible.
We further tune the crankback degree based on correlation coefficients between QoS attributes to reduce the worst-case time
complexity. We use simulations to show that our scheme solves
multiconstraint QoS routing problems with a small probability of
missing a feasible path while keeping the average-case time complexity low.
I. I NTRODUCTION
The multiconstraint QoS routing problem is to find a path
between a source node and a destination node satisfying a
given set of constraints for QoS attributes (QAs). Typically,
these QoS constraints are additive or multiplicative; i.e., for
each QA, the sum or product of the QoS values for the links
on a routing path must not exceed some given limit. Note
that multiplicative QoS constraints can be regarded as additive
by taking logarithms. Multiconstraint QoS routing schemes to
solve such problems have recently attracted considerable attention in anticipation of their use in providing multiclass services in future networks. However, because multiconstraint
QoS routing problems have already been proven to be NPcomplete in general [7], it is impossible to provide a scheme
that is efficient under all possible situations.
A typical performance measure for a multiconstraint QoS
routing scheme is its EDR (Erroneous Decision Rate), which
is defined as the fraction of instances that the scheme either
fails to find a feasible path that exists, or finds a path that turns
out to be infeasible. Though several multiconstraint QoS routing schemes with polynomial worst-case time complexity have
been proposed (e.g., [3] and [4]), such schemes are either computationally prohibitive in practice, or suffer from other drawbacks such as having a large EDR. An alternative approach,
This research was supported by the DARPA/ITO AICE Program under contract numbers DABT63-99-C-0010 and 0012, and by Purdue University CERIAS.
† Beginning August 2001, Department of Electrical and Computer Engineering, Colorado State University, Fort Collins, CO 80523, {echong,
hj}@engr.colostate.edu
0-7803-6711-1/01/$10.00 (C) 2001 IEEE
which is what we adopt here, is to start with an algorithm with
exponential worst-case time complexity, and restrict the time
required for its termination. The goal then is to design an algorithm that achieves sufficiently small EDR within this time
restriction.
We propose a multiconstraint QoS routing scheme using
the DFS (Depth-First Search) method to search sequentially
for a feasible path. Because of the sequential approach, our
scheme does not require a large number of message exchanges
or amount of memory that other multiconstraint QoS routing
schemes need (e.g., [1], [5], and [6]). In particular, our scheme
has the desirable feature that its average-case time complexity
decreases without sacrificing the EDR as the number of QAs
increases. Our scheme first finds the paths that are most likely
to be feasible, and then explores these paths. This strategy attempts to drive the EDR to zero as quickly as possible. By
adjusting the termination time, we can achieve variable levels
of EDR. We will show via simulation that our scheme achieves
acceptably small EDR levels within a reasonable time limit.
II. BASIC A PPROACH
A. Limiting the Crankback Degree
We assume throughout that we are given a network G =
(V, E) with fixed topology. Associated with each link in the
network is a set of additive QAs, which are known and fixed
throughout the QoS routing procedure. The problem is to find
a path from a given source to a given destination such that each
cumulative QA value does not exceed a given limit.
Our scheme searches for a feasible path based on the following DFS method: When a connection request occurs, the
scheme starts constructing a path, called an active path, in a
depth-first manner. Specifically, the scheme starts at the source
node and picks an outgoing link that satisfies the QoS constraints, and then repeats the process from the outgoing node
associated with the chosen link (avoiding loops). Every node
on the active path stores the part of the active path between the
source node and the node itself, which we call the history path
of the node, for later use. If the active path reaches the destination node and satisfies all the constraints, the scheme terminates the search. However, if, in the middle of the search, the
scheme recognizes that it cannot find a feasible path by extending the active path constructed so far, then it uses a crankback
that truncates the active path by a single link and re-extends the
active path through another node.
If the given network topology is not of a tree structure, it is
385
possible that the active path leads to a node where crankbacks
have occurred before. In this case, the new history path of
the node is different from its old history paths (when previous
crankbacks occurred there). Because the new history path may
indeed be part of a feasible path, the active path should revisit
the node. The possibility of such revisits to a node makes the
worst-case time complexity of the scheme exponential. Because the exponential worst-case time complexity may make
the run-time prohibitively long, we prevent such a long runtime by limiting the number of the crankbacks to any single
node. We call this limit the crankback degree.
If the crankback degree is k, then at every node the search
scheme can explore at most k+1 of the outgoing nodes. Hence,
as the crankback degree decreases, the worst-case time complexity also decreases. However, a decrease of the crankback
degree may cause an increase of the EDR as the scheme
skips paths that might be feasible. Thus, we should tune the
crankback degree such that both the time complexity and the
EDR are at acceptable levels.
The worst-case time complexity of the search process in our
crankback-limited scheme is O((k + 1)n ), where n is the number of nodes and k is the crankback degree. In contrast, an
exhaustive search has time complexity O(n!), which is known
to be O(nn ). Although the worst-case time complexity of the
former scheme decreases with k, it may still be practically too
large even for reasonable values of k. To further reduce this
complexity, in the following sections we focus on the search
order of the DFS method and the correlation coefficients between QAs.
B. Search Order of the DFS Method
Clearly, it is better to first explore the paths that are the most
likely to be feasible, because we can stop the search after finding a feasible path without exploring other paths. Therefore, by
careful choice of the search order of the DFS method, we can
reduce the average-case time complexity (though the asymptotic worst-case time complexity remains unchanged). Here,
we introduce a method to determine the search order.
We first provide some notation and definitions. Let s be a
source node, d a destination node, M the number of QAs, Cm
the constraint value of the mth QA, and λm (a, b) the mth QA
value of the link between node a and node b. Suppose the
active path reaches an arbitrary node u. Let w(i) be the ith
node from the node s along the active path, and w−1 (u) the
number of hops from the node s to node u along the active
path. The normalized slackness (NS) of node u for the mth
QA, denoted by Sm (u), is defined as follows:
1
Sm (u) = 1 −
Cm
w −1 (u)−1
X
λm (w(j), w(j + 1))
(1)
mth QA, denoted by Rm (u), is given by:
1
Rm (u) = min
h∈H(u,d) Cm
w −1 (d)−1
X
λm (w(j), w(j + 1)) , (2)
j=w −1 (u)
where w(j) and w−1 (d) are as defined before, assuming an
active path has been extended to the destination, and that it
includes path h. If Rm (u) > 1, then there is no feasible path
that includes the given active path through node u. Otherwise,
Rm (u) indicates the minimum cumulative mth QA value (as a
fraction of Cm ) of any path from node u to the destination.
The normalized margin (NM) of node u for the mth QA, denoted by Tm (u), is the difference between Sm (u) and Rm (u):
Tm (u) = Sm (u) − Rm (u)
(3)
The minimum NM of node u, denoted by Tmin (u), is the
smallest NM amongst all the NMs of node u for each QA:
Tmin (u) =
min
m=1,...,M
Tm (u)
(4)
The quantity Tmin (u) provides a measure of the severity of the
QoS constraints in searching for a feasible path given an active
path through node u. A lower value of Tmin (u) indicates that it
is less likely to find a feasible path that extends the given active
path through node u. If Tmin (u) < 0, then we can conclude
with certainty that there is no such feasible path.
Our scheme uses the minimum NM as the metric to determine the search order of the DFS method. Assume that the
active path has reached node u, which is not the destination
node. If node u has outgoing nodes with nonnegative minimum NMs, then the scheme selects an outgoing node with
the largest minimum NM as the next-hop node. Outgoing
nodes with negative minimum NMs need not be considered
as next-hop nodes, because extending the active path through
any of such nodes cannot satisfy all the QoS constraints. Formally, if w w−1 (u) + 1 is the next-hop node, and nodes ui ,
i = 1, . . . , p, are outgoing nodes of node u, then
(5)
w w−1 (u) + 1 = argmax
min Tm (v)
v=u1 ,...,up
m=1,...,M
for v such that Tm (v) ≥ 0, m = 1, . . . , M
This selection of the next-hop node maximizes the difference
between what we have and what we must use for the most
stringent constraint from the viewpoint of node u. Thus, our
scheme uses a greedy approach in the sense that it leaves as
much of the minimum NM as possible for the remaining process of extending the active path to the destination node.
j=0
If Sm (u) < 0, then the active path is not feasible (the mth QoS
constraint is violated even along the active path up to node u).
Otherwise, Sm (u) indicates the constraint (as a fraction of Cm )
on the mth QA value for any feasible path from node u to the
destination.
Let H(u, d) be the set of all the paths between node u and
node d. The normalized requirement (NR) of node u for the
C. Correlation Coefficients Between QAs
Next, we explore the effect of the correlation between QA
values in a link. To proceed, we view the QA values associated
with a link as random variables. Let X and Y be two such
QA values. Let µX and µY be their respective means, and σX
and σY their respective standard deviations. Then, we define
the correlation coefficient between the pair (X, Y ) of QAs as
386
E[(X − µX )(Y − µY )]/(σX σY ). If every correlation coefficient between any pair of QAs is one, then the multiconstraint
QoS routing problem is equivalent to a QoS routing problem
with a single QA, which any single-constraint shortest-path algorithm can easily solve. From this fact, we should expect that
as the correlation coefficients get close to one, a QoS routing
problem with several QAs becomes more like a QoS routing
problem with a single QA, and is therefore more easily solved.
Because the search procedure of our scheme never considers active paths that are not feasible, the EDR for our scheme
corresponds only to the probability that it could not find a feasible path despite its existence. Thus, the EDR decreases as the
probability of finding a feasible path increases. In addition, we
assume that the crankback degree is k and that there are nodes
with node degree greater than k + 1 (the node degree of a node
is the number of links connected to it). Note that if a node has
degree greater than k + 1, our scheme may not explore some
of its outgoing nodes, because at most k + 1 outgoing links
can be explored at any node (due to the crankback limitation).
Hence, the DFS search in the crankback-limited scheme is not
an exhaustive-search that should have zero EDR. However, we
can show that the EDR decreases as the correlation coefficients
between QAs increase.
Proposition 1. The EDR of the proposed scheme decreases
as the correlation coefficients between QAs at each link increase.
Proof. Suppose that the active path has reached node u and
one of its outgoing nodes, v, has been chosen as the next-hop
node. Furthermore suppose that the ith QoS constraint is the
most stringent constraint of node v, i.e., Tmin (v) = Ti (v). As
the correlation coefficient between the ith QA and the jth QA
increases, it becomes more likely that the jth QA value of the
link between node u and node v decreases as the ith QA value
decreases. Thus, it also becomes more likely that the sum of
the jth QA values of the links on any path from node u to the
destination node decrease with the sum of the ith QA values of
the same links. This increases the probability that a path satisfying the constraint for the ith QA, which the proposed scheme
explores, also satisfies the constraint for the jth. Because the
EDR of the scheme decreases as the probability of finding a
feasible path increases, the EDR decreases as the correlation
coefficients between QAs increase.
In general, the QAs at a link are not independent of each
other, and in many cases their correlation coefficients are
known in advance. In these cases, we can take advantage
of this knowledge in tuning the crankback degree. Basically,
given a restriction on the time to find a feasible path, we adjust the crankback degree to achieve a desired EDR. By the
above proposition, if the correlation coefficients between QAs
are sufficiently high, the crankback degree can be set in such a
way that the EDR is acceptably small for a reasonable run-time
limit.
III. T HE P ROPOSED S CHEME
When a connection request occurs, the scheme starts searching for a feasible path between the given source and destination
nodes. We assume that the crankback degree has been set (e.g.,
to achieve a desired EDR within some run-time limit). Let M
QOS ROUTING SCHEME(G, s, d, k, C1 , . . . , CM )
Out[s][ ] ← {w|(s, w) ∈ E(G), Tmin (w) ≥ 0}
num cra[s] ← 0
u←s
while u 6= d
if Out[u][ ] 6= ∅ and num cra[u] ≤ k
then enqueue u into Active path[ ]
pre u ← u
c←0
for each node v ∈ Out[u][ ]
do if Tmin (v) > c
then c ← Tmin (v)
u←v
if history path of u has been changed
then Out[u][ ] ← {w|(u, w) ∈ E(G), Tmin (w) ≥ 0}
num cra[u] ← 0
else if u = s
then return “No feasible paths”
else
dequeue u from Active path[ ]
Out[pre u][ ] ← Out[pre u][ ] − {u}
u ← pre u
num cra[u] ← num cra[u] + 1
return Active path[ ]
Fig. 1. Pseudo-code for the proposed multiconstraint QoS routing scheme.
be the number of QAs. First, the scheme computes the NRs
of all the nodes for all the QAs, using M runs of a singleconstraint shortest-distance routing algorithm (e.g., Dijkstra’s
algorithm or Bellman-Ford algorithm). If even a single NR
of the source node is larger than one, then the scheme stops,
because no path can satisfy the constraint of the corresponding QA. If the minimum NR of the source node is less than
or equal to one, then the scheme starts constructing the active
path using the DFS method.
The pseudo-code for our scheme is given in Fig. 1. The
pseudo-code works as follows: Assume that the scheme has
extended the active path to node u. If the node u has any outgoing nodes with nonnegative minimum NMs, then the scheme
orders them according to their minimum NMs. Let node v have
the largest minimum NM among all such outgoing nodes of
node u. The scheme explores node v and extends the active
path to node v. If node v also has outgoing nodes with nonnegative minimum NM, then the scheme keeps extending the
active path by applying the same procedure. However, if node
v has no outgoing nodes with nonnegative minimum NM, then
a crankback occurs and the active path shrinks to node u. Node
u then explores the outgoing node with the second largest minimum NM that is nonnegative, then the third, and so on. However, if the number of explored outgoing nodes from node u
is bigger than the crankback degree k by one, or there are no
more unexplored outgoing nodes with nonnegative minimum
NM, then a crankback occurs again, and the active path shrinks
to the predecessor node of node u. The scheme terminates the
search when it finds a feasible path or cannot proceed any further.
The NR computation and the DFS search contribute to the
387
worst-case time complexity of the proposed scheme. If we use
the Bellman-Ford algorithm to compute the NRs for all the
QAs, then the worst-case time complexity is O(M ne), where
e is the number of links. The DFS search takes O((k + 1)n )
as mentioned before. Thus, the worst-case time complexity of
our scheme is O(M ne + (k + 1)n ).
As for the average-case time complexity of our scheme, we
should consider the contribution of the number of paths that
we can skip due to negative minimum NMs. Because the minimum NM at every node decreases as the number of QAs increases, the number of paths that we can skip increases as
the number of QAs increases. Hence, the average-case time
complexity of our scheme decreases as the number of QAs increases.
0
10
−1
EDR
10
−2
10
−3
10
−1
−0.5
0
0.5
correlation coefficient
1
(a)
7.5
average number of crankbacks
IV. P ERFORMANCE E VALUATION
A. Generation of Network Topologies and QA Values
We evaluated the performance of our scheme via simulations according to the following steps. First, we generate a
random network topology consisting of 400 nodes, as follows:
398 nodes are spread randomly over a square area of unit dimension, and then a source node and a destination node are
located at diagonally opposite corners. By the Waxman model
[8], we introduce a link between node u and node v with the
following probability, which depends on the distance between
them, l(u, v):
−l(u, v)
√
P r {l(u, v)} = 0.8 exp
(6)
4 2
The above approach results in approximately 1100 links per
network topology, which implies that the average node degree
is 5.5.
Next, we assign QA values to every link using a procedure
that corresponds to the reverse of the whitening process [2].
Specifically, each link has QA values independent of other
links, and every pair of QA values of a link has a given correlation coefficient. We assumed that QA values for each QA have
a normal distribution and that the mean and the variance are
1 and 0.16, respectively. When we generate a negative value,
we replace it by zero. Because the probability of generating
negative values is less than 2%, very few links have zero QA
values.
After assigning the QA values, we apply our scheme to the
generated network topology and QA values. We then ascertain
the number of crankbacks and whether or not there is an erroneous decision. Recall that an erroneous decision in our case
corresponds to a failure to find a feasible path when one exists.
We detect such a failure by performing an exhaustive search to
determine if a feasible path exists. Our scheme can be made to
perform an exhaustive search by setting the crankback degree
to be greater than or equal to δ − 1, where δ is the maximum
node degree of the generated network topology. For comparison, we also count the number of crankbacks involved in the
exhaustive search. We refer to a sequence of the above steps as
a simulation round.
The time complexity of our scheme is calculated based on
the number of NM computations and the number of the nodes
k=0
k=1
k=2
k=3
k=1
k=2
k=3
E. S.
5
2.5
0
−1
−0.5
0
0.5
correlation coefficient
1
(b)
Fig. 2. (a) EDR and (b) average number of crankbacks for a two-QA problem;
k is the crankback degree and ‘E. S.’ represents exhaustive search.
that the active path explores. Given a network topology, QoS
constraints, and QA values of the links, the number of NM
computations is fixed and the number of explored nodes is proportional to the number of crankbacks. Thus, we used the average number of crankbacks as a metric to measure the averagecase time complexity.
B. Simulation Results
In a two-QA problem that has two additive QAs and thus
only a single correlation coefficient, we performed 1000 simulation rounds each for various pairs of the crankback degree
and the correlation coefficient. If the constraints are either very
loose or very severe, then the average number of crankbacks is
small, because in most cases the scheme either finds a feasible path with almost no crankbacks or recognizes quickly that
there are no feasible paths by skipping many paths that have
negative minimum NM. By checking the average number of
crankbacks under various constraint conditions, we found that
the average number of crankbacks is approximately maximized
when every constraint value is 12, which makes the average
number of links for a feasible path close to but less than 12. To
check the EDR and the average number of crankbacks in the
worst-complexity situation, we assumed that every constraint
value is 12.
Fig. 2 shows the plots of the EDR and the average number
388
of crankbacks with respect to the correlation coefficient for the
two-QA problem where every constraint is set to 12. We can
see that as the crankback degree increases, the EDR decreases
rapidly, but the average number of crankbacks does not increase much. In particular, the average number of crankbacks
is very small compared to the size of the network topology
(e.g., in terms of the number of nodes or links). Even for
the exhaustive search using our scheme, which has a relatively
large crankback degree, the average number of crankbacks is
relatively small. Thus, by adjusting the crankback degree, we
can achieve an acceptably small EDR within a reasonable time
limit. In addition, we can see that even though we decrease
the crankback degree to make the run-time less than the time
limit, the EDR (and the average number of crankbacks) can
stay at acceptable level as the correlation coefficients between
QAs increase.
In contrast to the two-QA case, for M -QA problems with
M ≥ 3, it is difficult to compare the effect of correlation coefficients because there are multiple correlation coefficients. Let
ri,j be the correlation coefficient between the ith QA and the
jth QA. To compare the effect of correlation coefficients, we
define the combined correlation coefficient rc as follows:
v
u
M
M X
X
u
2
t
rc = 1 −
(1 − ri,j )2
(7)
M (M − 1) i=1 j>i
This combined correlation coefficient corresponds to the Euclidean distance between the vector whose components are the
correlation coefficients and the vector whose components are
all one, normalized by the distance between the vector whose
components are all −1 and the vector whose components are
all one. We can easily check that if M = 2, then the combined
correlation coefficient is equal to the correlation coefficient.
For a three-QA problem with the same conditions as in the
two-QA problem (except that it has three QAs and thus three
correlation coefficients), we performed 1000 simulation rounds
each for 129 sets of correlation coefficients by changing each
correlation coefficient by 0.2 from −0.8 to 0.8. Fig. 3 shows
plots of the EDR and the average number of crankbacks with
respect to the combined correlation coefficient for the threeQA problem when every constraint is set to 12. As in the twoQA problem, we can see that the increase of the crankback degree causes the EDR to decrease rapidly but the average number of crankbacks does not increase much. In addition, the
average number of crankbacks is smaller than in the two-QA
problem because the increased number of constraints results
in an increased number of paths skipped due to negative minimum NMs. Thus, the average-case time complexity is smaller
than in the two-QA problem.
V. C ONCLUSIONS
We have proposed a multiconstraint QoS routing scheme using the DFS method to search sequentially for a feasible path.
The standard sequential search approach has in the past been
considered to be unsuitable for multiconstraint QoS routing
because of its asymptotic exponential worst-case time complexity. By limiting the crankback degree and the use of the
minimum NM as the metric for the search order, we are able
0
10
−1
EDR
10
−2
10
−3
10
−1
k=0
k=1
k=2
−0.5
0
0.5
combined correlation coefficient
1
(a)
average number of crankbacks
3
k=1
k=2
E. S.
2
1
0
−1
−0.5
0
0.5
combined correlation coefficient
1
(b)
Fig. 3. (a) EDR and (b) average number of crankbacks for a three-QA problem; k is the crankback degree and ‘E. S.’ represents exhaustive search.
to tune the worst-case time complexity for variable levels of
EDR while keeping the average-case time complexity low. We
showed by simulation that our scheme can achieve acceptably
small EDR within a reasonable time limit by adjusting the
crankback degree. We also showed that as the correlation coefficients increase, we can further reduce the average-case time
complexity. Therefore, our scheme provides a promising solution to the multiconstraint QoS routing problem.
R EFERENCES
[1] S. Chen and K. Nahrstedt, “On finding multi-constrained paths,” IEEE
International Conference on Communications, (ICC ’98), vol. 2, pp. 874–
879, June 1998.
[2] K. Fukunaga, Introduction to Statistical Pattern Recognition. Academic
Press, 2nd ed., 1990, pp. 28-30.
[3] R. Hassin, “Approximation schemes for the restricted shortest path problem,” Mathematics of Operations Research, vol. 17, no. 1, pp. 36–42, Feb.
1992.
[4] J. M. Jaffe, “Algorithms for finding paths with multiple constraints,” Networks, vol. 14, no. 1, pp. 95–116, Spring 1984.
[5] S. Jun, K. P. Hung, and L. Jacob, “A multi-constrained distributed QoS
routing algorithm,” IEEE International Conference on Networks 2000,
(ICON 2000), pp. 165–171, Sep. 2000.
[6] H. Neve and P. Mieghem, “TAMCRA: a tunable accuracy multiple constraints routing algorithm,” Computer Communications, vol. 23, no. 7,
pp. 667–679, 2000.
[7] Z. Wang, “On the complexity of quality of service routing,” Information
Processing Letters, vol. 69, no. 3, pp. 111–114, Feb. 1999.
[8] B. Waxman, “Routing of multipoint connections,” IEEE Journal on Selected Areas in Communications, vol. 6, no. 9, pp. 1617–1622, Dec. 1988.
389