QoS Routing: Theory and Implement for Unicast

ginglyformweekΔίκτυα και Επικοινωνίες

29 Οκτ 2013 (πριν από 3 χρόνια και 7 μήνες)

71 εμφανίσεις

QoS Routing: Theory and Implement for Unicast




Science & Engineering

Southeast Univ

, Nanjing ,

IRISA/INRIA Rennes France

: In a packet
switched computer network, routing is an important facto
r that has a significant impact on the
network’s performance. With the deployment of various new applications on Internet, many people research on
based routing to explore how to find out the “constrained” or “optimum” path(s) for t ime sensitiv
multimedia application including unicast (one to one) and multicast (one to many or many to many) , and even
introduce some self
teaching mechanisms such as neural network, genetic algorithm and fuzzy logic. It is forming
a special subject, which has bee
n intensively researched for many years especially before QoS
driven services can
be deployed on large
scale network. In spite of some algorithms were efficient at experiment environments, but
they can not be implemented in practical large network due to m
any reasons. For example, they can not get
required parameters, lake of necessary inter
operating with existing IP protocols, and are not good scalability. In
this paper, we review the research on QoS routing especially for unicast including related theory
, algorithm and
protocol. Then we try to point out possible future research directions and give a skeleton of QoS routing.

Keywords: service
, QoS routing,
constraint, optimization

1. Introduction

With the deployment of various new applications on

Internet, the
quality of service (QoS) of the network
becomes a hot point. Internet Engineering Task Force (IETF) has

a set of
such as
IntServ/RSVP (Integrated Service / Resource Reservation Protocol), DiffServ (Differenti
ated Service) and MPLS
(Multi Protocol Label Switching). All services need a correlative QoS routing algorithm
and protocol
to assign a


for various data flows with different traffic characteristic

For example, QoS service usually requires
resource reservation. In IntServ/RSVP, it makes use of existing
routing protocol to find the path from source to destination, and then tries to reserve the resources on this path.
Perhaps the default path is the shortest path, but it might be full and can
not provide enough bandwidth. In this case,
there is no way to reserve resources from other paths in spite of existing a suitable path. In DiffServ framework, the
routers supporting DiffServ form a DiffServ domain. Packets entering the domain are marked di
fferently at the
edge routers to be classified into several packet classes. Then inside the domain, Packets in different classes are
treated differently according to their marks. Although the packets are marked at the edge routers, it can not solve
the con
gestion inside the domain. When a lot of same class flows are routed through the same link, it may cause
congestion there. QoS routing can choose the paths with enough available bandwidth to accept the flows, or simply
reject a flow if there is not resourc
e for it. MPLS was proposed as a fast forwarding scheme at first, but later found
useful for QoS and traffic engineering. The services inside MPLS domain are based on the labels, which denote the
index of outgoing interface and next hop’s label, and can be

extended for

(DiffServ CodePoint) to denote
relevant PHB (Per Hop Behavior). In part icular MPLS supports explicit routes, which provides an useful interface
to QoS routing. QoS routing can select an optimal path for given flows, and MPLS forwards th
e packets along the

On the other hand, QoS routing and other QoS controlling components are closely connected. For example, it
needs to be combined with admission control. QoS routing needs to understand the state information of network
and get neces
sary network properties which can be mapped onto some metrics. Admission control is responsible
for measure local available resource and deciding whether or not accept current flow requirements. It can provide
useful state information, and also solve fairn
ess problem. If a flow need too much resource, we may reject it even
if the network has the capability to accept it. When select a path for different flows, we need to balance the traffic
among all network nodes and guarantee the larger flows can get a cer
tain level of acceptance rate.

In a word, QoS routing is an important component in IP QoS architecture, and plays an important role in
deploying other QoS driven service. In this paper, we focus on the research on unicast QoS routing such as related
y, algorithm and protocol. Then we try to point out possible future research directions and give a skeleton
concerned QoS routing.

2. The Issues of QoS
based Routing

2.1 Best
effort Routing

Traditional IP networks do not support for characterizing differ
ent types of traffic by the quality

of service

