Avoiding collisions between IEEE 802.11 and IEEE 802.15.4 through coexistence aware clear channel assessment

More and more devices are becoming wirelessly connected. Many of these devices are operating in crowded unlicensed bands, where different wireless technologies compete for the same spectrum. A typical example is the unlicensed ISM band at 2.4 GHz, which is used by IEEE 802.11bgn, IEEE 802.15.4, and IEEE 802.15.1, among others. Each of these technologies implements appropriate Media Access Control (MAC) mechanisms to avoid packet collisions and optimize Quality of Service. Although different technologies use similar MAC mechanisms, they are not always compatible. For example, all CSMA/CA-based technologies use Clear Channel Assessment (CCA) to detect when the channel is free; however, in each case it is specifically designed to improve detection reliability of the specific technology. Unfortunately, this approach decreases the detection probability of other technologies, increasing the amount of cross-technology collisions. In this article, we introduce the concept of coexistence aware CCA (CACCA), which enables a node operating in one technology to backoff for other coexisting technologies as well. As a proof of concept, we analyze the Packet Error Rate(PER) incurred by an IEEE 802.15.4 network in the presence of IEEE 802.11bg interference, and assess the PER reduction that is achieved by using CACCA.


Introduction
Wi-Fi has since long been the major wireless technology connecting PCs with each other. Lately, we observe an evolution from powerful wireless devices to lightweightembedded devices, while at the same time their density is increasing. The number of such wireless devices is expected to become an order of magnitude bigger than the current number of PCs, as can be seen in Figure 1. In addition, new types of application areas introduce new wireless communications solutions, which employ a variety of wireless technologies.
The problem when using different wireless technologies in the same frequency band is that most of them are not designed to be compatible with each other. Even if different technologies use a similar Medium Access Control (MAC) protocol, they might still impede each other.
Within this article we study the collisions between two heterogeneous CSMA/CA-based MAC technologies. As a proof of concept, we analyze the collisions between IEEE 802.11bg and IEEE 802. 15.4. Throughout the article, we refer to IEEE 802.11bg with the term Wi-Fi, and to IEEE 802.15.4 with the term Zigbee. Note that IEEE 802.15.4 only defines the physical (PHY) layer and MAC layer, in contrast to Zigbee that also specifies higher layers of communication above IEEE 802.15.4. However, for the sake of simplicity we use the terms IEEE 802. 15.4 and Zigbee to denote the same thing.
The co-existence behavior of Wi-Fi and Zigbee has been studied extensively. The physical layer effects of Wi-Fi and Zigbee coexistence are already considered in the IEEE 802.15.4 standard [1]. Zhen et al. [2] study the cross-technology detection probability of Clear Channel Assessment (CCA) between Zigbee and Wi-Fi. They conclude that Zigbee is oversensitive to Wi-Fi, while Wi-Fi is insensitive to Zigbee beyond a Heterogeneous Exclusive CCA Range, which they calculate to be 25m with the free space pathloss model. Yuan et al. [3] study the co-existence behavior of Zigbee and saturated Wi-Fi. They conclude through a model and simulation that 5.75% of the Zigbee throughput remains under the assumption that Wi-Fi and Zigbee CCA can avoid all cross-technology collisions. They also conclude through simulation that no throughput remains in case Wi-Fi does not detect Zigbee. Pollin et al. [4] measure the coexistence impact of Zigbee and Wi-Fi. They conclude that standard Wi-Fi devices do not backoff for Zigbee traffic, even in very close proximity. They also show that the CCA mechanism of Zigbee can reduce collisions with Wi-Fi, but it is too slow to avoid all Wi-Fi traffic. Thonet et al. [5] measure up to 85% Zigbee packet loss due to 802.11b traffic. Consequently, we conclude that Zigbee might incur severe packet loss when it coexists with Wi-Fi. However, no model predicting the performance degradation has been proposed. Out of [1], it is possible to determine the Packet Error Rate (PER) depending on the signal-to-interference ratio (SIR) and the size of the collision window, given there is a collision. However, the amount of collisions is dependant on the channel access mechanism of both Wi-Fi and Zigbee. Hence, a detailed model for cross-technology collisions that considers realistic Wi-Fi and Zigbee channel access mechanisms is a key open issue. In [6,7], we propose such a model and focus on exploring the economic value of introducing sensing engines in one specific business scenario. In this article, we focus on a thorough theoretical study of this model, and verify it against real-life measurements in a testbed environment.
The remainder of the article is organized as follows. In Section 2, we analyze the CCA-based medium access in Wi-Fi and Zigbee. In Section 3, we derive the Zigbee PER model under Wi-Fi interference, look at the sensitivities it has and verify it through measurements. Out of this model, the major mechanism leading to the high Zigbee PER is identified. In Section 4, we analyze the different Coexistence Aware CCA (CACCA) implementation alternatives, and the implications of using a spectrum sensing engine as a CACCA agent. Section 5 gives an overview of potential topics for further research, while Section 6 concludes this article.

