Patent Description:
Internet of Things (IoT) applications have been rapidly growing. A broad range of wireless communication technologies have been developed to cater the diverse IoT applications such as smart meter and smart city. On the other hand, the spectrum allocation is constrained. As heterogeneous wireless technologies emerge, these wireless technologies compete for spectrum resource. Therefore, interference among networks using different communication technologies becomes critical issue to be addressed.

IEEE <NUM> and IEEE <NUM>. <NUM> are two commonly referred wireless standard families developed for local area and personal area applications. IEEE <NUM> based products are everywhere. A typical example is Wi-Fi devices. IEEE <NUM>. <NUM> standards have also been widely implemented in the commercial products such as Bluetooth and smart meter. Even IEEE <NUM> can operate in the higher frequency bands such as <NUM> band, <NUM> band and millimeter wave band, both IEEE <NUM> and IEEE <NUM>. <NUM> are designed to operate in Sub-<NUM> (S1G) band and <NUM> band, e.g., IEEE <NUM>. 11ah operates in Sub-<NUM> band and IEEE <NUM>. 11n can operates in <NUM> band and IEEE <NUM>. <NUM> can operate in both Sub-<NUM> band and <NUM> band. Due to the fact that both IEEE <NUM> and IEEE <NUM>. <NUM> use unlicensed frequency bands, these two wireless technologies likely coexist. When a co-located IEEE <NUM> network and IEEE <NUM>. <NUM> network operate on shared or overlapped frequency band, one network becomes an interfering network to another network. The problem is that IEEE <NUM> network and IEEE <NUM>. <NUM> network cannot communicate with each other. Therefore, they are not able to coordinate for interference mitigation. Each network tries its best by using carrier sense multiple access with collision avoidance (CSMA/CA) mechanism to transmit data. This approach works well for homogeneous wireless networks, but it does not work well for heterogenous wireless networks where different networks have different functionalities, e.g., IEEE <NUM> backoff is much faster than IEEE <NUM>. <NUM> backoff. Accordingly, different networks have different wireless medium access capability. As a result, the network with more aggressive medium access mechanism will make more transmissions than the network with less aggressive medium access mechanism. IEEE <NUM> channel access mechanism is much more aggressive than IEEE <NUM>. <NUM> channel access mechanism. Therefore, new channel access mechanism must be provided for IEEE <NUM>. <NUM> system to better coexist with IEEE <NUM> system.

From perspective of the IEEE <NUM>. <NUM> system, besides IEEE <NUM> system, there are other interfering systems such as LoRa and SigFox systems.

The carrier sense multiple access with collision avoidance (CSMA/CA) mechanism is employed by both IEEE <NUM> and IEEE <NUM>. <NUM> standards for channel access contention. However, CSMA/CA in IEEE <NUM> standards is much more aggressive than CSMA/CA in IEEE <NUM>. <NUM> standards because IEEE <NUM> is developed for more powerful devices with higher data rates and IEEE <NUM>. <NUM> is developed for power constrained devices with lower data rates. Take IEEE <NUM>. 11ah and IEEE <NUM>. <NUM> for example. These two standards are developed for outdoor IoT applications, but their coexistence performance is much unbalanced. <FIG> shows that data packet delivery rates of the co-located IEEE <NUM>. 11ah network and IEEE <NUM>. <NUM> network operating in Sub-<NUM> band. Clearly, IEEE <NUM>. <NUM> network suffers when network traffic is heavy, but IEEE <NUM>. 11ah network always achieves near <NUM>% of packet delivery rate for all workload scenarios. Therefore, the IEEE <NUM>. <NUM> network does not coexist well with IEEE <NUM>. 11ah network. As a result, IEEE <NUM>. <NUM> network is the victim and IEEE <NUM>. 11ah network is the winner in channel access contention.

As IoT applications are rapidly increasing, IEEE <NUM>. <NUM> based systems will experience interference from other wireless systems such as IEEE <NUM> system. Therefore, heterogeneous coexistence mechanism for IEEE <NUM>. <NUM> must be provided to achieve better coexistence, especially against more aggressive interfering sources.

Accordingly, it is desirable to provide new channel access methods for IEEE <NUM>. <NUM> to achieve better coexistence with more aggressive interfering networks.

<CIT> describes a wireless smart utility network (Wi-SUN) device participating in a Wi-SUN network for coexistence with a Wi-Fi HaLow network sharing frequency spectra between the networks. The Wi-SUN device includes a receiver to receive packets of neighbor Wi-SUN devices, a memory configured to store computer executable programs including a hybrid carrier-sense multiple access with collision avoidance (CSMA/CA) control program and Wi-SUN backoff control program, a processor configured to execute the hybrid CSMA/CA control program including instructions that steps of estimating a severity of Wi-Fi Halow interference based on one or combination of the severity metrics, selecting a CSMA/CA mode between predetermined CSMA/CA modes in response to the estimated severity, detecting a channel status based on the hybrid carrier-sense multiple access, wherein if the channel status is not idle, a maximum limited number of times for re-attempting a packet transmission is checked to determine an allowability of re-attempting the packet transmission, and a transmitter to transmit packets according to a determination result of the allowability.

Some embodiments are based on the recognition that IEEE <NUM>. <NUM> CSMA/CA mechanism is designed for wireless channel access contention among homogeneous IEEE <NUM>. <NUM> devices without taking the interference into account. IEEE <NUM>. <NUM> devices are typically low data rate low power devices whose energy saving is critical. Accordingly, the IEEE <NUM>. <NUM> CSMA/CA mechanism is designed to be not aggressive. As IoT applications are emerging, IEEE <NUM>. <NUM> systems will experience interference. However, IEEE <NUM>. <NUM> CSMA/CA mechanism does not work well against more aggressive interfering sources such as IEEE <NUM> system.

