1. Introduction
In TCP/IP networks, some packets are deleted in network nodes (routers). This is connected to the fundamental design principle of most such networks: no resource reservation is needed before sending any volume of data, but no guarantee about the delivery is given. Therefore, the rate of traffic aggregated from a few input links may occasionally exceed the capacity of an output link. If this happens, the buffer of the output link becomes full and newly arriving packets are deleted, at least during some period of time.
As widely discussed in the literature, such a simple loss mechanism has several drawbacks. Among other things, it increases transmission delays, causes unfair bandwidth allocation between flows, and synchronizes the TCP control mechanisms of the hosts [
1]. All of these are caused by the bufferbloat effect [
2,
3], i.e., frequent overfilling of packet buffers in networking devices.
Therefore, the Internet Engineering Task Force (IETF) recommends the deployment of active queue management (AQM) in routers and switches [
1]. Generally, AQM assumes that packets can be dropped much earlier, when the buffer is far from being overflowed. Moreover, an arriving packet is dropped randomly, with some probability evolving in time. The IETF does not recommend just one algorithm of this type: many solutions have been proposed and tested to date, for instance [
4,
5,
6,
7,
8,
9].
Active queue management is also proposed for wireless sensor networks (WSNs) [
10,
11,
12,
13,
14]). It can be especially useful in some sensitive applications of WSNs, such as healthcare [
13]. Obviously, avoiding link congestions and packet losses is very important in such applications.
An important family of AQM algorithms uses the concept that the probability of deleting a packet should depend on the queue size. Many different drop probability functions have been considered to date, e.g., linear, quadratic, cubic, composed of linear and cubic, composed of linear and logarithmic, or beta (see [
15,
16,
17,
18,
19,
20], respectively). Recently, such AQM algorithms were implemented in a high-speed networking device and tested in an operating network of the campus of a large university [
21].
The first, obvious characteristic of the packet loss process is the loss ratio, L. It has been widely studied using mathematical, simulation, and experimental methods. Therefore, we did not deal with it here.
The second important characteristic is the burst ratio,
B. It is defined in
Section 3, but for now, it is important to say that
B characterizes the inclination of packet losses to occur one after another, in series. When
, the losses have neither the inclination to occur separately, nor in series: short series occur occasionally due to the random grouping of losses. When
, the losses have the inclination to occur in series. The larger
B is, the stronger this inclination is. Finally, when
, the losses have the inclination to occur separately.
The importance of the burst ratio is connected to the fact that elevated values of
B may seriously worsen any real-time transmission of the data, in a network of any type. In general, packet losses do not constitute a critical obstacle in real-time transmissions. The well-known redundant coding enables tolerance to packet losses, by allowing the recreation of missing information from successfully delivered packets. Unfortunately, this becomes difficult or impossible when the losses tend to occur in long, consecutive series. A well-studied case is the real-time transmission of packetized voice, for which a formula was developed that reflects the deterioration of the quality of voice transmissions as a function of
B (see page 8 of [
22]). The reasoning, however, is the same for any type of real-time transmission, not necessarily voice or even multimedia. In a WSN, we may want to transmit other types of information from sensors, in real-time. The redundant coding can prevent the transmission due to the loss of information due to the packet losses, but the higher the value of
B is, the less effective this becomes.
In the experimental study of [
21], two things were demonstrated about the burst ratio. Firstly, when no AQM is used, the burst ratio is always greater than 1. Secondly, the application of AQM reduces its value substantially.
In this paper, we studied this effect, i.e., how and to what extent an AQM based on the queue size reduces the burst ratio, using a mathematical model of AQM. This has not yet been performed with a complex, autocorrelated model of traffic. It is well known that packet interarrival times in TCP/IP networks are positively autocorrelated [
23,
24]. It is also known that this autocorrelation has a profound influence on the queueing performance characteristics.
Therefore, the two main goals of this paper were:
- (i)
To derive the burst ratio in a model of the system with AQM based on the queue size and the arrival process such that it enables arbitrary modeling of the autocorrelation function and arbitrary modeling of the distribution of the interarrival time;
- (ii)
To present sample results for different system parameterizations, in which we can see the influence of the autocorrelation, as well as other system characteristics on the burst ratio.
The most-important contribution of the paper is Theorem 1, in which a formula for the burst ratio in an AQM queue fed by the Markov-modulated Poisson process (MMPP) is proven. The MMPP is known to fulfill the requirements stated in Goal (i): it indeed enables arbitrary modeling of the autocorrelation function, as well as the interarrival time distribution [
25]. Theorem 1 is general in the sense that the drop probability function is not specified there; it may assume an arbitrary form.
Goal (ii) was realized by presenting and discussing the numerical results for a family of arrival processes, in which the strength of the autocorrelation can be controlled by a parameter, and for a family of drop probability functions, in which the strength of the AQM can be controlled by another parameter. Based on these results, several interesting observations on the values of B under different networking conditions were made.
The remaining sections of the paper are organized in the following way. In
Section 2, we recall previous analytical work either on the burst ratio or on queuing models of AQM based on the queue size. In
Section 3, we define the queueing model of interest and recall the definitions of the MMPP and the burst ratio. In
Section 4, the main theorem on the burst ratio is presented and proven. Then, in
Section 5, the numerical results are shown and discussed. They include the burst ratios computed for variable autocorrelations, drop probability functions, and link loads. In addition, the simulation results are presented for the verification of the theoretical results. In
Section 6, the results of the paper are recapped.
3. Queueing Model and Notations
We dealt with the single-server queue enhanced by the AQM mechanism based on the queue size and fed by an autocorrelated traffic.
Namely, packets arrive according to the MMPP (defined below) at a buffer of size K packets, where they form a queue. This queue is served by an output link. The service time distribution of a packet is exponential with parameter .
The AQM mechanism utilizes a predefined drop probability function . Namely, when a packet arrives, there are n packets in the buffer, the new packet is put into the buffer or deleted with probabilities and , respectively. Moreover, a new packet is always deleted if, upon its arrival, the buffer is full. This is equivalent to assuming that if , except that function may assume any form.
To define the Markov-modulated Poisson process [
42], we need a continuous-time Markov chain
with states
and infinitesimal matrix
Q. Moreover, we need vector
. The temporary behavior of the MMPP is that of the Poisson process at rate
. In other words, the evolution of the Markov chain determines the rate of Poisson arrivals. In practice, we often use rates
in the form of a diagonal matrix:
The basic properties and characteristics of the MMPP are known and can be found in [
42]. In this paper, the
lag autocorrelation of interarrival times in the MMPP is especially important, which can be found on page 153 of [
42]. We also need the total rate of the MMPP,
(see Formula (
10) below). As was already said, the MMPP enables fitting the autocorrelation function and the interarrival time distribution to observed traffic very well [
25].
The load of the link is defined as usual, . By , we denote the queue size at time t. It was assumed that the packet under service is included in , if applicable. Furthermore, K includes the service position as well. We used the convention that random process is left-hand side continuous, i.e., for every t.
Finally, we may define the burst ratio characteristic,
B, following [
26]. Given a long sequence of packets, some of them accepted into the buffer and some of them lost upon arrival, we have:
where
is the mean length of the series of lost packets in the studied sequence, while
is the theoretical mean length of the series of lost packets, expected in the case when all the losses are random and independent of each other.
If the loss ratio in the considered sequence is
L, then a simple verification shows that
. Therefore, we have another, more useful formula for the burst ratio:
Consider the following sequence: + + + – – + + + + – – – + + + +, where “+” denotes a packet accepted into the buffer, while “–” denotes a lost packet. The mean length of the series of lost packets is , while the loss ratio is . Hence, the theoretical mean length of the series, expected in the case when all the losses are random and independent of each other, is . Finally, . means that the losses in the sequence have an inclination to occur in series. This inclination is not very strong in the analyzed sequence; perhaps we would have said that if it was .
5. Numerical Examples
In these examples, rather than using one particular arrival process, we used a family of processes, dependent on a parameter
. Namely, a member of family
is parameterized as follows:
These matrices were selected so that, no matter what the value of
q is, the total arrival rate is
. Parameter
q is meant to set the autocorrelation of the interarrival times. Namely, the larger
q is, the stronger and longer-range autocorrelation is. Roughly speaking, the autocorrelation is practically negligible for
, mild for
, moderate for
, and very strong for
. The autocorrelation function for a few selected values of
q is depicted in
Figure 1. Manipulating
q, we were able to study the dependence of the burst ratio on the autocorrelation of the arrival process, without altering the link load.
We also used a parameter-dependent family,
, of drop probability functions:
In (
44),
r is some positive parameter, while the buffer size is
packets. Up to 50 percent occupancy of the buffer, there is no dropping: it begins when the occupancy exceeds 50 percent. Using
r, we can control the strength of the drop probability function, i.e., the smaller
r is, the stronger the dropping is. For instance, for
, the function is the square root, for
linear, for
quadratic, for
cubic, etc. Manipulating
r, we were able to study the dependence of the burst ratio on the strength of the drop probability function.
The same buffer size, 64, was used in the examples when AQM was not applied at all. In such a case, packets were dropped due to buffer overflows.
Finally, the service rate was used to control the load. As we normalized the arrival rate, , the load is simply a reciprocal of the service rate, .
5.1. Dependence on Autocorrelation
We firstly checked the influence of the strength of the autocorrelation on the burst ratio. In
Figure 2 and
Figure 3, the burst ratio versus
q is depicted for a few drop probability functions and the lack thereof.
Figure 2 was obtained for an underloaded link,
, while
Figure 3 for an overloaded link,
.
We can notice a few interesting things in
Figure 2 and
Figure 3. First of all, the burst ratio in the case with no AQM is always significantly higher than in cases with AQM and reaches sometimes very high values, around 3. An application of function
reduces
B substantially. Among the considered functions
, the best results were obtained for
and
and worse for
and
. This means that we need to balance the drop probabilities: too high or too low are not optimal. This effect is studied further in
Section 5.2.
Perhaps the most-interesting observation in
Figure 2 and
Figure 3 is that the burst ratio does not grow monotonically with the strength of the autocorrelation. In every case, there is clearly a maximum for a moderate autocorrelation, i.e., for
q around 0.2–0.5. This is rather bad news from the networking perspective, where we can expect the strength of the autocorrelation to be just like this, i.e., neither very weak nor extremely strong.
Note that such a non-monotonic behavior of the burst ratio is different than the behavior of other queueing characteristics (e.g., the loss ratio, the queue size), which are known to grow with the strength of the autocorrelation.
5.2. Dependence on Drop Probabilities
Now, we can check the influence of the drop probabilities on the burst ratio.
In
Figure 4, the burst ratio versus parameter
r of function
is depicted for a few arrival processes, i.e.,
,
,
, and
. A load of 1 was assumed in every case. (When examining
Figure 4, we should be reminded that the strength of the drop probability function decreases with
r, i.e., a larger
r means a weaker
.)
As we can see in
Figure 4, for every arrival process, there is an optimal value of
r, for which the burst ratio reaches its minimum. This optimal value, however, can be quite different for arrival processes of different autocorrelations. The optimal
r is about 2 for
, about 1.3 for
, about 0.7 for
, and about 0.4 for
. Hence, when the autocorrelation becomes stronger, a stronger drop probability function is required to achieve the best-possible burst ratio.
From this observation, it clearly follows that it is not possible to have one, universal function that provides the best burst ratio in all networking conditions. One value of r may provide an optimal B for a particular traffic autocorrelation, but when this autocorrelation changes, the resulting B may be far from optimal.
5.3. Dependence on the Link Load
Now, we can check the influence of the load of the link on the burst ratio.
In
Figure 5 and
Figure 6, the burst ratio versus
is depicted for the square root and quadratic drop probability functions, respectively. In both figures, the results for different arrival processes,
,
,
, and
, are depicted.
As can be seen, the burst ratio as a function of
is non-monotonic in most cases. Moreover, the autocorrelation has a profound effect on the dependence. The burst ratio reaches a maximum for a
of about 1, when the autocorrelation is low (
and
), and for a
of about 1.5, when the autocorrelation is moderate (
). Most likely, there is also a maximum for
, but for a very high
. There is also a minimum in
Figure 5 for
.
When comparing
Figure 5 and
Figure 6 with each other, we see that the quadratic drop function performed slightly better when the autocorrelation was low. On the other hand, when the autocorrelation became moderate, the square root function prevailed slightly. In general, the respective curves are similar between
Figure 5 and
Figure 6, and the maxima are located in similar places. This means that the impact of the drop probability function was less than the impact of the autocorrelation, which makes the curves within each figure significantly different.
5.4. Simulations
We also performed simulations to check the theoretical results for possible errors. For this purpose, we implemented, faithfully, in a simulator, the system defined in
Section 3.
The traffic was simulated according to the MMPP matrices
Q and
given in (
42) and (
43), respectively. To all the packets arriving to the queue, the dropping scheme with the function
given in (
44) was applied. Each simulation lasted as long as some predefined number of packets passing through the simulated system. During this time, the burst ratio parameter was measured.
The simulation of the MMPP can be performed using quantities
and
defined as follows:
where
denotes the
-thentry of matrix
A.
Having and , we can describe the progression of an MMPP in the following way. Given that the modulating Markov chain is in state i, it remains in this state for a random time, exponentially distributed with parameter . At the end of this time, the state of the Markov chain changes to j, which happens with probability , or a new packet arrives, which happens with probability . The simultaneous change of the modulating state and a packet arrival is impossible, due to the fact that if . Then, the procedure repeats, with the same or a new (if changed) modulating state.
In Algorithm 1, a practical realization of this procedure is presented in pseudocode. It produces the next packet interarrival time and updates the state of the modulating Markov chain. In this code,
i is an external variable keeping the state of the modulating chain,
m is the number of states of this chain,
is a pseudorandom number from interval
, arrays
and
store numbers
and
defined above, while the logarithm is used to generate an exponentially distributed random variable.
Algorithm 1 MMPP interarrival time generation and state update. |
; do ; ; for do for do ; if then ; if then ; ; ; /*updates the modulating state*/ while ; t; /*returns the next interarrival time*/ |
The simulations were implemented and performed in the modular simulator OMNeT++ [
43]. Several different configurations of the system were tested in the simulator, with different combinations of the autocorrelation, drop probabilities (and the lack thereof), and link loads. In every run of the simulator, 100 million packets passing through the queue were simulated.
Sample results are gathered in
Table 1. As we can see, in every case, the burst ratio obtained in the simulation conformed very well with the burst ratio obtained via Theorem 1.
6. Conclusions
We showed, using a new theorem, that AQM algorithms based on the queue size can reduce the burst ratio parameter significantly. This is an additional nice feature of them, because they were not designed with the burst ratio in mind.
To show this, we derived a formula for the burst ratio in a model of the system enabling an arbitrary autocorrelation function and an arbitrary interarrival time distribution of the traffic. Using this formula, several numerical examples were presented, in which the influence of different system parameters on the burst ratio was presented.
Firstly, we focused on the influence of the autocorrelation, which was an important feature of the considered model. The most-interesting observation was that the burst ratio did not grow monotonically with the strength of the autocorrelation. Such behavior of B is different than the behavior of other queueing characteristics (the loss ratio, the queue size), which are known to grow with the strength of the autocorrelation. In the considered examples, the burst ratio reached its maximum for a moderate strength of the autocorrelation. This is rather bad news from the networking perspective, where we can expect the strength of the autocorrelation to be just like this.
An application of AQM significantly reduced the burst ratio in every case. We considered a parameter-dependent family of drop probability functions and singled out the optimal function with respect to B, for every considered traffic parametrization. Apparently, the form of the optimal function depends strongly on the traffic autocorrelation, in a quasi-monotonic manner: the stronger the autocorrelation is, the stronger the drop probability function needed to achieve the best burst ratio.