Keywords

1 Introduction

We consider an IEEE 802.11 wireless local area network (WLAN) which consists of a set of APs and a set of heterogeneous clients (IEEE 802.11 b/g/n). A client can send data frames via an AP only when it is associated with that AP. This requires a client to AP association. An AP can serve its associated clients only when the AP is activated with a frequency channel. The 2.4 GHz frequency spectrum has a total of 11 channels \([1,2, \cdots , 11]\) available for this purpose. The central frequencies of each channel is separated by 5 MHz. Two channels are known to be non-overlapping channels (NOCs), if and only if they have a separation of 5 channels or more. So, accordingly, there can be maximum of 3 NOCs 1, 6 and 11 having channel separation of 5. All other channel pairs having separation of less than 5 channels are known to be partially overlapping channels (POCs). Often a dense deployment of APs is required to improve the capacity and throughput of the WLAN. Due to the limited number of NOCs, all APs in a given area may not be activated with NOCs only. As a result, many clients, which are close to a particular AP, may or may not be able to associate with that AP. This may lead to enormous reduction in maximum achievable aggregate throughput of the network. So, assigning only NOCs to the APs would definitely ensure minimum or no interference. However, practically, it is not feasible to assign NOCs to each of the large number of APs as it introduces co-channel interferences. This has to be dealt with properly in order to measure the actual achievable throughput of the clients as well as the aggregate throughput of the network. Throughput achievable in the presence of interferences is found to be much less than the theoretical maximum throughput obtained in the ideal case involving no interferences. Thus we can infer that using only NOCs, we can achieve ideal condition undoubtedly, but the aggregate throughput may not be optimized.

This problem may be resolved to a certain extent using the POCs. It is observed that, certain APs, which could not be activated using NOCs only, can be activated with POCs. This, at the end, may lead to increased aggregate throughput, if we can carefully select a subset of APs for activation with POCs. However, this does not indicate that all the APs must be activated using either NOCs or POCs to achieve the improved throughput. Such possibility may even lead to a reduction of the throughput instead of increasing it as POCs will lead to an increased level of interference with the APs activated with NOCs. Our results reveal that in case all APs are activated, the aggregate throughput achieved is not maximum, in some cases, even less than the aggregate throughput obtained using only NOCs. Thus, POCs can be used to our benefit if and only if they are used optimally and carefully.

In this paper, we consider a heterogeneous client environment where IEEE 802.11 b/g/n types of clients are present in the network. Our primary aim is to make the most optimized use of POCs for AP activation and associations of heterogeneous clients, while taking care of the effect of interferences to determine the actual achievable aggregate throughput. To achieve this, we develop an effective greedy algorithm which finds an appropriate association and channel assignment using NOCs as well as POCs in the most optimized way. Our algorithm works as follows. Initially, NOCs are used as far as possible considering the interference and the number of available NOCs. The heterogeneous clients are then temporarily associated with the APs activated so far with the NOCs only and the current maximum achievable aggregate throughput is calculated. The unassigned APs are then considered for assignment with POCs. For an unassigned AP, we choose a POC that causes minimum interference with the existing assignments and temporarily assign that POC to the AP. We recalculate the aggregate throughput after assigning a POC to an AP by taking care of the interference effects. If such a temporary assignment of POC causes improvement in the aggregate throughput then only we consider the concerned POC to be permanently assigned to the AP, otherwise, that AP is kept unassigned. Then again, the clients are reassociated with the activated APs considering the newly activated AP. Our simulation results show a significant improvement of the aggregate throughput obtained by using both NOCs as well as POCs over using NOCs only.

2 Literature Review

