You are on page 1of 8

Int. J. Electron. Commun.

(AE) 65 (2011) 190197

Contents lists available at ScienceDirect

International Journal of Electronics and


Communications (AE)
journal homepage: www.elsevier.de/aeue

Performance analysis of a priority queue: Expedited Forwarding PHB in DiffServ


Thomas Demoor , Joris Walraevens, Dieter Fiems, Herwig Bruneel
Department of Telecommunications and Information Processing (TELIN), Ghent University, Sint-Pietersnieuwstraat 41, B-9000 Gent, Belgium

a r t i c l e

i n f o

Article history:
Received 5 June 2009
Accepted 4 February 2010
Keywords:
Quality of service
Differentiated services
Priority queue
Finite capacity
Performance evaluation

a b s t r a c t
This paper studies a two-class priority queue in order to model a DiffServ router with Expedited Forwarding Per-Hop Behavior for high-priority trafc. Normally, queueing models assume innite queue
capacity but in a DiffServ router the capacity for high-priority trafc is often small to prevent this trafc
from monopolizing the output link and hence causing starvation of other trafc. The presented model
takes the exact (nite) high-priority queue capacity into account and introduces a framework for queue
management algorithms, enabling determination of high-priority packet loss and its inuence on the
performance of the system. Analytical formulas for system content and packet delay of each trafc class
are determined. Numerical examples indicate the necessity of modelling the high-priority queue as nite
in order to accurately capture performance in a DiffServ environment.
2010 Elsevier GmbH. All rights reserved.

1. Introduction
The huge difference between the quality of service (QoS)
demands for real-time trafc ows and data trafc ows is often
neglected in packet-based telecommunication networks, such as
the Internet. Real-time trafc, such as multimedia streams, can
often endure some packet loss but requires low delays and/or low
delay jitter. Data trafc benets from low packet loss, hence avoiding retransmissions, but has less stringent delay characteristics.
In the nodes (routers, etc.) of the network, packets typically
have to wait before being transmitted to the next node. In each
node a buffer is present in order to preserve these packets. Generally packets are transmitted in order of arrival with acceptable
QoS, because the Internet is overprovisioned. However, when bandwidth becomes scarcer (wireless links, future Internet) we are
forced to handle packets smarter in order to achieve acceptable
QoS. One of these smarter approaches, the DiffServ architecture
for Internet Protocol [1,2] is successfully implemented in corporate
networks and is debated on as one of the possible approaches to
QoS in the future Internet. This approach classies packets according to their QoS requirements. By basing the order in which packets
are transmitted on class-dependent priority rules, QoS can be optimized over all trafc classes.
This paper studies a queueing system with a single-server serving two queues, one per priority class, and a priority scheduling

Corresponding author at: Ghent University, SMACS Research Group,


Department of Telecommunications and Information Processing (TELIN), SintPietersnieuwstraat 41, B-9000 Gent, Belgium. Tel.: +32 09 264 89 02;
fax: +32 09 264 42 95.
E-mail address: thdemoor@telin.ugent.be (T. Demoor).
1434-8411/$ see front matter 2010 Elsevier GmbH. All rights reserved.
doi:10.1016/j.aeue.2010.02.018

algorithm, in order to minimize the delay of the high-priority


(real-time) packets. This is the most drastic scheduling method, as
low-priority packets (class 2) are only served if there are no highpriority packets (class 1) in the system, but it is practical and easy to
implement. In the DiffServ terminology one would say that class1 trafc has Expedited Forwarding Per-Hop Behavior and class-2
trafc has Default Per-Hop Behavior.
We limit the capacity of the class-1 queue to N packets and
assume that the class-2 queue has innite capacity. Although
practical queues are nite, analytic studies of queueing systems
generally assume innite queue capacity facilitating mathematical
analysis of the system. In general, this assumption does not considerably alter the results as the studied queues have a sufciently
large capacity in practice. However, in the setting under consideration class-1 packets are delay-sensitive. These packets are of
no use when reaching their destination out of time. It is hence
benecial to drop a class-1 packet immediately when there are
many packets to be served before it, as it would be of no use to
the receiver anyway. Additionally, these packets could occupy the
server (almost) permanently, as they receive priority, causing starvation of class-2 trafc. This should be alleviated by controlling
the amount of class-1 trafc allowed into the system. These two
observations emphasize the importance of limiting the capacity for
real-time packets, without neglecting the packet loss constraints
for these packets and hence nite (exact) class-1 queue capacity is
preferred in a model above the innite capacity approximation. On
the other hand, the loss-sensitivity of class-2 packets results in a
class-2 queue capacity as large as practically feasible, justifying the
assumption of an innite class-2 queue capacity.
In the literature, priority queues have been discussed with
various arrival and service processes, such as in the contributions
[38]. The presented paper complements [6] where both queues

