Keywords

1 Introduction

Queuing theory is one of the most relevant branches of probability theory and applied mathematics [3, 6, 12, 13]. Indeed, queuing systems represent a powerful mathematical tool for performance analysis of a wide variety of real-life systems, including, for instance, telecommunication networks, financial markets, supply chain management and airplane traffic control.

In many application customers are simply characterized in terms of arrival and service processes [1, 8, 9]. For instance, in computer networks it is typically assumed that the customer volume (i.e., the packet length) is proportional to the service time (namely, the time needed to transmit the packet itself). In this work, we consider a more general model and assume that customer volume and service time are described by independent random variables with arbitrary distributions. As highlighted in the next section, customer capacity plays a relevant role in modeling new network architectures.

In more detail, we consider a queuing system with Poisson arrivals, N servers and unlimited capacity (such assumption is widely used in modeling for sake of analytical tractability). Extending the approach developed by some of the authors in [4] (in which an approximate expression for the distribution of the number of customers was derived), we will be able to find an explicit approximation for the distribution of the customers’ total capacity in the queuing system as well as in its elements (waiting line and service).

The rest of the paper is organized as follows. In Sect. 2, we review the most relevant works on queuing systems with random capacity of customers and highlight the novelty of our contribution. Section 3 properly defines the analyzed queuing model and recalls an approximation for the probability distribution of the number of customers in the system, while Sect. 4 presents the original contribution of the paper, i.e. provides a general expression for the characteristic function of the total customers’ capacity. Then, in Sect. 5 the goodness of the approximation (in terms of Kolmogorov distance) is verified through discrete-event simulations for different values of the system parameters. Finally, Sect. 6 concludes the paper with some final remarks.

2 Related Work

In recent years queuing systems with random customer capacity have attracted the interest of researchers for their applicability in different fields, mainly in the framework of computer networks. In this section some of the most relevant contributions are discussed.

In the paper [2] an efficient analytical model that evaluates the behavior of the downlink LTE (Long-Term Evolution) channel with CLA (Cross-Layer Adaptation) is presented. Since video traffic is resource–intensive, it is a challenging issue to stream video over low bandwidth networks, whereas video communication over LTE becomes an open research topic nowadays due to LTEs high throughput capabilities.

The paper [11] deals with a model of a multi-server queuing system with losses caused by lack of resources necessary to service claims. A claim accepted for servicing occupies a random amount of resources of several types with given distribution functions. Random vectors that define the requirements of claims for resources are independent of the processes of customer arrivals and servicing, mutually independent, and identically distributed. Under the assumptions of a Poisson arrival process and exponential service times, the authors analytically find the joint distribution of the number of customers in the system and the vector of amounts of resources occupied by them. Moreover, sample computations are presented to illustrate an application of the model to analyzing the characteristics of a videoconferencing service in an LTE wireless network.

In [10] the authors consider queuing systems, in which customers occupy some resources that are released after customer departure. Arriving customers are lost if there are not enough free resources required for their servicing. In such systems for each customer it is necessary to record the vector of occupied resources until its departure.

Multi-server queuing systems with AQM-type (Active Queue Management) mechanisms are considered in [16, 17]. In more detail, in the first work M/M/n-type (\(n \ge 1\)) queuing systems with a bounded total volume and finite queue size are considered. It is assumed that the volumes of the arriving packets are generally distributed random variables. Moreover, an AQM-type (Active Queue Management) mechanism is used to control the actual buffer state: each of the arriving packets is dropped with a probability depending on its volume and the occupied volume of the system at the pre-arrival epoch. The stationary queue-size distribution and the loss probability are derived, and numerical examples illustrating theoretical results are also provided. Then, in [17] the analysis is extended to the case of arbitrary distribution of the service time.

The main aim of the paper [14] is to develop a simulation model for queuing systems with non-priority cyclic service RR (round robin) discipline and to compare, in terms of queuing performance, such service discipline with traditional FCFS (first come-first served).

Finally, the paper [15] investigates single server queuing systems with batch Poisson arrivals and without demands losses under assumption that each demand has some random capacity (generally, each demand is characterized by an l-dimensional indication vector). Service time of the demand arbitrary depends on its capacity (indications). The Laplace-Stieltjes transform of total capacities (random vector of sum of indications) of demands that were served during a busy period of the system is determined.

The main novelty of our approach is that it deals with systems without losses and, in this way, permits to dimension the system resources (in terms of buffer space) in order to have loss probabilities below any given threshold (as well-known in the literature, the complementary probability provides an upper bound for the loss probability in the corresponding finite-buffer system). Moreover, our approach is quite general and may be applied to any distribution (discrete or continuous) of the customer capacity, provided that its characteristic function is well-defined. Finally, we also provide the distribution of the overall capacity for the customers in the different components of the queue (waiting line and buffer); such information may be useful to dimension the different elements of the real system under analysis.

