MPE Mathematical Problems in Engineering 1563-5147 1024-123X Hindawi 10.1155/2018/3260428 3260428 Research Article The Single-Server Queue with the Dropping Function and Infinite Buffer http://orcid.org/0000-0002-0168-6919 Chydzinski Andrzej 1 Barczyk Marek 1 Samociuk Dominik 1 Cruz Frederico R. B. Institute of Informatics Silesian University of Technology Gliwice Poland polsl.pl 2018 9102018 2018 09 08 2018 13 09 2018 9102018 2018 Copyright © 2018 Andrzej Chydzinski et al. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

We present an analysis of queues with the dropping function and infinite buffer. In such queues, the arriving packet (job, customer, etc.) can be dropped with the probability which is a function of the queue size. Currently, the main application area of the dropping function is active queue management in routers, but it is applicable also in many other queueing systems. So far, queues with the dropping function have been analyzed with finite buffers only, which led to complicated, computationally demanding formulas. Assuming infinite buffers enabled us herein to obtain formulas in compact, easy to use forms. Moreover, a model with the infinite buffer can often be used as a good approximation of the real queue, in which the buffer is large. We start with noticing that the classic stability condition, ρ<1, cannot be used for queues with the dropping function and infinite buffer. For this reason, we prove a few new, easy to use conditions, which guarantee system stability or instability. Then we prove several theorems on popular performance characteristics, including the queue size, busy period, loss ratio, output rate, and system response time. Additionally, we derive a special, very important characteristic called the burst ratio, which may influence severely the quality of real-time multimedia transmissions. All the theorems are illustrated with numerical examples, demonstrating in particular how the system stability may be tested and how the shape of the dropping function may affect different performance characteristics.

National Science Centre 2017/25/B/ST6/00110
1. Introduction

The bufferbloat phenomenon, occurring in the contemporary Internet, consists in frequent overfilling of one or more buffers on the packet delivery path. It may cause significant performance deterioration of the network, especially in terms of the packet delivery time. This phenomenon has been diagnosed and described in several papers, (e.g., ), and the known remedy for it is an application of active queue management in Internet routers. This has been stated in the RFC 7567 document, from 2015, which begins with the following statement: “It presents a strong recommendation for testing, standardization, and widespread deployment of active queue management (AQM) in network devices to improve the performance of today’s Internet”.

Active queue management is based on preventive packet dropping, before the queue gets very long. Usually, an arriving packet is dropped with some probability, which is recomputed frequently using current or past system characteristics. There are several possible choices of characteristics that should be used to determine the dropping probability. One of the most popular choices is computing the dropping probability, d(n), as a function of the queue size, n. Function d(n) is called the dropping function.

In early propositions of the dropping-function-based AQMs, a fixed shape of d(n) was used in each dropping algorithm proposition. For instance, the linear dropping function was used in , the doubly linear one was used in , the exponential function was used in , the quadratic function was used in , the orthogonal polynomials were used in , and the cubic function was used in . The performance of those algorithms was studied mainly using discrete-event simulations.

The analysis based on the queueing theory research on queues with the dropping function was initiated with approximate solutions given in [10, 11] and followed by exact results , obtained for various traffic and service assumptions. In particular, in , an approximate analysis of the model with batch Poisson arrivals and linear dropping function was presented. In , an approximate solution of the model with general batch arrivals and exponential service was given. Exact solutions of models with single and batch Poisson arrivals and exponential services were given in . The system with Poisson arrivals and general distribution of the service time was solved in  in the steady state, while in  in transient case. In , the model with multiple service stations was studied. In [16, 17], systems with autocorrelated arrivals were considered, with and without batch arrivals, respectively. Finally, [18, 19] deal with a generalization of the model to the case with continuous packet volumes, continuous buffer capacity, and an acceptance function (rather than dropping function), which enqueues an arriving packet with probability that depends on the remaining buffer capacity.

Now, it has to be stressed that each model in the aforementioned papers has the finite buffer. The finite-buffer assumption seems reasonable; indeed, buffers in real switches and routers are finite. Unfortunately, analytical solutions of queueing models with the dropping function and the finite buffer are rather complex (see, e.g., ) and computationally demanding (see, e.g.,  for a discussion of this aspect). The reason of this is that the finite-buffer model does not enable simplification of some large, but finite sums are appearing in its solution. On the other hand, similar but infinite sums in the infinite-buffer model can be often simplify to compact formulas. This situation can be observed also in the classic queueing theory (i.e., without the dropping function); solutions of infinite-buffer models are simpler, than the solutions of their finite-buffer counterparts.

To the best of the authors knowledge, there are no published results on queueing systems with the dropping function and the infinite buffer. The purpose of this paper is to perform the analysis of such queueing systems.

There are at least two reasons to study analytically such queues. The first reason was already signalled above; we can expect results in a much simpler form, than in the infinite-buffer case. Indeed, as we will see in the paper, the obtained results are more compact and easy to use. The second reason is that, given the large buffer sizes in modern devices , the infinite-buffer queue constitutes often a good approximation of the real queue.

There is, however, an additional cost connected with analysis of infinite-buffer models. Namely, before computing the performance characteristics, the stability of the system has to be determined. (This is not needed in the case of the finite-buffer systems; they are always stable, as the queue size is limited and cannot grow to infinity.)

