Center for Education and Research in Information Assurance and Security (CERIAS), and .... source node and the node itself, which we call the history path.
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