CCA operating principle
The operating principle of a CCA-based MAC consists of three steps, as depicted in Figure 2. Prior to any transmission, the radio remains in receive-mode for a time window of length T CCA , during which it measures the average received power. If it is above a certain threshold, the radio assumes the channel is busy, and backs-off. Otherwise, the radio switches to transmit mode-which takes T Rx2Tx -and starts to transmit the packet.
Both Wi-Fi and Zigbee use CCA, however their operating parameters such as Bandwidth (BW), Power Spectral Density (PSD), and timing (duration of the CCA window, packet time, etc.) differ, as can be seen in Table 1. The difference in bandwidth and power-of which a spectral diagram is given in Figure 3-results in a difference in detection sensitivity. With a bandwidth of 22 MHz, Wi-Fi CCA captures the full power of both Wi-Fi and Zigbee transmissions. Zigbee transmits at 0 dBm, which is 20 dB lower than the Wi-Fi transmission, resulting in a 20-dB lower sensitivity to Zigbee than to Wi-Fi. On the other hand, with a bandwidth of only 2 MHz, Zigbee CCA captures the full power of other Zigbee transmissions in the same channel, but only 2/22th-or -10.4 dB-of the Wi-Fi transmit power, resulting in a 9.6-dB higher sensitivity to Wi-Fi than to Zigbee. These simple calculations support the observations of [2] that we mentioned earlier.
Both Wi-Fi and Zigbee allow preamble detection instead of energy detection as CCA. Preamble detection can improve sensitivity, but prevents cross-technology detection due to the differences in preambles between technologies. In Zigbee, this is usually disabled as the sensing time defined by the standard is sufficiently long to allow adequate sensing sensitivity. However, Wi-Fi enables this by default in order to reach the maximum sensing sensitivity within the short Wi-Fi CCA timeframe. We can therefore assume that standard Wi-Fi does not backoff at all for Zigbee traffic.