There is a simple, well-known condition sufficient and necessary for stability of classic queueing systems, i.e., the system load smaller than 1 (ρ<1). It is a very simple matter to check; that this condition is not necessary for stability of queues with the dropping function. For instance, a system with ρ=2 and dropping function d(n)0.7 is obviously stable (the arrival stream is in fact thinned to 30 percent of its original intensity). But such examples are trivial only when the dropping function is constant. For nonconstant dropping functions, we have to develop and prove new conditions on system stability. This is done in Section 3, where several new stability tests are developed. They enable us to decide quickly whether, for instance, the system with ρ=1 and d(n)=1/n+2 is stable, or not. (We encourage the reader to guess the stability of this system, before checking the correct answer in Section 3.)

The analysis of classic queues began with Markovian queues, i.e., with Poisson arrivals and exponential service times. We also use Markovian queues as a starting point in the analysis of queues with the dropping function and infinite buffer. It is possible that the presented methods and results can be then adjusted to non-Markovian queues, exactly as it happened in the classic theory. In all the recent studies, the dropping function does not have a fixed shape; any form of this function can be used. As shown in, e.g., , this allows us to control precisely several performance characteristics of interest. Therefore, the dropping function is not further specified in this paper; it can assume any form.

The rest of the paper is structured as follows. Section 2 describes the queueing model analyzed in the paper. In Section 3, theorems on the system stability are proven and accompanied with several examples of stability analysis. In Section 4, theorems on the distribution of the queue length and the average busy period are proven. In Section 5, the packet loss ratio and the output rate are derived. In Section 6, theorems on the distribution of the response time are proven in two cases: for accepted packets only and for all incoming packets. In Section 7, the burst ratio characteristic is recalled and computed for the system of interest. In Section 8, numerical examples of the mentioned characteristics are presented for a few different dropping functions. Finally, Section 9 concludes the paper.

2. Model Description

We deal with the queueing model with Poisson arrivals of intensity λ, exponential service time with average value μ, infinite waiting room (buffer), and FIFO (first in, first out) service discipline. In addition to those assumptions, we assume that every arriving packet can be dropped with probability d(n), where n is the queue size at time of this packet arrival. Of course, we have to assume that 0d(n)1 for every n. Besides that, function d(n) is not further specified; it may assume any form.

The load of the system is defined traditionally as ρ=λ/μ. By X(t) we denote the queue size at time t, including the service position, if occupied. This convention will be used consequently throughout the paper; any time we say “queue size”, we mean the total number of packets in the system, including the one being serviced.

3. Stability of the System

We say that the queueing system is stable if there exist a proper limiting distribution of the queue size; i.e., for every n=0,1,, there exists the limit: (1)limtPXt=n=pn,and(2)n=0pn=1.Otherwise, we say that the system is unstable. In the theory of Markov chains, such stable process of the queue size is called also ergodic.

As shown in many handbooks, classic queueing systems (i.e., without the dropping function) are stable if and only if ρ<1. But, as argued in Section 1, we need different conditions for systems with the dropping function. We start with the basic theorem on stability.

Theorem 1.

The system with dropping function d(n) and load ρ is stable, if and only if(3)S=k=1ρk1-d01-d11-dk-1<.

Proof.

Assume that, at some time t0, the queue size is n and that the service process is suspended. In this case, the time to the first accepted arrival has the exponential distribution with density:(4)fnt=1-dnλe-1-dnλt.This is easy to understand, if we notice that, until the first packet is accepted, the arrival process is equivalent to the thinned Poisson process with intensity λ and thinning probability d(n). It is known (see, e.g., ) that such thinned Poisson process is also Poisson, with rate (1-d(n))λ. The first event in such thinned process happens after an exponentially distributed time with density fn(t), so it also must be the distribution of the first time of accepted arrival, if the service is suspended.

Now, assume that at some time t0, the queue size is n>0, and the service is performed as usual. From the previous considerations, it follows that the queue size process either jumps down after an exponential service time with parameter μ or jumps up after an exponential service time with parameter (1-d(n))λ, depending what happens first. If the queue size is n=0 at time t0, then the initial arrival parameter is (1-d(0))λ, and only a jump up is possible after an exponential service time with this parameter. After the first jump, the queue size can be either n+1 or n-1 and the evolution continues in the same manner.

The presented description of the queue size process is equivalent to the constructive definition of the continuous-time Markov chain, with the following intensity matrix: (5)Q=qi,ji=0,1,,j=0,1,,,where(6)qi,j=0,i>j+1orj>i+1,(7)qi,i+1=1-diλ,i=0,1,,(8)qi+1,i=μ,i=0,1,,(9)qi,i=-1-diλ-μ,i=1,2,,(10)q0,0=-1-d0λ.It is known (see, e.g., , page 65) that a continuous-time Markov chain with such structure fulfills (1) and (2) if and only if k=1sk<, where(11)sk=q0,1q1,2qk-1,kq1,0q2,1qk,k-1,Applying (6)-(10) to (11), we obtain(12)sk=ρk1-d01-d11-dk-1.Therefore, we can conclude that the queueing system is stable if and only if (3) is fulfilled, which completes the proof of Theorem 1.

