Beruflich Dokumente
Kultur Dokumente
Abstract— We consider the problem of routing in a network The rest of the paper is organized as follows. In Section II
where QoS constraints are placed on network traffic. We provide we define the problem and provide the optimal algorithms.
two optimal algorithms that are based on determining the In Section III we provide a set of numerical experiments
discontinuities of functions related to the optimization at hand.
The proposed algorithms have pseudopolynomial worst case that evaluate the performance of the proposed algorithms.
running time and for a wide variety of tested networks they Conclusions are presented in Section IV.
have fairly satisfactory running times. They perform significantly
better than the algorithm based on the direct application of II. P ROBLEM F ORMULATION AND A LGORITHMS
the Dynamic Programming equations and can also be used in Let G = (N, L) be a graph with node set N and link
conjunction with known polynomial-time approximation algo-
rithms to provide good average case behavior, in addition to set L. A link with origin node m and destination node n is
guaranteeing polymonial worst-case running time. denoted by (m, n). With N+ (n) and N− (n) we denote the
set of incoming and outgoing neighbors to node n, that is,
Index Terms— Network Routing, QoS Routing, Graph theory,
Simulations respectively,
N+ (n) = {m ∈ N : (m, n) ∈ L} ,
I. I NTRODUCTION N− (n) = {m ∈ N : (n, m) ∈ L} .
Transmission of multimedia traffic presents many challenges With each link l = (m, n) , m, n ∈ N there is an associated
to the network designer. Voice and video packet streams cost cmn ≥ 0 and delay dmn ≥ 0. If p = (m1 , ..., mk ) is a
require certain bandwidth as well as bounds on delay, loss directed path (a subgraph of G consisting of nodes m1 , ..., mk ,
probability and jitter in order to maintain reception quality. mi = mj for all 1 ≤ i, j ≤ k, i = j, and links (mi , mi+1 ),
These issues give rise to the problem of routing multimedia 1 ≤ i ≤ k − 1) then we define the cost and delay of the path
traffic so that Quality of Service (QoS) is maintained, [11], respectively,
[13],[14] otherwise known as the Constrained Shortest Path
Routing Problem. C(p) = cmn ,
The QoS Routing Problem consists in finding an optimal- (m,n)∈p
cost path from a source to a destination subject to one or D(p) = dmn .
more constraints (e.g., total delay and loss probability) on the (m,n)∈p
path. It is well known that this problem is NP-complete [5]
The set of all paths with origin node s, destination node n and
and several heuristics have been proposed for its solution [2],
delay less than of equal to d is denoted by Psn (d). The set
[3], [8]. On the other hand, fully polynomial -approximate
of all paths from s to n is denoted simply by Psn . For any d,
solution schemes for the problem exist [7], [15]. These results
we are interested in finding a path p∗ ∈ Psn (d) such that
were recently improved in [9] and were applied to related
problems in [10]. In [6], polynomial algorithms have been C(p∗ ) ≤ C(p) for all p ∈ Psn (d).
proposed that find the optimal solution from one source to all
Let Cn∗ (d) be the minimum of the costs of the paths p ∈
destinations, within -deviation from the set path constraint.
Psn (d). If Psn (d) = ∅, we define Cn∗ (d) = ∞. For node s,
The algorithms in [6] and [9] use as a subroutine the iterations
we also define
implied by the Dynamic Programming equation related to the
∞ if d < 0
problem at hand. Cs∗ (d) = .
In this paper we provide two optimal algorithms for the 0 if d ≥ 0
QoS Routing problem. The algorithms consist in finding the The algorithms to be presented below depend heavily on
discontinuity points of functions related to the optimization the properties of the functions Cn∗ (d). These properties are
problem. Although pseudopolynomial, tests with a wide va- presented in the lemmas below.
riety of networks, link costs and link constraints, show that Lemma 1: The functions Cn∗ (d), n ∈ N, n = s, satisfy the
the proposed algorithms have fairly satisfactory performance following equations.
and can be used in practical systems. Moreover, if guaran-
Cn∗ (d) = min {cmn + Cm
∗
(d − dmn )}
teed polynomial worst-case running time is also desired, the m∈N+ (n)
algorithms can replace the dynamic programming recursions Proof: These are the dynamic programming equations
in the approximate polynomial-time algorithms in [6] and [9], for the problem at hand [1, Problem 4.46.]. We only note that
to improve their average running time. due to the fact that the links costs are nonnegative, we can use
the equations as stated in the lemma instead of
S. Siachalou and L. Georgiadis are with Electrical and Computer Engineer-
Cn∗ (d − 1),
ing Dept., Aristotle University of Thessaloniki, Thessaloniki, Greece. E-mails: Cn (d) = min
∗
,
stavroula@psyche.ee.auth.gr, leonid@eng.auth.gr minm∈N+ (n) {cmn + Cm ∗
(d − dmn )}
Cn∗ (d ) > Cn∗ (d) for d < D(p∗d ). (2) find a way of deciding which of these possible successors
are actual ones, then we will immediately know the
To see this note that if Cn∗ (d ) = Cn∗ (d) then there must exist corresponding path by adjoining node n to p.
a path q with delay at most d < D(p∗d ) such that C(q) = In the following we also make use of the lexicographic order
Cn∗ (d ) = Cn∗ (d), which contradicts the definition of p∗d . Since between pairs of real numbers. We say that the pair (d1 , c1 ) of
Cn∗ (d) is nonincreasing, the only possibility is that Cn∗ (d ) > real numbers is lexicographically smaller (or simply smaller
Cn∗ (d) for d < D(p∗d ). if there is no possibility for confusion) than (d2 , c2 ) and write
Next, let pd be the path with smallest delay among the paths
in the set (d1 , c1 ) < (d2 , c2 ),
if either d1 < d2 , or d1 = d2 and c1 < c2 .
P (d) = {p ∈ Psn : C(p) < Cn∗ (d)} .
In case P (d) = ∅ define D(
pd ) = ∞. Then, it holds A. ALGORITHM I
Cn∗ (d ) = C(p∗d ) for D(p∗d ) ≤ d < D(
pd ). (3) Let D = ∪n∈N Dn be the set of all discontinuities of the
functions Cn∗ (d), n ∈ N . The proposed algorithm determines
To see this note that if Cn∗ (d ) < C(p∗d ) for some d such that the discontinuities in D in nondecreasing lexicographic order.
D(p∗d ) ≤ d < D( pd ), then there must exist a path q with delay Clearly, a smallest discontinuity occurs at (0, 0) for the func-
at most d < D( pd ) such that C(q) = Cn∗ (d ) < Cn∗ (p∗d ) = tion Cs (d). We assume the implementation of queues and heap
Cn∗ (d), which contradicts the definition of pd . Since Cn∗ (d) is structures with the following operations [1].
nondecreasing, the only possibility is that Cn∗ (d ) = Cn∗ (d) for • Queue structure Q
D(p∗d ) ≤ d < D( pd ). – head(e, Q): returns (i.e., shows or points to, without
The fact that Cn∗ (d) is a piecewise constant, right continuous removing) the first element e of the Q.
function, as well as 2.a, follow from (1), (2) and (3). – tail(e, Q): returns the last element e of the Q.
2.b) Let M be the set of nodes k ∈ N+ (n) for which it – enqueue(e, Q): inserts element e at the end of Q.
holds – dequeue(e, Q): removes and returns the head element
Cn∗ (d0 ) = Ck∗ (d0 − dkn ) + ckn . e of Q.
– size_of(Q): returns the size of Q.
It follows from Lemma 1 that M is non empty and All previous operations on Q take O(1) time
• A heap H, using key K.
Cn∗ (d0 ) < Ck∗ (d0 − dkn ) + ckn , for k ∈ N+ (n) − M (4)
– create_heap(H): creates an empty heap H.
Since Cn∗ (d) is discontinuous at d0 , the continuity of the – insert(e, H): inserts element e to H.
function min {•} implies that for at least one node m in M, – find_min(e, H): returns an element e in H with the
Cm∗
(d) is discontinuous at d0 − dmn . smallest key.
determined in the worst case running time, [6], discontinuity ea in queue B[(m, n)], where m =
ea .predecessor and n = ea .discontinuity_node. At the
O(Dmax |L|), same time, Ha [n] and Hg are updated.
where Dmax is the maximum delay at which a discontinuity The modified algorithm is presented in Figure 2. It is
in D may occur. If delays can take zero values, then the worst assumed without loss of generality that N+ (s) = ∅.
Since
(emin .delay > ea .delay and emin .cost ≥ ea .cost (line RS ≤ |N | Rmax ,
17) then ea is a possible discontinuity while emin is
+
not. Therefore, ea replaces emin both in Ha [n] and in and, denoting Nmax = maxm∈N {N+ (m)} ,
Hg (lines 18, 19) and emin is removed from B((k, n)),
k = emin .discontinuity_node (line 23). Next, (line 24) R(n) log |N+ (n)| ≤
the queue B[(n, k)], is scanned and all impossible dis- n∈N m∈N+ (n)
TABLE III
PARAMETERS R ANDOM P OWER L AW N ETWORKS , C OST 1
TABLE IV
PARAMETERS FOR R ANDOM U NIFROM N ETWORKS , C OST 2.
TABLE V
PARAMETERS R ANDOM P OWER L AW N ETWORKS , C OST 2
TABLE VI
PARAMETERS FOR R EAL I NTERNET T OPOLOGY (6474 NODES , 25144 LINKS ).
COST 1 COST 2
Dmax 776 1001
Rmax 26 93
+
Nmax 1458 1458
TABLE VII
AVERAGE RUNNING T IMES FOR R ANDOM U NIFROM N ETWORKS , COST 1
TABLE IX
AVERAGE RUNNING T IMES FOR R ANDOM U NIFORM N ETWORKS , COST 2
TABLE X
AVERAGE RUNNING T IMES FOR R ANDOM P OWER L AW N ETWORKS , COST 2
TABLE XI
AVERAGE RUNNING T IMES F OR R EAL I NTERNET N ETWORK
COST 1 COST 2
ALG I 2.641 8.188
ALG II 2.765 8.531
DP 132.15 153.68
DP/ALG I 50 18.7
DP/ALG II 47.8 18
demonstrate this we run the following experiment. We generate The algorithms operate under nonnegative link costs and
a Uniform network with |N | = 800 nodes and |L| = a |N | = delays and do not require any integrality assumptions on the
8 ∗ 800 = 6400 edges. In the first experiment we pick delays delays. Numerical results show that for a wide range of tested
between [1, 100] and in the second between [1, 1000]. In table networks the proposed algorithm outperforms significantly the
XII we present the relevant parameters and the running times algorithm based on the direct implementation of the Dynamic
for the tested network. We observe that the running time of DP Programming equations. The running time of the proposed
algorithm increases tenfold while the increases of the running algorithms is satisfactory even for relatively large network
times of ALG I and ALG II are insignificant . sizes. If worst case performance is also of concern, the
algorithms can replace the DP recursions of the approximate
IV. C ONCLUSIONS polynomial-time algorithms proposed in [9] and [6], in order
to improve their average running time. The algorithms can be
In this paper we addressed the QoS routing problem. We
extended to the case where multiple constraints on the paths
provided two algorithms for finding the optimal solution. The
exist ( e.g., maximum delay and loss probabilities).
basic idea of the proposed algorithms consists in finding in an
iterative fashion the discontinuities of the functions Cn∗ (d). Acknowledgement 1: The code for generating Power Law
|N | 800
a 8
delay (1,100) (1,1000)
Dmax 1425 16611
Rmax 42 45
+
Nmax 18 18
ALG I 0.797 0.922
ALG II 0.531 0.594
DP 49.26 599.64
DP/ALG I 61.8 650.3
DP/ALG II 92.7 1009.5
Networks was downloaded from site [16], and the data for the
Real Network from [17]. We would like to thank the authors
of these sites.
R EFERENCES
[1] R. K. Ahuja, T. L. Magnanti and J. B. Orlin, Network Flows: Theory,
Algorithms, and Applications, Prentice Hall, 1993.
[2] David Blokh, Gregory Gutin. “An Approximation Algorithm for Combi-
natorial Optimization Problems with Two Parameters,” IMADA preprint
PP-1995-14, May 1995.
[3] S. Chen and C. Nahrstedt. “On Finding Multi-constrained Paths,” Inter-
national Journal of Computational Geometry and Applications, 1998.
[4] M.L. Fredman, and R.E. Tarjan: “Fibonacci Heaps and Their Uses in
Improved Network Optimization Algorithms”. Journal of the ACM, Vol.
34, 596-615, 1987
[5] M.R. Garey and D.S. Johnson. “Computer and Intractability: A guide
to the theory of NP-completeness,” Freeman , San Francisco, 1978.
[6] Ashish Goel,K.G. Ramakrishnan, D. Kataria, and D. Logothetis. “Effi-
cient Computation of Delay-sensitive Routes from One Source to All
Destinations,” In Proceedings of IEEE INFOCOM’01, Anchorage, AK,
April 2001.
[7] R. Hassin, “Approximation Schemes for the Restricted Shortest Path
Problem,” Mathematics of Operations Research, vol. 17(1), pp.36-42,
February 1992.
[8] T. Korkmaz, M. Krunz and S. Tragoudas, “An Efficient Algorithm
for Finding a Path Subject to Two Additive Constraints,” Computer
Communications Journal, Vol. 25, No. 3, pp. 225-238, Feb. 2002.
[9] Dean H. Lorenz, Danny Raz. “A Simple Efficient Approximation
Scheme for the Restricted Shortest Path Problem.” Operations Research
Letters, vol. 28, No. 5, pp. 213-219, June 2001.
[10] D.H. Lorenz, A. Orda, D. Raz, and Y. Shavitt. “Efficient QoS Partition
and Routing of Unicast and Multicast.” In Proceedings IEEE/IFIP
IWQoS, Pittsburgh, PA, June 2000.
[11] Q. Ma and P. Steenkiste, “Quality of Service Routing for Traffic with
Performance Guarantees.” IWQoS’97, May 1997.
[12] Kurt Mehlhorn, Stefan Naher, Leda:A Platform for Combinatorial and
Geometric Computing, Cambridge University Press, 2000.
[13] Q. Sun and H. Langendorfer, “A New Distributed Routing Algorithm
with End-to-end Delay Guarantee,” IWQoS’97, May 1997.
[14] Z. Wang and J. Crowford, “QoS Routing for Supporting Resource
reservation,”IEEE JSAC, vol.14(7), pp.1228-1234, September 1996.
[15] Q. Warburton, “Approximation of Pareto Optima in Multiple Objective
Shortest Path Problems,” Operations Research,vol. 35, pp. 70-79, 1987
[16] The Power Law Simulator, http:// www.cs.bu.edu/brite.
[17] The Real Networks, http://moat.nlanr.net/Routing/rawdata.