Abstract

As the density of wireless LANs increases, performance degradation caused by hidden terminals and exposed terminals becomes significant. These problems come from carrier sensing based medium access control used in current wireless LANs. Hidden terminals are created if carrier sense threshold is too high, whereas exposed terminals are created if carrier sense threshold is too low. A good threshold depends on how far nodes are placed from their destinations, but that cannot be controlled by the system. In this paper, we propose a simple scheme that makes use of multiple channels. Multiple channels could be utilized by equipping multiple radios or using advanced hardware such as SDR to divide a single channel into multiple channels. Nodes are assigned channels based on their estimated distance from the AP. Once the assignment is done, carrier sense threshold for the channel is selected so that as many concurrent transmissions take place as possible, while preventing hidden terminals. Simulation results show that the proposed mechanism achieves significantly higher throughput without causing starvation at the edge nodes.

1. Introduction

IEEE 802.11 wireless LANs are now deployed in virtually every indoor locations, including homes, office buildings, and public places. Due to their affordable price, the density of APs is increasing: when scanning from a place inside an office building, it is easy to find tens of wireless LAN APs nearby. Traffic carried by wireless LANs is also increasing rapidly, especially due to high-quality multimedia streaming services such as YouTube. It can be predictable that the density of networks and traffic will become much higher with the deployment of IoT.

The problem with the current wireless LANs is that efficiency degrades significantly when density becomes high. The medium access control protocol of the wireless LAN, Distributed Coordination Function (DCF), is prone to packet collisions and results in unfair share of bandwidth among nodes. DCF has three main features: Each node constantly checks the channel to see if the channel is busy or idle. A node decides the channel is busy if the sensed signal strength is higher than a parameter called carrier sense threshold. Otherwise, the node thinks the channel is idle. Each node randomly picks a number from a range called contention window (CW) and counts down the number after each time slot whenever the channel is idle. The node begins transmission when the number becomes zero. The goal of this scheme is to set the order of transmissions among contending nodes and prevent collisions caused by simultaneous transmissions from multiple nodes. If there is a collision, a node doubles the size of contention window (called exponential backoff), in order to reduce the possibility of simultaneous transmissions.

All three components of DCF have problems that lead to degraded throughput and fairness. First, the carrier sensing is done at the sender whereas the packet decoding is done at the receiver. The sender may think the channel is idle and transmit a packet, but the packet may be dropped at the receiver because of high interference. Similarly, the sender may think the channel is busy and defer transmission, while the channel at the receiver is idle. The mismatch between sender and receiver may lead to packet collisions and unnecessary waste of resource. Also, carrier sense threshold is a parameter often set arbitrarily. If the threshold is too high, nodes transmit aggressively resulting in increased packet collisions. On the other hand, if the threshold is too low, nodes transmit conservatively resulting in waste of channel resource. Second, the size of contention window is arbitrary. A too large contention window will make the nodes unnecessarily wait for a long time, even when the channel is idle. A too small contention window will increase the possibility of nodes picking the same number, thus resulting in simultaneous transmissions and packet collisions. Ideally, its size should be determined based on the number of contending nodes. Third, the doubling of contention window occurs only at nodes that have failed to send a packet. Once a node increases its contention window, it has less chance of winning the channel. This behavior leads to unfair share of channels among nodes.

Previous efforts to address these problems are often too complicated or require large amount of overhead. In this paper, we propose a simple and practical scheme which can improve throughput without causing starvation at the edge nodes. The requirement for implementing the proposed scheme is that nodes should be able to access multiple channels simultaneously. This requirement can be met by equipping nodes with multiple network interfaces or using more sophisticated hardware such as software defined radio (SDR). With SDR, higher efficiency can be achieved using flexible spectrum access. The proposed scheme involves channel assignment for mobile nodes and carrier sense threshold selection for channels. More specifically, nodes are assigned channels based on their proximity with associated APs. Carrier sense threshold of each channel is calculated based on which nodes are assigned to the channel.

Simulation results show that the proposed scheme can achieve significantly higher throughput compared to the basic 802.11 protocol with fixed carrier sense threshold and random channel selection. The major benefit of the proposed scheme is that the performance improvement is achieved without modifying the current wireless LAN standard, which is crucial for practicality. The rest of the paper is organized as follows. Section 2 discusses existing efforts to improve the efficiency of wireless LANs. Section 3 describes the problems of current wireless LANs, which lead to the development of the proposed scheme. Section 4 presents the proposed scheme in detail. Section 5 reports the performance evaluation results based on simulations. Finally, Section 6 concludes the paper with remarks for future work.

It has been twenty years since the DCF was adopted as the medium access control protocol of the wireless LAN. Since then, it has been well known that DCF suffers from hidden terminal and exposed terminal problems [1]. The fundamental problem lies in the fact that the carrier sensing is done at the sender, whereas successful packet reception depends on the channel status at the receiver. If the channel is idle at the sender but busy at the receiver, the sender will transmit its packet but the packet will be dropped at the receiver (hidden terminal problem). On the other hand, if the channel is busy at the sender but idle at the receiver, the node will unnecessarily defer its transmission, wasting the channel resource (exposed terminal problem).