T. Demoor et al. / Int. J. Electron. Commun. (AE) 65 (2011) 190197

are presumed to be of innite capacity. As stated above, the setting


under consideration calls for a small class-1 queue capacity and we
thus compare both models. Finite queue capacity is considered in
[7] as well, albeit by a different methodology, and only packet loss
is investigated profoundly while delay is not analyzed. The current
contribution is related to [8] where, within a slot, arrivals were
correlated between both classes but it only considered the most
straightforward queue management algorithm (Tail Drop). The
presented paper focuses on the queue management algorithm but
assumes uncorrelated arrivals. Therefore, the performance of each
class can be analyzed separately. First, the class-1 performance is
determined without considering class-2 trafc. The class-2 queue
can be seen as a queue with server interruptions. This interruption
process is determined by the class-1 idle/busy periods. Assessing
the impact of the nite class-1 queue capacity (and hence the
queue management algorithm) on the performance measures is
the main purpose of the present contribution.
The remainder of this paper is organized as follows. First the
model under consideration will be thoroughly described. In Section 3 several performance measures for our system are determined
analytically. Next, the queue management algorithm is studied
in detail. The penultimate section investigates some (numerical)
examples. Finally, the paper is concluded in Section 6.
2. Model
We rst introduce some probability theory. Let x be a nonnegative discrete random variable. The probability mass function
(pmf) for x, which denotes the probability that x assumes the value
n, is dened as
x(n) = Pr[x = n],

0 n .

(1)

A probability generating function (pgf) is the power series representation of a pmf. It is dened as
X(z) = E[z x ] =

x(n)z n .

(2)

n=0

Note that E[.] denotes the expected value (mean) operator and that
X(1) = 1. All moments (mean, variance, etc.) of a random variable x
can be calculated by means of the moment-generating property of
its pgf. For instance, the mean value of x is determined by
E[x] =

nx(n) = X  (1).

(3)

n=0

2.1. System description


We consider a discrete-time single-server two-class priority
queueing system with nite class-1 queue capacity N and an innite class-2 queue capacity as depicted in Fig. 1. Time is divided
into xed-length slots corresponding to the transmission time of
a packet. The server can only handle one packet simultaneously
and service takes one slot (deterministic). Packets arrive at the system during a slot and can only enter the server at slot boundaries,
even if arriving in an empty system. Class-1 packets receive priority
over class-2 packets and within a class the queueing discipline is
First-In-First-Out (FIFO).
2.2. Arrival process
Assume that the arrivals are independent and identically distributed (i.i.d.) from slot to slot and that arrivals of both classes
are independent. Let the random variable ai,k denote the number
of class-i (i = 1, 2) packet arrivals during slot k. The corresponding

191

Fig. 1. System representation.

pmfs and pgfs are denoted by ai (n) and Ai (z) respectively. The mean
number of class-i arrivals per slot equals:
i = E[ai,k ] = Ai (1).

(4)

The total arrival load T equals 1 + 2 .


2.3. System content and effective arrivals
Let ui,k denote the class-1 system content, i.e. the number of
class-i packets present in the system at the beginning of slot k(i = 1,
2). For these random variables, the steady-state pmfs and pgfs are
characterized by ui (n) and Ui (z), respectively. Notice that the class1 queue can contain up to N packets and that the server can only
hold a single packet resulting in a maximal class-1 system content
of N at the beginning of a slot as the packet in the server leaves the
system at the preceding slot boundary. Thus u1 (n) = 0 for n > N.
Due to the nite class-1 queue capacity, packets arriving at a full
queue are discarded by the system. The queue management algorithm determines the manner in which the system drops packets.
The system never drops class-2 packets as the class-2 queue capacity is innite. The number of class-1 packets effectively allowed
into the system during slot k is denoted by the random variable
e1,k with mean 1,e . This random variable depends on u1,k and a1,k .
The queue management algorithm is determined by the conditional
pmf:
qk (p|m, n) = Pr[e1,k = p|a1,k = m, u1,k = n],

