Keywords

1 Introduction

The stability of CSMA networks is a notorious problem due to their distributed, random-access nature. From Aloha [3] to IEEE 802.11 Wi-Fi networks [1], we cannot even answer a very simple problem: what is the maximum stable-throughput (i.e., the network throughput equalling the aggregate input traffic load). For example, even for the simplest network version (such as buffered aloha networks), the throughput stability is still in discussion [7]. Therefore, this problem has attracted a great deal of attention such as [79, 12, 14, 16, 18].

Recent studies [8, 13, 17, 18] considered the throughput stability problem in a one-hop 802.11 DCF network, and arrived at contradictory conclusions. In [17], the authors asserted that (a) the maximum stable throughput can only be achieved in the nonsaturation regime (where nodes do not always have packets to transmit), and that (b) it can be much higher than the saturation throughput while providing satisfactory quality of service (QoS). In [13], the authors also observed that the stable throughput may rise higher than the saturation throughput before the network is saturated. However, in [18], the authors argued that to ensure stability, the throughput should not be allowed to exceed the level of the saturation throughput. They recommended operating a DCF network far below the saturation load to achieve stable throughput and to avoid unbounded mean packet delay and delay jitter. Finally, the research results in [8] indicated that the maximum stable throughput in a DCF network is approximately the same as the saturation throughput.

In this paper, we investigate this contradictory in general IEEE 802.11 EDCA [1] wireless LANs. 802.11 DCF (that provides a uniform channel contention access) is a special case of 802.11 EDCA (that provides a prioritized channel contention access). Compared with DCF, EDCA can support quality of service for real-time applications and therefore has received continuing attention [11, 15]. In EDCA, nodes belonging to high-priority (HP) access categories (ACs) are configured with a maximum contention window (CW) as small as 16, while nodes belonging to low-priority (LP) ACs are configured with a maximum CW as large as 1024. Such configurations enable HP nodes to enjoy a high opportunity to access the channel. In this paper, we consider an EDCA network with one HP AC and one LP AC (note that when the LP AC does not exist, the EDCA system reduces to the DCF system). Each AC behaves like a DCF network, and has two configurable CWs: the minimum and maximum CWs (i.e., Wmin and Wmax). For simplicity, we assume that Wmin = Wmax; [5] showed that the 802.11 system with such a configuration is similar to the slotted p-persistent CSMA system and can successfully emulate the 802.11 system with Wmin \(\ne \) Wmax.

Our study manifests that the maximum stable throughput is not simply larger than, less than, or equal to the saturation throughput as argued in [8, 13, 17, 18]. We show that given the node number, there exists a unique optimal HP CW. The HP throughput is only achieved at the optimal HP CW in the saturation regime. The optimal HP CW partitions the whole HP CW range into two intervals: over one interval, the maximum stable HP throughput may be significantly higher than the saturation throughput; over the other, the maximum stable HP throughput is tightly bounded by the saturation throughput. Most existing related research fails to differentiate the two intervals, implying that the derived results are inaccurate or hold true partially. This study helps utilize the system resources fully; in particular, it shows that the HP AC can acquire more bandwidth allocations even when it coexists with the LP AC.

The rest of this paper is organized as follows. Section 2 models the exact and asymptotic HP throughput. Section 3 investigates the maximum stable HP throughput. Section 4 illustrates the maximum stable HP throughput and verifies our augments via simulation. Section 6 concludes this paper.

2 HP Throughput

The considered EDCA system, running in the basic mode and ideal channel conditions, consists of one HP AC and one LP AC. Each node has an infinite buffer size. All data packets from HP and LP nodes are transmitted to the AP, and the AP acts purely as the receiver of data packets.