To that end, it is one object of some embodiments to enhance IEEE <NUM>. <NUM> CSMA/CA mechanism to provide heterogeneous coexistence functions to achieve better coexistence against more aggressive interfering sources.

Accordingly, some embodiments of the invention provide active carrier sense (ACS) based CSMA/CA mechanism for IEEE <NUM>. <NUM> standards, wherein active channel sense is performed using consecutive clear channel assessment (CCA) operations when the channel is detected to be busy, wherein the consecutive CCA operations is to perform CCA repeatedly until the channel becomes idle or the maximum number of consecutive CCAs have been performed.

Some embodiments are based on the recognition that energy saving is critical for battery powered devices. However, for the devices such as smart meters connected to powerline, the energy is not constrained. Therefore, the devices connected to powerline can proactively sense channel to increase their channel access opportunities and mitigate the consequence caused by interference from other systems.

Accordingly, it is one object of some embodiments that active carrier sense is to continuously monitor the busy channel. Once the channel becomes idle, an IEEE <NUM>. <NUM> device that is attempting for transmission may transmit immediately based on an optimal channel access probability, wherein the optimal channel access probability is to avoid the collision among IEEE <NUM>. <NUM> transmissions.

Some embodiments are based on the recognition that the maximum number of backoffs (macMaxCSMABackoffs) specified in IEEE <NUM>. <NUM> CSMA/CA mechanism is designed for homogeneous IEEE <NUM>. <NUM> network and does not consider the interference networks, where the number of backoffs (NB) can quickly reach the predefined threshold macMaxCSMABackoffs due to the transmissions of interference networks. As a result, the IEEE <NUM>. <NUM> packet can be discarded.

To that end, the ACS based CSMA/CA (ACS-CSMA/CA) dynamically adapts the value of the threshold macMaxCSMABackoffs to avoid packet discard as the number of backoffs exceeds the macMaxCSMABackoffs when the interference is severe, wherein the macMaxCSMABackoffs adaptation is to dynamically increase the value of macMaxCSMABackoffs based on the severity of the interference from the interfering networks. Once the interference becomes not severe, the value of the macMaxCSMABackoffs is dynamically changed back to the predefined value.

Accordingly, the value of the macMaxCSMABackoffs is multiplied by an interference factor that is determined based on interference metrics such that the interference factor is greater than or equal to one.

According to some embodiments of the present, a computer-executed method is provided for IEEE <NUM>. <NUM> based on an active carrier sense based carrier-sense multiple access with collision avoidance (ACS-CSMA/CA) control program and standard CSMA/CA control program for coexistence of an IEEE <NUM>. <NUM> network composing of IEEE <NUM>. <NUM> devices and IEEE <NUM> network composing of IEEE <NUM> devices sharing frequency spectra between the networks. In this case, the computer-executed method is provided on an IEEE <NUM>. <NUM> device. The computer-executed method causes a processor of the IEEE <NUM>. <NUM> device to perform steps that comprise estimating a severity of IEEE <NUM> interference based on a severity estimation metric; selecting the ACS-CSMA/CA control program based on the estimated severity, wherein the ACS-CSMA/CA control program is configured to perform dynamically updating a maximum number of backoffs (macMaxCSMABackoffs) based on the estimated severity; determining if a number of backoffs (NB) exceeds the updated macMaxCSMABackoffs; performing consecutive CCA operation to continuously detect channel status, and the processor of the IEEE <NUM>. <NUM> device performs transmitting frames when the detected channel status is an idle state or incrementing number of retransmissions (NR) when the detected channel status is a busy state.

Further, some embodiments of the present invention are based on recognition that an IEEE <NUM>. <NUM> device can be provided for coexistence of an IEEE <NUM>. <NUM> network composing of IEEE <NUM>. <NUM> devices and an IEEE <NUM> network composing of IEEE <NUM> devices sharing frequency spectra between the networks. The IEEE <NUM>. <NUM> device may include a receiver configured to receive packets of neighbor IEEE <NUM>. <NUM> devices; a memory configured to store a computer-executed method including an active carrier sense based carrier-sense multiple access with collision avoidance (ACS-CSMA/CA) control program and standard CSMA/CA control program; a processor configured to execute the computer-executed method. In this case, the computer-executed method causes the processor to perform steps that include estimating a severity of IEEE <NUM> interference based on a severity estimation metric; selecting the ACS-CSMA/CA control program based on the estimated severity, wherein the ACS-CSMA/CA control program is configured to perform dynamically updating a maximum number of backoffs (macMaxCSMABackoffs) based on the estimated severity; determining if a number of backoffs (NB) exceeds the updated macMaxCSMABackoffs; and performing consecutive CCA operation to continuously detect channel status; and a transmitter configured to transmit packets when the detected channel status indicates an idle state.

Various embodiments of the present invention are described hereafter with reference to the figures. It would be noted that the figures are not drawn to scale elements of similar structures or functions are represented by like reference numerals throughout the figures. It should be also noted that the figures are only intended to facilitate the description of specific embodiments of the invention. In addition, an aspect described in conjunction with a particular embodiment of the invention is not necessarily limited to that embodiment and can be practiced in any other embodiments of the invention.