(5)

which is dened for 0 n N and p m. We could choose to only


drop the packets arriving at a full queue (Tail Drop) or use more
intricate queue management algorithms that drop additional packets. In Section 4, the impact of the queue management algorithm is
explored in greater detail. The probability that p class-1 packets are
effectively allowed into the system if the class-1 system content at
the beginning of the slot equals n is given by the conditional pmf:
e1,k (p|n)

= Pr[e1,k = p|u1,k = n]
=

qk (p|m, n)a1 (m),

(6)

m=p

dened for 0 n N. Note that the class-1 queue can contain up to


N packets and that a class-1 packet is transmitted during a slot
if the class-1 queue is not empty at the beginning of that slot.
Therefore, e1,k (p|n) = 0 for p > N (n 1)+ , where (x)+ denotes
the maximum of x and 0.
2.4. Packet delay
The delay of a packet is dened as the number of slots between
its arrival and departure slot. Let the random variable di denote

192

T. Demoor et al. / Int. J. Electron. Commun. (AE) 65 (2011) 190197

class-1 system content, delay and packet loss ratio. Next, the class-1
idle/busy periods are determined enabling use of known formulas on vacation systems in the nal subsection, in order to obtain
class-2 system content and delay.
3.1. Class-1 performance
The class-1 queue is not inuenced by class-2 packets and can
be analyzed as if it were the only queue in the system. From [9]
and adapting to the notation used in this paper, this produces the
following formulas. Relating the system content at the beginning
of slots k and k + 1 yields:
u1,k+1 = (u1,k 1)+ + e1,k .

(7)

Due to the nite queue size, the class-1 system always reaches
steady-state, a stable time-independent state. In steady-state the
system contents at the beginning of slots k and k + 1 converge to
the same (steady-state) value. This yields:
Fig. 2. Example of the delay of a class-2 packet.

the delay of a random class-i packet. The corresponding steadystate pmfs and pgfs are expressed by di (n) and Di (z), respectively.
Consider a class-1 packet. Due to the nite class-1 queue capacity,
there are at most N 1 packets to be served before the considered
packet. It thus resides in the system for at most N slots, its maximum delay bound. Because class-1 packets receive priority and
are scheduled in a FIFO manner within their class, determining the
delay of a class-1 packet is straightforward, once u1 (n) has been
calculated.
On the other hand, a class-2 packet has to give priority to class-1
packets. Hence, determining its delay is more intricate as illustrated
in Fig. 2. The (tagged) class-2 packet we study is highlighted black,
the other packets are gray. All packets are numbered according to
their class. Evidently the tagged packet is served after packets that
were already present in the system at the beginning of its arrival
slot, after class-1 packets that have effectively arrived in the same
slot and after class-2 packets that have arrived in the same slot but
before the tagged packet. Note that class-1 packets effectively arriving while the tagged packet resides in the system are served before
it as they receive priority. Arriving class-2 packets, however, join
the class-2 queue behind the tagged packet and do not contribute
to its delay. Consequently, in the example depicted in Figs. 2 and 3
packets are to be served before the tagged packet and its own service also amounts to its delay yielding a delay of four slots in this
case.
3. System analysis
We aim to express the performance measures of the system in
terms of the arrival process. The rst subsection deals with the

u1 (n)

= lim Pr[u1,k = n] = lim Pr[u1,k+1 = n],

q(p|m, n)

= lim qk (p|m, n) = lim qk+1 (p|m, n),

e1 (p|n)

(8)

= lim e1,k (p|n) = lim e1,k+1 (p|n).


k

It is straightforward that the class-1 system content constitutes a


Markov Chain with N + 1 states. Considering (8) while taking the
limit of (7) for k going to innity enables us to establish the following system of equations for the pmf of the system content at the
beginning of a slot in steady-state:
u1 (i) =

i


e1 (j|i + 1 j)u1 (i + 1 j) + e1 (i|0)u1 (0),

j=0

u1 (N) =

N1


(9)
e1 (j + 1|N j)u1 (N j) + e1 (N|0)u1 (0).

j=0

for i from 0 to N 1. Furthermore,


N


u1 (j) = 1.

(10)

j=0

Solving the system of equations formed by (9) and (10) enables us