Whether a node sees channel as busy or idle depends on the carrier sense threshold. The channel is considered busy if detected energy level is above the threshold and idle if the energy level is below the threshold. A high carrier sense threshold leads to aggressive transmissions, increasing the effect of hidden terminals. On the other hand, a low carrier sense threshold will lead to conservative transmissions, reducing the effect of hidden terminals but creating exposed terminals. Thus, it is important to control the carrier sense threshold in order to mitigate effects of hidden terminals and exposed terminals, and many techniques were proposed [25].

For example, Haghani et al. [6] proposed a method to control carrier sense threshold by detecting presence of hidden and exposed terminals. Both the AP and the mobile node record the busy/idle status of channel at each time slot, and periodically the AP sends the record to the mobile node. Comparing the two, the node can figure out whether hidden terminals or exposed terminals exist. The mobile node adjusts the carrier sense threshold in order to minimize the number of hidden and exposed terminals. Roslan et al. [7] proposed a scheme to control both the transmit power and carrier sense threshold of the nodes. In order to detect hidden terminals, an AP sends control frames to its associated nodes that include neighboring nodes of the AP. A mobile node compares the information received from AP and with the neighbor list constructed by itself to detect potential hidden terminals, if a hidden terminal is detected, the node decreases carrier sense threshold to include the nodes in the carrier sense range. The new wireless LAN standard, IEEE 802.11ax [8], focuses on improving spectrum efficiency and user throughput. Dynamic Sensitivity Control (DSC), a technique that dynamically assigns carrier sense threshold to nodes, is proposed as one of the ways to improve the spectrum efficiency, although it was eventually not included in the standard [911]. The idea of DSC is to have each mobile node set their carrier sense threshold proportional to the RSSI of its associated AP. Thus, nodes close to the AP use a high carrier sense threshold, whereas nodes far away from the AP use a low carrier sense threshold. The problem of this protocol is that since nodes with high RSSI tend to transmit more aggressively, they become hidden terminals to low RSSI nodes, starving the nodes and causing unfair share of channel bandwidth. In the performance evaluation, we compare the proposed scheme with DSC, as well as the basic 802.11 DCF with fixed carrier sense threshold. The fundamental limitation of controlling carrier sense threshold is that hidden terminal and exposed terminal problems are in a conflicting relation: mitigating one problem will aggravate the other. Solutions requiring special hardware have also been proposed such as using out-of-band busy tone [12], directional antenna [13], or full-duplex communication [14].

Protocols using multiple channels have been proposed as a practical approach to improve system performance [1517]. Since wireless LAN standards specify multiple orthogonal channels, these could be utilized by equipping nodes with multiple radios. Even with single radio, multiple channels could be used by switching channels dynamically [18]. Also, it is possible to create a compound radio which can access multiple channels simultaneously, using software defined radio (SDR) [19]. Multiple channels are mostly used in a symmetric way: all channels use the same parameters, and traffic is distributed across channels for load balancing [20, 21]. There exist some proposals that use multiple channels in an asymmetrical way. For example SHORT [22] uses one channel for sending flows that require high throughput, and another channel for sending flows that need low delay. In our proposed scheme, we assign different carrier sense threshold to each channel, in order to control how aggressively nodes should transmit. Using multiple channels, we can overcome the limitation of trade-off relation between hidden terminals and exposed terminals by combining channel assignment and carrier sense threshold assignment, as described in the later sections.

3. Preliminaries and Motivation

In current wireless LANs, an access point (AP) and mobile stations that are associated with the AP constitute a basic service set (BSS). Typically, a single common channel is used to transmit and receive packets between nodes. If multiple APs are deployed in the neighborhood, the APs use different channels in order to minimize interference between basic service sets. This is possible because the current wireless LAN standard specifies multiple orthogonal channels that can be selected from.

For example, consider an environment illustrated in Figure 1. A total of 16 APs are placed in a 44 grid, and mobile stations are randomly distributed inside the area. If four orthogonal channels are available, channels can be assigned as in the figure.

We have conducted a simple simulation experiment to see how channel resource is effectively shared among nodes. The simulation is done using the ns-3 simulator [23]. We have deployed 100 APs in 100m100m area and randomly placed varying number of mobile nodes. Five orthogonal channels are available for use, and APs select their channels according to the schemes explained below. When the simulation begins, each mobile node associates with the nearest AP and starts sending UDP traffic to the AP. A legacy standard IEEE 802.11a is used with 20MHz channels, and MCS level is set to 7 which corresponds to 54Mbps of link speed. Carrier sense threshold was set to -82dBm, a value typically used in practical settings.

We have compared three different channel assignment schemes. In scheme 1, each AP randomly selects a channel and all mobile nodes use the channel to communicate with the AP. In scheme 2, each AP scans its neighborhood and selects the channel that is used by the furthest AP. In scheme 3, the APs are equipped with radio that can simultaneously access all five channels. Mobile nodes randomly choose one of the channels to communicate with the AP. The result is in Figure 2. What we can observe from the result is that, in a dense network, carefully choosing channel based on scanning result does not have significant impact on the system throughput. Also, using multiple channels inside a BSS does not help either, because channel resource is shared by nodes in the neighboring BSS.