3 Approximation of Probability Distribution of the Customers’ Number in the System

We consider the M/GI/N/\(\infty \) queue. The arrival process is distributed by Poisson law with rate \(\lambda \). The system has N servers and service times on each server are i.i.d. with distribution function A(x). The arriving customer occupies any free server or goes to the queue in case of all servers are busy. Let each customer have some random capacity \(v > 0\) with distribution function G(y). Customers’ capacities and service times are mutually independent and do not dependent on the epochs of customers’ arrivals.

Denote by i(t) and \(V(t)\,=\,\sum \limits _{i\,=\,1} ^ {i(t)}v_i\) the number of customers in the system at time t and their total capacity, respectively.

Let \(P(i) = P\left\{ i(t) = i\right\} \) be the stationary probability distribution of the number of customers in the system. We denote by \(\pi _i\) an approximation of P(i), which is defined as a composite distribution [4]:

$$\begin{aligned} \pi _i = \left\{ \begin{array}{c} C_1P_1(i), 0\le i\le N,\\ C_2P_2(i-N+1), i\ge N. \end{array} \right. \end{aligned}$$
(1)

Note that the equality of the two expression for \(i=N\) provides an additional condition to determine the constants \(C_1\) and \(C_2\).

The probabilities \(P_1(i)\), where \(0 \le i \le N\), are the probabilities of the number of occupied servers in an N-server M/GI/N/0 queue with customer losses when all servers are busy. Hence, they can be determined by the Erlang B formula:

$$\begin{aligned} P_1(i) = \frac{\left( \lambda a\right) ^i }{i!}\left( \sum \limits _{k\,=\,0}^{N}\frac{\left( \lambda a\right) ^k }{k!}\right) ^{-1} \end{aligned}$$

where a is the mean service time.

The probabilities \(P_2(i)\) refers to states in which all servers are busy. In this case, the block of occupied servers is considered as a single one, characterized by an equivalent service time distribution B(x) and an equivalent mean service time b. Therefore, the probabilities \(P_2(i)\), where \(i \ge 1\), are defined as the probabilities of having i customers in a single-server queuing system with waiting (i.e., the classical M/GI/1 queue). Hence, they can be determined by the Pollaczek-Khinchin formula [4] and we can write

$$\begin{aligned} P_2(i)\,=\,\left( 1-\lambda b\right) \sum \limits _{k\,=\,0}^{i}\alpha _kb_{i-k}, \end{aligned}$$

where the coefficients of the expansion are given by

$$\begin{aligned} \alpha _0 = \frac{1}{\beta _0},~\alpha _n = \frac{1}{\beta _0}\left[ \alpha _{n-1}-\sum \limits _{k\,=\,0}^{n-1}\alpha _k\beta _{n-k}\right] , \end{aligned}$$
$$\begin{aligned} b_0 = \beta _0,~b_n = \beta _n-\beta _{n-1}, \end{aligned}$$
$$\begin{aligned} \beta _n = \int \limits _{0} ^ {\infty }e ^ {-\lambda z}\frac{\left( \lambda z\right) ^ {n} }{n!}dB(z), \end{aligned}$$

and the distribution function B(x) has the form

$$\begin{aligned} B(x) = 1-\left( 1-A(x)\right) \left( 1-\frac{1}{a}\int \limits _{0} ^ {x}\left( 1-A(z)\right) dz \right) ^{N-1}. \end{aligned}$$

The constants \(C_1\) and \(C_2\) in (1) can be found from the normalization condition and the conditions of “stitching” [4]. So the expression (1) becomes:

$$\begin{aligned} \pi _i = \left\{ \begin{array}{c} \displaystyle \frac{P_2(1)}{P_2(1)+P_1(N)\left( 1-\left( P_2(0) + P_2(N)\right) \right) }P_1(i), 0\le i\le N,\\ \displaystyle \frac{P_1(N)}{P_2(1)+P_1(N)\left( 1-\left( P_2(0) + P_2(N)\right) \right) }P_2(i-N+ 1), i\ge N. \end{array} \right. \end{aligned}$$
(2)

4 Characteristic Function for the Total Capacity

Starting from the definition of conditional expectation, we can write the characteristic function of the total capacity in the form

$$\begin{aligned} h(u)\,=\,M\displaystyle \left\{ e ^ {juV(t)}\right\} \,=\,M\left\{ M\left\{ \left. \displaystyle e^{\displaystyle ju\sum \limits _{k\,=\,1} ^ {i}v_k}\right| i(t)\,=\,i\right\} \right\}&\\ =\sum \limits _{i\,=\,0} ^ {\infty } M\left\{ \displaystyle e ^ {\displaystyle ju\sum \limits _{k\,=\,1} ^ {i}v_k}\right\} P\left\{ i(t) = i\right\} = \sum \limits _{i\,=\,0} ^ {\infty }\left( M\left\{ \displaystyle e ^ {\displaystyle juv}\right\} \right) ^ i P\left\{ i(t) = i\right\} , \end{aligned}$$

where we took into account that for \(i=0\) the queue is empty and the sum at the exponent is 0.

Then, using approximation (2), the characteristic function can be rewritten as

$$\begin{aligned} h(u)\,=\,\sum \limits _{i\,=\,0}^{\infty }\left( M\left\{ \displaystyle e ^ {\displaystyle juv}\right\} \right) ^ i \pi _i, \end{aligned}$$

and, taking the inverse Fourier transform, we obtain an approximation of the density function of the customers’ total capacity in the M/GI/N/\(\infty \) queue:

$$\begin{aligned} f_V(x) = \int \limits _{-\infty }^{\infty }e ^ {-jux}h(u)du. \end{aligned}$$
(3)

Similarly, we can obtain the characteristic functions of the total capacity of the customers in the service and in the waiting line. These results have practical relevance since the customers in each element of the queue typically require specific resources (for instance, in routers there is a physical separation between input buffers and output ports).

In more detail, for the customers in the service we obtain:

$$\begin{aligned} h_{serv}(u)\,=\,\sum \limits _{i\,=\,0} ^ {N}\left( M\left\{ \displaystyle e ^ {\displaystyle juv}\right\} \right) ^ i \displaystyle \frac{P_2(1)P_1(i)}{P_2(1)\,+\,P_1(N)\left( 1-\left( P_2(0)\,+\,P_2(N)\right) \right) }, \end{aligned}$$

and for the customers in the waiting queue:

$$\begin{aligned} h_{wait}(u)\,=\,\sum \limits _{i\,=\,0}^{\infty }\left( M\left\{ \displaystyle e ^ {\displaystyle juv}\right\} \right) ^{i\,+\,N} \displaystyle \frac{P_1(N)P_2(i\,+\,1)}{P_2(1)\,+\,P_1(N)\left( 1-\left( P_2(0)\,+\,P_2(N)\right) \right) }. \end{aligned}$$

5 Simulation and Numerical Examples

Several simulation experiments, performed in the same way as [5], have been carried out to estimate the distribution function of the customers number and the total customers capacity and verify the goodness of the proposed approximation. To this aim, it was also necessary to calculate numerically the approximations (2) and (3) since a close-form solution is, in general, not available.

As a measure of the similarity between simulation and approximation results, we consider the Kolmogorov distance

$$\begin{aligned} \varDelta =\displaystyle \sup _x\left| F(x)-D(x)\right| . \end{aligned}$$

Here F(x) represents the approximation based on (2) or (3), respectively for i(t) and V(t), and D(x) is the cumulative distribution function built on the basis of the simulation results (in order to reduce the variance of the estimates \(10^{10}\) arrivals have been generated). As typically done in the literature [7], we suppose that an approximation is applicable if its Kolmogorov distance is less than 0.03.

In the following we present the result for three different scenarios, in order to highlight the applicability of our approximation in different settings. Note that the parameters for the arrival and service processes were selected in such a way that the condition for the stationary regime existence is always met (\(N>\lambda a\)).

Example 1

Let us consider the following parameters for the queue:

  • arrival rate \(\lambda \,=\,25\)

  • number of servers \(N\,=\,10\)

  • exponential distribution (with parameter \(\mu \)) of the service time, i.e.

    $$\begin{aligned} A(x)\,=\,\left\{ \begin{array}{c} \displaystyle 1-e^{-\mu x},~x\ge 0,\\ 0,~x<0, \end{array} \right. \end{aligned}$$
  • uniform distribution (in the interval \([a,\,b]\)) of customers’ capacity, i.e.

    $$\begin{aligned} G(y)\,=\,\left\{ \begin{array}{c} 0,~y<a,\\ \displaystyle \frac{y-a}{b-a},~a\le y\le b,\\ 1,~y>b. \end{array} \right. \end{aligned}$$

Furthermore, we used the following numerical values: \(\mu = 5\), \(a = 0\) and \(b = 1\). It is easy to verify that the distributions are very similar both for the customer numbers and the total capacity, as highlighted by Figs. 1 and 2; indeed, we obtain that \(\varDelta _i = 0.007\) and \(\varDelta _V = 0.012\), respectively for i(t) and V(t).

Fig. 1.
figure 1

Example 1 – Distributions of the customers number

Fig. 2.
figure 2

Example 1 – Distributions of the total capacity

Example 2

In the second set of simulation we changed the distribution of the service time. In more detail, the parameters of the queuing system are as follows:

  • arrival rate \(\lambda = 25\)

  • number of servers \(N = 10\)

  • gamma distribution (with parameters \(\alpha \) and \(\beta \)) of the service time, i.e.

    $$\begin{aligned} A(x)\,=\,\left\{ \begin{array}{c} \displaystyle \frac{\gamma (\alpha ,\beta x)}{\varGamma (\alpha )},~x\ge 0,\\ 0,~x < 0, \end{array} \right. \end{aligned}$$
  • uniform distribution (in the interval [ab]) of customers’ capacity, i.e.

    $$\begin{aligned} G(y)\,=\,\left\{ \begin{array}{c} 0,~y<a,\\ \displaystyle \frac{y-a}{b-a},~a\le y\le b,\\ 1,~y>b. \end{array} \right. \end{aligned}$$

In this case (with \(\alpha =0.5\), \(\beta =2.5\) and, as before, \(a = 0\), \(b = 1\)), the approximation is even closer since \(\varDelta _i = 0.009\) and \(\varDelta _V = 0.007\) (see Figs. 3 and 4).

Fig. 3.
figure 3

Example 2 – Distributions of the customers number

Fig. 4.
figure 4

Example 2 – Distributions of the total capacity

Fig. 5.
figure 5

Example 3 (\(N=6\)) – Distributions of the customers number

Example 3

In the third set of simulations we verified the goodness of the approximation in case of discrete distribution of the customer capacity. In more detail, we considered the following set of parameters:

  • arrival rate \(\lambda = 45\)

  • number of servers \(N = 6,7,8\)

  • gamma distribution (with parameters \(\alpha \) and \(\beta \)) of the service time, i.e.

    $$\begin{aligned} A(x)\,=\,\left\{ \begin{array}{c} \displaystyle \frac{\gamma (\alpha ,\beta x)}{\varGamma (\alpha )},~x\ge 0,\\ 0,~x<0, \end{array} \right. \end{aligned}$$
  • geometric distribution (in the form representing the number of failures before the first success, with parameter p) of customers’ capacity:

    $$\begin{aligned} G(y)\,=\,P\left\{ v\,=\,y\right\} \,=\,p\left( 1-p\right) ^y. \end{aligned}$$

In all the scenarios we assumed \(\alpha =3.5\), \(\beta =29.7\), \(p = 0.4\) and checked how the value of N influences the goodness of the approximation. Figures 5 and 6 points out that the approximation is rather poor for \(N=6\) (indeed, in this case the values of the Kolmogorov distance are \(\varDelta _i = 0.064\) and \(\varDelta _V = 0.048\)), while it improves when the number of servers is increased, as highlighted by the corresponding values of the Kolmogorov distance (namely \(\varDelta _i = 0.029\) and \(\varDelta _V = 0.016\) for \(N=7\), \(\varDelta _i = 0.017\) and \(\varDelta _V = 0.005\) for \(N=8\)) that are clearly below the admissibility threshold. Finally, a visual evidence of the goodness of the proposed approximation is provided by Figs. 7 and 8, referring to \(N=8\) (for sake of brevity, the graphs for \(N=7\) are omitted).

Fig. 6.
figure 6

Example 3 (\(N=6\)) – Distributions of the total capacity

Fig. 7.
figure 7

Example 3 (\(N=8\)) – Distributions of the customers number

Fig. 8.
figure 8

Example 3 (\(N=8\)) – Distributions of the total capacity

We can conclude that the accuracy of the total capacity approximation is suitable over a wide range of system parameters and improves with the increase of the number of servers in the system.

6 Conclusions

In this paper we analyzed a generalization of M/GI/N/\(\infty \) queues with customers of random capacity. Such models present not only theoretical interest, but also practical relevance in modeling new network architectures (eg., CLA in LTE) and AQM mechanisms in queues.

In more detail we considered the distribution of the total capacity of customers in the system and, starting from our previous results in [4] and the definition of conditional expectation, derived an approximate expression for its characteristic function. Then, we extended the proposed methodology to the total capacity of the customers in the waiting line and in the service, providing the general expressions of the corresponding characteristic functions.

Finally, the goodness of the proposed approximation was verified (in terms of Kolmogorov distance) through several sets of simulations, considering continuous as well as discrete distributions of the customer capacity.