IEEE <NUM>. <NUM> standard family and IEEE <NUM> standard family are two widely used wireless technologies for local area networks and personal area networks.

IEEE <NUM>. <NUM> is a standard in IEEE <NUM>. <NUM> standard family designed for wireless smart utility networks (Wi-SUN), and IEEE <NUM>. 11ah is a standard in IEEE <NUM> standard family and is named as Wi-Fi HaLow.

However, there is considerable overlap in use cases for these two standard families. For example, both IEEE <NUM>. 11ah and IEEE <NUM>. <NUM> are developed to operate in the Sub-<NUM> (S1G) frequency bands for outdoor IoT applications such as smart utility and smart city while IEEE <NUM>. <NUM> can also operate in the <NUM> frequency band. Therefore, IEEE <NUM> system can be a major interference source to IEEE <NUM>. <NUM> system.

<FIG> shows a schematic of the heterogeneous system consisting of the coexisting IEEE <NUM>. 11ah network <NUM> and IEEE <NUM>. <NUM> network <NUM>. IEEE <NUM>. 11ah network <NUM> contains an Access Point (AP) <NUM> and the associated stations (STAs) <NUM>, in which AP <NUM> and STAs <NUM> communicate via the IEEE <NUM>. 11ah wireless link <NUM>. IEEE <NUM>. <NUM> network <NUM> contains a Personal Area Network Coordinator (PANC) <NUM> and the associated nodes <NUM>. PANC and nodes communicate through the IEEE <NUM>. <NUM> wireless link <NUM>. Two networks are co-located close enough so that portion of the IEEE <NUM>. <NUM> network <NUM> is within the communication range of IEEE <NUM>. 11ah network <NUM>. Therefore, IEEE <NUM>. 11ah network <NUM> can interfere with IEEE <NUM>. <NUM> network <NUM> when their operating channels share frequency spectrum.

The topology of IEEE <NUM>. 11ah network <NUM> and IEEE <NUM>. <NUM> network <NUM> can be star, mesh or tree, e.g., IEEE <NUM>. 11ah network <NUM> is star topology and IEEE <NUM>. <NUM> network <NUM> is tree topology. In some cases, an IEEE <NUM>. <NUM> network <NUM> can be an IEEE <NUM>. <NUM> based smart meter network configured as tree topology. It should be noted that the connections of the tree type configurations can be changed according to the states of communications. In addition, it is not necessary for all nodes to directly connect to the PANC <NUM>. In other words, an IEEE <NUM>. <NUM> node can connect to the PANC <NUM> by a multi-hop manner, e.g. PANC <NUM>↔<NUM>. <NUM> Node <NUM>↔<NUM>. <NUM> Node <NUM>.

For an IEEE <NUM>. <NUM> device participating in the IEEE <NUM>. <NUM> network, <FIG> shows the network protocol stack, where application layer <NUM>, transport layer <NUM> and network layer <NUM> are upper layers with respect to IEEE <NUM>. <NUM> protocol that consists of MAC layer <NUM> and PHY layer <NUM>. In this protocol stack, the conventional link layer functions can be incorporated into MAC layer <NUM>. The upper layers request IEEE <NUM>. <NUM> protocol for data transmission using Data Request interface <NUM> and IEEE <NUM>. <NUM> protocol responds to the upper layers with respect to data transmission request using Data Confirm interface <NUM>.

Data Request <NUM> requests the transfer of data to another device. The data in Data Request <NUM> can be upper layer application data, management data, etc. Besides data, the Data Request <NUM> also includes other parameters such as destination address, destination network ID, AckTX and data rate to instruct the data transmission. The AckTX is a boolean parameter indicating if the acknowledgement (ACK) is requested or not. If yes, MAC layer <NUM> sets acknowledgment request (AR) field of the frame to <NUM>. Otherwise, the AR field is set to <NUM>. Upon receiving the frame, the recipient responds to the transmitter with an ACK if AR = <NUM>.

The Data Confirm <NUM> returns a status of either SUCCESS, indicating that the request to transmit was successful, or the appropriate error code such as CHANNEL_ACCESS_FAILURE and NO_ACK.

<FIG> shows an example of a structure of an IEEE <NUM>. <NUM> device participating in forming the networks of <FIG>, in which an IEEE <NUM>. <NUM> device <NUM> may include a processor <NUM>, memory <NUM>, a power source <NUM>, a transceiver <NUM> including transmitter, receiver and energy detector and a RF antenna <NUM>. Further, control programs are included in a storage <NUM> in connection with the memory <NUM>, the processor <NUM> and the transceiver <NUM>. The control programs <NUM> include an ACS-CSMA/CA mode control (program) <NUM>, Mode-<NUM> CSMA/CA program <NUM> and Mode-<NUM> CSMA/CA program <NUM>, and a timer <NUM> that is used by the transceiver <NUM> to perform the CSMA/CA mode control (program) <NUM>. Depending on the severity of IEEE <NUM>. 11ah interference, the hybrid CSMA/CA mode control program <NUM> can either call conventional IEEE <NUM>. <NUM> CSMA/CA procedure or immediate channel access enabled CSMA/CA procedure.

<FIG> also shows that the data unit name is different at different layer: message <NUM>, datagram <NUM>, packet <NUM>, frame <NUM> and PHY protocol data unit (PPDU) <NUM> for application layer <NUM>, transport layer <NUM>, network layer <NUM>, MAC layer <NUM> and PHY layer <NUM>, respectively.