The LP AC has \(n_{0}\) nodes. Each LP node has the same packet size \(L_{0}\) and always generates a random backoff count uniformly distributed in \([0,W_{0}]\) for each new transmission or retransmission, where \(W_{0}>1\). We assume that each LP node is in saturation operation (i.e., the node always has packets to transmit) because here we study the maximum stable throughput that the HP AC can achieve, regardless of how the LP offered load varies.

The HP AC has n nodes. Each HP node has the same packet size L and packet arrival rate \(\lambda \), and always generates a random backoff count uniformly distributed in [0, W] for each new transmission or retransmission, where \(W>1\).

When \(n_{0}=0,\) the considered EDCA system reduces to a DCF system without a backoff mechanism.

2.1 Exact HP Throughput

We now express the total throughput of HP nodes.

Let \(\beta _{0}\) \(\in (0,1)\) be the saturated attempt rate (i.e., the number of transmission attempts per slot) for each LP node and then we have \(\beta _{0}=2/(W_{0}+1)\) from [4]. Let \(C_{0}=(1-\beta _{0})^{n_{0}}\ \)be the probability that none of the \(n_{0}\) LP nodes transmits packets.

Let \(\beta \in (0,1)\) be the general (i.e., saturated or nonsaturated) attempt rate for each HP node. Let \(\varOmega \) be the mean time that elapses for one decrement of the backoff counter. Then, we have

$$\begin{aligned} \varOmega&=P_{e}\sigma +P_{b}T_{b}+P_{b_{0}}T_{b_{0}}+P_{c}T_{c} ,\\ \text {where }P_{e}&=(1-\beta )^{n}C_{0},\nonumber \\ P_{b}&=[1-(1-\beta )^{n}]C_{0},\nonumber \\ P_{b_{0}}&=(1-\beta )^{n}[1-C_{0}],\nonumber \\ P_{c}&=1-P_{e}-P_{b}-P_{b_{0}}.\nonumber \end{aligned}$$
(1)

In (1), \(P_{e}\) is the probability of an idle slot; \(P_{b}\) (\(P_{b_{0}}\)) is the probability that at least one of the n HP (\(n_{0}\) LP) nodes transmits when none of the \(n_{0}\) LP (n HP) nodes transmits packets; \(P_{c}\) is the probability of a collision involving both HP and LP nodes. \(\sigma =1\) slot. \(T_{b}\) (\(T_{b_{0}}\)) \(\gg \sigma \) is the mean time of a successful transmission for each HP (LP) node and is assumed to equal the mean time of a collision involving HP (LP) nodes only; we adopt this assumption for simplifying the analysis and this assumption can be removed easily [20]; \(T_{b}\) (\(T_{b_{0}}\)) can be calculated by \(T_{pkt}(L)\) in Table 1, where L denotes the packet size of HP or LP nodes. \(T_{c}\) (\(=\max (T_{b},T_{b_{0}})\)) is the mean time for a collision involving both HP and LP nodes.

Table 1. Parameters for 802.11b basic mode.

Exact HP Throughput: Given the HP node number n and the general HP attempt rate \(\beta \), the total HP throughput, \(\varGamma (n,\beta ),\) is defined to be the number of bits transmitted successfully by HP nodes in the time interval of \(\varOmega .\) Then \(\varGamma (n,\beta )\) is expressed as

$$\begin{aligned} \varGamma (n,\beta )=\frac{P_{s}L}{\varOmega }, \end{aligned}$$
(2)

where \(P_{s}=n\beta (1-\beta )^{n-1}C_{0}\) is the probability of a successful transmission from any of the n HP nodes, when none of the \(n_{0}\) LP nodes transmits packets.

Saturated HP Throughput: Let \(\beta _{s}\) be the saturated HP attempt rate, which is equal to \(\beta _{s}=2/(W+1)\) from [4]. We then call \(\varGamma (n,\beta _{s})\) the saturated HP throughput.

2.2 Asymptotic HP Throughput

We call \(k\triangleq n\beta \in [0,\infty )\) the total HP attempt rate and define a constant \(\eta \) as follows:

$$\begin{aligned} \eta \triangleq -\frac{(T_{b_{0}}-T_{c})+C_{0}(\sigma -T_{b}-T_{b_{0}}+T_{c} )}{T_{c}+C_{0}(T_{b}-T_{c})}\text {.} \end{aligned}$$
(3)

Asymptotic HP Throughput: Let \(\varGamma (k)\) \(\triangleq \lim \limits _{n\rightarrow \infty }\varGamma (n,\beta )\) be the asymptotic HP throughput. Theorem 1 below expresses \(\varGamma (k)\) and shows that \(\varGamma (k)\) has a unique maximum value \(\varGamma (k_{opt})\), where \(k_{opt} ={\text {argmax}}_{k\in [0,\infty )}\varGamma (k)\) is called the optimal total HP attempt rate.

Theorem 1

(a) \(\varGamma (k)\ge 0\) is continuous in [\(0,\infty \)) and is given by

$$\begin{aligned} \varGamma (k)=\frac{k}{e^{k}-\eta }\frac{C_{0}L}{T_{c}+C_{0}(T_{b}-T_{c})}, \end{aligned}$$
(4)

where \(\eta \in (0,1)\).

(b) \(\varGamma (k)\) is increasing in [\(0,k_{opt}\)] and is decreasing (\(k_{opt},\infty \)), where

$$\begin{aligned} k_{opt}=\mathscr {W}_{0}(\frac{-\eta }{e})+1, \end{aligned}$$
(5)

where W\(_{0}\)(\(\cdot \)) is one branch of the Lambert W(z) function [6], \(W(z)e^{W(z)}=z\), for any complex number z.

Proof: Please refer to the Appendix.

In general, \(\varGamma (k)\) can well approximate \(\varGamma (n,\beta )\) as shown in Fig. 1. Hereafter, we use \(\varGamma (k)\) as a theoretical proxy for \(\varGamma (n,\beta )\). The dashed circle curve in Fig. 1 illustrates \(\varGamma (k)\). Note that (i) when \(k=k_{s}\triangleq n\beta _{s}\), we call \(\varGamma (k_{s})\) the asymptotic saturated HP throughput and have \(\varGamma (k_{s})\le \varGamma (k_{opt})\) obviously, and (ii) when \(C_{0}=1\) and \(T_{b}=T_{b_{0}}\) (i.e., no LP nodes exist), \(k_{opt}\) reduces to the solution to (10) in [10].

Fig. 1.
figure 1

\(\varGamma (n,\beta )\) and \(\varGamma (k)\) as n and W vary, where \(k=n\beta \) and \(\beta =1/(W+1)\).

3 Maximum Stable HP Throughput

Let us define the stable HP throughput first.

Stable HP throughput: The HP throughput \(\varGamma (k)\) is said to be stable if for a given aggregate input traffic load, \(n\lambda L\), (a) there exists a theoretical \(k>0\) so that the total HP throughput \(\varGamma (k)=n\lambda L\), and (b) the theoretical k is achievable, namely, all HP nodes are able to jointly and spontaneously tune their respective CWs to produce such a k.

Fig. 2.
figure 2

(a) Maximum stable HP throughput and (b) total packet delay in ms when W varies and \(W_{opt}\) = 348 for a two-AC EDCA network without a backoff mechanism. Note that \(W < W_{opt}\) corresponds to \(k > k_{opt}\).