to express the pmf u1 (n) explicitly.
In steady state, the system is in equilibrium, meaning that the
average number of effective arrivals equals the average number of
departures. The latter is easily found, as a packet leaves the system
at the end of every slot with system content larger than zero at the
beginning of the slot. We thus have
1,e = 1 u1 (0).

(11)

The class-1 packet loss ratio, the fraction of class-1 packets that is
discarded by the system, is found as
plr1 =

1 1,e
1

(12)

The delay of a random class-1 packet is obtained from the class-1


system content in steady state as in [10]. In this paper, following
distributional form of Littles Law is proved:
d1 (n) =

Fig. 3. Remaining class-1 busy period.

u1 (n)
u1 (n)
=
,
1 u1 (0)
1,e

1 n N.

(13)

Notice that the delay of a packet is at least 1 slot and at most N slots,
or equivalently that d1 (0) = 0 and d1 (n) = 0 for all n > N.

T. Demoor et al. / Int. J. Electron. Commun. (AE) 65 (2011) 190197

193

3.2. Class-1 idle/busy periods

3.3. Class-2 performance

The server is not permanently available for class-2 trafc. Class2 packets can only be served when the class-1 queue is empty.
The class-2 queue can consequently be analyzed as a system
with server interruptions [11]. For class-2 the server is available
when the class-1 queue is empty whereas it is inaccessible (interrupted) during class-1 busy periods. In order to tackle class-2
performance, these class-1 idle and busy periods must rst be
determined.
A class-1 busy period is constituted by a number of consecutive slots with a class-1 packet occupying the server. It starts in the
slot following a slot with arrivals in an empty system and goes on
until the system is emptied. A class-1 idle period corresponds to
the number of slots between two class-1 busy periods or equivalently to a number of consecutive slots during which the system
does not contain class-1 packets. Its pgf, denoted by I1 (z), is easily found as an idle period is shifted geometrically distributed with
parameter e1 (0|0), the probability that the class-1 queue is empty
at the beginning of the next slot if it is empty in the current slot.
Thus, we have

The system is not stable for all input parameter sets as the class-2
queue has innite capacity. It is imperative that the average class-2
server availability exceeds the average number of class-2 arrivals
for the system to reach steady state. Let  denote the fraction of time
during which the server is available for class-2 packets in steady
state. It is obtained as the relative mean duration of a class-1 idle
period or equivalently as the probability that the system is void of
class-1 packets. This respectively yields:

I1 (z) =

[1 e1 (0|0)]z
.
1 e1 (0|0)z

(14)

In order to determine the pgf of the class-1 busy period we rst


determine the remaining busy period. Assume slot k to lie within
a class-1 busy period. The remaining class-1 busy period from (the
beginning of) slot k, denoted by rk , is clearly dependent on u1,k
because rk lasts until the class-1 system content equals zero. In
steady-state rk and rk+1 converge to the same value r, the remaining
class-1 busy period in steady-state from a slot with class-1 system content of n at the beginning of the slot, with conditional pgf
Rn(Z) . The considered class-1 system content is at least 1, since during a busy period the system is never empty at the beginning of
a slot, and at most N, due to the nite queue capacity. Relating
slots k and k + 1 (Fig. 3) and taking the limit for k going to innity,
yields:

Nn+1

Rn (z) = z

Rn1+m (z)e1 (m|n),

(15)

m=0

for 1 n N. This can be seen as follows. The remaining class-1


busy period from a slot is comprised by that slot, accounting for the
factor z in front of the sum, and the remaining busy period from the
next slot. Of course, one has to take all possible values of effective
arrivals into account as they inuence the system content in the
next slot and hence also the remaining busy period from that slot.
Note that Rn (z) is expressed in terms of Rn1 (z) to RN (z) and that
R0 (z) = 1 since n = 0 marks the end of the busy period. Jointly, (15)
and R0 (z) = 1 form a system of N + 1 linear equations, with N + 1
unknowns R0 (z) to RN (z), which is straightforward to solve.
A class-1 busy period is simply the remaining class-1 busy period
from a random slot preceded by a slot with an empty class-1 system
content at the beginning of the slot and a number of class-1 arrivals
larger than 0. The pgf of the class-1 busy period in steady-state is
thus obtained as
B1 (z) =

N

Rm (z)e1 (m|0)
m=1

1 e1 (0|0)

(16)