Using directly condition (3) is usually inconvenient, as it is difficult to tell directly whether the series in (3) is convergent, or not. But we can use it to prove the following, very useful stability tests.

Theorem 2 (stability tests).

If at least one of conditions (a)-(e) is fulfilled,

(13)limnρ1-dn=a<1,

(14)limnρi=1n1-di-1n=a<1,

(15)n=12nρ2ni=12n1-di-1<,

(16)limnn1-ρ1-dnρ1-dn=a>1,

there exists dropping function d0(n) such that d0(n)d(n) for every n, and the system with d0 and the same ρ is stable,

then the system is stable. If at least one of conditions (f)-(j) is fulfilled,

d(n)<1 for every n and (17)limnρ1-dn=a>1,

(18)limnρi=1n1-di-1n=a>1,

(19)n=12nρ2ni=12n1-di-1=,

d(n)<1 for every n and(20)limnn1-ρ1-dnρ1-dn=a<1,

there exists dropping function d0(n) such that d0(n)d(n) for every n, and the system with d0 and the same ρ is unstable,

then the system is unstable.

Proof.

To show (a) and (f), assume first that d(n)<1 for every n. In this case we have (21)sn+1sn=ρ1-dn,so points (a) and (f) follow from (3) and the ratio test for the convergence of infinite series.

If d(n0)=1 for some n0, then the system is stable, no matter what the value of ρ is. This is a direct consequence of (3), as in this case we have sn=0 for every n>n0. Therefore, (a) is valid no matter if d(n)<1 for all n, or not.

Points (b) and (g) follow from (3) and the root test for the convergence of infinite series, due to the fact that (22)snn=ρi=1n1-di-1n.

Applying the relation(23)2ns2n=2nρ2ni=12n1-di-1,the Cauchy condensation test for the convergence of infinite series, and (3), we obtain points (c) and (h).

To obtain tests (d) and (i), we assume first that d(n)<1 for every n, then apply (3) and the Raabe-Duhamel’s test (see, e.g., , page 120), by computing the limit of the sequence:(24)nsnsn+1-1=n1-ρ1-dnρ1-dn.

As already shown, if d(n0)=1 for some n0, then the system is stable. Therefore, (d) is valid no matter if d(n)<1 for all n, or not.

Point (e) follows directly from (3). Namely, if d0(n)d(n) for every n, then also(25)ρn1-d01-d11-dn-1<ρn1-d001-d011-d0n-1for every n. Therefore, if the latter series is convergent, the former also must be convergent. In exactly the same way we can prove (j), which completes the proof of Theorem 2.

Remark 3.

Using the generalized version of the ratio test, we can replace symbol “lim” in tests (a) and (f) with “limsup” and “liminf”, respectively. Similarly, using the generalized version of the root test, we can replace symbol “lim” in tests (b) and (g) with “limsup”.

3.1. Stability: Examples

In the following examples, it will be demonstrated how the proposed stability tests can be used. The dropping functions in these examples are not chosen to be practically useful; they are rather meant to show the difficulties in settling whether the system is stable, or not, and demonstrate the usefulness of different tests. More practical, monotonic dropping functions will be used in numerical examples in Section 8.

Let ρ=1 and d(n)=1/n+2. One may expect this system to be stable (the system with ρ=1 and without the dropping function is (barely) unstable, but a strong, slowly decreasing dropping function is additionally applied, with an infinite sum of dropping probabilities, n=0d(n)=). Surprisingly, the system is still unstable, even after application of the dropping function. This follows from test (h). We have(26)n=12nρ2ni=12n1-di-1=n=12ni=12nii+1=n=12n12n+1=.

Let ρ=1 and d(n)=1/n+2. This system is stable. Now the dropping function decreases slowly enough to compensate ρ=1. To show that, we may use test (d). We have (27)limnn1-ρ1-dnρ1-dn=limnnn+2-1>1.

Let ρ=2 and d(n)=2n/2n+1+1. This system is unstable, which follows from test (j), with d0(n)1/2. Namely, for every n we have d(n)1/2. On the other hand, the system with ρ=2 and constant dropping probability 1/2 is equivalent to the classic system with ρ=1 and no dropping function, which is unstable.

Let ρ=1.5 and d(n)=n/2n+cos(n). This system is stable, which follows from test (a). We have(28)limnρ1-dn=0.75<1.

It is easily seen that the system is in fact stable for any ρ<2.

Let ρ=3 and d(n)=n3-log(n+1)/2n3+n+1. This system is unstable, which follows from test (f). We have (29)limnρ1-dn=1.5>1.

It is easy to verify that the system is in fact unstable for any ρ>2.

Let ρ=1 and d(n)=1+cos(n)/3/n+2. This system is stable, which follows from test (e). Namely, we have d(n)d0(n)=2/(3n+2) for every n, and the system with ρ=1 and dropping function 2/(3n+2) is stable, which can be shown in the same way, as in Example (2).

Let ρ=1 and(30)dn=0,ifniseven,10-6,ifnisodd.

The system is stable, which follows from test (b). Obviously, the exact value of the exponent is unimportant. Namely, replacing 10-6 with 10c we obtain a stable system for any c<0.