The upper layer data are forwarded to IEEE <NUM>. <NUM> protocol for transmission. Upon receiving a Data Request <NUM> from upper layers, IEEE <NUM>. <NUM> MAC encapsulates the data into a frame and then starts frame transmission attempt. It should be noted that multicast and broadcast frames do not require acknowledgement (ACK) from recipients. Depending on upper layers, some unicast frames may also not require the ACK.

<FIG> shows IEEE <NUM>. <NUM> data frame transmission procedure <NUM>. IEEE <NUM>. <NUM> MAC sets, in step <NUM>, the number of retransmissions (NR) to <NUM> and then invokes the CSMA/CA algorithm in step <NUM>, where the conventional IEEE <NUM>. <NUM> CSMA/CA algorithm is depicted in <FIG>.

If the CSMA/CA algorithm returns success status <NUM>, the channel is detected to be idle and therefore, the frame transmission starts <NUM>. If the ACK is not required (AckTX = <NUM>) for the frame <NUM>, IEEE <NUM>. <NUM> MAC concludes transmission success <NUM> and responds to the upper layers using Data Confirm interface <NUM> with transmission success status. If the ACK is required (AckTX = <NUM>) <NUM> and the ACK is received within the ACK waiting time period <NUM>, IEEE <NUM>. <NUM> also concludes transmission success <NUM> and responds to upper layers using Data Confirm interface <NUM> with transmission success status. If the ACK is required and the ACK is not received within the ACK waiting time period <NUM>, IEEE <NUM>. <NUM> MAC increments <NUM> NR by <NUM> and checks if the NR is greater than the threshold macMaxFrameRetries <NUM>. If yes, IEEE <NUM>. <NUM> MAC concludes the frame transmission failure and discards the frame <NUM>. IEEE <NUM>. <NUM> MAC then responds to upper layers using Data Confirm interface <NUM> with NO_ACK status. If the NR is smaller than or equal to the threshold macMaxFrameRetries <NUM>, IEEE <NUM>. <NUM> MAC goes for another transmission attempt.

If the CSMA/CA algorithm returns failure status <NUM>, IEEE <NUM>. <NUM> MAC checks if the frame is unicast frame <NUM>. If no, IEEE <NUM>. <NUM> MAC concludes the transmission failure and discards the frame <NUM>. IEEE <NUM>. <NUM> MAC then responds to upper layers using Data Confirm interface <NUM> with CHANNEL_ACCESS_FAILURE status. If the frame is unicast frame <NUM>, IEEE <NUM>. <NUM> MAC increments <NUM> NR by <NUM> and checks if the NR is greater than the threshold macMaxFrameRetries <NUM>. If yes, IEEE <NUM>. <NUM> MAC concludes the transmission failure and discards the frame <NUM>. IEEE <NUM>. <NUM> MAC then responds to upper layers using Data Confirm interface <NUM> with CHANNEL_ACCESS_FAILURE status. If the NR is smaller than or equal to the threshold macMaxFrameRetries, IEEE <NUM>. <NUM> MAC goes for another transmission attempt.

<FIG> shows conventional CSMA/CA algorithm <NUM> in the IEEE <NUM>. <NUM>-<NUM>. For the non-slotted IEEE <NUM>. <NUM> network in step <NUM>, i.e., the beacon unenabled network, the conventional IEEE <NUM>. <NUM> CSMA/CA algorithm initials the number of backoff (NB) to <NUM> and backoff exponent (BE) to the macMinBE in step <NUM>. In step <NUM>, the CSMA/CA algorithm then delays random number of backoff periods with the random number drawn uniformly within interval [<NUM>, <NUM>BE-<NUM>], which is called backoff window or delay window, where BE starts with macMinBE and increases until to the macMaxBE. When the random backoff/delay completes, the CSMA/CA algorithm performs CCA operation in step <NUM>. If the channel is detected to be idle in step <NUM>, the CSMA/CA algorithm successes <NUM> and the frame transmission starts. If the channel is detected to be busy in step <NUM>, the CSMA/CA algorithm updates NB and BE in step <NUM> as NB = NB + <NUM> and BE = min{BE + <NUM>, macMaxBE}. If the NB exceeds the threshold macMaxCSMABackoffs in step <NUM>, the CSMA/CA algorithm terminates with failure status in step <NUM>. Otherwise, CSMA/CA algorithm continues (goes to the random backoff/delay <NUM>).

For the slotted IEEE <NUM>. <NUM> network, i.e., the beacon enabled network, the CSMA/CA algorithm initiates <NUM> NB to <NUM> and contention window (CW) to CW<NUM>, which equals to <NUM> or <NUM> depending on country regulation. In this case, the CSMA/CA algorithm initiates BE to the macMinBE in step <NUM> or min{<NUM>, macMinBE} in step <NUM> depending on if the battery life extension is true or not in step <NUM>. The CSMA/CA algorithm then locates backoff period boundary in step <NUM> and delays for random number of backoff periods in step <NUM>. When the random delay completes in step <NUM>, the CSMA/CA algorithm performs CCA operation on backoff period boundary in step <NUM>. If the channel is detected to be idle in step <NUM>, the CW is decreased <NUM> by <NUM>. If the CW equals to <NUM> in step <NUM>, the CSMA/CA algorithm successes <NUM> and the frame transmission starts. Otherwise, If the CW is greater than <NUM> in step <NUM>, another CCA operation is performed on backoff period boundary in step <NUM>. If the channel is detected to be busy in step <NUM>, then CSMA/CA algorithm updates the NB, CW and BE <NUM> such that NB = NB + <NUM>, CW = CW<NUM> and BE = min{BE + <NUM>, macMaxBE}. If the NB exceeds the threshold macMaxCSMABackoffs in step <NUM>, the CSMA/CA algorithm terminates with failure status in step <NUM>. Otherwise, if the NB does not exceed the threshold macMaxCSMABackoffs in step <NUM>, the CSMA/CA algorithm continues (goes to step <NUM> for another random delay).