The moment-generating property of this pgf enables determination of the moments of the class-1 busy period. They are expressed
in terms of derivatives of the pgfs Rn (z). These can be calculated by
solving a linear system of equations and this does not give rise to
numerical issues for the values of N in the setting under consideration.

=

I1 (1)

I1 (1) + B1 (1)

= u1 (0).

(17)

The system hence reaches steady-state if 2 < .


Now that the class-1 idle and busy periods have been determined, we use known formulas on vacation systems in order to
analyse class-2 performance [11,12]. Dene Se (z) as the pgf of the
effective service time (EST) of a class-2 packet in steady-state, i.e.
the number of slots a class-2 packet resides at the head of the class2 queue or in the server. This equals its service time, of 1 slot, if no
class-1 packets have arrived during the slot preceding the EST. On
the other hand, if there have been effective class-1 arrivals, the
packet has to wait for a class-1 busy period until its service can
start. This observation yields
Se (z) = e1 (0|0)z + [1 e1 (0|0)]B1 (z)z.

(18)

Using standard z-transform techniques [12] and the EST-approach


[11] we obtain the pgfs of the class-2 system content and the class-2
packet delay as
A2 (z)(z 1)[1 Se (A2 (z))]
,
[1 A2 (z)][z Se (A2 (z))]

U2 (z) =

( 2 )

D2 (z) =

z[A2 (Se (z)) 1]


.
( 2 )
2 [z A2 (Se (z))]

(19)

The moment-generating properties of these pgfs allow us to calculate all moments of the class-2 system content and packet delay.
For instance, the mean class-2 delay is derived as
E[d2 ] = D 2 (1) = 1 +

A2 (1)
22 ( 2 )

 2 Se (1)
.
2( 2 )

(20)

Note the use of lHpitals rule and note the inuence of class-1
trafc on the mean class-2 delay through  and the second moment
of the EST.
The mean class-2 system content can be found analogously or,
more straightforward, by means of Littles Law yielding:
E[u2 ] = 2 E[d2 ].

(21)

4. Queue management algorithms


The queue management algorithm is determined by dening the
function q(p|m, n) (5). This paper considers three different queue
management algorithms. The most straightforward are Tail Drop
and Batch Drop. When the queue cannot contain all packet arrivals
during a slot, the former only drops the excess packets while the
latter drops all packets. A third algorithm, the Adaptive Batch Drop
queue management algorithm, is more intricate. This algorithm is
aware of the QoS requirements (for packet loss) of real-time trafc.
It behaves analogous to Batch Drop as long as the system contains
less class-1 packets than a certain threshold H. While this threshold
is exceeded, the system drops d of the arriving packets (in order to
prevent having to drop all arriving packets in a future slot) and
accepts the remaining packets if they can all enter the queue or
drops all packets if this is not the case. The queue management
algorithms are formally dened as

194

T. Demoor et al. / Int. J. Electron. Commun. (AE) 65 (2011) 190197

Tail Drop:
for 0 n N:
+
for 0 m N (n 1) :
q(m|m, n):=1
q(p|m, n):=0, p =
/ m
+
for m > N (n 1) :
+
q(N (n 1) |m, n):=1
+
q(p|m, n):=0, p =
/ N (n 1)
Batch Drop:
for 0 n N:
+
for 0 m N (n 1) :
q(m|m, n):=1
q(p|m, n):=0, p =
/ m
+
for m > N (n 1) :
q(0|m, n):=1
q(p|m, n) = 0, p =
/ 0
Adaptive Batch Drop:
for 0 n H:
+
for 0 m N (n 1) :
q(m|m, n):=1
q(p|m, n):=0, p =
/ m
+
for m > N (n 1) :
+
q(N (n 1) |m, n):=1
+
q(p|m, n):=0, p =
/ N (n 1)
for H + 1 n N:
+
for 0 m d N (n 1) :
q(m d|m, n):=1
q(p|m, n):=0, p =
/ md
+
for m d > N (n 1) :
q(0|m, n):=1
q(p|m, n) = 0, p =
/ 0

Fig. 4. Class-1 packet loss ratio vs. class-1 queue capacity.

dened as
Ai (z) = 1 i + i z bi .