Analytical PER model
In the following, we assume that every collision between a WiFi packet and a Zigbee packet results in the Zigbee packet being lost. Although this is undoubtedly an oversimplification, it allows us to clearly show the plausible PER reduction through the usage of CACCA.
We focus on the packet loss in the Zigbee network under Wi-Fi interference. For the sake of convenience, we sometimes use the Packet Success Rate (PSR), which is defined by We identify three sources for Zigbee Packet Errors. First, there is packet loss due to the received Zigbee signal being too low compared to the radio noise (PER Z,SNR ). Second, Zigbee packets can get lost because of collisions with other Zigbee packets (PER Z,Z ). Finally, Zigbee packet loss can occur because of collisions between Zigbee and Wi-Fi packets (PER Z,W ). These independent events are not mutually exclusive, hence the total PER Z is smaller than or equal to their sum. Moreover, PER Z,W is only one of the sources of PER Z and thus also smaller than or equal to PER Z . For the total Zigbee PER (PER Z ), we have PER Z,W + PER Z + PER Z,W + PER Z,Z + PER Z,SNR PER Z,SNR has been studied extensively, as described for example in [1]. In addition, we will not discuss PER Z,Z in detail in this article. Nevertheless, under normal operating conditions-which means low load in the sensor network and sufficient link budget-PER Z,Z ≈ 0 and PER Z,SNR ≈ 0. Consequently, In Figure 4, we illustrate the possible interactions between Wi-Fi and Zigbee broadcast traffic. Remember that Wi-Fi CCA does not detect Zigbee transmissions; therefore, the CCA and Rx2Tx windows of Wi-Fi are not visualized in Figure 4. In case 1, a Wi-Fi transmission starts and finishes without interaction with Zigbee, and thus no collision occurs. In the second case, a Wi-Fi packet starts close before the Zigbee device starts its CCA. Hence, the Zigbee CCA window will completely be overlapped by the Wi-Fi transmission and Zigbee will sense the channel as busy. In case 3, the Wi-Fi packet starts earlier than a certain percentage-b-of the CCA  window. b is defined as the percentage a transmitted Wi-Fi packet needs to cover the Zigbee CCA window in order for the Zigbee device to assess the channel as busy. Therefore, the Zigbee device will backoff, avoiding a collision. In case 4, the Wi-Fi packet starts beyond the b boundary, resulting in Zigbee assessing the channel as free. Initially, we assume that all Wi-Fi packets are longer than β × T Z,CCA + T Z,Rx2Tx ; therefore, the Wi-Fi packet will have some overlap with the actual Zigbee packet, which will result in a collision. Later on we will also examine our model with shorter Wi-Fi packets. Finally, in the fifth case, the Wi-Fi packet starts during the Zigbee packet, resulting in a collision. We conclude that a collision happens whenever a Wi-Fi transmission starts during the β × T Z,CCA + T Z,Rx2Tx + T Z timeframe of a Zigbee transmission. We further assume that all collisions result in packet losses, and therefore the probability of not losing a packet, PSR Z,W , equals to the probability of not having a Wi-Fi transmission starting during this time frame, which can be written as with t W is a random variable that represents the time until the current Inter Packet Delay (IPD) of Wi-Fi terminates and a new Wi-Fi packet starts, T Z is the average Zigbee packet length, T Z,CCA is the Zigbee CCA time, T Z,Rx2Tx , is the Zigbee Rx to Tx turnaround time.
Since Wi-Fi CCA does not detect Zigbee transmissions, the instants of time at which Wi-Fi transmissions start are independent of the Zigbee transmissions. We assume that the distribution of Wi-Fi IPD can be approximated by the exponential distribution, with average T W . Note that it is typically assumed that the Wi-Fi IPD has a self-similar distribution (i.e., traffic bursts). However, traffic bursts can be divided into periods of intense traffic, and periods of less intense traffic. Within each period, we assume the distribution of IPD can reasonably be approximated by the exponential distribution, respectively, with a high and a low rate. This assumption allows to determine the PER Z,W during intense traffic as well as during low traffic periods, which is the major intent of this study.
Under these assumptions we can write Note that T W , T Z , and b are variables, while T Z,CCA and T Z,Rx2Tx are constants that are defined by the Zigbee standard [1] (see Table 1).
In the remainder of this article, we use typical default values for the various parameters, as specified in Table 2 unless explicitly noted otherwise. In addition, we use a default value of b = 1. In Table 2 the MAC frame size-as well as the derived MAC load-consists of the MAC header + payload. We continue to use this MAC load throughout this article. The packet durations are derived according to [1] for Zigbee and [8] for Wi-Fi without ACKs or RTS/CTS. Equation (5) does not depend explicitly on the average Wi-Fi packet duration T W . However, T W can be written as where R is the average Wi-Fi packet rate (packets/s), T W is the average Wi-Fi packet duration (s). Equation (6) shows that the influence of T W on T W remains relatively low as long as 1/R remains large compared to T W . The duration of the default Wi-Fi packet at 1 Mbps is 10.4 ms, so in order to limit the deviation in T W to 10%, the packet rate should remain below 10 packets/s (=102.2 kbps). We can therefore expect that below this throughput the different Wi-Fi data rates will result in almost identical PER Z,W . We will therefore use the 100 kbps point (the highlighted vertical line in Figure 5) as a first comparison point throughout this article. Furthermore, we assume that a Zigbee network can cope with up to 10% packet loss. Hence, we use the Wi-Fi load resulting in 10% PER Z,W (the highlighted horizontal line in Figure 5) as a second comparison point throughout this article. Figure 5 plots PER Z,W as a function of the Wi-Fi load for a Zigbee frame size of 100 bytes. We calculate a Zigbee PER Z,W of 3.74% at the 100 kbps point. The load at this point for 54 Mbps Wi-Fi data rate equals 279 kbps.

