scispace - formally typeset
Open AccessJournal ArticleDOI

A distributed algorithm for delay-constrained unicast routing

TLDR
This work proves DCUR's correctness by showing that it is always capable of constructing a loop-free delay-constrained path within finite time, if such a path exists.
Abstract
We study the NP-hard delay-constrained least cost (DCLC) path problem. A solution to this problem is needed to provide real-time communication service to connection-oriented applications, such as video and voice. We propose a simple, distributed heuristic solution, called the delay-constrained unicast routing (DCUR) algorithm, DCUR requires limited network state information to be kept at each node: a cost vector and a delay vector. We prove DCUR's correctness by showing that it is always capable of constructing a loop-free delay-constrained path within finite time, if such a path exists. The worst case message complexity of DCUR is O(|V|/sup 2/) messages, where |V| is the number of nodes. However, simulation results show that, on the average, DCUR requires much fewer messages. Therefore, DCUR scales well to large networks. We also use simulation to compare DCUR to the optimal algorithm, and to the least delay path algorithm. Our results show that DCUR's path costs are within 10% of those of the optimal solution.

read more

Content maybe subject to copyright    Report

A Distributed Algorithm for Delay-Constrained Unicast Routing
H.F. Salama D.S. Reeves Y. Viniotis
Center for Advanced Computing and Communication
North Carolina State University
Box 7911, Raleigh, NC 27695
Phone: (919) 515-5348 Fax: (919) 515-2285
f
hfsalama,reeves,candice
g
@eos.ncsu.edu
Abstract
We define the problem of unicast routing subject to delay constraints in point-to-point connection-oriented networks
as a delay-constrained least-cost path problem. This problem is NP-complete, and therefore we propose a simple,
efficient, distributed heuristic solution: the delay-constrained unicast routing (DCUR) algorithm. DCUR requires
limited information about the network state to be kept at each node. This information is stored in a cost vector and
a delay vector which resemble the distance vectors of some existing routing protocols. We prove the correctness of
DCUR by showing that it is always capable of constructing a loop-free delay-constrained path within finite time, if
such a path exists. The number of computations DCUR performs at each node participating in the path construction
process is fixed, irrespective of the size of the network. The message complexity of DCUR is
O
(
j
V
j
3
)
messages in the
worst case, where
j
V
j
is the number of nodes in the network. However, simulation results show that, on the average,
much fewer messagesare required. Therefore, DCUR scales well to large networks. We also use simulation to compare
DCUR to the optimal delay-constrained least-cost path algorithm, and to the least-delay path algorithm. Our results
show that DCUR yields satisfactory performance with respect to both path cost and path delay.
Keywords: Routing, Delay Constraints, Quality of Service, Distributed Algorithms
This work was supported in part by the Center for Advanced Computing and Communication at North Carolina State University, and by AFOSR
grants F49620-92-J-0441DEF and F49620-96-1-0061.

1 Introduction
New distributed applications are emerging at a fast rate. These applications typically involve real-time traffic that
requires quality of service (QoS) guarantees. Traffic streams carrying voice, video, or critical real-time control signals
have particularly stringent end-to-end delay requirements. In addition, real-time traffic usually utilizes a significant
amount of resources while traversing the network. Hence the need for routing algorithms which are able to satisfy the
delay requirements of real-time traffic and to manage the network resources efficiently.
Routing problems can be divided into unicast (point-to-point) problems and multicast (point-to-multipoint or
multipoint-to-multipoint)problems. In this paper, we only consider the unicast routing problem. Unicast routing proto-
cols can be classified into two categories: distance-vector protocols, e.g., the routing information protocol (RIP) [1, 2],
and link-state protocols, e.g., the open shortest path first protocol (OSPF) [3]. Distance-vector routing protocols are
based on a distributed version of Bellman-Ford shortest path (SP) algorithm [4]. Considering the message complexity,
distance-vector routing protocols scale well to large network sizes, because each node (router) sends periodical topology
update messages only to its direct neighbors. No flooding or broadcasting operations are involved. Each node maintains
only limited information about the shortest paths to all other nodes in the network. Due to their distributed nature,
distance-vector protocols may suffer from looping problems when the network is not in steady state. In link-state
routing protocols, on the other hand, each node maintains complete information about the network topology, and uses
this information to compute the shortest path to a given destination centrally using Dijkstra’s algorithm [4]. Link-state
protocols have limited scalability, because flooding is used to updatethe nodes’ topology information. They do not suffer
from looping problems, however, because of their centralized nature. Recently, Garcia-Luna-Aceves and Behrens [5]
proposed a distributed protocol, based on link vectors, that avoids looping problems and scales well to large networks.
Both Bellman-Ford and Dijkstra SP algorithms are exact and run in polynomial time. As the name indicates, an
SP algorithm minimizes the the sum of the lengths of the individual links on the path from source to destination. The
properties of the SP depend on the metric the link length represents. If unit link lengths are used, the resulting SP is a
minimum-hop (MH) path. If the length of a link is a measure of the delay on that link, then an SP algorithm computes
the least-delay (LD) path, and if the link length is set equal to the link cost, then an SP algorithm computes the least-cost
(LC) path. Many variations of the SP problem have been studied over the years. For example, Simha and Narahari [6]
studied the case where queueing delay is the dominant component of a link’s delay, and Aida et. al [7] proposed an
optimal SP algorithm that takes into account both the mean and the variance of the link delays. Rampal and Reeves [8]
1