Remarks: (i) The statement that k is achievable implies \(\varGamma (k)=n\lambda L\), but the converse is not true; the difference is that the k in the original statement represents a realistic value while the k in the converse statement would represent a theoretical value. (ii) We give an example where k is unachievable. Consider the settings \(n=50\), \(W=5\) and \(L=1000\), as shown in Fig. 2. We have \(k_{s}=2n/(W+1)\approx 16.7>k_{opt}=0.2866\). Theoretically, k may assume the value \(k_{opt}\) since \(k\in [0,\) \(k_{s}]=[0,\) \(k_{opt}]\cup (k_{opt},\) \(k_{s}]\). However, \(k=k_{opt}\) is unachievable, because the throughput is increasing in \(k\in [0,k_{opt}]\) and the simulated maximum stable throughput is about 2.18 Mbps, which is far less than 4.3 Mbps corresponding to \(k=k_{opt}\). (iii) The statement that k is achievable implies that the nodes can produce such a k, but not vice versa, because producing a \(k\ (\)say, \(k=0.2866\)) possibly requires that the offered load should be far larger than the throughput \(\varGamma (k)\).

Proposition 1 below presents a conjecture about the achievable interval of k.

Proposition 1: there exists a \(k_{\max }\) \(\in (0,\) \(k_{opt}]\cap (0,\) \(k_{s}]\) so that \(k\in [0,k_{\max })\) is achievable, \(k=k_{\max }\) is not necessarily achievable, and \(k\in (k_{\max },k_{s}]\) is unachievable.

From Proposition 1, \(\varGamma (k_{\max })\) is a tight upper bound on the stable HP throughput, namely, any traffic load below \(\varGamma (k_{\max })\) is stable. Note that (i) the throughput \(\varGamma (k_{\max })\) might be unstable, meaning that we possibly need to inject a much higher traffic load than \(\varGamma (k_{\max })\) in order to attain \(\varGamma (k_{\max })\); (ii) \(\varGamma (k_{\max })\) \(\le \varGamma (k_{opt})\) and \(\varGamma (k_{\max })\) is different from \(\varGamma (k_{s} )\), but they might be equal sometimes, for example, when (0,  \(k_{s} ]\subset (0,\) \(k_{opt}]\), which will explained later. In the following, we investigate \(\varGamma (k_{\max })\) when the HP CW is either statically configured or dynamically adjustable.

3.1 Two Cases of Maximum Stable HP Throughput

From Theorem 1, given n, there exists an optimal attempt rate, \(\beta _{opt}=k_{opt}/n\), where \(k_{opt}\) is given by (5). Further, we can calculate the optimal contention window, \(W_{opt}\), as follows.

$$\begin{aligned} W_{opt}=\frac{2}{\beta _{opt}}-1=\frac{2n}{k_{opt}}-1. \end{aligned}$$

We point out that \(W_{opt}\) partitions the whole contention window range into two intervals: [1, \(W_{opt}\)) and (\(W_{opt},\infty \)); for \(W\in [1,W_{opt})\), the maximum stable HP throughput \(\varGamma (k_{\max })\) may be significantly higher than the saturation throughput, while for (\(W_{opt},\infty \)), the maximum stable HP throughput \(\varGamma (k_{\max })\) is tightly bounded by the saturation throughput.

We now explain our arguments as follow. Given n and W, the per-node and total saturated attempt rates are \(\beta _{s}=2/(W+1)\) and \(k_{s}=n\beta _{s},\) respectively. \(\varGamma (k_{\max })\) varies depending on the relationship between \(k_{s}\) and \(k_{opt}\).

The Case of \({k_{s}}\le {k_{opt}}\). When \(k_{s}\le k_{opt}\), we conjecture \(\varGamma (k_{\max })=\varGamma (k_{s})\) because (i) \(\varGamma (k)\le \varGamma (k_{s})\) for any \(k\le k_{s}\) from Theorem 1 (b), and (ii) any HP node can really transmit packets at the attempt rate of \(\beta _{s}\) in saturated operation.