they need, which is termed “best
effort” service. It will try its best to forward users’ traffic, but can not undertake
bandwidth, delay, delay jitter, loss rate and so on. If somewhere on the network is conge
sted, the packets can be
dropped indiscriminately. Consequently, routing protocol was designed under the best
effort principle, which
means the paths can be calculated according to single metric, e.g., hop and so on. In general, IP routing protocol is
osed by two main components. One is the management of network state information to collect and advertise
link state or distance between network nodes, and another is the algorithm of routing to compute a feasible path
between the source and destination. Th
e dominating two routing algorithms are
’s and

Dijkstra’s for
the shortest path. The former was used in distance vector, and the later in link state. Although the shortest path may
denote many meaning such as the shortest hops, minimum cost, m
inimum delay, maximum bottle
neck bandwidth
and so on, it means the shortest hops or maximum link capacity in best
effort routing at present because the both
metrics hop and link capacity are static and easy to get. The kind of paths can neither bind the q
uantitative traffic
performance such as bandwidth, delay, delay jitter and so on nor represent the routes’ dynamic property. It
provided a same path for any flow assuming no any change on the network so long as the connections have the
same IP network addr
ess of source and destination.

On Internet there are two types of routing protocol. One is termed as Interior Gateway Protocol (IGP) or
domain Routing Protocol, and the other is termed as Exterior Gateway Protocol (EGP) or Inter
Routing Proto
col. This division can degrade the complexity of single routing protocol and suit to the network’s
growth up. On Internet, RIP (Routing
Informat ion Protocol


Open Shortest Path First
) are main IGPs,
and BGP (
Border Gateway Protocol)

is an EGP. In

this case, people can define diverse relevant routing functions
according to their respective features.

In general, the routing scheme for intra
domain should find the path which can meet the QoS requirements of
the flow through the domain and optimize
resources usage. In contrast, inter
domain routing is expected to be as
simple as possible. Its most important issues are stability and scalability. So most of the QoS
based routing
algorithms proposed are for intra

2.2 The Metrics of QoS Routing

In [1]

is defined as: “ A routing mechanism under which paths for flows are determined
based on some knowledge of resource availability in the network as well as the QoS requirement of the flows.”
Besides the constraints of some resource
s’ authority, QoS routing considers given constraints in link, path and tree
respectively, which are mapped from QoS requirements of different flows. Here the tree constrains belong to
multicast QoS routing, and we don’t unfold it.

At first, we must analy
ze which metrics can be used as the link constraint, and which the path constraint.
Metrics define the basic network properties concerning some quantitative network performance user
which are commonly represented as available bandwidth, delay, de
lay jitter, loss probability, etc. Somet imes it can
be formulated by some combination of several mono
metrics. The choice of metrics in QoS routing algorithms
should satisfy the following principles.


They should be measurable to meet the QoS requirements s
upported by a certain QoS level proposed in
relevant service classes. That is said QoS routing algorithms should be considered as a component of new
network services, which can map the correlative QoS requirements onto some metrics.


They must be computable

in real variables to implement in routers.


They should be orthogonal to decrease redundant computing.


Multiple met rics should be properly composed in one algorithms to avoid the computational complexity with
completeness. In [2] it was proved that more

than two metrics (include two) might cause NP
problem in certain condition.

There are three types of metrics: additive, mult iplicative, and concave. For example, delay and cost belong to
additive type, which can identify link’s property and be

added to form the value of a path. Loss probability is
multiplicat ive type, which can be mult iplied along the path. Bandwidth and delay jitter can be considered as the
concave type. The value of typical concave metrics takes the minimum one among the lin
ks along the path, but we
can also classify the maximum problem into the type without loss of generality.

We generally term the minimum
bandwidth of the link along a path as bottle
neck bandwidth.

2.3 The Basic Problems of QoS
based Routing

It is obvious
that the additive metrics can not be suitable to the link’s constraint during its global feature.
However, the concave metrics can be used to constrain the choice of links. The multiplicative metrics can be
considered a special kind of additive metrics bec
ause multiplicat ion can be transformed into adding in

Based on above concepts, we can induce the basic problems of QoS routing for unicast as follows:


link optimization (LO), e.g., finding out a path with the maximum bottle
neck bandwidth;


ing constrained (LC), e.g., finding out a path whose bottle
neck bandwidth meets the required