Let ρ=2 and d(n)=1/2+1/n2+3. This system is unstable, which follows from test (i). We obtain(31)limnn1-ρ1-dnρ1-dn=limnn-2/n2+31-2/n2+3=limn-2nn2+1<1.

4. Queue Size and Busy Period Theorem 4.

If the system is stable, then its stationary distribution of the queue size has the form (32)p0=1+S-1,pj=p0ρji=1j1-di-1,j1,where S is defined in (3).

Proof.

It is known (see, e.g., , page 55) that if for a Markov chain conditions (1) and (2) are fulfilled, then its stationary distribution can be determined by the set of equations:(33)qj,jpj+i=0,ijpiqi,j=0,j0,(34)j=0pj=1,and the solution of this set is unique. Taking into account (6)-(10), (33) can be rewritten as(35)-λ1-d0p0+μp1=0,(36)1-djλ+μpj+1-dj-1λpj-1+μpj+1=0,for j1. From (35) we get(37)p1=p01-d0ρ.From (37) and (36) with j=1 we obtain(38)p2=1μ1-d1λ+μp1-1-d0λp0=p0ρ21-d01-d1.It is easy to see that in the same way we can obtain arbitrary pj, j2, in the form pj=p0i=1j1-d(i-1)ρi, which completes the proof of the second part of (32).

As for the first part of (32), it can be proven using (34). We have (39)1=j=0pj=p0+j=1pj=p0+p0S,which completes the proof of Theorem 4.

Having computed pn, n=0,1,, we can compute the average queue size in the steady state, EX:(40)EX=n=0npn.

Using p0, we can obtain the average length of the busy period of the system, Eb.

Theorem 5.

If the system is stable, then its average duration of the busy period is equal to(41)Eb=Sλ1-d0.

Proof.

Formula (41) can be shown using two observations.

Firstly, from (10) we can conclude that the Markov chain, after entering state 0, stays in this state for an exponentially distributed time with parameter λ(1-d(0)). Thus the average duration of the idle period has to be equal to (42)1λ1-d0.

Secondly, the ratio of the average duration of the busy period to the average duration of the idle period has to be the same, as the ratio of the nonempty queue probability, to the empty queue probability. Therefore, we have(43)Eb1/λ1-d0=1-p0p0.Then we can obtain (41) from (43) and relation p0=1/1+S.

5. Loss Ratio and Output Rate

For a stable system, the loss ratio, L, is defined as the long-run fraction of dropped packets. It is one of the most important characteristics of queues occurring in packet network nodes. It has been measured experimentally in TCP/IP networks (see, e.g., ) and studied analytically in classic queueing models (see, e.g., ).

One way to compute the loss ratio in the queue with the dropping function is by using the stationary distribution of the queue size and the dropping function. From the PASTA property, we know that the queue size distribution observed at Poisson arrival times is the same as the queue size distribution observed at arbitrary times. Therefore, for a stable system we have(44)L=j=0pjdj.

There is, however, a simpler way to compute the loss ratio. It is based on the following formula (see, e.g., ):(45)L=1-1-p0ρ,which is valid for a general class of single-server queueing systems with losses. Using (45) and (32), we obtain immediately the following result.

Theorem 6.

If the system is stable, then its loss ratio equals:(46)L=1-S1+Sρ.

Using (46), we can obtain also the average intensity of the output process (see, e.g., , page 199):(47)γ=λ1-L.Namely, if the system is stable, then the average rate of the output process is(48)γ=Sμ1+S.

6. Response Time

The system response time is defined as the total time a packet spends in the system. In systems with losses, the response time can be defined in two ways: for the accepted packets only (i.e., excluding the dropped packets) or for all the packets (i.e., including the dropped packets with the sojourn time 0). The former response time will be denoted by Ra, while the latter by Rd.

Theorem 7.

If the system is stable, then the response time for an accepted packet has the following distribution:(49)PRa<t=1-ρ1+SSk=0pk1-dkj=0k1j!e-μtμtj,and the average value(50)ERa=ρ1+SSμk=0k+1pk1-dk,or equivalently(51)ERa=ρ1+SSλk=0kpk.

Proof.

Firstly, we need to determine the probability that an accepted packet finds n packets already present in the queue. By definition, pn is the probability that the queue size is n at arbitrary time. From PASTA property we know that pn is also the probability that the queue size is n at a packet arrival epoch, but this concerns all packets, dropped and accepted. We are interested in fact in the conditional probability P(AnB), where An is the event that the queue size is n upon a packet arrival, while B is the event that an arriving packet is accepted. Obviously, we have P(B)=1-L, while probability that upon a packet arrival the queue size is n and the packet is accepted is pn(1-d(n)). Therefore, we have P(AnB)=pn(1-d(n))/1-L.

Secondly, the remaining service time of the packet being serviced upon arrival of a new packet is exponentially distributed with parameter μ. This follows from the memoryless property of the service time distribution.

Therefore, if just before the arrival of an accepted packet the queue size is k, this newly accepted packet will spend k+1 full service cycles in the system, each exponentially distributed with parameter μ. Thus the response time of such packet has Erlang distribution function, with parameters k+1 and μ; i.e.,(52)Ek+1,μ=1-j=0k1j!e-μtμtj.Summarizing these considerations, we obtain(53)PRa<t=k=0pk1-dk1-LEk+1,μ=k=0pk1-dk1-L1-j=0k1j!e-μtμtj,=1-11-Lk=0pk1-dkj=0k1j!e-μtμtj,which, taking into account (46), gives (49).