The Case of \({k_{s}}>{k_{opt}}\). When \(k_{s}>k_{opt}\), there exists \(k_{0}\in [0,k_{opt}]\) such that \(\varGamma (k_{0})=\varGamma (k_{s})\) from the intermediate value theorem, since \(\varGamma (k)\ge 0\) is continuous and \(0\le \varGamma (k_{s})\le \varGamma (k_{opt})\). Consequently, we have \(\varGamma (k)\ge \varGamma (k_{0})=\varGamma (k_{s})\) for any \(k\in [k_{0},k_{opt}]\subset [0,k_{s}]\) since \(\varGamma (k)\) is increasing over \([k_{0},k_{opt}]\).

Consider the possible situation where \(k_{\max }\) \(\in [k_{0},k_{opt}]\). This would imply that \(\varGamma (k_{\max })\ge \varGamma (k_{s})\) and that \(\varGamma (k_{\max })\) would appear before the saturation operation since \(k_{\max }\le k_{s}\). Such a phenomenon has been observed in Fig. 5 in our previous paper [20] and such a maximum throughput is called the “presaturation throughput peak” in [18].

However, contrary to the opinion expressed in [18] that such a presaturation throughput peak might not be sustainable and therefore the traffic load should be maintained far below the saturation load for DCF with a backoff mechanism, our simulation results show that for some CW settings, such a presaturation throughput peak is sustainable. Furthermore, it can be far above the saturation load, while the total packet delay can be very low. For example, as illustrated in Fig. 2, when CW = 20 (which is a case of \(k_{s}>k_{opt}\)), the simulated maximum stable throughput = 2.65 Mbps is far larger than the saturation throughput of 0.24 Mbps, while the mean total packet delay is only about 2 ms.

An intuitive explanation is as follows. A very large attempt rate such as that required for saturated operation can cause too many collisions and lead to a reduced throughput. By limiting the attempt rate, we can potentially achieve a higher throughput than the saturated throughput, whilst maintaining stability. Nevertheless, finding \(\varGamma (k_{\max })\) is a challenging task in the case when \(k_{s}>k_{opt}\) and we leave this topic for future research.

4 Model Verification

In this section, we validate the effectiveness of the prediction of the maximum stable HP throughput. We use the TU-Berlin 802.11e simulator [2] in ns2 version 2.28 as a validation tool. In the 802.11e simulator, we disable the binary exponential backoff algorithm by letting the maximum CW be equal to the minimum CW (i.e., Wmax = Wmin), set the retry limit to 7 (setting a larger retry limit, say 100, just produces a negligible impact on the simulation results by our experiments), and use the DumbAgent routing protocol, whose header is 40 bytes. The other protocol parameter settings are listed in Table 1. In addition, we set \(W_{0}=400\), \(n_{0}=10\), and \(L_{0}=500\) bytes for the LP AC unless otherwise specified.

The target of the simulation is to obtain the maximum stable throughput as the CW varies. In simulation, the HP throughput \(\varGamma (k)\) is said to be stable if the error between the input traffic load \(n\lambda L\) and the obtained throughput \(\varGamma (k)\) is less than 1 %, namely,

$$\begin{aligned} \frac{\left| \varGamma (k)-n\lambda L\right| }{n\lambda L}<1\,\%. \end{aligned}$$
(6)

For each simulation value, the running time is 200 seconds when \(k\le k_{opt}\), whereas it is 1000 seconds otherwise to exclude the phenomenon that the system once evolves to saturation operation and will never get out of it again, as explained in Fig. 6 in [18]. Note, however, that we do not observe a distinct change in simulation results when the simulation time is set to 1000 seconds, in comparison with 200 seconds. In addition, for readability, we only plot the theoretical saturated throughput in Fig. 2, but its accuracy has been widely validated in [4, 19, 20].

We ran two experiments to verify our augments. We now explain the two experiments.