When there are 100 nodes, the system achieves a little over 300Mbps regardless of which scheme used. When using MCS level that achieves 54Mbps link speed and 1500 bytes of packet size, the actual throughput of a single node is approximately 30Mbps, due to the loss from PHY and MAC overhead [24]. With five channels, the effective total throughput is approximately 150Mbps if a single node transmits on each channel. Thus, 300Mbps of system throughput means in average two nodes successfully transmit packets on each channel. Since there are 20 nodes in each channel, 18 nodes are being blocked by the two transmitters.

A node defers its transmission whenever it observes the channel as busy, in order to avoid packet collision. Whether the node will determine the channel as busy or idle depends on the carrier sense threshold, which is a system parameter. In the previous experiment, we have used -82dBm as the default threshold. In the next experiment, we vary the carrier sense threshold to see its impact on system performance. We have deployed 100 APs and 100 mobile nodes in the area, and varied carrier sense threshold from -99 to -54dBm. The result is in Figure 3.

In the graph, the upper three lines indicate the average node throughput. As the carrier sense threshold is increased, the throughput increases. However, this does not mean the performance is improved, because when the carrier sense threshold is high, a few nodes dominate the entire channel starving most of the nodes. This is shown by the average throughput of bottom 25% nodes. When the carrier sense threshold becomes higher than -70dBm, the bottom 25% nodes are totally starved, acquiring zero throughputs. The impact of carrier sense threshold is more visible in Figure 4. This graph shows the throughput of nodes in ascending order. As the carrier sense threshold is increased, a subset of nodes dominate the channel whereas other nodes are starved. When the carrier sense threshold is -59dBm, almost 50% of the nodes get zero throughputs.

Why is the channel unfairly shared among nodes, although all nodes are operating the same DCF protocol? Figure 5 provides the insight on this problem. In the graph, the axis is the distance between mobile nodes and their associated APs. As can be observed from the graph, there is a negative correlation between the distance and node throughput. Nodes close to their corresponding APs get more share of bandwidth, whereas nodes far away from the APs get less.

The unfairness comes from the exponential backoff mechanism in DCF. In DCF, after transmitting a packet, a node must defer its next transmission for a random duration of time (called “backoff”). This random duration is decided based on contention window, which is a range of numbers. Initially the contention window is set to . Whenever a node experiences a packet loss, DCF thinks the packet loss is due to packet collision, and doubles the size of contention window. Also, when a node successfully finishes packet transmission, the contention window is reset to the initial size. Since backoff time is random, it is possible that multiple nodes start transmission at the same time, resulting in packet collision. The simultaneously transmitted signals become interference to each other, degrading Signal-to-Noise Ratio (SNR) and lowering the chance of successful packet decoding.

Consider the network scenario illustrated in Figure 6. Node C and D are operating on the same channel, although they are associated with different APs. Suppose node C and D counts their backoff numbers to zero at the same time, and thus start transmission simultaneously. Since node C is close to AP1, the SNR is enough to successfully decode the packet at AP1 even with the interference from node D. On the other hand, AP2 fails to decode the packet from D due to low SNR. The possibility of successful decoding is higher when the distance from node to AP is shorter.

If carrier sense threshold is low, node C will sense the carrier busy if node D starts transmitting its packet. Thus, the two nodes will transmit simultaneously only when their backoff numbers become zero at the same time. However, if carrier sense threshold is high, the two nodes do not block each other, and with high probability their transmissions will overlap in time. In that case, node D will always fail to get the packet through, thereby achieving no throughput. In order to prevent starvation, the carrier sense threshold should be low so that enough space is blocked for a node that is far away from its destination. From the observations made in this section, we propose a simple and practical solution to improve system throughput while avoiding starvation at the edge nodes.

4. Proposed Scheme

The proposed scheme requires either of the following two. First, there are orthogonal channels available, and APs have enough radios equipped so that they can simultaneously access all channels. Second, the network interface is capable of splitting a channel into multiple narrow channels and simultaneously accesses the narrow channels. One such example is the compound radio in WiFi-NC [19], which can be implemented using software defined radio.

The main idea of the proposed scheme is to group nodes that have similar distance to AP and assign them the same channel. The “distance” may not be the same as actual physical distance, since we estimate distance from the received signal strength instead of using location information. Even if a node is physically close to its AP, the estimated distance could be longer if the signal is further attenuated due to obstacles. Once nodes are assigned channels, a carrier sense threshold is selected for each channel that will achieve high throughput without causing starvation at the edge nodes. For the channel where nodes close to APs are present, carrier sense threshold could be set high in order to promote concurrent transmissions. On the other hand, for the channel where nodes are far away from their APs, a low carrier sense threshold is used to avoid unfair share of the channel bandwidth.

4.1. Channel Assignment

Initially, a group of APs in the same region form an “AP cloud”, where APs collaborate through wired or wireless interface. The APs exchange information on mobile nodes associated with themselves. The information includes MAC address of the node, Received Signal Strength Indicator (RSSI) of the associated AP, channel assigned to the mobile node, and traffic demand. The traffic demand is to determine whether there is an on-going downlink or uplink traffic between an AP and a mobile node.