From (49) we can get (50). Namely, we have(54)ERa=01-PRa<tdt=ρ1+SSk=0pk1-dkj=0k1j!0e-μtμtjdt,=ρ1+SSk=0pk1-dkj=0k1μ=ρ1+SSμk=0k+1pk1-dk.

To show (51), we can use Little’s theorem. Applying this theorem yields (55)EX=λ1-LERa.Thus we have(56)ERa=EXλ1-L=k=0kpkλ1-L=ρ1+SSλk=0kpk,which completes the proof of the theorem.

We can calculate also the distribution of Rd.

Theorem 8.

If the system is stable, then the response time for an arbitrary packet, accepted or not, has the following distribution:(57)PRd<t=1-k=0pk1-dkj=0k1j!e-μtμtj,and the following average value:(58)ERd=1μk=0k+1pk1-dk,or equivalently(59)ERd=1λk=0kpk.

Proof.

When an arriving packet is dropped, its response time, Rd, is 0. As for an accepted packet the response time is always nonzero, we conclude that the packet loss is the only case, when the response time is 0. Therefore, we have(60)PRd=0=L=1-S1+Sρ.Reasoning in the similar way, as in the proof of the previous theorem, for t>0 we have(61)PRd<t=L+k=0pk1-dkEk+1,μ=L+k=0pk1-dk1-j=0k1j!e-μtμtj=1-k=0pk1-dkj=0k1j!e-μtμtj,which completes the proof of (57).

Finally, (58), (59) can be obtained from (50), (51), respectively, using the following relation: (62)ERd=L·0+1-LRa.This completes the proof of the theorem.

7. Burst Ratio

As proposed in , the burst ratio, B, is a characteristic of tendency of packet losses to cluster in long sequences (note that the term is used also in different meanings, but herein we use it strictly in the meaning of patent ).

The burst ratio is defined as the average length of the sequence of consecutive packet losses, divided by the average length of the sequence of consecutive losses in the Bernoulli process (i.e., when the losses are independent on each other). As the average length of the sequence of losses in the Bernoulli process equals 1/1-L, the burst ratio can be computed as(63)B=G¯1-L,where G¯ is the average length of the sequence of losses in the stream of interest.

The burst ratio has a simple interpretation. Namely, B>1 means that there is a tendency of losses to cluster together, B<1 indicates that the losses are more spread than could be expected in the random case, while B=1 is neutral.

The burst ratio in finite-buffer queueing systems without the dropping function has been studied recently in [31, 32]. Among other things, it was shown that the buffering itself is responsible for tendency of losses in networks to cluster in long sequences; in typical queueing scenarios the values of burst ratio were significantly greater than 1. Moreover, in  the system with single-arrival stream was considered, while in  the system with bursty traffic was modeled by the batch Poisson process. The bursty traffic in  resulted in far worse performance in terms of the average length of the sequence of consecutive packet losses. This is yet another characteristic that gets worse when the traffic is bursty. The general deterioration of queueing performance (throughput, delay, and blocking probability) with traffic burstiness has been known for a long time. For instance, in  the negative effects of traffic burstiness on the flow control mechanism were shown, using finite-buffer queueing system with the doubly stochastic Poisson traffic model (with the state-dependent arrival rate).

We deal herein with B for two reasons. Firstly, B has a deep impact on real-time multimedia transmissions; long sequences of losses cause drastic deterioration of such transmissions. For instance, in  the following impairment factor for the packetized voice transmission is proposed, as a direct function of B and L:(64)I=Ie+95-Ie100L100L/B+R,where Ie and R are some parameters, unimportant for this considerations. Secondly, it is intuitively clear that an application of the dropping function should make B smaller. This conjecture has been already confirmed by simulations in . We confirm this further in Section 8, using the theorem proven below.

Theorem 9.

If the system is stable, then the packet burst ratio is equal to(65)B=Sn=1p^nr¯n1+Sρn=11-rn,0p^n,where(66)p^n=ρ1+S1-dn-1pn-1S,(67)r¯n=k=1krn,k,(68)r0,0=1-d0,(69)r0,k=dk01-d0,k=1,2,,(70)rn,0=μn1-d0λ+μn+λj=0n-1μj1-dn-jλ+μj+1,n=1,2,,(71)rn,k=1λ+μλdnrn,k-1+μrn-1,kr,n=1,2,,k=1,2,.

Proof.

Let us mark all the packets arriving to the buffer by two letters: a, if the packet is accepted, or d, if the packet is dropped. For example, the stream of arriving packets may look like this: (72)aaadadddadda.It will be useful for us to perceive this stream in such a way that every accepted packet finishes the previous sequence of dropped packets and opens a new one. In other words, between two consecutive acceptances we always have a sequence of losses, possibly of length 0. Using such convention, we can rewrite the example given above as(73)a0a0a1a3a2a,where each a denotes an accepted packet and the numbers between two accepted packets denote the numbers of dropped packets. Let R¯ denote the average of these numbers, i.e., the average length of sequence of dropped packets (including sequences of length 0). The computation of R¯ will constitute the most important part of the proof.