Experiment 1 to illustrate the error between \(\varGamma (k)\) and \(\varGamma (n,\beta )\): In the first experiment, we demonstrate that the asymptotic throughput \(\varGamma (k)\) can well approximate the exact throughput \(\varGamma (n,\beta )\). Theoretically, the approximation condition is \(n\gg \beta .\) In practise, the approximation is already good when n is moderately larger than \(\beta \), which is readily satisfied. Figure 1 plots \(\varGamma (k)\) and \(\varGamma (n,\beta )\) for a two-AC wireless LAN when \(n=2,3,\ldots ,20\), \(W=10\), 30, 100 and \(L=1000\) bytes, where \(k=n\beta =2n/(W+1)\). From this figure, we can see that the \(\varGamma (k)\) curve closely matches the \(\varGamma (n,\beta )\) curve for each W even when \(n=2\). For example, for \(n=2\), \(\beta =0.1818,0.064\)5, and 0.0198, and the approximation error = 9 %, 4 %, and 1.5 % when \(W=10,30,100\), respectively. This indicates that (i) the approximation condition is not restrictive and (ii) the approximation accuracy increases as W increases.

Experiment 2 to illustrate the relationship between the maximum stable throughput and the saturation throughput: In the second experiment, we consider Poisson arrivals and demonstrate the maximum stable HP throughput and the mean total packet delay when the HP CW is statically configured. In this experiment, we set \(n=50\) and \(L=1000\) bytes. The optimal total HP attempt rate \(k_{opt}\ \)is 0.2866 and therefore the optimal per-node HP CW is \(W_{opt}=348\). Figure 2(a) plots the saturated HP throughput and the simulated maximum stable HP throughput, while Fig. 2(b) plots the corresponding total packet delay, when \(W=\) 5, 10, 20, 60, 100, 348, 360, 400, 700, 1000, 1300, 1600, and 1900. In two subfigure, we plot W on a log-scale for readability, but we label the corresponding W value in linear units near the curve points. Note that since \(k_{s}=2n/(W+1)\), \(W<W_{opt}\) implies \(k_{s}>k_{opt}\) and, conversely, \(W>W_{opt}\) implies \(k_{s}<k_{opt}\). We now explain how the experiment was conducted and discuss its result.

  • When \(W\ge 348\), for each W, we increase the input offered load according to \((0.9+j0.05)\varGamma (k)\) Mbps as j increases from 1 to 3, and then find the maximum stable throughput and the corresponding total delay. From the figure, we see that when W increases from 348 to 1900, the simulated maximum stable HP throughput decreases while the corresponding delay increases quickly. The simulation curve of the maximum stable throughput is slightly below the theoretical curve of the saturation throughput, confirming that the saturation throughput is a tight upper bound on the stable throughput.

  • When \(W<348\), for each W, we increase the input offered load according to \(j\varGamma (k_{opt})/8\) Mbps as j increases from 1 to 8, and then find the maximum stable throughput and the corresponding total delay. From the figure, we see that when W increases from 5 to 100, the simulated throughput increases from 2.1 Mbps to 3.8 Mbps while the corresponding delay increases from 2 ms to 16 ms. In contrast, the theoretical saturation throughput underestimates the simulation result, especially when W is small. For example, when \(W=20\), the predicted throughput value is 0.19 Mbsp while the simulated throughput is 2.68 Mbps and the simulated delay is 3.8 ms only. This observation suggests that for some CW settings, the recommendation in [18] calling for operating a wireless LAN far below the saturation load might be too conservative.

The recommended settings for voice transmission in EDCA are backoff factor = 2, Wmin = 8, and Wmax = 16. As a result, the corresponding mean CW is less than 20. Even if we were to adopt such Wmin and Wmax settings (including a backoff mechanism) for HP nodes in our simulations, we can safely deduce that the saturation throughput will still significantly underestimate the maximum stable throughput, from the huge gap between the simulated stable throughput and the theoretical saturation throughput when \(W\le 20\) in Fig. 2.

5 Conclusion

In this paper, we investigate the throughput stability in 802.11 networks, and point out the reasons behinds existing contradictory results. This study provides new insights on the unsaturation performance and helps utilize the system resources fully.