Sensitivity analysis
The total Zigbee packet duration T Z can vary between 320 and 4256 μs. Figure 6 shows the difference in PER Z, W for 54 Mbps Wi-Fi. There is a factor 8 difference in PER Z,W between the largest and smallest Zigbee packets.
b depends on the CCA threshold and the received signal energy. Determining the exact value of b is out of scope for this article. However, we explore the sensitivity of PER Z,W to the value of b. Equation (7) shows the PSR Z,W in the case b = 0 while Figure 7 compares the case of b = 1 with that of b = 0. There is a reduction of PER Z,W with a factor 1.23 at the 100 kbps point, and the 10% PER Z,W point shifts from 279 to 324 kbps.
Recall that during the analysis we assumed the Wi-Fi packets to be longer than T Z,Rx2Tx + β × T Z,CCA (:= T Z0 ) . However, Wi-Fi can transmit smaller packets. A collision will then only occur if the actual Wi-Fi packet The largest deviation to the base model is caused with the smallest Wi-Fi packets possible (28 μs). This possibility is also visualized in Figure 7. There is a factor 1.8 difference for 100 kbps Wi-Fi, and the 10% PER Z,W point shifts from 279 to 486 kbps.

Experimental model verification
We now turn to validate our model in practice. The experiments are conducted in the Wireless lab of the IBBT iLab.t technology center [9]. iLab.t has an RFshielded environment of 4 shielded Qosmotec boxes, in which Zigbee and Wi-Fi devices are connected by coax cables. It can achieve full mesh connectivity between all four boxes through the use of a PC controlled attenuator. Hence, no external interference is received, and the attenuation of each link can be set. Using this setup allows for real devices to communicate in a controlled environment. For our experiments, we use three nodes with attenuation between them set as shown in Figure 8.  All experiments are run with 100 bytes Zigbee packets and 1278 bytes Wi-Fi packets sent at bitrates of 1, 11, and 54 Mbps. All packets are transmitted with a fixed IPD. Figure 9 displays a comparison between the measurements and the model for 54 Mbps Wi-Fi. The PER Z ≈ PER Z,W measurements are within a margin of 13% from the model for loads lower than 1 Mbps. A maximum deviation of 34% is measured at 2 Mbps application load (a packet-rate of 200 packets/s), which is the point where T W becomes smaller than T Z and obviously no Zigbee packet can be sent.
The PER Z,W for 11 Mbps Wi-Fi is depicted in Figure  10. The measurement outcome is similar to the 54 Mbps case as the Wi-Fi packet durations at 54 Mbps (=212 μs) and 11 Mbps (=1121 μs) are both relatively small compared to 1/R (=5000 μs). The maximum deviation to the model is also situated around 2 Mbps.
The comparison for 1 Mbps Wi-Fi is displayed in Figure 11. It shows that below the 0.1 Mbps load point the error remains below 13%. Beyond this point (0.1-0.4 Mbps), the model and the measured PER Z,W diverge. This is because the model assumes the Zigbee and Wi-Fi packet transmissions to be independent. However, due to Zigbee transmissions backing-off on the relatively long Wi-Fi packets (10 ms), they tend to start their transmissions close after a Wi-Fi transmission. This results in fewer collisions than expected because in the experiments the IPD for Wi-Fi is constant. Beyond the 0.4 Mbps point, T W approaches T Z , resulting in a fast increase in PER. Above 0.7 Mbps, T W is smaller than T Z , resulting in 100% packet loss.
As mentioned earlier, these tests are conducted with constant IPD for both Wi-Fi and Zigbee, and still the PER measurements are rather close to our calculations. The error remains below 25% in the region where the Zigbee network stays operational (PER Z,W < 10%). This indicates that the sensitivity of our model to the probability distribution of T W and T Z is rather low.

Sensing engine characteristics
A spectral sensing engine is a fast and accurate device that measures spectral power density across a wide bandwidth (e.g., 174 MHz-6 GHz [10]). The internals of

Box 2
Zigbee Tx