Because the system drops packets differently, depending on the queue size, to compute R¯, we have to compute first the probability p^n, that just after a packet acceptance, the queue size is n. Using PASTA property and formula (46), we get(74)p^n=11-L1-dn-1pn-1=ρ1+S1-dn-1pn-1Sn=1,2,,which completes the proof of (66).

Now, assume that, at some time t0, the queue size is n, and denote by rn,k the probability, that starting from time t0, exactly k arriving packets will be dropped in a row, before the first acceptance. (Note that, due to Markovian structure of the queue size process, rn,k does not depend on the choice of t0.) We will show now that probabilities rn,k have the form given in formulas (68)-(71).

Firstly, starting from queue size 0, the sequence of losses of length 0 happens only if the first arriving packet gets accepted. As this happens with probability 1-d(0), we have proven (68). Again, starting from queue size 0, the sequence of losses of length k1 happens only if k arriving packets are dropped and the next one is accepted. This happens with probability dk(0)(1-d(0)), so we have proven (69).

The case with the initial queue size greater than 0 is more difficult. This is due to the fact that the queue size may decrease in the middle of the sequence of consecutive drops and the dropping probability is not constant, as in the previous paragraph.

To show (70), we start from n=1. With probability λ/λ+μ, the first event in the system is a packet arrival. To assure k=0, this packet has to be accepted, which happens with probability 1-d(1). On the other hand, with probability μ/λ+μ the first event in the system is a packet departure. In that case, the new queue size is 0, and the probability that the next packet will be accepted is 1-d(0). Therefore, we obtain(75)r1,0=λλ+μ1-d1+μλ+μ1-d0.For n=2, we can proceed in the same manner. With probability λ/λ+μ, the first event is an arrival; in this case, the packet has to be accepted. On the other hand, with probability μ/λ+μ, the first event is a departure; in that case, the new queue size is 1, and the probability that the next packet will be accepted is r1,0. Thus we have(76)r2,0=λλ+μ1-d2+μλ+μr1,0=μ21-d0λ+μ2+λμ1-d1λ+μ2+λ1-d2λ+μ.Proceeding by induction, we can complete the proof of (70).

We can use similar arguments, to show formula (71) for every n,k1. With probability λ/λ+μ, the first event is an arrival. In this case, the first packet has to be dropped. Therefore, the queue size does not change and next k-1 packets have to be dropped as well; this happens with probability rn,k-1. On the other hand, with probability μ/λ+μ the first event is a departure. In that case, the new queue size is n-1, and the next k packets have to be dropped, which happens with probability rn-1,k.

Having computed rn,k for every n,k, we can compute r¯n, i.e., the average length of the sequence of dropped packets, starting from the queue size n. It is given in (67).

Having computed p^n, r¯n, and taking into account the fact that each accepted packet finishes one sequence of losses and begins a new one (as in (73)), we can compute R¯; namely,(77)R¯=n=1p^nr¯n.

Now, in the definition of R¯, we included sequences of losses of length 0. When computing the burst ratio, such sequences have to be excluded, and the remaining probability mass has to be scaled properly to 1. The probability that after a packet acceptance the sequence of losses is not empty is equal to(78)n=11-rn,0p^n.Therefore, the average length of nonempty sequence of losses is(79)G¯=R¯n=11-rn,0p^n=n=1p^nr¯nn=11-rn,0p^n.

Finally, combining (63) with (79) and (46), we arrive at (65), which completes the proof of the theorem.

8. Numerical Examples

In these examples, we use the critically loaded system, with λ=1 and μ=1, and the following four dropping functions:(80)d0n=0,ifn<100,1,otherwise,d1n=en-100/15,ifn<100,1,otherwise,d2n=0,ifn<100,1-e-n-100/20,otherwise,d3n=12+1πarctann-1004,which are depicted in Figure 1. As we can see, d0 represents in fact the lack of the dropping function (i.e., the classic FIFO-drop-tail queueing); it does not drop any packet, when the queue size is below 100, and drops all packets, when the queue size reaches 100 (full buffer). Function d1 also drops all packets, when the queue size reaches 100 packets, but the dropping probability is a nonzero, convex function on interval (0,100), which initially grows rather slowly, but then rapidly. Function d2 does not drop any packet in interval (0,100), but then it grows rapidly as a concave function of n. Finally, d3 is a convex function in interval (0,100), smaller than d1, and concave in interval (100,), greater than d2. All functions d0-d3 are monotonic and nondecreasing. Nondecreasing dropping functions are most popular in networking, because there is no practical reason to decrease the dropping probability when the queue size grows. There is no agreement on, however, which shape of the dropping function is the best. We will show below that this is due to the fact that there is no obvious way to define what “the best” means in the context of the dropping function.

Dropping functions d0d3. Function d1 on the left, d2 on the right, and d0 and d3 in the middle.

Firstly, we can easily check, using test (a) of Theorem 2, that the system is stable for ρ=1 and each of the mentioned dropping functions. Therefore, we can compute all their performance characteristics, derived in the previous sections. The results are gathered in Table 1 and Figures 25. In the networking context, the most important characteristics are the first four in Table 1; the busy period is not easily translated into the network performance.