path optimization (PO), e.g., finding out a path which has the minimum cost;


path constrained (PC), e.g., finding out a path on which the delay is be
constrained a given value.

The four basic problems can be solved through improved


Ford algorithm because they
still belong to the single metric routing problem. On the other hand, we can compose the four basic QoS routing
problems to fo
rm more complex problems. The main composed QoS routing problems are showed in Fig.1.

Basic Routing Problems





, e.g.,



, e.g.,



, e.g.,
and delay


, e.g.,


, e.g.,
and minimum


, e.g.,
delay and loss




and jitter


the composed QoS routing problems of unicast

P: polynomial

Correlatively, for multicast QoS routing, the constraint and optimization take place in links and trees, which
is more complex than unicast. Besides se
tting up an optimal t ree or constrained tree among the group members, It
must considered how to maintain the tree when some members join or leave the session. We don’t discuss this
problem in this paper.

3.QoS Routing Algorithms

3.1 Tradeoffs

Because fi
nding a path subject to mult iple constraints is inherently hard, we must abstract the main objective
and make necessary trade
off between ideal modes and practical feasibility.

From the background, QoS routings
have different ideas. One is for traffic engi
neering, and the other is for end
end dynamic demand. For the former,
the operation is based on long range t raffic pattern and aggregated flows, and stresses whole network performance.
The goal of the QoS routing algorithm is to balance the network traf
fic and improve network performance, e.g.,
decrease delay universally. For the later, the operation is based on each special applicat ion which may present an
explicit QoS demand, e.g., bandwidth and delay. The goal of the QoS routing algorithm is to sati
sfy the QoS
constraint of single application. It has more overhead in calculating, and needs appended signaling overhead.

The problem is how to determine the routing’s grain.

Each application has itself QoS requirements, e.g., some want high bandwidth s
uch as real
time play, some
low delay such as IP telephony, and some no special requirement such as email. It is difficult for router to install
many routing algorithms to suit every application. If the routing algorithm is for aggregated flows,
it cause t
second problem, i.e., how to determine the routed objects.

The classification of Best
effort is IP address, which is not good enough. In terms of the service classes
defined by IntServ/RSVP and DiffServ, we can take the service class as routing’s class
ified criteria. This means
that every entry in the routing table indexed with the destination address should provide multiple candidate next
hops. We can term the method as Classified multiple paths (CMP).

Decision with mult iple objectives has a notable c
, i.e., the multiple object

uniform measure standard and perhaps making contradiction. For example, generally we expect the path to provide
the minimum end
end delay, loss rate and cost, maximum bottle
neck bandwidth, and le
ast consumption of
network resource. Above five objectives, the measurement unit is not same, e.g., millisecond for delay, byte for
loss rate, bits per second for bandwidth and so on. The Consumption of network resource and cost are not fixed
which can be determined according to resource management policy. Thus, you can not induce
multiple objectives as one in a physical sense. On the other hand, the contradiction among these objectives make it
become impossible that all object ives are be optim
ized. As you emphasize certain objective, the

other objectives
may be bad.

So, there is not a common maximum point in all object ive functions. We need to introduce non
solution, which is called efficient solution or Pareto optimal solution. Genera
lly a mult iple

programming has infinite non
inferior solutions, in which the satisfied solution is called final solution. The users
prefer to get high bandwidth and low latency, but ISP would rather improve the utility of network resource than
ingle flow’s QoS. On the other hand, some objectives are related each other. For instance, assuming networks with
high speed links, the propagation delay can be ignored. Delay is mainly caused by processing and queuing. So
bandwidth reflects the port’s pro
cess ability, which can be thought as a main metric for routing to support
Guaranteed Service.

Moreover, only IntServ/RSVP can describe the bandwidth requirement quantitatively just for

in existing proposed service frameworks. If we divi
de the required bandwidth into several ranges
according to the statistic of network traffic, e.g.,
, we can pre
compute the
feasible path with the bottle
neck bandwidth within the above ranges periodically or triggered by so
me events in
necessary. When coming a flow, the routing daemon can choose a suitable route from relevant feasible paths
depending on its required service class. Of course, this method is
a tradeoff between the optimal solution and its
complexity, which doe
s not need to collect more network state information besides the current available bandwidth
of links.