It can be seen that the larger macMaxCSMABackoffs can reduce the CSMA/CA failure probability. It can also be seen that for both slotted and non-slotted network, the conventional IEEE <NUM>. <NUM> CSMA/CA algorithm performs the random delay first no matter how long channel has been idle. Using this "Backoff + CCA" based CSMA/CA mechanism, IEEE <NUM>. <NUM> has disadvantage to compete for channel access with more aggressive IEEE <NUM>, which uses "CCA + Backoff" based CSMA/CA mechanism. Performing CCA before Backoff increases the probability to access channel, i.e., transmit, earlier. On the other hand, performing Backoff before CCA decreases channel access probability, especially for the longer backoff such as IEEE <NUM>. <NUM> backoff. Therefore, conventional IEEE <NUM>. <NUM> CSMA/CA mechanism is not suitable for heterogeneous coexistence, especially for coexistence with more aggressive systems such as IEEE <NUM> system.

In fact, the conventional IEEE <NUM> standards and IEEE <NUM>. <NUM> standards are designed for homogeneous network without considering coexistence of heterogeneous networks. Recently, IEEE <NUM>. 11ah provides heterogeneous coexistence mechanism such that a Sub-<NUM> (S1G) station (STA) uses energy detection (ED) based clear channel assessment (CCA) with a threshold of -<NUM> dBm per MHz to improve coexistence with other S1G band systems. If a S1G station detects energy above that threshold on its channel, then the mechanisms such as changing operating channel and deferring transmission might be used to mitigate interference.

The question is that if the heterogeneous coexistence mechanism provided in IEEE <NUM>. 11ah works well while coexisting with nonaggressive IEEE <NUM>. <NUM> network. <FIG> shows that data packet delivery rates of the co-located IEEE <NUM>. 11ah network and IEEE <NUM>. <NUM> network operating in S1G frequency band. Clearly, IEEE <NUM>. <NUM> network suffers when network traffic is heavy, but IEEE <NUM>. 11ah network always achieves near <NUM>% of packet delivery rate. Therefore, the heterogeneous coexistence method for IEEE <NUM>. <NUM> standards must be provided to achieve better performance in the presence of interference from IEEE <NUM> system and other systems such as LoRa, SigFox and RFID.

The CSMA/CA is main channel access mechanism for both IEEE <NUM> standards and IEEE <NUM>. <NUM> standards. However, IEEE <NUM> CSMA/CA mechanism is much more aggressive than IEEE <NUM>. <NUM> CSMA/CA in channel access contention as explained below.

The CSMA/CA mechanism directly impacts on the coexistence behavior of IEEE <NUM> standards and IEEE <NUM>. <NUM> standards. Some embodiments of the present invention use IEEE <NUM>. 11ah and IEEE <NUM>. <NUM> as examples to explore main CSMA/CA differences that affect coexistence behavior of IEEE <NUM> system and IEEE <NUM>. <NUM> system.

The IEEE <NUM>. 11ah ED threshold is -<NUM> dBm for <NUM> channel, -<NUM> dBm for <NUM> channel, -<NUM> dBm for <NUM> channel and -<NUM> dBm for <NUM> channel. On the other hand, IEEE <NUM>. <NUM> ED threshold is generally lower than IEEE <NUM>. 11ah ED threshold. For OFDM PHY, ED threshold is in [-<NUM> dBm, -<NUM> dBm]. For O-QPSK PHY, ED threshold is in [-<NUM> dBm, -<NUM> dBm]. For FSK PHY, ED threshold is in [-<NUM> dBm, -<NUM> dBm] with FEC and in [-<NUM> dBm, -<NUM> dBm] without FEC. IEEE <NUM>. <NUM> receiver sensitivity (RS) is <NUM> dB lower than the corresponding ED threshold.

The higher ED threshold of IEEE <NUM>. 11ah can cause interference with IEEE <NUM>. <NUM> packet transmission. If the detected energy level of an IEEE <NUM>. <NUM> packet transmission is below IEEE <NUM>. <NUM> RS or above IEEE <NUM>. 11ah ED threshold, IEEE <NUM>. 11ah ED-CCA correctly handles the IEEE <NUM>. <NUM> packet transmission. However, if the detected energy level of an IEEE <NUM>. <NUM> packet transmission is above IEEE <NUM>. <NUM> RS and below IEEE <NUM>. 11ah ED threshold, the energy level is high enough for IEEE <NUM>. <NUM> device to successfully decode the packet. But the packet transmission is disregarded by IEEE <NUM>. 11ah devices.

IEEE <NUM>. 11ah backoff is much faster than IEEE <NUM>. <NUM> backoff due to the smaller time parameters. An IEEE <NUM>. 11ah time slot is <NUM>, CCA time is less than <NUM> and CCA to transmission (TX) turnaround time is less than <NUM>. For IEEE <NUM>. <NUM>, the corresponding time parameters depend on symbol rate. With <NUM> ksymbol/s symbol rate, backoff period is <NUM>, CCA time is <NUM> and CCA to TX turnaround time is <NUM>. These backoff parameters are even larger for smaller symbol rates. Especially for IEEE <NUM>. <NUM> PHYs operating in the <NUM> band and <NUM> band, backoff period is at least <NUM> and CCA to TX turnaround time is <NUM>. The larger time parameters make IEEE <NUM>. <NUM> devices operate slowly. The smaller time parameters give IEEE <NUM>. 11ah devices advantage in wireless channel access.