Per slot, Adaptive Batch Drop strives to drop a limited number of packets (as most real-time applications can handle a small
amount of loss, especially if smoothed over time) or all packets (as
transmitting only a few of the packets would be useless anyway).
Packets are called defective if they are accepted into the system in
a slot with more than l packet losses causing the achieved amount
of QoS to be unacceptable. Consider the slots with at least one
arrival. The goodput g is dened as the percentage of these slots
where the accepted packets are not defective. It is a measure for
the achieved QoS. Let the random variable l1 denote the number
of dropped class-1 packets in a slot in steady state. The goodput is
expressed as
g=

l


Pr[l1 = k|a1 > 0].

(22)

k=0

It is straightforward that
Pr[l1 = 0|a1 > 0]

N


i=1 n=0

Pr[l1 = k|a1 > 0]

N


i=0 n=0

q(i|i, n)

a1 (i)
u1 (n),
1 a1 (0)

Consequently, the mean number of class-i arrivals is given by i =


i bi .
First, our queueing model is evaluated with the Tail Drop queue
management algorithm and compared to the model in [6], referred
to as the innite model in the remainder of this paper. Let b1 =
b2 = 32 and 1 = 2 = 0.01 yielding a total arrival load T = 64%.
In Fig. 4, the class-1 packet loss ratio is plotted versus the class-1
queue capacity. As can be expected the packet loss ratio decreases
as class-1 capacity N increases. Note that for N up to b1 (32) a batch
can never entirely enter the system leading to a huge amount of
packet loss.
Fig. 5 depicts the mean and standard deviation (jitter) of the
delay of both classes versus the class-1 queue capacity N. We can
clearly discern the effect of the priority scheduling as the class-2
delay greatly exceeds the class-1 delay although both classes have
the same arrival process. The low mean delay and delay jitter for
class-1 deliver the QoS required for real-time trafc but at the cost
of a class-2 delay performance decrease. For larger N the packet loss
ratio tends to zero and the difference between the nite model and
innite model (represented by the horizontal lines) dissolves but,
especially for class-2, convergence is rather slow.
Now assume N = 125, b1 = b2 = 32 and keep T constant at 80%.
In Fig. 6 the mean delay of both classes is plotted versus the frac-

(23)
a1 (i + k)
q(i|i + k, n)
u1 (n), k > 0.
1 a1 (0)

These formulas are simple to implement when considering a


specic queue management algorithm.
5. Results and discussion
For the arrivals, any i.i.d. process can be considered. As our
interest particularly lies in acquiring qualitative insights into the
systems performance, let us consider a batch-Bernoulli arrival process because the effect of the parameters of the process on the
moments, and hence on the system performance, is very clear. Consequently, a class-i (i = 1, 2) batch, containing a (xed) number of
bi packets, arrives with probability i during a slot or no class-i
packets arrive with probability 1 i . The corresponding pgfs are

(24)

Fig. 5. Delays vs. class-1 queue capacity.

T. Demoor et al. / Int. J. Electron. Commun. (AE) 65 (2011) 190197

Fig. 6. Mean delays vs. trafc mix.

tion of class-1 packets in the trafc mix = 1 /T . We have two


curves per mean delay: one for the nite model (E[di ]) and one
for the innite model (E[di ] ). As increases the total number of
packets arriving at the system remains constant but more packets
are of class-1. It can be seen that, as increases, the mean delay
increases for both classes and the innite models approximation
becomes worse. These effects can be explained as follows. Class1 delay increases as the number of class-1 packets waiting before
an arbitrary class-1 packet increases. The class-2 delay increases as
an arbitrary class-2 packet is served after class-1 packets arriving
during its delay. Class-1 packet loss increases when more class1 packets arrive at the system causing the impreciseness of the
innite model as it does not capture packet loss.
Let N = 125, b2 = 16, 2 = 0.025 yielding 2 = 40%. We increase
the class-1 batch size b1 while adjusting 1 accordingly in order
to keep 1 constant at 40%. The variance (burstiness) of the class-1
arrival process increases as b1 increases. In Fig. 7 the mean delays
are portrayed as a function of the class-1 batch size b1 . For small
values of b1 class-1 delay increases as b1 grows because the delay
of packets at the end of a batch extends as b1 grows. Class-2
delay evolves in the same way as class-2 packets give priority.
From b1 = 64 on, a second effect dominates. The class-1 queue is
entirely lled when two class-1 batches arrive in nearby slots. This
builds up class-1 packet loss causing a decelerated increase of class1 delay and its overestimation by the innite model. Class-2 delay

Fig. 7. Mean delays vs. class-1 batch size.