In order to decide whether a node has high traffic demand or not, we use ratio of time when uplink or downlink traffic exists in a given duration of time. The system has two parameters; the channel assignment period and the high traffic demand threshold. For example, the channel assignment period can be 30 seconds which means the system reassigns channel to mobile nodes after every 30 seconds. Also, the high traffic demand threshold can be 0.5, which means there was uplink traffic or downlink traffic for the particular mobile node for more than 50% of the time duration, which is equal to the channel assignment period. If the channel assignment period is 30 seconds, then the node should have downlink or uplink traffic for more than 15 seconds in order to be classified as a high-demand node. In order to measure the ratio, an AP measures the duration of time a packet exists in the transmit queue for each mobile node. Also, each mobile node measures the duration of time a packet exists in its transmit queue. If either of them exceeds the threshold value, then the mobile node is classified as a high-demand node. As described below, traffic demand of a mobile node is reported to its corresponding AP, and this information is shared by the APs in order to perform channel assignment.

Suppose there are a group of APs and mobile nodes in the area, and each mobile node is associated with one of the APs. Mobile nodes periodically report RSSI of its AP and its traffic demand to the AP, and this information is shared among the APs. Once the information is shared in the AP cloud, the high-demand nodes are assigned channels first. In order to assign channels, the high-demand nodes are sorted in the descending order of their RSSI values. Suppose there are high-demand nodes, indicated as . is the RSSI of the associated AP measured at node , and denotes the rank of RSSI of the mobile node among all high-demand nodes. For example, if has the maximum RSSI, then is 0. Suppose there are channels, indicated as . Then, channel is assigned to the high-demand mobile node as follows:

Basically, the high-demand nodes are distributed across the channels according to their proximity from the AP. For example, if there are 200 high-demand nodes in the area and 5 channels (channel numbers 0, 1, 2, 3, and 4) are available, the first 40 nodes that have the highest RSSI values are assigned to channel 0. The next 40 nodes are assigned to channel 1, and other nodes are assigned to channel 2, 3, and 4 in the similar way.

Once the high-demand nodes are assigned channels, the range of RSSI is determined for each channel. Then, low-demand nodes are assigned channels based on their RSSI values. Suppose there are low-demand nodes, indicated as . Also, we denote the minimum RSSI assigned to channel as . Then, node is assigned a channel as follows:

Figure 7 illustrates an example channel assignment. In the figure, we have a total of 3 channels. Since there are 9 high-demand nodes, 3 nodes are assigned to each channel based on their RSSI values. After assigning high-demand nodes, low-demand nodes are assigned channels so that their RSSI values fall in the RSSI range of the assigned channel. This way, the number of high-demand nodes is balanced among channels.

4.2. Carrier Sense Threshold Assignment

Once nodes are assigned channels, carrier sense threshold is calculated for each channel. The carrier sense threshold calculation is similar to [3], which uses a path loss model to estimate the threshold. The main idea is to set the carrier sense threshold so that it can avoid transmitting simultaneously with potential hidden terminals. In the following, we illustrate an example of calculating the carrier sense threshold based on the log-distance path loss model [25].

Consider the scenario shown in Figure 8. Node S is associated with AP1, and the distance between the pair is . There is a node I which is associated with a different AP, and the distance between I and AP1 is . When node S and I transmit packets, the received signal strength at AP1 is and , respectively. Suppose when node S transmits a packet to AP1, node I simultaneously transmits a packet. Then, the signal from I becomes an interference, hindering packet reception at AP1. In order to decode the packet successfully, the packet should be received with a high enough SNR. The SNR requirement is different for different modulation and coding scheme. For example, MCS level 7 of the legacy standard IEEE 802.11a (54Mbps of link rate) requires SNR higher than 23dB in order to decode the packet with near-zero bit error rate (BER).

Suppose all nodes are assigned channels, and node S is the farthest node from its AP among all nodes assigned the same channel. We place node I at a position that is farthest from node S, but still can make its packet transmission fail at its receiver. (The position of node I in Figure 8 is the farthest point from node S.) In order to avoid packet collision from hidden terminals, node S should defer its transmission when node I is transmitting. In other words, if we denote received signal strength of node I measured at node S as , node S should set its carrier sense threshold higher than . may not be an exact estimation of carrier sense threshold because hidden terminal problem can still occur due to multiple interfering nodes outside carrier sense range. Still, most hidden terminals are removed by setting carrier sense threshold to .

We calculate as follows. First, we define a function that estimates distance between sender and receiver based on the received signal strength and also estimate the path loss based on distance. We use the log-distance path loss model to convert between path loss and distance. The function calculates path loss from distance, and calculates distance from path loss. Note that other path loss models can be used depending on the environment.

In the equations, , , and are constants. The interfering node, node I, is assumed to be placed at a location close enough to corrupt the packet sent from S to AP1. This means that the SNR at AP1 is less than the required SNR to decode the packet. Let us denote the minimum SNR required as . Then, should be large enough to make the following inequality true:

and are both in dB scale, and we neglect noise floor for simplicity. We first calculate and using the following equations:

In the equations, is the path loss between node S and AP1, is the path loss between node I and AP1, and is the transmit power. (We assume that all nodes in the network use the same transmit power.) Now, we calculate from and using the following equation:

In the equation, is a parameter that can be tuned. If is positive, the nodes transmit more aggressively. This could increase the total channel throughput, but could starve some nodes due to hidden terminals. On the other hand, if is negative, the nodes transmit more conservatively. Figure 9 shows the distance between mobile node and AP, and carrier sense threshold calculated from the equations. Using the relation between distance and carrier sense threshold, we can set the carrier sense threshold of a channel according to distances of nodes assigned to that particular channel. For example, if all nodes are located within 4 meters from their respective APs, the nodes can set the carrier sense threshold to -70dBm.