Box 3
Zigbee Rx Figure 8 The test setup. a sensing engine are detailed in [10,11]. A sensing engine is commonly used in space and frequency-based interference avoidance within a vertical spectrum sharing context [11][12][13]. However, in this article, we use a sensing engine as a CCA agent, which is a time domain function. Hence, in this study, we use a sensing engine to analyze a limited bandwidth within a very short timeframe. It is focused on achieving the highest detection reliability within a very small timeframe and therefore we assume that it can detect Zigbee reliably within the Wi-Fi CCA time. Accordingly, we assume that when deploying a sensing engine the Zigbee CCA time-T ZS, CCA -can be reduced to 4 μs, which equals the Wi-Fi CCA time, and is 32 times faster than standard Zigbee. An overview of the resulting timings is given in Table 3.
The power consumption of a sensing engine detecting Wi-Fi is presented in [14], and equals 110 mW for the analog part, and 4 mW for the digital part to detect Wi-Fi, totaling to 114 mW. The sensing engine needs to be switched on during the 9 μs long CCA + Rx2Tx window, resulting in a total energy consumption of 9 μs * 114 mW = 1.03 μJ. The minimal power consumption of a current CC2520 Zigbee Radio in transmit mode equals 45 mW, and the smallest Zigbee packet lasts 320 μs, resulting in a total minimal transmit energy of 12.8 μJ.
Hence, the total impact on the power consumption of the sensing engine equals at most 8% per transmitted packet.
When deployed in a Zigbee device, the sensing engine creates a parallel receive chain to that of the Zigbee device, as depicted in Figure 12. Therefore, it can continue sensing the channel-and thus cancel the pending transmission-while the Zigbee device is switching towards transmit mode. Consequently, T ZS,Rx2Tx could in theory become negligible. To be realistic, we assume T ZS,Rx2Tx can be as short as T W,Rx2Tx . The influence of implementing a sensing engine on Zigbee devices is visualized in Figure 13.
When deployed in a Wi-Fi device there is no need for a separate receive chain, as common Wi-Fi devices have Only the digital part of a sensing engine will contribute to the energy consumption in a WiFi device. This 4 mW is only consumed during an 8-μs long timeframe, totaling to 32 nJ per transmission. An 18-dBm Wi-Fi transmission consumes at least 63 mW, using a 100% efficient radio. The shortest packet lasts 24.5 μs [8], resulting in an energy consumption of 1.5 μJ. The sensing engine energy consumption will thus contribute to at most 2% of the energy consumption per packet transmitted at 18 dBm.

Case 1: Zigbee side CACCA
A standard Zigbee device can detect Wi-Fi transmissions; therefore, the only effect of introducing sensing engines to Zigbee devices is that the CCA time T Z,CCA and the Rx2Tx transition time T Z,Rx2Tx are reduced to T ZS,CCA and T ZS,Rx2Tx -the resulting PSR ZS,W is shown in (9) and PER ZS,W is depicted in Figure 14.
PER ZS,W calculated at the 100 kbps point equals 1.05%. In other words, the inclusion of the sensing engine results in a PER Z,W drop of 24%. The 10% PER Z, W point shifts from 279 to 324 kbps. Figure 15 depicts PER ZS,W for different Zigbee packet sizes. Comparing these results with the no sensing engine results of Figure 6 reveals the very modest difference. It is only for very small packets that a significant difference becomes noticeable. In this case, PER Z,W at 100 kbps Wi-Fi reduces with a factor 1.9 while the 10% PER Z,W point shifts from 279 to 580 kbps.

Case 2: Wi-Fi side CACCA
In Section 3, we came to the conclusion that one of the major reasons for packet loss is the inability of Wi-Fi to detect Zigbee packets. Adding a sensing engine to the Wi-Fi devices will solve this problem. Figure 16 illustrates the possible collision scenarios between standard Zigbee and a sensing engine-enabled Wi-Fi. Figure 16 shows two different collision possibilities. The first (case 3 in the diagram) occurs when a Wi-Fi   Combining these two mutually exclusive events results in Equation (10), in which T WS,CCA and T WS,Rx2Tx equal, respectively, the Wi-Fi side sensing engine CCA and Rx2Tx times.
Approximating t W and t Z as exponentially distributed random variables results in Filling in the default values from Table 2 and assuming b 1 = b 2 = 1 gives In order to analyze the dependence on the Wi-Fi load, we assume T Z sufficiently large, resulting in a negligible impact of the second part of (12). The first part of PER Z,WS is presented in Figure 17. We assess a PER Z,WS of 0.35% at the 100 kbps point, which is a reduction of 75% compared with PER Z,W . The 10% PER Z,W point shifts from 279 to 3130 kbps.
Analyzing the dependence of PER Z,WS on the Zigbee load-the second part of formula (12)-can be achieved assuming T W is sufficiently large. Figures 18 and 19 show the second part of PER Z,WS as a function of the Zigbee load. PER Z,WS stays below 1% as long as the Zigbee load remains below 200 kbps. The maximum PER Z, WS remains below 2.5% under all circumstances.