, et al, proposed the idea in [3], and we design an algorithm CCPF (
Classify minimum
Cost Path First
) [4] to balance the link’s utility.

There are other tradeoffs in QoS routing problem such as between the accuracy of network sates and the
scalability of routing algorithms.

Uncertain Parameters

Due to the network
situation is
dynamic, the state information has its inherent

which causes the

calculat ion of
QoS routing

at extent degree. The inaccurate state information resulted from following

(1)dynamic network

The traffic on networks is changed dynamically, which results in the time
related parameter es
occurring congestion in some links. In order to decrease the protocol’s overhead, the routing protocol generally
updates the state periodically (e.g., RIP) or exceeding the threshold (e.g.,OSPF). The advertised states reflect the
average or worst

(2)aggregation in large network

There are three categories routing algorithms, i.e., source routing, distributed routing, and hierarchical
routing, which are according to the way how the calculating is carried and how the state information is mai
Hierarchical routing is most suitable for large network, but the logical entities which are the groups of lower level’s
nodes may loss some state information of the actual links and nodes at the bottom level. Because the routing
informat ion is int
egrated at the border nodes of each groups, every node only contains the detailed information of
internal its group and the aggregated information of external groups.


Approximated calculating

In fact, many parameters are calculated by estimating or using t
he ideal modes, which can not represent the
complexity of actual devices.

, et al, discussed the problem in [5]. They assumed that every link has a probability distribution about
delay or bandwidth respectively, and then estimate the probability of

chosen path to satisfy the given delay /
bandwidth. The path with the biggest probability is the optimal path. The problem is how to decide the probability
distribution. They assumed that the probability distribution is uniform, and introduce logarithm to

multiplicat ion of probability to addit ion. Practically this method is similar to the PO problem, but gave a new
operation for the deformed metrics.

3.3 Application of Neural Networks

Most of routing algorithms using neural network are based on

Hopfield model. The Hopfield neural
computational circuit is shown in Fig. 2. This circuit is designed so as to model the basic components of a
biological neural network. Each neuron id modeled as a nonlinear device (operational amplifier) with a sigmoid
monotonic increasing function relat ing the output V

of the
th neuron to its input U
. The output V

is allowed to
take on any value between 0 and 1.

Each neuron receives resistive connections (to model the synaptic connections) from other neurons. Thes
synaptic connections can be fully described through the matrix A= [a
], known as the connection matrix of the
network. Meanwhile, each neuron receives an external current I
, which may represent actual data provided by the
user to the neural network.

he use of neural networks to find the shortest path between a given source
destination pair was init iated by
Rauch and Winarske[6]. They proposed a neural network architecture arranged in a t wo
dimensional array of size

, where

is the number of nodes
within the network, and

is the number of nodes forming the path. It is
obvious that the above algorithm finds the shortest path only among those

node path.

The key problem to solve the shortest path problem using neural network is to d
efine a suitable energy
function. For example, Define a network as a directed graph G=(V.E), with

nodes and

links. Each link (i,j)
corresponds a nonnegative number C
, called length, distance, or transit time from node

to node j. A directed path
P f
rom a source

to a destination

is defined as an ordered sequence of nodes connecting
. The output V
j of
the neuron at (i,j) is defined as follows:


They assigned zero
cost for self loops connecting each node to

itself and very large costs to non
existing links.
For a given source destination pair, they also fix the state of all neurons located at the first and last column, while
allowing the remaining neurons to evolve so as to minimize energy function, e.g., as



Where A represents the total cost of the path, while B and C are constraints introduced to force the neural
network to converge to a valid path. The B is minimized if each column contains at most a single 1, which

corresponds to at most one node visited at a time. The c ensures that there will be exactly n 1’s in the final solution.











Fig.2. a simple Hopfield neural network

If node

is the jth node to be visited in th
e path


When combined together, the B and C ensure that each column will have exactly a single 1. The solution is that
there is a ordered sequ
ence of link connecting source

to destination with the minimum energy

In practice the link costs in a network are usually t ime varying, which normally depend on the amount of flow
they are carrying. In order to adapt to changes in the link costs, some new
models were proposed and gave more
complex energy functions to approach the practical network.