As a result, it only takes <NUM> for an IEEE <NUM>. 11ah device to backoff two time slots. However, it takes <NUM> for an IEEE <NUM>. <NUM> device operating in the <NUM> band to backoff two backoff periods. It should be noted that during each backoff time slot/backoff period, transmission process is suspended. This clearly shows the aggressiveness of IEEE <NUM>. 11ah over IEEE <NUM>.

There are many differences between IEEE <NUM> standards and IEEE <NUM>. <NUM> standards. Followings are two differences that impact coexistence behavior.

IEEE <NUM> CSMA/CA mechanism performs "CCA + Backoff" operations. In other words, IEEE <NUM> CSMA/CA performs CCA first. If channel is idle for more than DIFS time period, transmission starts immediately. Otherwise, random backoff starts. An IEEE <NUM> packet is discarded when the total number of retransmissions exceeds the RetryCount threshold. IEEE <NUM> CSMA/CA must perform CCA in each backoff time slot. The backoff procedure can proceed only if the channel is determined to be idle. If the channel is determined to be busy within a time slot, the backoff procedure is suspended and the backoff counter is not decremented.

On the other hand, IEEE <NUM>. <NUM> CSMA/CA mechanism performs "Backoff + CCA" operations. In other words, IEEE <NUM>. <NUM> CSMA/CA performs backoff first and CCA is performed after backoff completes. However, IEEE <NUM>. <NUM> backoff is not interrupted once started.

Therefore, the heterogenous coexistence mechanism for IEEE <NUM>. <NUM> should take advantage of the IEEE <NUM> backoff suspension, i.e., actively sensing the channel. Once channel becomes idle, transmission can start.

IEEE <NUM> channels are wider than IEEE <NUM>. <NUM> channels, which causes that IEEE <NUM> network can interfere with multiple IEEE <NUM>. <NUM> networks.

In IEEE <NUM>. <NUM>, data frame transmission failure is incurred by a) CSMA/CA failure or b) transmission failure. The CSMA/CA failure occurs when CSMA/CA algorithm terminates with a failure status because the NB exceeds the threshold macMaxCSMABackoffs as shown in <FIG>. Transmission failure occurs because of unsuccessful frame transmission or unsuccessful acknowledgement transmission or later acknowledgement receiving. For each CSMA/CA failure or transmission failure, the number of retransmissions (NR) is incremented by <NUM>. An IEEE <NUM>. <NUM> frame is discarded with CHANNEL_ACCESS_FAILURE status when the NR exceeds the threshold macMaxFrameRetries due to CSMA/CA failure. An IEEE <NUM>. <NUM> packet is discarded with NO_ACK status when the NR exceeds the threshold macMaxFrameRetries due to transmission failure. Because IEEE <NUM> devices are more aggressive than IEEE <NUM>. <NUM> devices, IEEE <NUM> transmissions can easily cause CSMA/CA failure packet discard of IEEE <NUM>. <NUM> devices as shown in <FIG> and <FIG>.

<FIG> shows an example of conventional IEEE <NUM>. <NUM> CSMA/CA algorithm failure caused by IEEE <NUM> transmissions. The IEEE <NUM>. <NUM> protocol of IEEE <NUM>. <NUM> device <NUM> receives a data transmission request at step <NUM> from upper layers via Data Request interface. As a result, IEEE <NUM>. <NUM> MAC starts frame transmission attempt by invoking the CSMA/CA algorithm, which sets the number of backoffs (NB) to <NUM> and starts "Backoff + CCA" process. Meanwhile IEEE <NUM> devices <NUM> transmit packets frequently such that in each IEEE <NUM>. <NUM> CCA time period, there is an IEEE <NUM> transmission that overlaps some portion of IEEE <NUM>. <NUM> CCA period. Accordingly, each IEEE <NUM>. <NUM> CCA operation returns busy channel status. When the NB exceeds the macMaxCSMABackoffs, i.e., reaches <NUM> + macMaxCSMABackoffs, IEEE <NUM>. <NUM> CSMA/CA algorithm terminates with failure status <NUM>. For each CSMA/CA algorithm failure, the number of retransmissions (NR) is incremented by <NUM>. When the NR exceeds the predefined threshold macMaxFrameRetries, IEEE <NUM>. <NUM> MAC concludes the transmission failure and discards the frame. IEEE <NUM>. <NUM> MAC then reports to upper layers via Data Confirm interface <NUM> with CHANNEL_ACCESS_FAILURE status.

In <FIG>, there is an opportunity for IEEE <NUM>. <NUM> device <NUM> to transmit the frame. Had IEEE <NUM>. <NUM> device <NUM> performed consecutive CCA <NUM>, which would return idle channel status, it would start transmission <NUM>. In that case, IEEE <NUM> transmission <NUM> could be postponed due to IEEE <NUM>. <NUM> transmission <NUM>. Instead of using standard CSMA/CA algorithm, IEEE <NUM>. <NUM> device <NUM> is performing the last backoff <NUM>. When the backoff completes in <NUM>, IEEE <NUM> transmission started in <NUM> already. Therefore, the CCA <NUM> returns busy channel status. As a result, IEEE <NUM>. <NUM> device <NUM> misses the transmission opportunity <NUM>.