Case 3: Wi-Fi and Zigbee CACCA
In typical operating conditions, the Zigbee load is low, thus most of the contribution to PER Z,W comes from the first part of (12). This part highly depends on the Zigbee CCA + Rx2Tx time; therefore, it makes sense to also examine the effect of implementing the sensing engine on both Zigbee and Wi-Fi.
The model is identical in form with the model of case 2. The difference is found in T Z,CCA and T Z,Rx2Tx which are reduced to T ZS,CCA and T ZS,Rx2Tx , respectively. Equation (13) shows the model incorporating Zigbee and Wi-Fi sensing.
Filling in the values gives us Again, we look at the two parts of the formula separately. The probability of Wi-Fi starting its transmission during the T ZS,CCA + T ZS,Rx2Tx window is significantly lower compared to case 2, as this window now only lasts for 9 μs instead of 320 μs.   Table 4 summarizes all the cases and their dependencies on packet lengths (T Z and T W ) and IPDs (T Z and T W ).

Future study
We instantiated the CACCA analysis within a Zigbee ⇔ Wi-Fi context. However, similar analysis can be done in other combinations of technologies, as well as identical technologies that operate in partially overlapping bands (e.g., IEEE 802.11bgn @ 2.4 GHz).
Another aspect we did not consider is the impact the sensing engine has on the Wi-Fi side. It does not only reduce PER W,Z -which is a positive effect-but it also reduces the throughput of Wi-Fi-which is a negative effect. with frequency and/or space domain collision avoidance. This will exploit the possible benefits of a spectrum sensing engine to its fullest.

Conclusion
As more and more wireless technologies emerge, more of these technologies have to coexist with one another. One of the major open Wi-Fi ⇔ Zigbee coexistence issues is a model for cross-technology packet collisions. We propose a new analytical model for Zigbee packet loss due to collisions with Wi-Fi packets, analyze it theoretically and validate it experimentally. Out of this model, we conclude that the major cause of Zigbee packet loss is the inability of Wi-Fi to detect Zigbee transmissions. In order to solve this problem, we propose the CACCA concept. CACCA enables Wi-Fi to detect Zigbee, and can be implemented through a sensing engine. There are three different deployment alternatives, namely, only Zigbee side deployment, only Wi-Fi side deployment, and Zigbee as well as Wi-Fi deployment. Deploying CACCA only on Zigbee results in 24% packet loss reduction, deploying it on Wi-Fi results in 75% packet loss reduction while deploying it on both sides reduces Zigbee packet loss by 99.6%. The maximum allowable Wi-Fi load in order to have less than 10% Zigbee packet loss rises from 279 kbps in the regular CCA case to 324 kbps in the Zigbee only deployment alternative, 3.1 Mbps in the Wi-Fi only deployment alternative and 37 Mbps when deploying it on both sides. The added energy consumption of a sensing engine-based CACCA deployment equals to less than 8% per packet transmitted on the Zigbee side, and less than 2% on the Wi-Fi side.
We can conclude that the deployment of CACCA achieves substantial reduction of the Zigbee incurred packet loss, without needing any additional information exchange (and the incurred overhead), nor having a severe impact on the energy consumption. It can inherently cope with dynamic environments, and is backwards compatible with the IEEE 802. 15   Zigbee while coexisting with Wi-Fi to an unprecedented level, without losing backwards compatibility with existing technologies. As a final remark, we believe that while in the shortterm CACCAmight be seen as a quick-fix for IEEE 802.11bgn ⇔ IEEE 802.15.4 coexistence, it can easily be extended to allow coexistence beyond current state-ofthe-art technologies.