Performance Evaluation 55 (2004) 277–298
Discrete-time queues with generally distributed service times and renewal-type server interruptions Dieter Fiems∗ , Bart Steyaert, Herwig Bruneel SMACS Research Group, Vakgroep TELIN (TW07V), Ghent University, Sint-Pietersnieuwstraat 41, B-9000 Ghent, Belgium Received 21 September 2001; received in revised form 7 March 2003
Abstract In this contribution, we investigate a discrete-time single-server queue subjected to server interruptions. Server interruptions are modeled as an on/off process with geometrically distributed on-periods and generally distributed off-periods. As message lengths can exceed one time-slot, different operation modes are considered, depending on whether service of an interrupted message continues, partially restarts or completely restarts after an interruption. For all alternatives, we establish expressions for the steady-state probability generating functions (pgf) of the buffer contents at message departure times and random slot boundaries, of the unfinished work at random slot boundaries, the message delay, and the lengths of the idle and busy periods. From these results, closed-form expressions for various performance measures, such as mean and variance of the buffer occupancy and message delay, can be established. As an application, we show that this model is able to assess performance of a multi-class priority scheduling system. We then illustrate our approach with some numerical examples. © 2003 Elsevier B.V. All rights reserved. Keywords: Discrete-time queueing; Interruptions; Priority queueing
1. Introduction Queueing models with server interruptions [1] have been investigated by several authors, in continuous as well as in discrete time. Server interruptions naturally occur when several users share a common resource, such as polling systems [2] or multi-class queueing systems [3–5], or in an environment where service can be interrupted due to external causes such as machine repair and maintenance [6] or processor failures. Let us now situate the current contribution within the existing literature on discrete-time queueing systems with interruptions by briefly reviewing some of the related work published in the past. Hsu [7] investigated a single-server system with Bernoulli server interruptions and Poisson arrivals back in the seventies. In the papers by Yang and Mark [8] and Laevens and Bruneel [9], a model with server interruptions was used to study the performance of low-priority traffic in a queue with two priority classes. Bruneel ∗
Corresponding author. Tel.: +32-9-264-89-02; fax: +32-9-264-42-95. E-mail addresses:
[email protected],
[email protected] (D. Fiems). 0166-5316/$ – see front matter © 2003 Elsevier B.V. All rights reserved. doi:10.1016/j.peva.2003.08.004
278
D. Fiems et al. / Performance Evaluation 55 (2004) 277–298
[10] and Laevens and Bruneel [9] investigated buffer contents and delay, respectively, of a multi-server system with independent and identically distributed (i.i.d.) message arrival and server interruption processes. A single-server model with an i.i.d. arrival and a correlated on/off server interruption process is considered by Yang and Mark [8] and Bruneel [11]. The on- and off-times are assumed to be a series of i.i.d. shifted geometric random variables in the former, whereas the on- and off-times are modeled as a series of generally distributed i.i.d. random variables in the latter contribution. The only restriction is that the probability generating function (pgf) describing the lengths of the on-times must be rational. All these models have a fixed message length of one cell in common, implying that the service time equals one slot. Models with generally distributed service times [12–14] are rather scarce. Bruneel [12] investigates a discrete-time single-server queueing system with generally distributed service times but without interruptions. These results are extended to systems subjected to uncorrelated [13] and 2-state Markov-correlated [14] service interruptions. The current contribution extends these results in that it models the server interruptions as an on–off-process with geometrically distributed on-times and generally distributed off-times. In addition, a new service strategy called p-RAI is introduced, as we will see later on. The outline is as follows. The next section is concerned with a detailed description of the system under consideration, whereas the analysis of this system is presented in the two subsequent sections. In Section 3, expressions for the pgf’s of the effective service time of a message for the different service strategies under consideration are derived. These results then enable one to obtain expressions for the pgf of the buffer contents at different time epochs, of the unfinished work and message delay, and of the lengths of busy and idle periods as demonstrated in Sections 4–6, respectively. As an application, performance of the different priority classes in a multi-class priority queue is studied in Section 7. Finally, we present some numerical examples and draw conclusions in Sections 8 and 9, respectively. 2. Model We consider a discrete-time system, i.e., time is divided into constant length intervals called slots. During each of these slots, messages arrive in the system, are stored in a buffer, and served on a first-in, first-out basis. We assume that the buffer has an infinite capacity for storage of incoming messages. The number of messages arriving in the system during the consecutive slots are modeled as a series of non-negative i.i.d. random variables with a general common distribution. Let e(k) denote the probability mass function (pmf) of the number of message arrivals in a slot, then the corresponding pgf is defined as ∞ E(z) = e(k)zk . (1) k=0
Each of these messages is subdivided into multiple packets and each packet in turn consists of multiple cells, where one cell represents the amount of information that can be processed by the server during a slot. We refer to the number of cells in a packet as the length or service time of that packet. Analogously, the length in cells (in packets) of a complete message is defined as the number of cells (packets) of that message. The lengths in packets of the subsequent messages as well as the lengths of the consecutive packets are modeled as series of positive i.i.d. random variables, implying that the lengths of the consecutive messages in cells also constitute a series of positive i.i.d. random variables. Let C(z) (c(k), k > 0) denote the pgf (pmf) corresponding to the number of cells in the consecutive packets and let P(z) (p(k),
D. Fiems et al. / Performance Evaluation 55 (2004) 277–298
279
k > 0) denote the pgf (pmf) corresponding to the number of packets in the consecutive messages, then the pgf L(z) corresponding to the length of the consecutive messages in cells is given by L(z) =
∞
l(k)zk = P(C(z)),
(2)
k=1
where l(k) (k > 0) denotes the corresponding pmf. Service of messages (and their cells) is synchronized with respect to slot boundaries, implying that service of a new message cannot start before the beginning of the slot following its arrival slot. A message leaves the system when the last cell of the message is served. As we consider a single-server system, at most one cell can be served during a slot. However, for example, due to maintenance or servicing of higher-priority customers—the server is not always available. This server availability is modeled as a sequence of A-periods (available or on-periods) and B-periods (blocked or off-periods), where the lengths of the consecutive A- and B-periods are modeled as two independent series of i.i.d. random variables with a common (shifted) geometric and a common general distribution, respectively. If A(z) and B(z) denote the common pgf’s corresponding to the lengths of the consecutive A- and B-periods, respectively, then B(z) (b(n), n > 0) is a general pgf (pmf) whereas A(z) is given by A(z) =
(1 − α)z 1 − αz
(3)
with α the probability that an A-period continues after an A-slot. If µB denotes the mean B-period length, then for further use, we define σ as the probability that an arbitrary slot is an A-slot: σ=
1 . 1 + (1 − α)µB
(4)
Due to the fact that the messages consist in general of more than one packet, and packets consist in general of more than one cell, three operation modes can be considered. After a server interruption has occurred (i.e., after a B-period), the system can either resume service of the interrupted message with the next cell, can repeat service of the interrupted packet, or can repeat service of the complete message. We refer to these modes by continue-after-interruption mode, partial repeat-after-interruption mode and repeat-after-interruption mode (CAI, p-RAI and RAI), respectively. Note that the subdivision of messages into packets does not influence queueing behavior for CAI and RAI, as there are no packet-based service repetitions in either mode. In the subsequent sections, the superscripts CAI, p-RAI and RAI are used to differentiate between the modes where necessary. 3. Effective service times In a first step we derive expressions for the pgf’s of the effective service times of messages. The effective service time of an arbitrary message is defined as the time period elapsed (expressed in slots) between the beginning of the slot during which the first cell of a message enters the service unit, and the end of the slot during which the last cell of the message is served. In other words, the effective service time of a message includes the slots during which the server is interrupted, and in case of p-RAI and RAI, the slots required for repeating service of certain cells. Due to the nature of the output process and the message and packet length distributions, the effective service times of consecutive messages also constitute a series
280
D. Fiems et al. / Performance Evaluation 55 (2004) 277–298
of independent positive random variables, with distributions only depending on the state of the server— described by the availability of the server (A or B) together with the number of remaining B-slots in case the server is unavailable—during the slot preceding the start of the effective service time of the message and on the operation mode under consideration. This implies that once we know the pgf’s of the effective service times for the different operation modes, the evaluation of the system under consideration reduces to the evaluation of an equivalent system without server interruptions but with (state-dependent) service times given by the effective service times. 3.1. Continue-after-interruption mode CAI Let sk,A (n) denote the probability that the effective service time of a message of length k (in cells) equals n slots given that the slot preceding the effective service time is an A-slot. The continue-after-interruption mode is a memoryless operation mode, in the sense that from a system point of view, once the first cell of a message of length k has been served, there is no difference between servicing the remaining k − 1 cells of this message and servicing a new message of length k − 1. Therefore, conditioning on the state of the server during the first slot of the effective service time yields CAI sk,A (n)
=
CAI αsk−1,A (n
− 1) + (1 − α)
∞
CAI b(j)sk−1,A (n − j − 1)
(5)
j=1 CAI for n ≥ k and for k > 1 whereas for n < k and k > 1 this probability equals 0. Let Sk,A (z) denote the CAI conditional pgf corresponding to sk,A (n), then, using standard z-transform manipulations, Eq. (5) easily transforms into CAI CAI Sk,A (z) = (αz + (1 − α)zB(z))Sk−1,A (z)
(6)
CAI for k > 1. Clearly, Eq. (6) is also valid for k = 1 if one defines S0,A (z) = 1, i.e., a zero-length message requires no service time. Eq. (6) then easily yields explicit expressions for the effective service time of a message conditioned on the message length and given that the server was available during the slot preceding the effective service time. Summation over all possible message lengths with respect to their probabilities then yields following expression for the pgf of the effective service time of a random message given that the server was available during the slot preceding the effective service time:
SACAI (z) = L(αz + (1 − α)zB(z)).
(7)
Finally, taking the appropriate derivatives of (7) yields expressions for the various moments of the corresponding random variable. In particular, mean and variance are given in Appendix A. 3.2. Repeat-after-interruption mode The memoryless property that was used in the previous section is not valid in case of RAI as the server has to completely repeat service of the message after an interruption. Again, consider an arbitrary slot that is part of a message’s effective service time. We define the remaining service time of a message as the number of slots that are necessary to complete service of a message in case there would be no interruptions. It is clear that in case of RAI (as opposed to CAI), the remaining service time for a particular message is not a decreasing function in time, as after an interruption this value equals the message length
D. Fiems et al. / Performance Evaluation 55 (2004) 277–298
281
(in cells) again. Analogously, the remaining effective service time is defined as the number of slots it will effectively take to complete service (including interruptions and repetitions of service) at a certain point in time during the effective service time. RAI Let sk,l,A (n) denote the probability that the remaining effective service time of a message of length k equals n slots given that the remaining service time equals l slots and that the slot preceding the remaining effective service time is an A-slot. Conditioning on the state of the server during the first slot of the remaining effective service time then yields RAI sk,l,A (n)
RAI αsk,l−1,A (n
=
− 1) + (1 − α)
∞
RAI b(j)sk,k−1,A (n − j − 1)
(8)
j=1 RAI for k, l > 1 and for n ≥ l, whereas the latter probability equals 0 for k, l > 1 and n < l. Let Sk,l,A (z) denote the corresponding conditional pgf, then RAI RAI Sk,l,A (z) = αzSRAI k,l−1,A (z) + (1 − α)zB(z)Sk,k−1,A (z)
(9)
RAI for k, l > 1. It is easy to verify that the latter equation remains valid for l = 1 by defining Sk,0,A (z) = 1, i.e., if there are no more cells to send, the service ends in the current slot with probability 1. The former equation is a first order linear recursive equation and therefore easily solved. Substitution of l = k − 1 RAI then determines the unknown function Sk,k−1,A (z). In particular the pgf of the complete effective service time conditioned on the length of the message and the state of the server during the slot preceding the effective service is then given by RAI Sk,k,A (z) =
(αz)k−1 (1 − αz)(αz + (1 − α)zB(z)) 1 − αz − (1 − αk−1 zk−1 )(1 − α)zB(z)
(10)
for k > 1. One can easily verify that this expression remains valid for the trivial case of single-slot service times (k = 1). Summation over all possible message lengths (in cells) with respect to the message length probabilities then yields the pgf of the effective service time given that the server is available during the preceding slot: SARAI (z)
=
∞
RAI l(k)Sk,k,A (z).
(11)
k=1
Note that this expression is in general not explicit due to the infinite sum. The moment-generating property of pgf’s however, allows one to determine the various moments of the effective service time explicitly by evaluation of the appropriate derivatives of the pgf for z = 1. In particular, mean and variance are given in Appendix A. 3.3. Partial repeat-after-interruption mode In the partial RAI operation mode, service of each interrupted packet is repeated. Therefore, (10) also denotes the pgf of the effective service time of a packet of length k given that the server is available during the slot preceding the packet’s service. Availability of the server during the slot preceding the effective service time implies that each packet’s service is preceded by an A-slot as the last slot of each packet’s service is clearly an A-slot. Therefore, the pgf of the effective service time in case of p-RAI, under the
282
D. Fiems et al. / Performance Evaluation 55 (2004) 277–298
assumption that the server is available in the slot preceding the effective service time, is given by ∞ p-RAI RAI SA (z) = P c(k)Sk,k,A (z)
(12)
k=1 RAI (z) given by (10). with Sk,k,A As with RAI, this expression is in general not explicit though, again, explicit expressions for the various moments are easily obtained using the moment-generating property. Mean and variance are given in Appendix A.
3.4. Remarks Clearly, the server is not always available during the slot that precedes the effective service time. Therefore, let SB,m (z) denote the pgf of the effective service time of a random message given that the server is blocked during the slot preceding the effective service and given that the server remains blocked for another m slots after this slot (the server operates in one of the modes under consideration). Consider now the decomposition of the effective service time of a message in two components: the number of slots until the first non-interrupted slot (i.e., the effective service of the first cell of the message) and the remaining effective service time. Both components are independent random variables. It is clear that the first component (and its pgf) does not depend on the operation mode whereas the second component does not depend on the state of the server during the slot preceding the effective service as the last slot of the first component is by definition an A-slot. Let XA (z) and XB,m (z) denote the pgf’s of the first component given the state during the slot preceding the effective service and let Y(mode) (z) denote the pgf of the second component only depending on the operation mode. Then SA (z) = XA (z)Y(mode) (z),
SB,m (z) = XB,m (z)Y(mode) (z)
with XA (z) = αz + (1 − α)zB(z),
XB,m (z) = zm+1 .
Elimination of Y(mode) (z) in the equations above then yields SB,m (z) =
zm SA (z). α + (1 − α)B(z)
(13)
Eqs. (7), (11) and (12) also imply that whereas for CAI the nth moment of the effective service time depends on the moments of the underlying message length distribution up to and including order n, this is not the case for RAI and p-RAI. For the latter operation modes, the nth moment depends on the complete message length distribution (in cells) or on the complete packet length distribution together with the moments of the message length distribution in packets, respectively. Let us now assume the existence of all moments of the B-periods and assume that α is nonzero. For CAI, the existence of the nth moment of the message length in cells then implies the existence of the nth moment of the effective service time, whereas this is not the case for RAI and p-RAI operation modes. Let RL denote the radius of convergence of the pgf L(z). Then, one can verify that for RAI the nth moment exists if α−n < RL and does not exist if α−n > RL . For α−n = RL , the existence depends on the behavior of L(z) and its derivatives on their common radius of convergence. In the case of p-RAI, the existence of
D. Fiems et al. / Performance Evaluation 55 (2004) 277–298
283
the nth moment requires the existence of the nth moment of the message length distribution in packets and the existence of the nth moment of the effective service times of the packets. The latter condition is similar to the condition for RAI as all packets are served according to the RAI operation mode, i.e., comparison of α−n with RC —the radius of convergence of C(z)—yields an additional condition for the existence of the nth moment of the effective service time in case of the partial RAI operation mode. The additional condition for RAI and p-RAI also implies, that for finite radii of convergence and given α, −1/2 only a finite number of moments exist. In particular, one can easily verify that for α ∈ (R−1 ) for RAI L , RL −1/2 −1 and for α ∈ (RC , RC ) for p-RAI, the respective effective service time distributions are heavy-tailed. Finally note that the incorporation of properties of both CAI and RAI in the partial RAI mode, can also be illustrated by the fact that CAI and RAI can be regarded as boundary cases for the p-RAI operation mode. Whereas CAI can be regarded as p-RAI with single-cell packets, RAI can be regarded as p-RAI with single-packet messages. 4. Buffer contents We now use the results of the preceding section to establish expressions for the pgf of the buffer contents, i.e., the number of messages present in the system, at message departure times and random slot boundaries. Since the effective service time of a message includes interruptions and possible service repetitions of packets or of the complete message in case of p-RAI and RAI, respectively, results of the previous section allows a unified analysis for all three operation modes. 4.1. At message departure times Let un denote the buffer occupancy at the beginning of the slot following the departure slot of the nth message, i.e., at the departure time of the nth message. For positive un , service of the (n + 1)th message can start immediately as this message is already present in the system. Therefore, as the previous slot was an A-slot since there was a message departure, it will take sA slots to the next departure, where sA denotes the random variable representing the effective service time of a message given its effective service is preceded by an A-slot, and whose pgf is given by (7), (11) or (12) depending on the operation mode under consideration. The buffer occupancy un+1 is then given by sA un+1 = un − 1 + ej for un > 0 (14) j=1
with ej the number of messages arriving in the system during the jth slot of the effective service time of the (n + 1)th message. If, on the other hand, the buffer is empty after the departure of the nth message, service of the next message cannot start immediately. Let w denote the first slot following the departure slot during which one or more messages arrive in the system, and let ew and tw denote the number of arrivals and the state of the server during this slot, respectively. As service of the (n + 1)th message starts in the slot following slot w and its effective service time is described by the random variable stw , un+1 is given by un+1 = ew − 1 +
stw j=1
ej
for un = 0
(15)
284
D. Fiems et al. / Performance Evaluation 55 (2004) 277–298
with ej the number of messages arriving in the system during the jth slot of the effective service time of the (n + 1)th message. As the number of message arrivals during consecutive slots constitute a series of i.i.d. random variables, the common pgf of the ej ’s in (14) and (15) equals E(z). Furthermore, as the only distinction regarding the number of arrivals between a random slot and the slot w is that we are certain there arrives at least one message in the system during slot w, the pgf of ew is given by Ew (z) =
E(z) − E(0) . 1 − E(0)
(16)
that the kth slot following an A-slot is a B-slot followed by Now, let qk,B,n denote the probability ∞ ∞ k n another n B-slots, and let QB (x, z) = k=1 n=0 qk,B,n x z denote the corresponding z-transform. Analogously, let qk,A kdenote the probability that the kth slot following an A-slot is an A-slot and let QA (x) = ∞ k=1 qk,A x denote the corresponding z-transform. Note that neither QA (x) or QB (x, z) are (joint) pgf’s. Then, conditioning on the number of slots since the last preceding A-slot yields qk,A = αqk−1,A + (1 − α)
k−1
b(j)qk−j−1,A ,
qk,B,n = (1 − α)
j=1
n+k
b(j)qk+n−j,A
(17)
j=n+1
for k ≥ 1 and for n ≥ 0, whereas q0,A = 1 and q0,B,n = 0 for all n ≥ 0. Expressions for QA (x) and QB (x, z) then follow from the former equations using some standard z-transform manipulations: QA (x) =
αx + (1 − α)xB(x) , 1 − αx − (1 − α)xB(x)
QB (x, z) = (1 − α)x(QA (x) + 1)
B(x) − B(z) . x−z
(18)
Due to the nature of the arrival process, slot w (i.e., the first slot with at least one message arrival after the departure of the nth message) is the kth slot (k ≥ 1) after the last departure slot with probability g(k): g(k) = E(0)k−1 (1 − E(0)).
(19)
Furthermore, this slot is an A-slot (B-slot followed by n B-slots) with probability qk,A (qk,B,n ) as the server is available during the last slot of the effective service time of the preceding message. Summation over all possible values of k with respect to the probabilities g(k) yields the probabilities γA and γB,n that the server is available during slot w or remains unavailable for another n slots following slot w, respectively. Let ΓB (z) denote the z-transform of γB,n then γA =
1 − E(0) QA (E(0)), E(0)
ΓB (z) =
1 − E(0) QB (E(0), z). E(0)
(20)
Now assume the existence of a stationary distribution of the buffer contents, i.e., U(z) = Uk+1 (z) = Uk (z). From (13)–(15) and (20), it then follows that the pgf of the buffer occupancy at departure times is given by SA (E(z)) ΓB (E(z))Ew (z) U(z) = U(0) −1 , (21) γA Ew (z) + z − SA (E(z)) α + (1 − α)B(E(z)) where SA (z) is given by (7), (11) or (12) depending on the operation mode.
D. Fiems et al. / Performance Evaluation 55 (2004) 277–298
285
The unknown parameter U(0) in (21) can then be determined by applying the normalization condition U(1) = 1, leading to σ U(0) = (1 − E(0))(1 − µE µSA ) (22) µE γA with µE the mean number of messages arriving in a slot, and µSA given by (A.1), (A.3) and (A.5) for CAI, RAI and p-RAI operation modes, respectively. Substitution of the former equation into (21) then yields the pgf of the buffer occupancy at departure times: U(z) =
σ(1 − µSA µE ) E(z) SA (E(z)) . µE QA (E(z)) SA (E(z)) − z
(23)
4.2. Random slot boundaries Let N(z) denote the pgf of the (stationary) buffer contents at random slot boundaries and assume that there are no bulk arrivals (all arrivals occur at distinct epochs within slots). According to Bruneel [12], the buffer contents at random slot boundaries then relates to the buffer contents at arrival times V(z) as N(z) =
V(z)(z − 1)µE E(z) − 1
(24)
for discrete-time queuing systems with i.i.d. arrivals. The latter follows from the observation that the queue contents at a random (tagged) customer’s arrival epoch is the sum of the queue contents at the beginning of this customer’s arrival slot and the number of customers arriving in the same slot but before the tagged customer. Due to the i.i.d. nature of the arrival process, the queue contents at random slot boundaries and the queue contents at the beginning of a random customer’s arrival slot share a common distribution. Further, a simple counting argument yields that the pmf of the number of customers arriving in the same slot of a random customer is given by ec (n) =
ne(n) . µE
(25)
The probability eb (n) that there are n customer arrivals before a tagged customer in this customer’s arrival slot and the corresponding pgf Eb (z) are then given by eb (n) =
∞ ec (k) k k=n+1
(26)
and Eb (z) =
E(z) − 1 , (z − 1)µE
(27)
respectively. Eq. (24) then follows from V(z) = N(z)Eb (z). Again under the assumption that there are no bulk arrivals, the buffer contents at arrival and departure times have the same distribution (see, e.g., [15]), or equivalently, V(z) = U(z), yielding N(z) =
U(z)(z − 1)µE . E(z) − 1
(28)
286
D. Fiems et al. / Performance Evaluation 55 (2004) 277–298
As both buffer contents at random slot boundaries and buffer contents at message departure times do not depend on the exact arrival epochs within the consecutive slots, the former expression remains valid for systems with possible bulk arrivals. 4.3. Remarks In the former we assumed the existence of stationary distributions for the relevant random variables. The latter exist if N(0) > 0,
(29)
or equivalently, if the effective system load ρ is less then the number of servers: ρ = µSA µE < 1.
(30)
Substitution of (A.1), (A.3) or (A.5) then yields explicit conditions for the existence of the stationary distribution of the buffer contents for CAI, RAI and p-RAI, respectively. The existence of a stationary distribution however does not imply the existence of stationary moments. Let us assume that all moments of the given distributions (number of arrivals, length of the messages in packets, length of the packets in cells and length of the B-periods) exist. Taking the first derivative of (23) or (28) reveals (see Appendix A) that the mean buffer contents in both cases depends on both mean and variance of the effective service time, or in general, taking the appropriate derivatives reveals that the nth moment of the stationary buffer contents is a function of the moments of the effective service times up to order (n+1). This implies that where for CAI—due to our initial assumptions—the equilibrium condition guarantees a finite mean buffer occupancy, this is not the case for RAI and p-RAI. In the latter cases, the nth moment of the buffer occupancy distribution is finite as long as both the equilibrium condition and the condition for having a finite (n + 1)th moment of the effective service time for the operation mode under consideration are satisfied (cf. Section 3.4).
5. Unfinished work and message delay Let wk denote the unfinished work at the beginning of slot k, i.e., the number of slots it would take to empty the buffer under the assumption that there are no new message arrivals. Note that this definition implies that the unfinished work takes the interruptions and possible service repetitions into account. Consider now the unfinished work wk+1 at the beginning of slot (k + 1). These random variables are related as ek wk+1 = (wk − 1)+ + sj , (31) j=1
where ek denotes the number of arriving customers in slot k and sj the effective service time of the jth customer arriving in slot k. That is, the unfinished work at the beginning of slot (k + 1) equals the unfinished work at slot k, diminished with the work done in slot k (if there is any) and augmented with the additional work arriving in slot k. For each message arriving in slot k, an additional number of slots, equal to its effective service time is necessary to completely empty the system.
D. Fiems et al. / Performance Evaluation 55 (2004) 277–298
287
If the system is not empty at the beginning of slot k, the effective service times of all messages entering the system in slot k are preceded by an A-slot as the server was available during the last slot of the preceding message’s effective service time. This is also the case for all but the first message entering the system during slot k if the system is empty at the beginning of slot k. The effective service time distribution of the first message then depends on the state of the server during slot k. Let γA,k and γB,n,k denote the probability that slot k is an A-slot or a B-slot followed by another m B-slots, respectively, given that the buffer is empty during slot k. We now get E(SA (z)) + Wk (0)E(0) z ∞ SB,m (z) + Wk (0) γA,k + γB,m,k (E(SA (z)) − E(0)). SA (z) m=0
Wk+1 (z) = (Wk (z) − Wk (0))
(32)
Now assume the existence of the stationary distribution, i.e., whenever the equilibrium condition (30) is satisfied—and let W(z) denote the corresponding pgf, W(z) = Wk (z) = Wk+1 (z). As the unfinished work remains zero for k slots with probability g(k), one may prove that a random slot during which the unfinished work equals zero is the kth slot of such a period with probability g(k) as well. This implies that the state of the server during a random slot where the unfinished work equals zero is an A-slot with probability γA or a B-slot followed by another m B-slots with probability γB,m . As an empty buffer implies zero unfinished work and vice versa, i.e., W(0) = N(0), the pgf of the unfinished work in equilibrium is given by W(z) = with
σ zH(z) − E(SA (z)) (1 − µE µSA ) γA z − E(SA (z))
H(z) = E(0) + (E(SA (z)) − E(0)) γA +
(33) ΓB (z) . α + (1 − α)B(z)
(34)
Now consider a particular (tagged) message arrival. The message delay d is defined as the number of slots between the end of the arrival slot and the end of the departure slot of this message. Let wt denote the unfinished work at the beginning of this message’s arrival slot and let eb denote the number of messages arriving in the same slot but before the tagged message, then +
d = (wt − 1) +
e b +1
sj
(35)
j=1
with sj the effective service time of the jth message arriving in the system in the tagged message’s arrival slot. The pgf of the unfinished work at the beginning of the tagged message’s arrival slot is given by (33) due to the i.i.d. nature of the arrival process. Furthermore, the pgf Eb (z) corresponding to eb was derived in Section 4. If the unfinished work wt is nonzero, all effective service times sj are preceded by an A-slot as service of these messages starts immediately after service of the preceding message. This is also the case for all sj but s1 when the queue is empty at the beginning of the tagged message’s arrival slot. For the latter the
288
D. Fiems et al. / Performance Evaluation 55 (2004) 277–298
preceding slot is again either an A-slot or a B-slot followed by another m B-slots with probability γA and γB,m , respectively. If D(z) denotes the pgf corresponding to d, then ∞ 1 D(z) = (W(z) − W(0))Eb (SA (z))SA (z) + W(0)Eb (SA (z)) γA SA (z) + γB,m SB,m (z) , z m=0 (36) which further simplifies to σ z E(SA (z)) − 1 SA (z) D(z) = (1 − µE µSA ) . µE QA (z) E(SA (z)) − z SA (z) − 1
(37)
The moment-generating property of pgf’s then allows the calculation of explicit expressions for the moments of the message delay. In particular, an expression for the mean message delay is given in Appendix A. 6. Idle and busy periods We now consider idle and busy periods of the system under investigation. The system is idle during a slot whenever the server is available (an A-slot) and there is no message in service (empty queue at the beginning of the slot). The system is busy whenever the system is not idle. One can easily verify that the consecutive idle and busy periods constitute two independent series of i.i.d. random variables due to both the i.i.d. nature of the arrival process and the memoryless property of the geometrically distributed A-periods. The latter observations also imply that the system remains idle with constant probability αE(0), which implies that the consecutive idle periods are geometrically distributed, i.e.: (1 − αE(0))z PI (z) = , (38) 1 − αE(0)z where PI (z) denotes the common pgf of the consecutive idle periods. Consider now the steady-state pgf of the consecutive busy periods. First of all, note the system under consideration with FIFO service, and the equivalent system with LIFO service, have the same busy period distribution. Let us therefore for one moment consider the equivalent system with the LIFO service discipline. We define the sub-busy period of a tagged message as the number of slots between the beginning of the first service slot of this message, and the beginning of the slot where the previous message starts service in the case of non-preemptive LIFO service (or whenever the buffer empties when there is no previous message). That is, the sub-busy period includes service of the tagged message, service of the arrivals during service of the tagged message, etc. Let RA and RB,k denote the length of the sub-busy period of a tagged message, given that the slot preceding the sub-busy period is an A-slot or a B-slot followed by another j B-slots, respectively, then RA = SA +
Ej SA j=1 i=1
Ri,j ,
RB,k = SB,k +
SB,k Ej
Ri,j ,
(39)
j=1 i=1
where Ej denotes the number of arrivals during the jth slot of the tagged message’s effective service time and Ri,j the sub-busy period of the ith arriving message in the jth slot of the tagged message’s effective
D. Fiems et al. / Performance Evaluation 55 (2004) 277–298
289
service time. Let RA (z) and RB,k (z) denote the pgf’s corresponding to RA and RB,k , respectively, and note that for all i and j, RA (z) also denotes the pgf of Ri,j as these sub-busy periods are always preceded by an A-slot. Then RA (z) = SA (zE(RA (z))),
RB,k (z) = SB,k (zE(RA (z))).
(40)
The latter expressions define the pgf’s of the sub-busy periods implicitly and allow the derivation of explicit expressions for the moments of these random variables by evaluation of the appropriate derivatives for z = 1. Let inter-idle time denote the number of slots between two consecutive idle slots and let F denote the inter-idle time given that there are no arrivals during the first of these idle slots. It is clear that F = 0 whenever the A-period continues, and includes the length of a B-period whenever this is not the case. This inter-idle time also includes the sub-busy periods of all arrivals, if any, during this B-period. If there are no arrivals, the next idle-slot immediately follows the B-period whereas whenever this is not the case the inter-idle time may continue with a new B-period. As the buffer is empty, the server available and as there are no arrivals during the last slot of the sub-busy period of the last arrival, an additional number of slots F ∗ —independent of the length of the preceding part of the inter-idle time—with the same stochastic properties as the inter-idle time F is required. That is, A-period continues, 0, (41) F = B, B-period starts, EB = 0, EB B + j=1 Rj + F ∗ , B-period starts, EB > 0, where EB denotes the number of arrivals during the B-period B, and where Rj denotes the sub-busy period of the jth arrival during this B-period. Clearly, as sub-busy periods always end with an A-slot, RA (z) is the pgf of all but the first of the random variables Rj , whereas the pgf of R1 equals RB,0 (z). Let F(z) denote the common pgf corresponding to F and F ∗ . Then, from (41), RB,0 (z) F(z) = α + (1 − α)B(zE(0)) + (1 − α)(B(zE(RA (z))) − B(zE(0))) F(z), (42) RA (z) or equivalently: F(z) = α + (1 − α)B(zE(RA (z))).
(43)
Consider now a random busy period. This period equals the sum of the sub-busy periods of all arrivals in the slot preceding the busy period and the inter-idle time F given that this sum is strictly positive: E(RA (z))F(z) − αE(0) PB (z) = . (44) 1 − αE(0) Evaluation of the appropriate derivatives of Eqs. (40) and (44) for z = 1 then yields explicit expressions for the various moments of the busy periods. 7. Application As an application, we consider a preemptive multi-class priority system with i.i.d. arrivals and general message length distributions for all priority classes. Arrivals and service times in each class are assumed
290
D. Fiems et al. / Performance Evaluation 55 (2004) 277–298
to be independent from the latter quantities in other classes. We consider both preemptive-resume and preemptive-repeat—repetition of complete messages or packets—priority scheduling, and the scheduling discipline can be chosen independently from class to class allowing maximal flexibility. Let class 1 denote the class of messages with highest priority. As preemptiveness implies that lower priority classes do not influence performance of higher priority classes, class 1 performance is easily assessed by means of a standard GI-G-1 queueing model (see, e.g., [12], or consider the present model in absence of interruptions). Consecutive busy and idle periods of a discrete-time GI-G-1 queueing system constitute two independent series of i.i.d. random variables with general and geometric distributions, respectively (see again, e.g., [12] or the present model in absence of interruptions), implying that class 2 messages perceive server availability as an on/off process with generally distributed B-times and geometrically distributed A-times. This implies that the model under consideration can be used to assess performance of class 2 messages. The operation modes CAI and RAI correspond to preemptive-resume and preemptive-repeat without resampling priority scheduling, respectively [16]. The p-RAI mode can be considered as an intermediate case between both priority scheduling types and allows one to study the influence of packetizing in a preemptive priority system. A similar approach is also possible for lower priority classes if more than two classes are involved. In the previous section it was assumed that busy periods include server unavailability due to interruptions, i.e., busy periods also include higher priority server occupancy. Therefore, idle and busy periods of this model under investigation still constitute two independent series of i.i.d. random variables with general and geometric distributions, respectively, i.e., performance assessment of class k messages requires the iterative calculation of the pgf’s of idle and busy periods up to class k − 1, where the busy period distribution of class k − 1 generates the service interruptions of class k. For each class we either consider the CAI, RAI or p-RAI service discipline depending on the priority system under investigation. 8. Numerical example As a numerical example, we consider a two-class preemptive priority system, where both high (class 1) and low-priority (class 2) message arrivals are Poisson-distributed, i.e., E1 (z) = eλ1 (z−1) ,
E2 (z) = eλ2 (z−1)
(45)
and where the high-priority message lengths are geometrically distributed: (1 − θ)z L1 (z) = . (46) 1 − θz We assume that also the low-priority message lengths in packets are geometrically distributed as well as the packet lengths, i.e., (1 − βp )z (1 − βc )z P2 (z) = , C2 (z) = . (47) 1 − βp z 1 − βc z As a consequence, the message lengths in cells is also geometrically distributed: (1 − β)z L2 (z) = 1 − βz with β = βc + βp − βc βp .
(48)
D. Fiems et al. / Performance Evaluation 55 (2004) 277–298
291
The mean and variance of the effective service times (given that the high-priority queue is empty during the slot preceding the effective service) of the low-priority messages are depicted versus the high-priority load ρ1 = λ1 /(1 − θ) in Fig. 1(a) and (b), respectively. We considered single-slot high-priority messages (θ = 0) and a constant mean low-priority message length in cells equal to 10 cells. Furthermore, for p-RAI we considered the case where the packets are relatively long (mean packet length equal to five cells) as well as the case where these are relatively short (mean packet length equal to two cells). Without high-priority load, all operation modes operate identical. For increasing load, mean and variance of the effective service time increase. As expected, CAI outperforms p-RAI which in turn outperforms RAI. Whereas for CAI, as long as the high-priority load does not consume the complete network capacity (ρ1 < 1), mean and variance remain finite, this is not the case for the other operation modes. The asymptotes for the latter operation modes are determined by the radius of convergence of C1 (z) and L1 (z) for p-RAI and RAI, respectively. Note, that for these operation modes there is an interval for which the mean effective service time is finite whereas the variance of these random variables are infinite, i.e., the effective service time distributions are heavy-tailed in this interval. Fig. 2(a) and (b) depict the mean low-priority buffer contents for p-RAI (at random slot boundaries) versus the relative packet length p for single-slot high-priority messages and different high-priority loads (equal to 0.25 (1), 0.1 (2), 0.05 (3) and to 0 (4)) and for fixed high-priority load equal to 0.25 and different high-priority message lengths (equal to 1 (1), 5 (2), 10 (3) and 20 (4)), respectively. In both cases, we assume a fixed mean low-priority message length equal to 10 cells. The relative packet length p is defined as the ratio of the mean packet length in cells versus the mean message length in cells, i.e., p = (1 − β)/(1 − βc ). This definition implies that CAI operation can be extracted for p = (1 − β), i.e., p = 0.1—whereas RAI operation mode can be extracted for p = 1. It is obvious that a decreasing packet size implies a decreasing mean buffer contents, which is illustrated in Fig. 2(a). Furthermore, for high high-priority load (plots (1) and (2)), guaranteeing a finite mean buffer contents implies an upper bound for the mean packet size—and as a consequence in case of RAI an unstable queue—whereas this is not the case for lower high-priority loads (plots (3) and (4)). Fig. 2(b) depicts more complex behavior. For example, comparing plots (3) and (4), it is clear that for relative short low-priority packets, performance is better for shorter high-priority messages, whereas for longer low-priority packets performance is better for longer high-priority messages. As longer high-priority messages—given a constant load—imply longer A- and B-periods, interruptions during service are less frequent. For long low-priority packet sizes this implies a better performance. However, for short low-priority packets, interruptions during service are already scarce. The increasing burstiness in the interruption process of low-priority packets, introduced by the longer high-priority messages, does not significantly decrease the number of interruptions during service but does increase the waiting times, implying worse performance. The latter observations are also clear from Fig. 3(a) where the mean low-priority message delay is depicted versus the mean high-priority message length µL1 for fixed high-priority load equal to 40%. The low-priority traffic is characterized by the same parameters as in Fig. 1(a) and (b). The low-priority arrival rate λ2 is fixed and equal to 0.05 for all plots. For CAI, the mean message delay increases linearly with the mean high-priority message length, as longer low-priority queues are built up during longer high-priority busy periods caused by longer high-priority message lengths (additional burstiness in the interruption process). Whenever service repetitions are necessary, additional burstiness both causes less service repetitions and longer build-up periods. For longer high-priority message lengths, service repetitions are already scarce and the latter effect dominates whereas, the former effect may
292
D. Fiems et al. / Performance Evaluation 55 (2004) 277–298 100
80
A
60 µs
1
2
3
4
40
20
0 0
0.2
0.4
0.6
0.8
1
ρ1
(a) 1000
800 1
2
3
4
σ2s
A
600
400
200
0 0
(b)
0.2
0.4
0.6
0.8
1
ρ1
Fig. 1. Mean and variance of low-priority effective service times versus high-priority load for single-slot high-priority messages (θ = 0) and RAI (1), p-RAI with long packets (2), p-RAI with short packets (3) and CAI (4) operation modes.
D. Fiems et al. / Performance Evaluation 55 (2004) 277–298
293
50 45 40 35 1
2
3
µN
2
30 25 20 15 10 5
4 0 0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
0.9
1
p
(a)
14
12
1
2
3
8
µN
2
10
6
4
4
2
0 0.1
(b)
0.2
0.3
0.4
0.5
0.6
0.7
0.8
p
Fig. 2. p-RAI: mean low-priority buffer contents versus relative packet size for (a) variable high-priority load and single-slot high-priority messages and (b) constant high-priority load and variable high-priority message lengths.
294
D. Fiems et al. / Performance Evaluation 55 (2004) 277–298 1000
1
800
600 µD
2
2 3 4
400
200
0 10
20
30
40
50
(a)
60
70
80
90
100
L1
50 45 40 35
3
µL
1
30 25 20 15 10
2
5
1
0 0
(b)
0.2
0.4
0.6
0.8
1
p
Fig. 3. Mean low-priority message delay versus mean high-priority message length (a) and optimal mean high-priority message length versus relative packet size (b).
D. Fiems et al. / Performance Evaluation 55 (2004) 277–298
295
dominate for short high-priority messages. The mean low-priority message delay then reaches a minimal value for high-priority message lengths longer than one. However—as is illustrated in Fig. 3(b) where the optimal mean high-priority message length is depicted versus the packet size p for mean low-priority message lengths equal to 2 (1), 5 (2) and 10 (3)—this is only the case if the low-priority packet size is sufficiently high. For small mean packet sizes, the second effect may never dominate, implying that the optimal value for the mean high-priority message length equals one cell, i.e., as short as possible.
9. Conclusions Summarizing, we studied a discrete GI-G-1 queueing system subjected to interruptions generated by a renewal process. These interruptions are modeled using an on/off process with geometrically distributed on-times and generally distributed off-times. We investigated the behavior of three types of operation modes (CAI, p-RAI and RAI) and observed a substantial difference regarding their performance. In particular, regarding stability, we showed a completely different behavior depending on the service mode. We obtained explicit closed-form expressions for the mean and variance of the effective service times, as well as for the mean buffer contents at various time epochs and the mean message delay. As an application, we showed that the system under consideration can be used to evaluate queueing behavior of a single class in a multi-class priority system with i.i.d. arrivals and general service times, and illustrated this with some numerical examples.
Appendix A. Various moments The moment-generating property of pgf’s allows us to retrieve explicit expressions for various moments by evaluation of the appropriate derivatives for z = 1. Expressions for mean and variance of the effective service times for the different operation modes are provided as well as expressions for mean queue contents at departure epochs and random slot boundaries and mean message delay. A.1. Effective service times Let µSAmode and σS2mode denote mean and variance of a customer’s effective service time given that the A server is available during the slot preceding the effective service time. We then get for CAI: µL , (A.1) µSACAI = σ σS2CAI = A
σL2 + (1 − α)(αµ2B + σB2 )µL σ2
(A.2)
1 α (L(1/α) − 1), σ1−α
(A.3)
for RAI: µSARAI =
296
D. Fiems et al. / Performance Evaluation 55 (2004) 277–298
σS2RAI = A
2α2 L(1/α2 ) − α2 L(1/α)2 − ασ 2 ασ(1 − 2µB α)L(1/α) − 2L (1/α) + σ 2 (1 − α)2 σ(1 − α)
2 2 − α (1 − L(1/α)) σB + µB (α − 1 + L(1/α))
(A.4)
and for p-RAI: µS p-RAI = A
σS2p-RAI = A
µP α (C(1/α) − 1) , σ 1−α
µP α(1 − 2µB α)C(1/α)σ − 2µP C (1/α) α2 σP2 − αµP σ 2 + (1 − α)σ σ 2 (1 − α)2 α2 (σP2 − µP )C(1/α)2 − 2α2 σP2 C(1/α) + 2µP α2 C(1/α2 ) + σ 2 (1 − α)2 − C(1/α)(µ2B − σB2 )αµP − α(µ2B α − µ2B + σB2 )µP
(A.5)
(A.6)
by taking the appropriate derivatives of Eqs. (7), (11) and (12), respectively. Here µL (µP ) and σL2 (σP2 ) denote mean and variance of the message length in cells (in packets), respectively. A.2. Queue contents and message delay Taking the first derivative of (23) and (28), we get mean queue contents at departure epoch µU and mean queue contents at random slot boundaries µN , respectively: µ2E σS2A σE2 µE µB 1 − µE µE σσB2 ρ µU = + + (1 − α) + − (1 − α)(1 − ασµB ) − , 2µE (1 − ρ) 2(1 − ρ) 2 2 2 2 (A.7) µN =
µ2E σS2A µSA σE2 µE σσB2 µE µB ρ + + (1 − α) + − (1 − α)(1 − ασµB ) . 2(1 − ρ) 2(1 − ρ) 2 2 2
(A.8)
Similarly, mean message delay follows from (37): µD =
µE σS2A µSA σE2 µB σσ 2 µS + + (1 − α) B + A − (1 − α)(1 − ασµB ) . 2µE (1 − ρ) 2(1 − ρ) 2 2 2
(A.9)
The latter also follows from Eq. (A.8) and the discrete-time equivalent of Little’s result [17]. A.3. Idle and busy periods Finally, mean and variance of idle and busy periods follow from (38) and (44): µPI =
1 , 1 − αE(0)
(A.10)
σP2 I =
αE(0) , (1 − αE(0))2
(A.11)
D. Fiems et al. / Performance Evaluation 55 (2004) 277–298
µPB =
σP2 B =
ρ + (1 − α)µB , (1 − ρ)(1 − αE(0)) σE2 µ2SA + σS2A µE
297
(A.12)
(1 − α)σB2 σ(1 − ρ)3 (1 − αE(0)) (1 − ρ)2 (1 − αE(0)) ((1 − E(0))(1 − α)µ2B − 2µB E(0)(1 − α)ρ − ρ2 E(0))α + . (1 − ρ)2 (1 − αE(0))2 +
(A.13)
References [1] B. Doshi, Queueing systems with vacations—a survey, Queueing Syst. 1 (1986) 29–66. [2] H. Takagi, A survey of queueing analysis of polling models, in: Proceedings of the Third IFIP International Conference on Data Communication Systems and Their Performance, Rio de Janeiro, Brazil, June 22–25, 1987. [3] T. Takine, B. Sengupta, T. Hasegawa, An analysis of a discrete-time queue for broadband ISDN with priorities among traffic classes, IEEE Trans. Commun. 42 (2–4) (1994). [4] T. Takine, T. Hasegawa, The workload in the MAP/G/1 queue with state-dependent services: its application to a queue with preemptive resume priority, Stoch. Models 10 (1) (1994) 183–204. [5] J. Walraevens, B. Steyaert, H. Bruneel, Delay characteristics in discrete-time GI-G-1 queues with non-preemptive priority queueing discipline, Perform. Eval. 50 (1) (2002) 53–75. [6] F.A. Van der Duyn Schouten, S.G. Vanneste, Maintenance optimization of a production system with buffer capacity, Eur. J. Oper. Res. 82 (1995) 232–338. [7] J. Hsu, Buffer behavior with Poisson arrival and geometric output processes, IEEE Trans. Commun. 22 (1974) 1940–1941. [8] O.W.W. Yang, J.W. Mark, Performance analysis of integrated services on a single server system, Perform. Eval. 11 (1990) 79–92. [9] K. Laevens, H. Bruneel, Delay analysis for discrete-time queueing systems with multiple randomly interrupted servers, Eur. J. Oper. Res. 85 (1995) 161–177. [10] H. Bruneel, A general model for the behaviour of infinite buffers with periodic service opportunities, Eur. J. Oper. Res. 16 (1984) 98–106. [11] H. Bruneel, A general treatment of discrete-time buffers with one randomly interrupted output line, Eur. J. Oper. Res. 27 (1) (1986) 67–81. [12] H. Bruneel, Performance of discrete-time queuing systems, Comput. Oper. Res. 20 (1993) 303–320. [13] D. Fiems, B. Steyaert, H. Bruneel, Performance evaluation of CAI and RAI transmission modes in a GI-G-1 queue, Comput. Oper. Res. 28 (2001) 1299–1313. [14] D. Fiems, B. Steyaert, H. Bruneel, Analysis of a discrete-time GI-G-1 queueing model subjected to bursty interruptions, Comput. Oper. Res. 30 (2002) 139–153. [15] L. Kleinrock, Queueing Systems, vol. I, Theory, Wiley, New York, 1975. [16] L. Kleinrock, Queueing Systems, vol. II, Computer Applications, Wiley, New York, 1976. [17] D. Fiems, H. Bruneel, A note on the discretization of Little’s result, Oper. Res. Lett. 30 (2002) 17–18. Dieter Fiems was born in Ghent, Belgium, in 1973. He received an engineering degree at KAHO-St-Lieven and a post-graduate degree in Computer Science at Ghent University in 1997 and 1998, respectively. Since then, he is working as a Ph.D. student at the Department of Telecommunications and Information Processing at Ghent university, as a Member of the SMACS Research Group. His main research interests include discrete-time queueing models and stochastic modeling of IP and ATM networks.
298
D. Fiems et al. / Performance Evaluation 55 (2004) 277–298 Bart Steyaert was born in Roeselare, Belgium, in 1964. He received the degrees of Licentiate in Physics and Licentiate in Computer Science in 1987 and 1989, respectively, all from the University of Ghent, Belgium. Since January 1990, he has been working as a Researcher at the SMACS Research Group, Department for Telecommunications and Information Processing (TELIN), at the same university, in the context of various research projects and a long-term cooperation with the Alcatel Network Strategy Group (Antwerp). His main research interests include discrete-time queueing models, traffic control, and stochastic modeling of high-speed communications networks. He is author or co-author of approximately 80 publications in international journals and conferences.
Herwig Bruneel was born in Zottegem, Belgium, in 1954. He received the MS degree in Electrical Engineering, the degree of Licentiate 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 time Professor in the Faculty of Applied Sciences 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 modeling and analysis of communication systems, discrete-time queueing theory, and the study of ARQ protocols. He has published more than 200 papers on these subjects and is co-author of the book by H. Bruneel and B.G. Kim, “Discrete-Time Models for Communication Systems Including ATM” (Kluwer Academic Publishers, Boston, 1993). From October 2001 to September 2003, he has served as the Academic Director for Research Affairs at Ghent University.