Had the IEEE <NUM>. <NUM> device <NUM> actively sensed the channel, it wouldn't miss the transmission opportunity <NUM>.

<FIG> shows another example of transmission opportunity <NUM> miss by IEEE <NUM>. <NUM> device <NUM>, where IEEE <NUM>. <NUM> CSMA/CA failure is also caused by IEEE <NUM> transmissions. In this case, IEEE <NUM>. <NUM> CSMA/CA algorithm also terminates with failure status <NUM> when the NB exceeds the macMaxCSMABackoffs. However, there is a transmission opportunity <NUM> for IEEE <NUM>. <NUM> device <NUM> right after the CSMA/CA algorithm terminates. Had the IEEE <NUM>. <NUM> device <NUM> performed one more "Backoff + CCA" process <NUM>, it would start transmission <NUM>. In that case, IEEE <NUM> transmission <NUM> could be postponed due to IEEE <NUM>. <NUM> transmission <NUM>. Instead, the standard CSMA/CA algorithm terminates with failure status.

In <FIG>, had the macMaxCSMABackoffs been increased by <NUM>, IEEE <NUM>. <NUM> device <NUM> wouldn't miss transmission opportunity <NUM>.

<FIG> and <FIG> clearly show that the standard IEEE <NUM>. <NUM> CSMA/CA mechanism must be enhanced to avoid packet discard when the interference from other systems such as IEEE <NUM> system is severe.

Some embodiments of the invention provide the active carrier sense (ACS) based CSMA/CA (ACS-CSMA/CA) for IEEE <NUM>. <NUM> to address CSMA/CA failure packet discard caused by aggressive IEEE <NUM> transmissions.

<FIG> shows the flow chart of the ACS-CSMA/CA <NUM> for IEEE <NUM>. <NUM> to achieve better coexistence with IEEE <NUM>. The ACS-CSMA/CA allows IEEE <NUM>. <NUM> devices to avoid channel access failure packet discard when IEEE <NUM> interference or other interference is severe.

The ACS-CSMA/CA includes three key functions: macMaxCSMABackoffs adaptation, consecutive CCA and optimal channel access decision making.

The ACS-CSMA/CA first checks <NUM> if IEEE <NUM> interference is severe. if no, the standard IEEE <NUM>. <NUM> CSMA/CA algorithm <NUM> is applied. if yes, it initiates <NUM> NB, CW and BE as NB = <NUM>, CW = <NUM> and BE = macMinBE. It then checks if the CSMA/CA is slotted or not <NUM>, i.e., if the IEEE <NUM>. <NUM> network is beacon enabled or not. If not, it performs standard backoff <NUM> + CCA <NUM> operations. If yes, it locates backoff period boundary <NUM> and then performs standard backoff <NUM> + CCA <NUM> operations <NUM>. After completion of CCA <NUM>, the ACS-CSMA/CA algorithm checks if the channel is idle <NUM>. If the channel is idle, the CSMA/CA algorithm successes and frame transmission starts <NUM>. If the channel is busy, the ACS-CSMA/CA algorithm updates NB and BE as NB = NB + <NUM> and BE = min{BE + <NUM>, macMaxBE} <NUM> and then goes to the invented ACS routine <NUM>.

In the ACS routine <NUM>, the ACS-CSMA/CA dynamically adapts the macMaxCSMABackoffs based on severity of the IEEE <NUM> interference in step <NUM>. More specifically, it increases the macMaxCSMABackoffs to <MAT> where IEEE <NUM> interference factor InterferenceFactor<NUM> ≥ <NUM> can be computed based on the specific IEEE <NUM> interference severity metric. Take channel occupancy time ratio for example, let CHOR<NUM> be the channel occupancy time ratio of IEEE <NUM> system measured by an IEEE <NUM>. <NUM> device, the InterferenceFactor<NUM> can be defined as <MAT>.

It is noted that the larger macMaxCSMABackoffs can avoid packet discard probability due to the CSMA/CA failure as illustrated in <FIG>.

The ACS routine then checks if the NB exceeds the updated macMaxCSMABackoffs <NUM>. If yes, the ACS-CSMA/CA algorithm terminates with failure status <NUM>. If no, the ACS routine checks if the CSMA/CA is slotted or not <NUM>, i.e., if the IEEE <NUM>. <NUM> network is beacon enabled or not. If not, it invokes consecutive CCA subroutine <NUM> as shown in <FIG>. If yes, it locates backoff period boundary <NUM> and then invokes consecutive CCA subroutine <NUM> as shown in <FIG>. If the consecutive CCA subroutine <NUM> returns idle channel status <NUM>, the ACS routine computes <NUM> an optimal channel access probability to decide to transmit or go for another round of consecutive CCA operation because it is possible that multiple neighboring IEEE <NUM>. <NUM> devices perform active carrier sense. When channel becomes idle, if multiple neighboring IEEE <NUM>. <NUM> devices start transmission, these transmissions can collide.