Recent studies on heterogeneous clients include [13] where study has been conducted to show the effect of legacy clients (IEEE 802.11 a/b/g) on IEEE 802.11n clients. With CSMA/CA medium access control, clients with lower data rates tend to dominate, whereby, all other clients tend to have the same lower throughput. Moreover, least-load AP association also does not seem appropriate for IEEE 802.11n WLANs. This is mainly due to the fact that IEEE 802.11n clients have much higher data rates in comparison to legacy clients and exhibit frame aggregation. So, they present various AP association algorithms that would mitigate the problems related to high data rate to a large extent. However, the entire work has been conducted in an interference-free environment. In our work, we have included the effect of interference to present a more realistic situation. In our study we have considered both the co-channel and adjacent-channel interferences while assigning channels to the APs and their effect on achievable aggregate throughput. We have used the concept of interference factor reported in [6], in order to determine the amount of interference caused due to POCs. In [4], interferences have been considered while calculating the throughput, but they have considered the IEEE 802.11b clients only.

As argued in [5], POCs can be highly beneficial as far as spatial reuse is concerned. The POCs not only allow spatial reuse, but also encourage multi-channel communication in mesh networking environment. It has been reported that interference decreases with increasing channel separation. Interference with channel separation more than or equal to 5, has minimum or no interference. However, using only NOCs, does not always guarantee the most optimized channel assignment. So, in our work, we aim to use POCs together with NOCs, which may lead to the most optimized channel assignment resulting in maximum achievable aggregate throughput. Thus in our study both co-channel as well as adjacent channel interferences have been taken care of, for the improvement of the aggregate throughput. In [9], the POCs are exploited to improve the per user throughput and the channel utilization, but they have considered only homogeneous clients. In [10], although POCs have been considered, there all links are assigned channels mandatorily. But in our work, we have assigned a POC to an AP subject to the condition that they improve the maximum aggregate throughput. If assigning a POC to an AP results in reduction in the aggregate throughput, that AP is left unassigned. This aspect has not been taken care of in [10]. In fact, as per our findings, if all APs are activated, the aggregate throughput achieved may not be optimum, in some cases, even less than the aggregate throughput obtained using only NOCs. In [6], the POCs have been used, but their main consideration was load balancing. So, here, we have approached in a different aspect where POCs are used only if that is beneficial with respect to the achievable aggregate throughput. So, we have focused in performance improvement rather than load balancing.

3 Calculation of Throughput in the Presence of Interference

First we calculate the individual throughput that a client will get from the AP to which it is associated, when only NOCs are used and hence no interference is involved here. Then, using NOCs as well as POCs, the throughput calculation is considered where the effect of interference has been taken into account. After computing this individual throughput obtained by the clients from their respective serving APs, we calculate the aggregate throughput of the network.

3.1 Individual Throughput Obtained by the Clients

In order to calculate the power received by a client from an AP, the model used here is Two-Ray Ground Propagation Model [11]. In this model, the signal power attenuates fast as the transmission distance increases. Define \(P_t\) as the transmitting power and d as the distance between the transmitter and its receiver. In such a model, the receiving power \(P_r\) is given by:

$$\begin{aligned} P_r=\frac{(G_tG_rh_t^2h_r^2)P_t}{d^k} \end{aligned}$$
(1)

where \(G_t\) is the antenna gain at the transmitter side, \(G_r\) is the antenna gain at the receiver side, \(h_t\) is the antenna height at the transmitter side, \(h_r\) is the antenna height at the receiver side and k is the path-loss parameter typically having a value between 2 and 4. The maximum transmission ranges are taken as 450 ft for 802.11b clients, 325 ft for 802.11g clients and 250 ft for 802.11n clients as given by CISCO in [12, 13]. Individual throughput obtained by the clients depend on their distances from their respective serving APs which are limited by their maximum transmission ranges.

Throughput Calculation When There Is No Interference: No interference is involved when only NOCs are used. Let \(P_r\) be the power received at the client from its serving AP as calculated using Eq. (1). The individual throughput perceived by a client from its associating AP can be expressed by using Shannon’s throughput limit as:

$$\begin{aligned} \displaystyle T_{max}=W\log _2\left( 1+\frac{P_r}{WN_0}\right) \end{aligned}$$
(2)