Performance characteristics for dropping functions d0d3.

characteristic d 0 d 1 d 2 d 3
average queue size, EX 50.00 28.53 52.86 30.24

avg. response time, ERa 50.50 29.08 53.36 30.93

loss ratio, L 0.99% 1.89% 0.93% 2.24%

burst ratio, B 1.980 1.045 1.239 1.015

average busy period, Eb 100.0 51.76 105.6 44.06

Stationary distribution of the queue size for d0.

Stationary distribution of the queue size for d1.

Stationary distribution of the queue size for d2.

Stationary distribution of the queue size for d3.

In Table 1 and Figures 25, we can compare the performance of “proper” dropping functions, d1-d3, with each other, as well as with the lack of the dropping function (d0 case).

Comparing results for functions d1-d3 with each other, we see that each function has the best performance in some area. Namely, d1 provides the shortest queue size and response time on average; d2 gives an excellent loss ratio, while d3 provides a superb burst ratio, very close to 1 (and not a bad queue size as well). At the same time, each of functions d1-d3 has a weakness. In the case of d1 and d3, it is a higher loss ratio, while in the case of d2, it is a higher queue size. Therefore, it is impossible to tell which one is the best in general. To do this, one should propose first and justify properly, a cost function, which would combine at least characteristics EX, L, and B in one formula.

Comparing the performance of functions d1-d3 with the case of no proper dropping function, d0, we can say roughly that an application of the dropping function is generally profitable. For instance, comparing the results for d2 with those for d0, we see that d2 reduces the loss ratio by about 6% and reduces the burst ratio by about 37%, at the cost of the queue size increased by about 5%. Especially good results can be observed in the reduction of the burst ratio, for all considered functions d1-d3.

Finally, we checked the correctness of the proven theoretical results by performing simulations in Omnet++ environment, . The results obtained for 5×108 packets passing through the queueing system and dropping functions d2, d3 are gathered in the third column of Tables 2 and 3, respectively. For comparison, the results obtained via theorems are given in the second column. We can observe a high agreement between the theoretical and simulation results in all cases.

Theoretical versus simulation results for d2.

characteristic theory simulation
average queue size, EX 52.8600 52.8586

avg. response time, ERa 53.3604 53.3612

loss ratio, L 0.93773% 0.93860%

burst ratio, B 1.23971 1.24026

average busy period, Eb 105.640 105.497

Theoretical versus simulation results for d3.

characteristic theory simulation
average queue size, EX 30.2437 30.2010
avg. response time, ERa 30.9389 30.8957
loss ratio, L 2.24694% 2.24394%
burst ratio, B 1.01533 1.01530
average busy period, Eb 44.0656 44.0395
9. Conclusions

We presented an analysis of queueing systems with the dropping function and infinite buffer. In particular, we gave several conditions to test the system stability and demonstrated them on examples. We derived all the most important performance characteristics: the queue size distribution, the busy period, the loss ratio, the system response time, and the burst ratio. We illustrated the theorems with numerical examples, which demonstrated how profitable an application of the dropping function can be and how the shape of the dropping function may affect different performance characteristics.

One of possible directions of future work was signalled in Section 8. Namely, the dropping function can be used to improve several performance characteristics of the queueing system, at the cost of some degradation of other characteristics. To fully exploit the potential of the dropping function, we need an overall performance cost function, combining all the most important performance characteristics in one formula. Such overall cost function could be then optimized using different forms of the dropping function.

Data Availability

The data used to support the findings of this study are included within the article.

Conflicts of Interest

The authors declare that they have no conflicts of interest.

Acknowledgments

This work was conducted within Project 2017/25/B/ST6/00110, funded by National Science Centre, Poland.