195

Fig. 8. Class-1 packet loss ratio vs. total arrival load.

reduces as class-2 packets have fewer packets to give priority to


due to increased class-1 packet loss. This effect is not captured by
the innite model. The decrease in mean delays (even for class1) for b1 > 125 can be attributed to extremely high packet loss
since the class-1 batch size exceeds the class-1 queue capacity and
this evidently causes the system performance to degenerate. These
observations illustrate that the delay of both classes is relatively
independent of the burstiness of the high-priority arrival process
when the high-priority queue is small, or in other words, the burstiness of the high-priority trafc is counteracted by the small queue
capacity. This exemplies that limiting the high-priority queue
capacity is an effective means of congestion control in order to
achieve fairness over all trafc classes. This effect is obviously not
predicted at all by innite queueing models. Since in practice arrival
processes with high variance are common these observations are
to be kept in mind when designing queues.
We illustrate the generality of the framework for the queue
management algorithm with a more advanced example which
explores the full capability of the queueing model. Let b1 = b2 = 32,
T = 75% and N = 100. Assume that high-priority trafc achieves sufcient QoS as long as at least 30 out of the 32 packets in a batch
are transmitted. Hence, a packet is defective when it originates
from a batch of which less than 30 packets are accepted by the
system yielding l = 2. For Adaptive Batch Drop, it seems natural
to choose l = d and let H = b1 = 32 yielding that the system starts
dropping packets when more than one batch is present in the system. We investigate the difference in performance between Tail
Drop (T), Batch Drop (B) and Adaptive Batch Drop (A) in this setting.
In Figs. 810 we have respectively plotted the class-1 packet loss
ratio, the class-1 goodput and the average delays for both classes
versus the total arrival load T . Notice that T can slightly exceed 1
as our system remains stable as long as 2 < .
From Fig. 8 one would derive that Tail Drop performs better as it
drops considerably less packets than the other algorithms but Fig. 9
exhibits that Tail Drop has inferior goodput and hence exposes that
the difference in packet loss ratio stems from the fact that Tail Drop
allows defective packets into the system that do not contribute to
the goodput whereas the Batch algorithms drop all defective packets, as they do not lead to acceptable QoS anyway, and thereby free
up capacity for future arrivals. As the Adaptive Batch Drop is aware
of the slight loss tolerance of the arrivals it outperforms Batch Drop.
For T = 50% the improvement is already considerable and it gets
remarkable if the system is heavily loaded. The impact on the average delays is depicted in Fig. 10. The Batch algorithms instigate a
small delay reduction as they drop more packets but the impact is

196

T. Demoor et al. / Int. J. Electron. Commun. (AE) 65 (2011) 190197

Acknowledgement
The second and third authors are Postdoctoral Fellows with
the Fund for Scientic Research, Flanders (F.W.O.-Vlaanderen), Belgium.
References

Fig. 9. Class-1 goodput vs. total arrival load.

Fig. 10. Mean delays vs. total arrival load.

moderate. We conclude that intelligent drop mechanisms not only


increase goodput but also slightly decrease delay of both trafc
classes when this trafc contains some redundancy.
6. Conclusions
In this paper, a two-class priority queue with nite capacity
for the high-priority (class-1) packets has been studied in order to
model a DiffServ router with Expedited Forwarding Per-Hop Behavior for class-1 packets. Analytical formulas for system content and
packet delay of each trafc class were determined. Previous models
assumed that the system had innite capacity for all trafc classes
but in a DiffServ router the capacity for class-1 packets is often
small to prevent high-priority trafc from monopolizing the system. The presented model takes the exact class-1 queue capacity
into account allowing the determination of class-1 packet loss and
its inuence on the performance of the system. Furthermore, this
contribution incorporates a framework for the queue management
algorithm. The numerical examples clearly indicate the impreciseness of the innite capacity assumption for class-1 trafc when
class-1 packet loss is not negligible. Additionally, these results
exemplify that intelligent queue management algorithms improve
system performance when the handled trafc exhibits redundancy.

[1] Blake S, Black D, Carlson M, Davies E, Wang Z, Weiss W. An architecture for