where W is the channel bandwidth in Hz and \(N_0\) is total noise power density in Watts/Hz.

Throughput Calculation When Interference Is Involved: Interference is involved when NOCs as well as POCs are used. To model the interference we have used the metric interference factor defined in [6]. The interference factor \(IF_{ij}\) between two APs operating on channels i and j is defined as [6]:

$$\begin{aligned} IF_{ij}= & {} {\left\{ \begin{array}{ll}\frac{IR(\delta )}{d_{ij}}&{}\text {when}\; 0 \le \delta< 5 \;\text {and} \; d_{ij} < IR(\delta )\\ 0&{} \text{ otherwise } \\ \end{array}\right. } \end{aligned}$$
(3)

where \(IR(\delta )\) is the interference range for channel separation \(\delta = |i - j|\) and \(d_{ij}\) is the distance between the two APs operating on channels i and j.

Two APs will interfere to each other if they are within the interference range of each other and their channel separation is less than 5. That is, two APs operating on channels i and j are interfering if \(0 \le \delta < 5\) and \(d_{ij} < IR(\delta )\) where \(\delta =|i-j|\). Note that \(IF_{ij} > 1\) if the concerned APs are interfering and \(IF_{ij} = 0\) if they are non-interfering. To measure the interference ranges for different channel separations, we have used the experimental results reported in [68] as shown in Table 1.

For calculation of the throughput perceived by a client from a particular AP, we have calculated the channel separation between the concerned AP and all other APs interfering to that AP. Then, taking the distances between the particular AP and the APs with which it is interfering, the interference factors are calculated using Eq. (3). Accordingly, the total interference received at the client is calculated and then Shannon’s throughput limit is used to obtain the throughput.

Table 1. Interference ranges

Suppose a client is served by an AP which operates on channel i. Let \(I_{ij}\) be the interference that the client will receive from another AP operating on channel j. Let \(P^i_r\) and \(P^j_r\) be the powers received at the client from the APs operating on channels i and j respectively. Obviously, the client will not receive any interference when the concerned APs are non-interfering. That is, \(I_{ij}=0\) if the APs operating on channels i and j are non-interfering. The received interference at the client is given by \(I_{ij}=(1 - \frac{1}{IF_{ij}})P^j_r\) if the concerned APs are interfering. Note that \(0 < (1 - \frac{1}{IF_{ij}}) \le 1\). Also, with increase in \(IF_{ij}\), the fraction \(\frac{1}{IF_{ij}}\) decreases and accordingly, the term \((1-\frac{1}{IF_{ij}})\) increases, as expected. Now let us assume that there are \(\ell \) APs operating on channels \(j_1, j_2, \cdots , j_{\ell }\) which are all interfering to the AP operating on channel i. The total interference received at the client served by the AP operating on channel i is then given by:

$$\begin{aligned} {\texttt {\textit{I}}}_i = \displaystyle \sum _{x=1}^{\ell } I_{ij_x} = \displaystyle \sum _{x=1}^{\ell } (1 - \frac{1}{IF_{ij_x}})P^{j_x}_r \end{aligned}$$
(4)

Note that \(P^i_r\) and \(P^{j_x}_r\;\forall x = 1, 2, \cdots , \ell \) can be computed using Eq. (1). Now for throughput calculations, we have used the Shannon’s throughput limit stated in Eq. (2) where \(P_r\) and \(WN_0\) are replaced by \(P^i_r\) and \(\displaystyle WN_0 + I_i\). Hence the throughput obtained by a client from an AP operating on channel i is given by:

$$\begin{aligned} \displaystyle T_{max}=W\log _2\left( 1+\frac{P^i_r}{WN_0 + \displaystyle \sum _{x=1}^{\ell } (1 - \frac{1}{IF_{ij_x}})P^{j_x}_r}\right) \end{aligned}$$
(5)

3.2 Aggregate Throughput of the Network

Suppose there are n clients and let \(T_1, T_2, \cdots , T_n\) be the throughput obtained by them from their respective serving APs as calculated using Eq. (2) or (5) depending on the case. The aggregate throughput of the network is defined as the logarithmic sum of individual throughput obtained by the clients. That is, aggregate throughput is given by:

$$\begin{aligned} T = \displaystyle \sum _{i=1}^{n} \log _{10}(T_{i}) \end{aligned}$$
(6)

Our objective is to maximize the aggregate throughput T.

4 Motivational Example

In this section we present few examples in order to explain our idea in detail. For these examples, we assume that each AP can detect the transmission of data packets by the other APs, regardless of the client positions. The interference relationship between the APs considered in these examples are comparable to the type-4 conflict situation as reported in [4]. Clients associated with an AP gets the maximum achievable throughput as calculated using Shannon’s throughput limit as stated in Eq. (2) or (5) depending on the applicable case. The aggregate throughput is then computed using Eq. (6).

Fig. 1.
figure 1

Different associations between the clients and the APs

For the first example, we consider the association between 7 clients \(C^g_1\), \(C^b_2\), \(C^n_3\), \(C^b_4\), \(C^g_5\), \(C^n_6\), \(C^n_7\) and 5 APs AP 1, AP 2, AP 3, AP 4, AP 5 as shown in Fig. 1(a) where grey colored APs denote active APs and \(C^x_y\) denotes that client y is of type 802.11x. Here AP 1, AP 2 and AP 3 are activated with NOCs 1, 6, and 11 respectively and AP 4 and AP 5 remain inactivated. The label [a] associated with an AP represents that channel a is assigned to that AP. An edge between a client and an AP represents that the client is associated to that AP. The weight d of an edge between a client and an AP represents that the client is at distance d meters from its associated AP. Since all 3 activated APs are assigned NOCs, so there is no adjacent-channel interference. Also, each activated AP is assigned a distinct NOC so there is no co-channel interference too. Hence each pair of activated APs is non-interfering to each other. For this association, the aggregate throughput becomes \(AT_1=11.37\) Mbps. For this and all other examples, we have used pathloss factor as 2, the value of \(N_0\) as \(7.9432 \times 10^{-14}\) Watts/Hz, the transmission power of each AP as 20 dBm and the channel bandwidth as 20 MHz.

For the second example, we consider a different association of the clients and the APs where AP 1, AP 2 and AP 4 are activated with the 3 NOCs 1, 6, and 11 respectively as shown in Fig. 1(b). Here AP 3 and AP 5 remain inactivated. In this case, the aggregate throughput becomes \(AT_2=11.49\) Mbps.

So, from Fig. 1(a) and (b), it is seen that the aggregate throughput in the second association is greater than that in the first one. It shows the fact that the aggregate throughput depends on both the selection of APs and the association between the clients and the selected APs even when only NOCs are used.

For the third example, we consider another association of the clients and the APs where AP 1, AP 2, AP 3, AP 4 are activated but AP 5 remains inactivated as shown in Fig. 1(c). But, since there are only 3 NOCs available and all APs are within the interference range of each other, so one of the APs must be assigned a POC. Here, AP 1, AP 2 and AP 4 are assigned with the NOCs 1, 6 and 11 respectively. Thus AP 3 must be activated with a POC in [\(1,2, \cdots , 11\)]. Since both NOCs and POCs are used, interference is involved in this case. In Fig. 1(c), an edge between two APs indicates that the corresponding APs are interfering to each other. Considering the interference ranges \(IR(\delta )\) shown in Table 1 the \(IF_{ij}\) values are computed and shown in Fig. 1(c) where the weight \((d,IF_{ij})\) of an edge between two APs indicates the distance in meters and the interference factor \(IF_{ij}\) between them. Here POC 3 is assigned to AP 3 as it produces minimum interference for this case. Aggregate throughput obtained in this case is \(AT_3=12.02\) Mbps which is higher than both the previous examples. Thus, it clearly shows that using POCs together with NOCs can be advantageous in increasing the maximum achievable aggregate throughput.

In the forth example, all 5 APs are activated as shown in Fig. 1(d). But, since there are only 3 NOCs available and all APs are within the interference range of each other, so two of the APs must be assigned 2 POCs. Here, AP 1, AP 2 and AP 4 are assigned with the NOCs 1, 6 and 11 respectively. It is seen that POCs 3 and 5 produce minimum interference for this case and hence POCs 3 and 5 are assigned to AP 3 and AP 5 respectively. The aggregate throughput obtained in this case is \(AT_4=10.63\) Mbps which is even lower than the throughput obtained using NOCs only (first example). So it is found that activating all the 5 APs with NOCs and POCs actually reduces the aggregate throughput instead of increasing it. Thus, POCs can be used to our benefit if and only if they are used optimally and carefully.

5 Proposed Algorithm for Throughput Maximization Using POCs

In this section we describe our proposed greedy algorithm to select an appropriate subset of APs for activation using NOCs as well as POCs and to find an association between the clients and the selected APs in the most optimized way.

The proposed algorithm works as follows. It first computes the maximum achievable throughput of each client from each AP. The APs are then sorted based on their potential contributions to the aggregate throughput. The available NOCs are then assigned to the APs one by one following this order. If no NOC is available for an AP that AP is left unassigned. The clients are then associated with the APs activated so far based on their obtained throughput from the APs. The maximum achievable aggregate throughput is then calculated for this configuration. This is the present maximum aggregate throughput and is marked as maxThr. Then, the rest of the unassigned APs are assigned with the most appropriate POC causing minimum interference. Now, every time a POC is assigned to an AP, the aggregate throughput is recalculated. This is marked as CurMaxThr. The value of CurMaxThr is then compared with the maxThr value and the POC is assigned to that AP permanently if CurMaxThr is found to be greater than maxThr. If so, maxThr is updated by maxPOCthr. Otherwise, that AP is left assigned. Every time a POC is assigned to a particular AP, then it is compared with the current maxThr value and accordingly, that AP is assigned or kept unassigned. Formally the algorithm is presented below.

Input: set of APs \(S_{A}\); set of clients \(S_{C}\); set of NOCs \(S_{N}\) and set of POCs \(S_{P}\).

Step 1: Initialization

Let \(S_{AA}\) be the set of activated APs. Let A be the association matrix where \(A_{ca}=1\), if client \(c \in S_C\) is associated with AP \(a \in S_{AA}\) and 0, otherwise. Initially no AP is activated and no association has been done and thus \(S_{AA} = \emptyset \) and \(A_{ca} = 0\) for all \(a \in S_{A}\) and \(c \in S_{C}\). Let \(F=(f_a)\) be the frequency assignment of the activated APs, where \(f_{a} \in (S_N \cup S_P)\) denotes the frequency assigned to AP \(a \in S_{AA}\). Initially no frequency has been assigned to any AP.

Step 2: Sort the APs

Calculate the maximum achievable throughput of each client from each AP using the Shannon’s throughput limit as stated in Eq. (2). Let \(r_{ca}\) be this throughput obtained by client c from AP a. Let \(R_a\) be the logarithmic sum of the throughput provided by AP a to all the clients in \(S_{C}\). Here \(R_a\) represents the maximum aggregate throughput that can be obtained by the clients if only AP a is activated. This measures the positional importance of AP a with respect to the positions of the clients. Compute \(R_a=\displaystyle \sum _{c \in S_{C}} \log _{10}(r_{ca})\) for all \(a \in S_{\texttt {A}}\). Sort the APs according to descending order of their \(R_a\) values. Let AP 1, AP 2, \(\ldots \), AP m be this sorted ordering. The time complexity of this step is O(\(mn + m \log m\)) where n and m are the number of clients and APs respectively.

Step 3: Assign NOCs as far as possible to the APs

Consider the APs in the order as obtained in Step 2 above and assign NOCs to them one by one. For AP a assign the least NOC g in \(S_{N}\) that is safe to be assigned at that AP and update \(f_{a}=g\) accordingly. A NOC is safe to be assigned at an AP if the NOC is not being assigned to any AP which is interfering to that AP. Leave an AP unassigned if no NOC is safe to be assigned at that AP. Let \(S_{AA}\) be the set of APs assigned and \(S_{UA} = S_{A} {\setminus } S_{AA}\) be the set of APs which are left unassigned by considering the NOCs only. The worst-case time complexity of this step is \(O(m^2s)\) where s is the number of NOCs available.

Step 4: Associate the clients to the APs in \(S_{AA}\) and compute the maximum achievable aggregate throughput

Associate the clients one by one to the APs activated so far. Associate a client to an AP from which it gets the maximum throughput among the set of APs in \(S_{AA}\). That is, associate client c to AP \(a'\) if \(r_{ca'} = \max \{r_{ca}: a \in S_{AA}\}\) and update \(A_{ca'}=1\) accordingly. After associating all the clients, compute maxThr, the maximum achievable aggregate throughput obtained by the clients in \(S_C\) from the APs in \(S_{AA}\). That is, \(\texttt {maxThr} = \displaystyle \sum \{\log _{10}(r_{ca}): a \in S_{AA}, \; c \in S_C \; \texttt {and} \; A_{ca}=1\}\). The time complexity of this step is O(mn).

Step 5: Assign POCs to the unassigned APs in \(S_{UA}\)

Consider the APs in \(S_{UA}\) according to the order as obtained in Step 2 above and assign POCs to them one by one. Suppose an unassigned AP u is temporarily activated by POC p. Compute \(TempMaxThr_{up}\), the maximum achievable aggregate throughput obtained by the clients in \(S_C\) from the APs in \(S_{AA} \cup u\) using Step 4 above by replacing \(S_{AA}\) by \(S_{AA} \cup u\). For this computation, since POCs are involved here, Eq. (5) instead of Eq. (2) is used for calculating the values of \(r_{ca}\) for all \(a \in S_{AA} \cup u\) and \(c \in S_C\). Compute \(TempMaxThr_{up}\) for all \(p \in S_P\). Let \(p'\) be the POC for which \(TempMaxThr_{up'}\) \(=\) \(\max \{\) \(TempMaxThr_{up}\) \(: p \in S_{P}\}\). Define CurMaxThr \(=\) \(TempMaxThr_{up'}\), the current maximum aggregate throughput. If CurMaxThr> maxThr then activate AP u with POC \(p'\) and update \(S_{AA} = S_{AA} \cup u\), \(S_{UA} = S_{UA} {\setminus } u\), maxThr = CurMaxThr and \(f_u = p'\) accordingly. Otherwise, leave AP u unassigned and update \(S_{UA} = S_{UA} {\setminus } u\). Repeat the process by considering each unassigned AP in \(S_{UA}\) until \(S_{UA}=\emptyset \). The worst-case time complexity of this step is \(O(m^2nq)\), where q is the number of POCs.

Output: the set of activated APs \(S_{AA}\), the frequency assignment F of the APs in \(S_{AA}\), the association A between the APs in \(S_{AA}\) and the clients in \(S_C\) and the maximum aggregate throughput maxThr.

Time complexity: The overall time complexity of the proposed algorithm is \(O(mn + m \log m + m^2s + m^2nq)=O(m^2nq)\) as usually \(q > s\), where n, m, s and q are the number of clients, APs, NOCs and POCs respectively.

6 Simulation Results

In our simulation setup, we have considered the same WLAN environment as in [6] where, a number of APs and a number of clients are uniformly placed in a \(100 \times 100\) m\(^{2}\) area. The number of clients is 200. The number of APs is varying from 50 to 80 with a step of 5 to represent different AP densities. Number of available NOCs is varied from 2 to 11 to reflect different spectrum availabilities. In our simulation setup, the clients are of heterogeneous types. We have considered \(50\,\%\) of total clients as 802.11b, \(25\,\%\) of rest of the clients as 802.11g and rest \(25\,\%\) as 802.11n. Type of each client is selected randomly. One possible placement of 50 APs and 200 clients of different types is shown in Fig. 2.

Fig. 2.
figure 2

Uniform placement of 50 APs, 100 b-clients, 50 g-clients and 50 n-clients

With this simulation environment, we evaluate the performance of the proposed algorithm in terms of aggregate throughput obtained under three different scenarios. In the first scenario (NOC only) we measure the obtained aggregate throughput where only NOCs have been used to activate the APs. In the second scenario, we consider the use of NOCs as well as POCs (NOC+POC). In the third scenario we measure the aggregate throughput that can be achieved if the effect of interference is completely ignored (Without interference). Results show that a significantly higher aggregate throughput can be achieved by using NOCs as well as POCs, as compared to the case when only NOCs are used. Results obtained by ignoring the interference can be considered as a naive upper bound of the aggregate throughput as the number of available NOCs is actually very limited. We have conducted different experiments to show the effect of number of NOCs and number of available APs on aggregate throughput for all three cases. In all cases we have considered 100 different runs and reported the average results to mitigate the effect of randomization. In our setup, 100 runs may be considered as good enough as the standard error of average was found to be lower than 0.0776 in all cases. Clearly this deviation is insignificant compared to the magnitude of the average aggregate throughput obtained by different runs.

In Figs. 3 and 4 the relationship of throughput variation with number of NOCs are shown. Our results depict that with increase in the number of available NOCs, the curves using NOCs only and using NOC+POC merge upwards. This is very realistic as, if number of NOCs is large, the selected APs can easily be activated using NOCs only. But, if number of NOCs available is less, POCs must also be used to achieve the maximum aggregate throughput. In Figs. 3 and 4, the number of APs considered are 50 and 75 respectively. As we can see in the two curves, the curves using NOCs only and using NOC+POC merge at NOCs equal to 6 and 5 respectively. This indicates that availability of more APs increases the flexibility to choose the appropriate APs and thus require less number of NOCs to obtain the maximum achievable aggregate throughput.

Fig. 3.
figure 3

NOCs vs throughput for 50 APs

Fig. 4.
figure 4

NOCs vs throughput for 75 APs

Fig. 5.
figure 5

APs vs throughput 2 NOCs

Fig. 6.
figure 6

APs vs throughput for 3 NOCs

In Figs. 5 and 6, the variation of throughput with increase in number of APs is shown, where the number of available NOCs are 2 and 3 respectively. As the number of APs increase, the throughput increases for all three cases and almost saturates at some point. An increased number of APs must increase the overall aggregate throughput as, most of the clients will get the opportunity to be served by most appropriate APs. Also, the NOC only curve is at the lowest level indicating that using only NOCs does not provide the maximum achievable throughput. The without interference curve is at the highest level, which shows the throughput for the ideal case (without any interference) which may not be achievable in practice as the number of NOCs available are limited. So, the NOC+POC curve (intermediary to the above two curves) depicts the most optimized curve, which is the maximum achievable throughput range in practical situation. Note that when number of available NOCs is 2 (Fig. 5), as the number of APs increase, the aggregate throughput saturates earlier as compared to the case where number of available NOCs is 3 (Fig. 6). These results clearly indicate that the availability of NOCs play a very significant role in increasing the aggregate throughput. The POCs are meant to improve the aggregate throughput only as an aid to the NOC, when used appropriately. Thus, POCs along with NOCs result in the overall improvement of aggregate throughput when used in the most optimized manner.

7 Conclusion

It is evident that proper AP selection, proper frequency assignment and proper client association are the pre-requisites for obtaining the most optimized aggregate throughput. Also, using only NOCs is not always beneficial. Using POCs together with NOCs is found to be most advantageous. However, all APs must not necessarily be activated altogether with the hope to increase the throughput. This may even reduce the throughput instead of increasing it. Hence POCs must be used very carefully and optimally.