Gettys J. Nichols K. Bufferbloat: Dark Buffers in the Internet Queue 2011 9 11 1 15 2-s2.0-85011648951 Nichols K. Jacobson V. Controlling queue delay Communications of the ACM 2012 55 7 42 50 10.1145/2209249.2209264 2-s2.0-84863770494 Cerf V. G. Bufferbloat and other internet challenges IEEE Internet Computing 2014 18 5 79 80 10.1109/mic.2014.89 2-s2.0-84906725994 Floyd S. Jacobson V. Random early detection gateways for congestion avoidance IEEE/ACM Transactions on Networking 1993 1 4 397 413 10.1109/90.251892 2-s2.0-0027647490 Rosolen V. Bonaventure O. Leduc G. A RED discard strategy for ATM networks and its performance evaluation with TCP/IP traffic ACM SIGCOMM Computer Communication Review 1999 29 3 23 43 2-s2.0-0003309794 Athuraliya S. Low S. H. Li V. H. Yin Q. REM: Active queue management IEEE Network 2001 15 3 48 53 10.1109/65.923940 2-s2.0-0035331741 Zhou K. Yeung K. L. Li V. Nonlinear RED: asimple yet efficient active queue management scheme Computer Networks 2006 50 18 3784 3794 10.1016/j.comnet.2006.04.007 2-s2.0-33749064179 Augustyn D. R. Domański A. Domańska J. A Choice of Optimal Packet Dropping Function for Active Queue Management Communications in Computer and Information Science 2010 79 199 206 10.1007/978-3-642-13861-4_20 Domanska J. Augustyn D. R. Domanski A. The choice of optimal 3-rd order polynomial packet dropping function for NLRED in the presence of self-similar traffic Bulletin of the Polish Academy of Sciences—Technical Sciences 2012 60 4 779 786 10.2478/v10175-012-0090-x 2-s2.0-84882371233 Bonald T. May M. Bolot J.-C. Analytic evaluation of RED performance Proceedings of INFOCOM 2000 1415 1424 2-s2.0-0033906593 Wang H. Yan W. An extended GIX/M/1/N queueing model for evaluating the performance of AQM algorithms with aggregate traffic Lecture Notes in Computer Science 2005 3619 395 414 2-s2.0-26444453666 Kempa W. M. On main characteristics of the M/M/1/N queue with single and batch arrivals and the queue size controlled by AQM algorithms Kybernetika 2011 47 6 930 943 MR2907852 Chydzinski A. Chrost L. Analysis of AQM queues with queue-size based packet dropping Applied Mathematics and Computer Science 2011 21 3 567 577 10.2478/v10006-011-0045-7 MR2883897 Kempa W. M. A direct approach to transient Queue-Size distribution in a finite-buffer Queue with AQM Applied Mathematics & Information Sciences 2013 7 3 909 905 2-s2.0-84873457333 Tikhonenko O. Kempa W. M. Performance evaluation of an M/G/N-type queue with bounded capacity and packet dropping Applied Mathematics and Computer Science 2016 26 4 841 854 10.1515/amcs-2016-0060 MR3618657 Chydzinski A. Mrozowski P. Queues with Dropping Functions and General Arrival Processes PLoS ONE 2016 11 3 1 23 10.1371/journal.pone.0150702 Mrozowski P. Chydzinski A. Queues with dropping functions and autocorrelated arrivals Methodology and Computing in Applied Probability 2018 20 1 97 115 10.1007/s11009-016-9534-3 MR3760340 Tikhonenko O. Kempa W. M. The generalization of AQM algorithms for queueing systems with bounded capacity Lecture Notes in Computer Science 2012 7204 242 251 2-s2.0-84865223108 Tikhonenko O. Kempa W. M. Erlang service system with limited memory space under control of AQM mechanizm Communications in Computer and Information Science 2017 718 366 379 10.1007/978-3-319-59767-6_29 2-s2.0-85020390084 Mrozowski P. Chydzinski A. Matrix inversion in the design of active queue management mechanisms Proceedings of the 2015 38th International Convention on Information and Communication Technology, Electronics and Microelectronics (MIPRO) 2015 Opatija, Croatia 610 615 10.1109/MIPRO.2015.7160345 Kingman J. F. Poisson processes 1993 Oxford University Press MR1207584 Cohen J. W. The single server queue 1982 Second Amsterdam North-Holland Publishing Company MR668697 Muresan M. A Concrete Approach to Classical Analysis 2009 Berlin, Germany Springer 10.1007/978-0-387-78933-0 MR2456018 Coates M. Nowak R. Network loss inference using unicast end-to-end measurement Proceedings of the ITC Conference on IP Traffic, Modeling and Management 2000 282 289 Benko P. Veres A. A passive method for estimating end-to-end TCP packet loss Proceedings of the IEEE GLOBECOM'02 2002 Taiwan 2609 2613 2-s2.0-0036969618 Duffield N. G. Lo Presti F. Paxson V. Towsley D. Inferring link loss using striped unicast probes Proceedings IEEE INFOCOM 2001 2001 Canada, USA 915 923 2-s2.0-0035012692 Sommers J. Barford P. Duffield N. Ron A. Improving accuracy in end-to-end packet loss measurement ACM SIGCOMM Computer Communication Review 2005 35 4 157 168 2-s2.0-33746138761 Chydzinski A. Wojcicki R. Hryn G. On the number of losses in an MMPP queue Lecture Notes in Computer Science 2007 4712 38 48 2-s2.0-38349058746 Takagi H. Queueing analysis - Finite Systems 1993 North-Holland, Amsterdam MR1255105 McGowan J. W. Burst ratio: a measure of bursty loss on packet-based networks US Patent 2005 Chydzinski A. Samociuk D. Burst ratio in a single-server queue Telecommunication Systems 2018 1 14 10.1007/s11235-018-0476-7 Chydzinski A. Samociuk D. Adamczyk B. Burst ratio in the finite-buffer queue with batch Poisson arrivals Applied Mathematics and Computation 2018 330 225 238 10.1016/j.amc.2018.02.021 MR3777310 Zukerman M. Rubin I. Performance of flow-controlled communications systems under bursty traffic 3 Proceedings of IEEE GLOBECOM86 1986 Houston, Texas, USA 1266 1271 ITU-T Recommendation G.107 The E-model, a computational model for use in transmission planning 2014 Samociuk D. Chydzinski A. On the impact of the dropping function on the packet queueing performance Proceedings of the 2018 41st International Convention on Information and Communication Technology, Electronics and Microelectronics (MIPRO) 2018 Opatija, Croatia IEEE 473 478 10.23919/MIPRO.2018.8400081 https://omnetpp.org