differentiated services. IETF RFC 1998:2475.
[2] Carpenter B, Nichols K. Differentiated services in the internet. Proceedings of
the IEEE 2002;90(9):147994.
[3] Takine T, Sengupta B, Hasegawa T. An analysis of a discrete-time queue for
broadband ISDN with priorities among trafc classes. IEEE Transactions on
Communications 1994;42(24):183745.
[4] Takine T. A nonpreemptive priority MAP/G/1 queue with two classes of customers. Journal of Operations Research Japan 1996;39(2):26690.
[5] Ali Mehmet M, Song X. A performance analysis of a discrete-time priority queueing system with correlated arrivals. Performance Evaluation
2004;57(3):30739.
[6] Walraevens J, Steyaert B, Bruneel H. Performance analysis of a single-server
ATM queue with a priority scheduling. Computers & Operations Research
2003;30(12):180729.
[7] Van Velthoven J, Van Houdt B, Blondia C. The impact of buffer niteness on the
loss rate in a priority queueing system. In: 3rd EPEW, Lecture notes in computer
science, vol. 4045. 2006. p. 21125.
[8] Demoor T, Walraevens J, Fiems D, Bruneel H. Mixed nite-/innite-capacity
priority queue with interclass correlation. In: ASMTA15 Proceedings, Lecture
notes in computer science, vol. 5055. 2008. p. 6174.
[9] Takagi H. Queueing analysis, volume 3: discrete-time systems. Amsterdam:
Elsevier Science Publishers; 1993.
[10] Vinck B, Bruneel H. Delay analysis for single server queues. Electronics Letters
1996;32(9):8023.
[11] Fiems D, Steyaert B, Bruneel H. Discrete-time queues with generally distributed
service times and renewal-type server interruptions. Performance Evaluation
2004;55(34):27798.
[12] Bruneel H. Analysis of buffer behaviour for an integrated voice-data system.
Electronics Letters 1983;19(1):724.
Thomas Demoor was born in Ghent, Belgium, in 1983. He
received the M.S. degree in Computer Science from Ghent
University in 2007. Subsequently, he joined the SMACS
Research Group at the Department of Telecommunications and Information Processing, Ghent university as a
PhD student. His research mainly concerns performance
analysis of priority queueing models and its application to
telecommunication networks.

Joris Walraevens was born in Zottegem, Belgium, in


1974. He received the M.S. in Electrical Engineering
and Ph.D. in Engineering degrees in 1997 and 2004
respectively, all from Ghent University, Belgium. In
September 1997, he joined the SMACS Research Group,
Department of Telecommunications and Information Processing, at the same university. In 2006, he became a
postdoctoral researcher of the Research Fund Flanders
(FWO-Vlaanderen). In 2007, he performed a research visit
at the EURANDOM Research Institute (Eindhoven, The
Netherlands). From 2008 onwards, he is also a part-time
professor at Ghent University. His main research interests
include discrete-time queueing models and performance
analysis of heterogeneous telecommunication networks.
Dieter Fiems was born in Ghent, Belgium, in 1973. He
received an engineering degree at KAHO-St-Lieven in
1997, the post-graduate degree in Computer Science at
Ghent University in 1998 and the Ph.D. degree in Engineering at Ghent University in 2004. Since 1998, he is a
researcher at the Department of Telecommunications and
Information Processing of Ghent University, as a Member of the SMACS Research Group. His research interests
include a.o. discrete-time queueing models and stochastic
modelling of telecommunication networks.

T. Demoor et al. / Int. J. Electron. Commun. (AE) 65 (2011) 190197

Herwig Bruneel was born in Zottegem, Belgium, in 1954.


He received the masters degree in Electrical Engineering, the masters degree in Computer Science, and the
Ph.D. degree in Computer Science in 1978, 1979 and
1984, respectively, all from Ghent University, Belgium. He
is full Professor in the Faculty of Engineering and head
of the Department of Telecommunications and Information Processing at the same university. He also leads the
SMACS Research Group within this department. His main
personal research interests include stochastic modelling
and analysis of communication systems, discrete-time
queueing theory, and the study of ARQ protocols. He has
published more than 400 papers on these subjects and
is coauthor of the book H. Bruneel and B.G. Kim, Discrete-Time Models for Com-

197

munication Systems Including ATM (Kluwer Academic Publishers, Boston, 1993).


From October 2001 to September 2003, he served as the Academic Director for
Research Affairs at Ghent University. Since 2009, he holds a career-long Methusalem
grant from the Flemish Government at Ghent University, specically on Stochastic
Modelling and Analysis of Communication Systems.

You might also like