investigated the interaction between routing and call admission control for multimedia traffic. Plotkin [9] proposed a
strategy that unifies the routing and call admission decisions. Chen and Liu [10] showed that the problem of routing a
multimedia connection subject to a cell loss constraint is NP-complete and proposed heuristic solutions for that problem.
We study the problem of unicast routing of real-time traffic with end-to-end delay requirements (delay constraints)
in connection-oriented networks. We formulate the problem as a delay-constrained LC (DCLC) path problem. This
problem has been shown to be NP-complete [11]. The only prior work on this problem was reported by Widyono [12].
He proposed an optimal centralized delay-constrained algorithm to solve the DCLC problem. His algorithm, called the
constrained Bellman-Ford (CBF) algorithm, performs a breadth-first search to find the DCLC path. Unfortunately, due
to its optimality, CBF’s worst case running times grow exponentially with the size of the network. Delay-constrained
unicast routing is a special case of the delay-constrained multicast routing problem which has received a lot of attention
in recent years [13]. Thus, delay-constrained multicast routing heuristics can be used to solve the DCLC problem.
However, these delay-constrained multicast heuristics require complete information about the network topology to be
available at every node, and their running times grow at fast rates with the network size [13]. Therefore, neither CBF
nor the delay-constrained multicast routing heuristics can be applied to large networks.
We propose a distributed heuristic to solve the DCLC problem: the delay-constrained unicast routing (DCUR)
algorithm. DCUR requires a limited amount of computation at any node, and its communication complexity is
O
(
j
V
j
3
)
in the worst case. On the average, however, DCUR requires much fewer messages, and therefore, it scales well to large
network sizes. DCUR requires only a limited amount of information at each node. This information is stored in a delay
vector and a cost vector that are similar to the distance vectors of some existing routing protocols [1]. The basic idea of
DCUR is that when a node receives a request to construct a delay-constrained path to a given destination, that node is
given the choice between two alternatives only. The node can either follow the direction of the LC path or the direction
of the LD path. After deciding which direction to follow, the node sends a request to the next hop node in that direction
to take over responsibility for the rest of the path construction operation. When the next hop node receives a request to
construct a delay-constrained path, it follows the same procedure that has been explained for the previous node. Each
node hands over the responsibility for path construction to the next hop node in the direction of the destination until the
destination itself is reached. Limiting the number of paths to choose from at any node to only two restricts the amount
of computation DCUR requires considerably.
Establishing a connection that provides guaranteed service involves routing, signaling, call admission control, and
resource reservation. In this paper, we only consider the routing aspect of the problem and leave the other aspects for
2