With the growth up of networks, the computation of neural network is higher, and it is difficult to select a
energy function to be favor the stable state of the
corresponding neural network.

4. Related Protocols

4.1 PNNI

PNNI (Private Network
Network Interface) is a protocol sets used between the ATM switches, which
includes two types of main protocols . The first type defines the topology information distrib
uted among ATM
switches, and these information can be used to compute the routes. The second type defines the signaling, which
can be used to set up the connection of point
point and point
to multi

In a word, PNNI determines the routes for a co
nnection before data transmission. Its topology information
consists of two parts: met rics and attributes. The topologic attributes can be divided t wo sets: performance or
related and policy
related. Moreover, PNNI defines the relat ionship between

the topologic state
parameters and service classes. So it has complete QoS system. Its performance constraint can be implemented by
three methods: link constraints, node constraints, and path constrains, which are based on cells traffic, loss rate and
ission control parameters. On ATM network a connection request may carry four performance elements, i.e.,
delay, bandwidth, jitter, and

loss rate. The QoS routing algorithm is based on link state, and each node keeps the
state information about whole topol

4.2 OSPF and QOSPF


Open Shortest Path First
) is for IP network, which provides hop
hop routing. Each node advertises
its link state by LSA packets ( Link State Advertises), and compute the shortest path tree rooted as itself to create
the ro
ute table. There are five types of link states, which correspond the internal routers, designated routers, bound
routers between areas, border routers between different autonomous system domain, etc. The link states don’t
contain a lot of performance/resou
rce information, and only provide simple information such as link’s connectivity.
OSPF uses the cost contained into LSA as the metric to compute the routes. In general, the cost represent some
static value such as hops and link’s capacity.

QOSPF (QoS rou
ting extensions to
) is an extension to OSPF, which wants to define an approach
protocol to support QoS routing and improve performance for QoS flows. It does so with the least possible impact
on the existing OSPF protocol, and is supposed to be workin
g in such an environment in which both QoS
routing and best
effort routing are needed. For every possible destination, the algorithm pre
compute a
shortest path”, which has minimum hops and maximum bandwidth.

As the describe in section 3.1,

we advocate the view of point, and approach another algorithm to get
completely different path between the same pair source and destination with wide enough bandwidth as designate
different bandwidth ranges. Although many existing QoS routing algorithms p
roposed multiple QoS constraints
assuming certain conditions, they only were limited in the algorithms itself and can not be combined with relevant
protocols and service classes. This kind of research has the important significance for computing theory and

network service, but for large scale network engineering, like Internet, it is more worthwhile to enrich other service
classes coexisting with best
effort service.

. Conclusion

As the one of important QoS components, QoS
based routing must be co
nsidered together with the other
traffic control and resource management components. As a special research direction, QoS
based routing has its
inherent complexity. For large network, QoS routing algorithms should conform the following principles:


t and solvable within a tolerable computing time


suitable to current Internet architecture

In fact, any QoS routing algorithm can not cover all advantages, but it is feasible to select key metrics for
t ime application. It is a valuable approach that m
ake use of a weighted cost function to consider the
importance of various metrics for different service classes as the path optimal objective. Although most of
media applications need multicast QoS routing, unicast QoS routing is the important base a
nd can be
developed for multicast communication.





H.Sandick, A Framework for QoS
Based Routing in The Internet, RFC 2386,Aug.1998

]Zheng Wang and Jon Crowcroft

Quality of Service Routing for Supporting M
ultimedia Application

IEEE Journal on. Selected
Areas in Communications
. 1996.

(7), pp.



et al.

Routing mechanisms and OSPF extensions
. 1999.Internet Engineering Task
equest for


Jing FENG, RunFuang Zhou, Guan
un GU
A Classified Pre
Computed QoS Routing

Accepted by Software Journal.

]Roch A. Guerin and Ariel Orda, QoS routing in networks with Inaccurate Information: Theory and Algorithms, IEEE/ACM
Trans. On Networking Vol.7 No
.3 June
, pp.

1999 350

[6] H.E.Rauch and T.Winarske, Neural Networks for Routing Communication Traffic, IEEE Cont. Syst. Mag., Apr. 1988,