Figure 10 shows the RSSI of nodes and carrier sense threshold assigned to the nodes, when there are 2, 4, and 8 channels available. In the graph, we assume that all nodes are high-demand nodes. As shown in the graph, different channels use different carrier sense threshold calculated based on the nodes, and all nodes sharing a common channel are assigned the same carrier sense threshold. With more channels, it is possible to assign higher carrier sense threshold to the nodes, increasing number of concurrent transmissions and improving throughput.

5. Performance Evaluation

5.1. Simulation Setup
5.1.1. Simulation Environment

Performance evaluation was done using the ns-3 simulator [23]. The default network environment is 100m100m area with 100 APs and 100 mobile nodes are deployed. The APs are placed in a grid topology, and mobile nodes are randomly deployed, as illustrated in Figure 11.

In default setting, 5 channels are available. The APs can simultaneously access all channels, whereas the mobile nodes can only choose one of the channels. When the simulation begins, the mobile nodes connect to their nearby APs. Once they do, they measure the RSSI of beacon signals from their associated APs, and report the information back to their APs. This information is gathered at a central coordinator, where mobile nodes are assigned channels according to the algorithm described in Section 4. Then, the channel assignment is announced back to the nodes. Once the channel assignment is done, nodes start sending traffic. The initial part where information is gathered and channels are assigned is omitted from throughput measurements.

For modulation and coding, we use MCS level 7 of the IEEE 802.11a standard which corresponds to 54Mbps link rate for 20MHz channels. However, other channel configurations can also be used without any modifications to the proposed scheme. All mobile nodes have backlogged UDP traffic to send to their associated APs, and every packet is 1500 bytes including IP header and UDP header. For most of the simulations, all mobile nodes are high-demand nodes, because they always have traffic to send. In the last experiment, we study behavior of the proposed scheme under dynamic traffic conditions.

For path loss model, we use the log-distance model, which is widely used for indoor environments. For the parameters in the path loss model (see (3)), we use the default values from the ns-3 simulator, which are , , and . The log-distance model calculates path loss of a certain distance based on path loss at a reference distance. In ns-3, the default reference distance is 1 meter, and its path loss is -46.67dBm which is calculated using the Friis propagation model assuming the frequency is 5.15GHz. The path loss exponent is chosen depending on the environment, and is often used for office environments with hard partitions [25]. Transmit power is fixed at 20dBm, and dynamic transmit power is not used. The noise floor () is set to -93.97dBm, and the default carrier sense threshold is -82dBm. The minimum and maximum contention window size are 16 and 1024, respectively.

5.1.2. Simulation Tool

In order to evaluate performance of the proposed scheme, we have created a multiradio multichannel environment in the ns-3 simulator. The major component added to the simulator is the interface bonding module (InterfaceBondingModule), which implements a virtual network interface that can have multiple wireless LAN (WLAN) interfaces (WifiNetDevice) attached to it. The modified structure of modules in ns-3 is described in Figure 12.

When a node is sending a packet, the packet is brought down to the interface bonding module from the IP layer. In the module, there is a “neighbor table” which keeps information on neighboring nodes. Specifically, the neighbor table includes a field that indicates which channel the neighbor is using. After looking up the table, the interface bonding module sends the packet to one of the WLAN interfaces in order to transmit the packet. Each WLAN interface has a MAC (WifiMac) and a PHY (WifiPhy) module, and the PHY module is connected to a wireless channel (WifiChannel).

The wireless channel modules are assigned different center frequencies, modeling orthogonal channels defined in the IEEE 802.11 standard. Each channel module only processes signals that are transmitted on that channel, which means the simulation model assumes there is no interchannel interference between the channels. In practice, there could be a small amount of interchannel interference even if the channels do not overlap in frequency. Interchannel interference could affect the system performance, and channel assignment algorithm may need to consider interchannel interference when assigning channels to nodes. We leave this issue as a future work and do not consider interchannel interference in this paper.

5.1.3. Performance Metrics and Compared Schemes

For performance metrics, we use the average node throughput, average throughput of bottom 25% nodes, and Jain’s fairness index. The bottom 25% nodes are selected by sorting the nodes by their throughput and choosing the nodes that belong in the bottom 25%. As discussed in Section 3, throughput can be increased by letting a small subset of the nodes dominate the channel bandwidth. The throughput of bottom 25% nodes can be used as fairness metric because it reflects whether a scheme is causing starvation. Another fairness metric we use is the Jain’s fairness index, which is widely used to show how the channel is shared between the nodes. The equation for Jain’s fairness index is as follows. In the equation, is the throughput of node .

We have compared three different schemes. The first one denoted “802.11” is the original IEEE 802.11 protocol without any additional techniques regarding channel assignment and carrier sense threshold. Nodes randomly select channels, and a fixed carrier sense threshold is used. The second scheme denoted “DSC” is the Dynamic Sensitivity Control technique that was proposed to be included in the IEEE 802.11ax [9]. Since DSC does not include an algorithm for channel selection, channels are randomly selected by nodes, similar to the 802.11 scheme. In DSC, a node selects carrier sense threshold independently, based on the RSSI of its counterpart. The basic mechanism of selecting the threshold is