future investigation. The remainder of this paper is organized as follows. In section 2, we formulate the DCLC problem.
In section 3, we describe the routing information needed at each node for successful execution of DCUR. Then, in
section 4, we present the distributed DCUR algorithm, prove its correctness, and study its complexity. In section 5, we
evaluate DCUR’s performance using simulation. Section 6 concludes the paper. work in section 6.
2 Problem Formulation
A point-to-pointcommunication network is represented as a directed simple connected network
N
= (
V ; E
)
, where
V
is
a set of nodes and
E
is a set of directed links. A link
(
u; v
)
2
E
is an outgoing link for node
u
2
V
and an incoming link
for
v
2
V
. Any link
e
= (
u; v
)
2
E
has a cost
C
(
e
)
(same as
C
(
u; v
)
) and a delay
D
(
e
)
(same as
D
(
u; v
)
) associated
with it.
C
(
e
)
and
D
(
e
)
may take any nonnegative real values. The link delay
D
(
e
)
is a measure of the delay a packet
experiences when traversing the link
e
. The link cost
C
(
e
)
may be either a monetary cost or some measure of the link’s
utilization.
We define a path as an alternating sequence of nodes and links
P
(
v
0
; v
k
) =
v
0
; e
1
; v
1
; e
2
; v
2
; : : : ; v
k
?
1
; e
k
; v
k
;
such
that every
e
i
= (
v
i
?
1
; v
i
)
2
E
, 1
i
k
. A path contains loops if not all its nodes are distinct. If all nodes are
distinct, then the path is loop-free. In the remainder of this paper, it will be explicitly mentioned if a path contains
loops. Otherwise a “path” always denotes a loop-free path. We will use the following notation to represent a path:
P
(
v
0
; v
k
) =
f
v
0
!
v
1
!
: : :
!
v
k
?
1
!
v
k
g
. For a given source node
s
2
V
and destination node
d
2
V
,
P
(
s; d
) =
f
P
1
; : : : ; P
m
g
is the set of all possible alternative paths from
s
to
d
. The cost of a path
P
i
is defined as the
sum of the costs of the links constituting
P
i
.
Cost
(
P
i
) =
X
e
2
P
i
C
(
e
)
(1)
Similarly, the end-to-end delay along the path
P
i
is defined as the sum of the delays on the links constituting
P
i
.
Delay
(
P
i
) =
X
e
2
P
i
D
(
e
)
(2)
The DCLC problem finds the LC path from a source node
s
to a destination node
d
such that the delay along that path
does not exceed a delay constraint . It is constrained minimization problem that can be formulated as follows.
Delay-Constrained Least-Cost (DCLC) Path Problem: Given a directed network
N
= (
V ; E
)
, a nonnegative cost
C
(
e
)
for each
e
2
E
, a nonnegative delay
D
(
e
)
for each
e
2
E
, a source node
s
2
V
, a destination node
d
2
V
, and a
3

positive delay constraint , the constrained minimization problem is:
min
P
i
2P
0
(
s;d
)
Cost
(
P
i
)
(3)
where
P
0
(
s; d
)
is the set of paths from
s
to
d
for whichthe end-to-end delay isbounded by . Therefore
P
0
(
s; d
)
P
(
s; d
)
.
If
P
i
2 P
(
s; d
)
then
P
i
2 P
0
(
s; d
)
if and only if
Delay
(
P
i
)
:
(4)
The DCLC problem is NP-complete [11]
1
. It is also NP-complete in the case of undirected networks. However, it is
solvable in polynomial time if all link costs are equal or all link delays are equal.
3 Routing Information
In this section, we discuss the routing information which needs to be present at any node in the network to assure
successful execution of DCUR. Then, in section 4, we describe the operation of DCUR. Every node
v
2
V
must have
the followinginformation available during the computation of the delay-constrainedpath: the costs of all outgoinglinks,
the delays of all outgoing links, a cost vector, a delay vector, and a routing table.
The cost vector at node
v
consists of
j
V
j
entries, one entry for each node
w
in the network. Each entry in the cost
vector holds the following information:
the destination node ID,
w
,
the cost of the LC path from
v
to
w
,
least cost v al ue
(
v; w
)
, and
the ID of the next hop node on the LC path from
v
to
w
,
least cost nhop
(
v; w
)
.
Similarly, the delay vector at node
v
has one entry for each node
w
in the network. However, each entry in the delay
vector holds:
the destination node ID,
w
,
the total end-to-end delay of the LD path from
v
to
w
,
least delay val ue
(
v; w
)
, and
the ID of the next hop node on the LD path from
v
to
w
,
least delay nhop
(
v; w
)
.
The cost vectors and delay vectors are similar to the distance vectors of some existing routing protocols [1]. Distance-
vector based protocols discuss in detail how to update the distance vectors in response to topology changes, and how
1
In [11] the same problem is called the shortest constrained-weightpath problem.
4

