# Improving Spatial Reuse of Wireless LAN Uplink Using BSS Color and Proximity Information
## 3 Proposed Method  
### Idea Overview  
The main idea behind the proposed method is to estimate SNR at the receivers assuming the transmissions take place in parallel. While currently the BSS color is used to distinguish between intra-BSS frames and inter-BSS frames, we further use the BSS color to estimate where the inter-BSS AP is located. Furthermore, nodes include proximity information in the preamble which indicates how far the transmitter is located from its AP. Using this information, a node receiving a preamble can predict whether the packets will be successfully received at the receivers if the node concurrently transmits its packet. When a node receives a preamble from another node, it has to decide whether it should defer its transmission by pausing the backoff countdown, or ignore the ongoing transmission, continue the backoff countdown, and potentially transmit its packet in parallel with the ongoing transmission. In the legacy scheme, a fixed threshold of \(-82\) dBm is used to determine this, regardless of if the preamble belongs to an intra-BSS frame or an inter-BSS frame. In a dense network, this approach creates a lot of hidden and exposed terminals and leads to inefficient channel usage. In OBSS/PD, a node can find out whether the preamble belongs to an inter-BSS frame by checking the BSS color. Even if the RSSI (Received Signal Strength Indicator) exceeds \(-82\) dBm, the node can still transmit provided that it reduces its transmit power. This approach may allow exposed terminals to concurrently transmit packets and increase spectrum efficiency. However, still neither of the concurrently transmitted packets is guaranteed to be received at the receiver, because the decision is based on channel status of the transmitter. In PSR, the AP protects the UL packets by broadcasting acceptable interference level to the inter-BSS nodes through trigger frames. However, the inter-BSS node transmitting concurrently does not know whether its packet will be successfully received at the receiver. It is possible that if its receiver is close to the transmitter of the ongoing communication, the packet may get lost due to low SNR. The key is that before a node decides to transmit its packet concurrently with the ongoing transmission, it must make sure both packets will have sufficient SNR at their respective receivers. The challenge is that while the location of a stationary AP can be estimated through beacons, the location of a mobile STA is hard to track. We first consider the hidden terminal scenario described in Figure 2. In the scenario, node A is associated to AP\({}_{1}\), and node B is associated to AP\({}_{2}\). Node A begins to transmit its packet to AP\({}_{1}\), and its preamble is heard by node B. However, because the distance between node A and B is great, the received power at node B is lower than \(-82\) dBm. With the legacy DCF, node B can transmit in parallel and cause collision at AP\({}_{1}\). OBSS/PD also cannot avoid this problem. Suppose node B receives node A's preamble at \(-72\) dBm. Even if node B reduces its transmit power by 10 dB, it can be close enough to AP\({}_{1}\) so that there is still a collision at AP\({}_{1}\). When node B receives node A's preamble, it should transmit its packet in parallel only if it is certain that the ongoing transmission will not be lost. Node B needs to estimate the SNR at AP\({}_{1}\). As APs transmit beacons periodically, node B can predict the interference level at AP\({}_{1}\), assuming there is no other source of interference. What node B does not know is the signal level at AP\({}_{1}\). This cannot be known to node B unless node A gives the information to node B. In other words, node A must provide the \"proximity information\" that indicates how far node A is from AP\({}_{1}\). For example, node B knows that the received power from AP\({}_{1}\) to B is \(-70\) dBm. (Here we assume that all APs and stations are transmitting at the same transmit power.)