where and indicate the range allowed for carrier sense threshold control. This is similar to (8), but only considering and not . So compared with 802.11 or the proposed scheme, DSC lets nodes transmit aggressively by setting the carrier sense threshold high. Moreover, the carrier sense threshold is different for nodes sharing a common channel, which may result in unfair channel share. Nodes with higher threshold will transmit more often, whereas nodes with lower threshold will tend to defer. In the simulations, we set and to -99dBm and -30dBm. Finally, the third scheme denoted “Proposed” is the scheme presented in Section 4. In the graphs, each plot is an average of 100 runs with different network topologies and random number generator seeds.

5.2. Results
5.2.1. Varying Node Density

In the first experiment, we have varied number of nodes from 20 to 500. The result is shown in Figure 13. Intuitively, the node throughput decreases with increasing number of nodes, because the channel bandwidth is shared among the nodes. As shown in Figure 13(a), DSC shows the highest node throughput followed by the proposed scheme and the original 802.11. However, if we look at Figure 13(b), the bottom 25% throughput of DSC quickly falls to zero compared to the other schemes. Also, if we look at the Jain’s fairness index in Figure 13(c), the fairness index of DSC is significantly lower than 802.11 and the proposed scheme. This is because DSC favors nodes with high RSSI and those nodes take most of the channel bandwidth. On the other hand, the proposed scheme improves both the average node throughput and the bottom 25% throughput compared to 802.11. When the number of nodes is 100, the proposed scheme achieves 2.4 times the average node throughput of 802.11 and 1.9 times the bottom 25% throughput. Since all node are using the same MCS level and packet size, the increase in throughput is a result of increased number of concurrent transmissions. In terms of Jain’s fairness index, the proposed scheme shows lower fairness index compared to 802.11. The reason is because different channels use different carrier sense threshold, while the number of nodes is the same for all the channels. Nodes that were assigned to a channel with high carrier sense threshold will achieve higher throughput compared to nodes assigned to a channel with low carrier sense threshold. Compared with 802.11, the amount of improved throughput is higher for nodes with high RSSI, while this amount of smaller for low RSSI nodes. Thus, the fairness index can become lower. One possible method to increase fairness is to assign different number of nodes to channels; more nodes are assigned to channels with high carrier sense threshold, and less nodes are assigned to channels with low carrier sense threshold. This method will increase fairness, but the average node throughput will be decreased, because carrier sense threshold will be set lower compared to when nodes are equally distributed across the channels. Figure 14 shows the sorted node throughput of the three schemes, for a case of 100 nodes. It can be observed how DSC favors high RSSI nodes and starves a large number of nodes. For the proposed scheme, on the other hand, most of the nodes achieve higher throughput compared to 802.11, which shows that the proposed scheme does not gain high throughput by starving the edge nodes.

5.2.2. Varying Number of Channels

In the second experiment, we have varied number of channels from 1 to 9. The result is shown in Figure 15. For this result, we assume that each channel has a link speed of 54Mbps, and increasing number of channels means using more channel bandwidth. Intuitively, throughput increases as the number of channels increases, because more resource is being used. However, the efficiency of using more channels is different for each scheme. For 802.11, the throughput achieved with 9 channels is 5.83 times the throughput of a single channel, while the proposed scheme achieves 11.4 times the throughput. With more channels, it is possible for the proposed scheme to assign a more fine-grained carrier sense threshold to channels, as shown in Figure 10. By selecting carrier sense threshold properly, nodes in the channel achieve more throughputs by having more concurrent transmissions. As a result, the proposed scheme achieves up to 140% improvement in the average node throughput and 70% improvement in the bottom 25% throughput. DSC achieves slightly higher throughput compared to the proposed scheme. However, when looking at the 25% throughput and the Jain’s fairness index, DSC shows almost zero throughputs for bottom 25% nodes and significantly lower fairness index compared to the proposed scheme.

In Figure 15, using larger number of channels meant using more bandwidth to improve throughput. With hardware such as software defined radio, it is possible to divide a single wide-band channel into multiple narrow-band channels, and operate them simultaneously. Wifi-NC [19] is one of the examples. When dividing a channel into multiple channels, some bandwidth is lost due to guard band, increased time slot and increased preamble length. For example, IEEE 802.11 standard specifies channels with various widths such as 20MHz, 40MHz, and 80MHz. When using HT MCS Index 7, the data rate of the channels is 72.2, 150, and 325Mbps. With two 40MHz channels, we can achieve a data rate that is 96% of a single 80MHz channel. Also, four 20MHz channels can achieve 88% data rate of a single 80MHz channel.

Here we assume that the network interface is capable of dividing a single channel into narrow channels. We model the data rate of a narrow channel as follows. In the equation, is the data rate of the single wide-band channel, and is the data rate of a narrow channel when the wide-band channel is divided into channels. is the capacity loss due to factors such as guard band, increased time slot and preamble length. Then, the data rate of can be calculated as follows:

With this assumption, the average node throughput and the bottom 25% throughput are shown in Figure 16. We assume that the wide-band channel has 54Mbps of link speed, and is 0.04. For the proposed scheme, the average node throughput increases with number of channels, but after some point the throughput starts to decrease. For 802.11 and DSC, the node throughput decreases as the number of channels increases. For 802.11 and DSC, there is no benefit of having multiple channels other than reduced number of collisions because less number of nodes contend on a single channel. However, the proposed scheme makes efficient use of multiple channels by assigning nodes to channels based on their proximity with the APs and selecting carrier sense threshold properly to encourage concurrent transmissions. When the number of channels becomes large, the capacity loss starts to exceed the benefit of using the proposed scheme, and the node throughput starts to decrease. For 802.11 and the proposed scheme, the bottom 25% throughput increases with the number of channels up to some point and then starts to decrease. Up to that point, having less number of contenders benefits the edge nodes. But after some point, this benefit becomes smaller than the capacity loss from dividing the channel, and the throughput starts to decrease. For DSC, the bottom 25% throughput is near zero, which shows the unfairness of the scheme.

5.2.3. Varying AP Density

In the third experiment, we have varied the number of APs from 9 to 169, while fixing the area size and number of nodes. The result is shown in Figure 17. For DSC and the proposed scheme, the average node throughput and the bottom 25% throughput increase as the number of APs increases. It is because when the density of APs increases, average distance between a mobile node and its AP is reduced, and higher carrier sense threshold can be used to increase number of concurrent transmissions. However, 802.11 cannot benefit much from having larger number of APs, because it uses a fixed carrier sense threshold. Similar to previous experiments, the DSC achieves slightly higher average node throughput compared to the proposed scheme, but shows very low values for bottom 25% throughput and Jain’s fairness index.

In the next experiment, we have varied the size of the simulation area, while keeping the number of APs fixed. Increasing area size while fixing number of APs has similar effects with decreasing number of APs while fixing the area size, because the average distance between mobile nodes and APs becomes longer. The difference is that if we increase the area size, we are also decreasing the node density. We have varied the area size from 1,600 to 160,000. Note that the default area size was 10,000 in the previous experiments. The result is in Figure 18.

When the area size is increased, the average node throughput of 802.11 is also increased. This is because with fixed carrier sense threshold, nodes can transmit more concurrently when they are far away from each other. However, for DSC and the proposed scheme, node density does not have significant impact on the throughput, because carrier sense threshold is adaptively tuned according to the topology. When the distance between mobile nodes and APs is large, the nodes set their carrier sense threshold to a low value, and so the carrier sense range becomes large. When the distance between mobile nodes and APs is small, the carrier sense range also becomes small. Thus, the amount of spatial reuse stays similar. The carrier sense threshold assigned by the proposed scheme depending on the area size is shown in Figure 19.

In the graph showing the bottom 25% throughput, it can be observed that when the area size increases, the bottom 25% throughput of 802.11 increases to some point but then starts to decrease, eventually reaching zero. This is because when the area becomes very large, the fixed carrier sense threshold of -82dBm is not low enough to prevent hidden terminals, and starvation begins to occur. The fairness index of 802.11 degrades as the area size is increased, as shown in Figure 18(c). For DSC, regardless of node density, channel bandwidth is occupied by high RSSI nodes, and the low RSSI nodes are starved as shown in Figures 18(b) and 18(c). The proposed scheme, although it shows slightly less throughput compared to DSC, achieves much higher fairness compared to DSC. When the area size is large, the fairness of 802.11 drops down, but the fairness of the proposed scheme is maintained at the similar level as when the area size is small.

5.2.4. Impact of Carrier Sense Threshold Offset

In the proposed scheme, the carrier sense threshold of a channel was determined by the mobile node that is farthest from its AP. This is a conservative approach, because the threshold is calculated so that a single node cannot become a hidden terminal to another mobile node even in the worst case. In practice, it is rare to have nodes positioned exactly as in Figure 8. So it might be beneficial to increase carrier sense threshold and allow nodes to transmit more aggressively. On the other hand, the calculated carrier sense threshold is not enough to prevent hidden terminals completely, because multiple nodes outside the carrier sense range could harm the transmitter by transmitting signals together. So the calculated carrier sense threshold may not be “optimal” depending on the network status.

In this experiment, we have varied the carrier sense threshold offset, which is denoted as in Equation (8). was varied from -10dB to 10dB, and for all other parameters, the default values are used. The total throughput, bottom 50% throughput and 25% throughput of the proposed scheme are shown in Figure 20. Intuitively, the total throughput increases with , because high carrier sense threshold leads to aggressive transmissions. As discussed earlier, high carrier sense threshold causes hidden terminal problem that leads to severe unfairness in resource share. As the hidden terminals are created, the bottom 50% throughput and 25% throughput start to drop. In the Figure, the throughput starts to drop when is 1dB. This means that the carrier sense threshold can be adjusted to be slightly higher than what is calculated. Increasing further could result in starvation of some mobile nodes.

5.2.5. Impact of Path Loss Model Error