To compute the optimal channel access probability, an IEEE <NUM>. <NUM> device determines the number of IEEE <NUM>. <NUM> neighbors by <NUM>) using neighbor solicitation message or <NUM>) monitoring neighbor's packet transmission. Assume there are N<NUM> IEEE <NUM>. <NUM> devices in a neighborhood and each device Di<NUM> (i = <NUM>, <NUM>,. , N<NUM>) has probability p to access channel immediately and probability <NUM> - p not to access channel immediately. Let <MAT> denote binomial random variable B(N<NUM>, p), where Xi is random variable representing decision of device Di<NUM>. Then <MAT> and E[X] = N<NUM>*p. To avoid internal collision among/between IEEE <NUM>. <NUM> transmissions due to the immediate channel access when the channel becomes idle, the optimal strategy is that only one IEEE <NUM>. <NUM> device transmits immediately and rest of IEEE <NUM>. <NUM> devices do not transmit immediately, i.e., E[X] = <NUM>, which gives optimal probability po = <NUM>/N<NUM>.

Using optimal probability po, the ACS routine makes <NUM> decision on whether transmission starts immediately or not. The ACS routine draws a random value uniformly from interval [<NUM>, <NUM>]. If the random value drawn ≤ po, the CSMA/CA algorithm successes <NUM> and the frame transmission starts immediately. Otherwise, the ACS routine delays for random (<NUM>BE-<NUM>) unit backoff periods <NUM>, updates NB and BE as NB = NB + <NUM> and BE = min{BE + <NUM>, macMaxBE} and then goes for another round of consecutive CCA operation.

For the immediate transmission, the optimal channel access probability po is to avoid collision among transmissions by multiple IEEE <NUM>. <NUM> devices. Even the optimal channel access probability po is <NUM>/N<NUM>, in some cases, the probability po may be changed based on a degree of communication congestion measured by individual IEEE <NUM>. <NUM> node or PANC.

<FIG> depicts the consecutive CCA subroutine <NUM>, where the macMaxConCCAs ≥ <NUM> is defined as the maximum number of consecutive CCAs and the NCCA denotes the number of consecutive CCAs performed for current ACS routine. A CCA operation is performed within a standard defined phyCCADuration/aCCATime period. In the consecutive CCA subroutine <NUM>, the CCA operation is repeatedly performed until the channel becomes idle or the macMaxConCCAs CCAs have been performed. After the macMaxConCCAs CCAs have been performed, if the channel is still busy, the consecutive CCA subroutine returns busy channel status. Otherwise, the consecutive CCA subroutine returns idle channel status. As a result, consecutive CCA subroutine returns either idle channel or busy channel.

To that end, consecutive CCA subroutine <NUM> initiates <NUM> NCCA = <NUM> and then checks <NUM> if NCCA exceeds the threshold macMaxConCCAs. If yes, it returns busy channel status. If no, it performs <NUM> a CCA operation. If the channel is detected to be idle <NUM>, it returns idle channel status. If the channel is detected to be busy, the consecutive CCA subroutine updates NCCA as NCCA = NCCA + <NUM> and then attempts for another round of CCA operation by going to step <NUM>.

It can be seen that the ACS based CSMA/CA (ACS-CSMA/CA) mechanism can avoid missing the transmission opportunity as illustrated in <FIG> because consecutive CCA subroutine continuously monitors the channel and therefore, will not miss any idle channel condition.

It can also be seen that the ACS based CSMA/CA mechanism can avoid missing the transmission opportunity as illustrated in <FIG> because the larger macMaxCSMABackoffs can reduce the CSMA/CA failure probability and therefore, can increase the transmission opportunity.

The above-described embodiments of the present invention can be implemented in any of numerous ways. For example, the embodiments may be implemented using hardware, software or a combination thereof. When implemented in software, the software code can be executed on any suitable processor or collection of processors, whether provided in a single computer or distributed among multiple computers. Such processors may be implemented as integrated circuits, with one or more processors in an integrated circuit component. Though, a processor may be implemented using circuitry in any suitable format.

Also, the embodiments of the invention may be embodied as a method, of which an example has been provided. The acts performed as part of the method may be ordered in any suitable way. Accordingly, embodiments may be constructed in which acts are performed in an order different than illustrated, which may include performing some acts simultaneously, even though shown as sequential acts in illustrative embodiments.

Use of ordinal terms such as "first," "second," in the claims to modify a claim element does not by itself connote any priority, precedence, or order of one claim element over another or the temporal order in which acts of a method are performed, but are used merely as labels to distinguish one claim element having a certain name from another element having a same name (but for use of the ordinal term) to distinguish the claim elements.

Claim 1:
A computer-executed method for IEEE <NUM>.<NUM> devices based on an active carrier sense based carrier-sense multiple access with collision avoidance, ACS-CSMA/CA, control program (<NUM>) and standard CSMA/CA control program (<NUM>, <NUM>) for coexistence of an IEEE <NUM>.<NUM> network (<NUM>) composing of IEEE <NUM>.<NUM> devices (<NUM>, <NUM>, <NUM>) and IEEE <NUM> network (<NUM>) composing of IEEE <NUM> devices (<NUM>, <NUM>) sharing frequency spectra between the networks, wherein the computer-executed method is provided on an IEEE <NUM>.<NUM> device, the computer-executed method causes a processor of the IEEE <NUM>.<NUM> device to perform steps that comprise:
estimating a severity of IEEE <NUM> interference based on a severity estimation metric;
selecting the ACS-CSMA/CA control program based on the estimated severity, wherein the ACS-CSMA/CA control program is configured to perform:
dynamically updating a maximum number of backoffs, macMaxCSMABackoffs, based on the estimated severity;
determining if a number of backoffs, NB, exceeds the updated macMaxCSMABackoffs; and
performing consecutive CCA operation to continuously detect channel status; and
transmitting frames when the detected channel status is an idle state or incrementing number of retransmissions, NR, when the detected channel status is a busy state.