Citations
More filters
Journal ArticleDOI

An overview of quality of service routing for next-generation high-speed networks: problems and solutions

TL;DR: An overview of the QoS routing problem as well as the existing solutions is given, the strengths and weaknesses of different routing strategies, and the challenges are outlined.
Journal ArticleDOI

Distributed quality-of-service routing in ad hoc networks

TL;DR: This paper proposes a distributed QoS routing scheme that selects a network path with sufficient resources to satisfy a certain delay (or bandwidth) requirement in a dynamic multihop mobile environment and can tolerate a high degree of information imprecision.
Proceedings ArticleDOI

Lagrange relaxation based method for the QoS routing problem

TL;DR: It is shown that the performance of the proposed polynomial time algorithm is close to the optimal solution computed by an exponential algorithm.
Journal ArticleDOI

Concepts of exact QoS routing algorithms

TL;DR: It is shown that these four concepts, namely 1) nonlinear definition of the path length; 2) a /spl kappa/-shortest path approach; 3) nondominance; and 4) look-ahead, are fundamental building blocks of a multiconstrained routing algorithm.
Proceedings ArticleDOI

Heuristic algorithms for multi-constrained quality of service routing

TL;DR: The limited path heuristic is superior to the limited granularity heuristic in solving k-constrained QoS routing problems when k>3 and the simulation study further confirms this conclusion.
References
More filters
Book

Computers and Intractability: A Guide to the Theory of NP-Completeness

TL;DR: The second edition of a quarterly column as discussed by the authors provides a continuing update to the list of problems (NP-complete and harder) presented by M. R. Garey and myself in our book "Computers and Intractability: A Guide to the Theory of NP-Completeness,” W. H. Freeman & Co., San Francisco, 1979.
Book

Data networks

TL;DR: Undergraduate and graduate classes in computer networks and wireless communications; undergraduate classes in discrete mathematics, data structures, operating systems and programming languages.
Journal ArticleDOI

Routing of multipoint connections

TL;DR: In this article, a weighted greedy algorithm is proposed for a version of the dynamic Steiner tree problem, which allows endpoints to come and go during the life of a connection.
Related Papers (5)
Frequently Asked Questions (11)
Q1. What are the two types of routing protocols?

Unicast routing protocols can be classified into two categories: distance-vector protocols, e.g., the routing information protocol (RIP) [1, 2],and link-state protocols, e.g., the open shortest path first protocol (OSPF) [3]. 

This problem is NP-complete, and therefore the authors propose a simple, efficient, distributed heuristic solution: the delay-constrained unicast routing ( DCUR ) algorithm. The authors prove the correctness of DCUR by showing that it is always capable of constructing a loop-free delay-constrained path within finite time, if such a path exists. 

As the delay constraintvalue decreases below 30 msec the success rate decreases indicating that delay-constrained solutions do not always exist for networks spanning large areas when the delay constraint value is sufficiently small. 

Due to their distributed nature,distance-vector protocols may suffer from looping problems when the network is not in steady state. 

The paths constructed by existing distance-vector protocols are guaranteed to be loop-free if the contents of the distance vectors at all nodes are up-to-date and the network is in stable condition. 

up-to-date cost vectorsand delay vectors contents and stable network condition are not sufficient to guarantee loop-free operation for DCUR. 

Hence DCUR will always converge towards the LD path solution froms to d within a finite time, if its attempts to reach the destination d via other paths keep failing because of loops. 

The need for theQuery and Response messages can be completely eliminated by making use of the fact that a node transmits the contents of its cost vector and delay vector periodically to all its neighbors. 

The LD path from active node to d is guaranteed to be part of at least one delay-constrained path from s to d; otherwise, active node could not have been selected in a previous step (a proof is provided in subsection 4.2). 

The probability a link exists between any two nodes u and v is given by:P (u; v) = exp l(u; v)L (10) where l(u; v) is the distance between u and v, and L is the maximum distance between any two nodes. 

It was mentioned above that, at a node w, the routing table entry’s flag is set to LDPATH when both the LC path direction and the LD path direction share the same link to the next hop.