When calculating the carrier sense threshold, the proposed scheme relies on a path loss model. In the previous evaluations, we have used the same path loss model and parameters for the algorithm and the simulated environment, which is the best case. However, in practice, there is always mismatch between a model and the real path loss. This mismatch will affect the performance either by creating hidden terminals or exposed terminals, depending on whether the actual path loss is higher or lower than the path loss calculated by the model. In order to see the impact of the model error, we have conducted an experiment where we vary the path loss exponent () of the log-distance model. The path loss exponent is typically set according to the environment based on empirical measurements, such as for infinite space, for office with hard partitions, for office with soft partitions, and so on [25]. In this experiment, we vary from 2 to 4, which covers most of the environments. While we vary the parameter, the distance calculation is always done assuming , creating a mismatch between model and the real environment. Figure 21 shows the result. The result shows that when the exponent is higher than 3, more bandwidth is given to the nodes with high RSSI, whereas low RSSI nodes are starved. This unfairness comes from hidden terminals as previously discussed in Section 3. On the other hand, if the exponent is lower than 3, the high RSSI nodes get less throughput whereas the throughput of low RSSI nodes are larger. Nevertheless, we can observe that compared with 802.11, the proposed scheme achieves higher throughput for most of the nodes. In order to avoid starvation at some nodes, we can set the threshold offset () conservatively in order to compensate for model error.

5.2.6. Performance of the Proposed Scheme under Dynamic Traffic Conditions

When the proposed scheme assigns channels to mobile nodes, it considers traffic demand of the nodes as described in Section 4. In the previous experiments, all mobile nodes always had traffic to send, so all nodes were high-demand nodes. In order to study the performance of the proposed scheme under dynamic traffic conditions, we conducted an experiment where mobile nodes generate traffic in an on-off pattern. Specifically, each node sends traffic for 60 seconds, then stops sending traffic for 60 seconds, and then starts sending traffic again. The starting time of this traffic pattern is different for each node. The channel assignment period is 30 seconds, and the high traffic demand threshold is set to 0.5. We ran simulations with three different schemes, the original 802.11 with random channel assignment, the proposed scheme which assigns channels without considering traffic demand of the nodes, and the proposed scheme which assigns channels considering the traffic demand. We have measured average node throughput every 5 seconds, while running the simulation for 10 minutes of simulation time. The result is shown in Figure 22.

The result shows that the proposed scheme achieves higher throughput compared to 802.11 with random channel assignment, regardless of whether traffic demand is considered when assigning channels. Also, it can be observed that channel assignment considering traffic demand achieves higher throughput under dynamically changing traffic conditions, compared to channel assignment without considering traffic demand. If traffic demand is not considered, bandwidth of some channels could be under-utilized, degrading the throughput. Also, the carrier sense threshold may not be optimal for the channel because calculation of the threshold is based on wrong information. (Nodes with no traffic should not be included in the calculation.) Classifying nodes into high-demand and low-demand nodes could improve system performance by avoiding channel under-utilization and calculating carrier sense threshold more accurately.

In summary, the proposed scheme achieves higher throughput without causing starvation at the edge nodes. The benefit becomes larger when density of APs and mobile nodes become higher. The proposed scheme benefits from having more channels, but cautions should be taken if we are dividing a single channel to multiple narrow channels, because capacity loss could nullify the benefit of the proposed scheme. The mismatch of path loss between a model and the real environment could affect the performance, degrading throughput or fairness of the nodes. But it could be compensated by carrier sense threshold offset, which is a tuning knob for controlling the trade-off between throughput and fairness.

6. Conclusion and Future Work

As the density of wireless LAN increases, it is important to make efficient use of the channel resource. The medium access control protocol of current wireless LAN uses carrier sensing based random backoff mechanism to avoid packet collisions, but the protocol suffers from hidden terminals and exposed terminals especially when the network becomes dense. Hidden terminals are created by a high carrier sense threshold, whereas exposed terminals are created by a low carrier sense threshold. In this paper, we propose a simple scheme that can improve system throughput in considerable amount, while avoiding starvation at the edge nodes. Using multiple channels, we assign nodes to channels based on estimated distance between mobile node and APs. The distance estimation is obtained using RSSI of signals received from APs. Then, carrier sense threshold of each channel is calculated in order to allow as many concurrent transmissions as possible while avoiding the hidden terminal problem. The simulation results show that the proposed scheme works well in various environments and parameter values, compared to the basic 802.11 protocol and DSC.

It is important to note that there are many issues that were not considered in this paper. First of all, we assumed that all nodes use the same transmit power. Adjusting transmit power along with carrier sense threshold may further improve the spectrum efficiency. Second, as mentioned earlier, we assumed that the channels are truly orthogonal and there is no interchannel interference between channels. In reality, interchannel interference exists which can affect the performance. Channel assignment may need to consider the interference in order to prevent performance degradation. Third, we assumed that all APs are capable of accessing all available channels, which may not be true. Some APs may be equipped with less number of radios compared to the number of available channels. Also, mobile nodes may be equipped with multiple radios, which could be used to improve the performance. Finally, we only considered single-hop wireless LANs, but this idea could be applied to multihop networks such as mesh networks. Then, the channel assignment and carrier sense threshold should be combined together with routing algorithms in order to maximize the performance. All of these issues are directions for future research. Also, we plan to implement the proposed scheme in a SDR testbed and evaluate its performance, in order to find out any real-world issues that were not present in the simulation study, and further improve the technique.

Data Availability

The data used to support the findings of this study are available from the corresponding author upon request.

Conflicts of Interest

The authors declare that they have no conflicts of interest.

Acknowledgments

This work was supported in part by the National Research Foundation of Korea under Grant NRF-2016R1D1A1 B03930289.