ACCESS POINT-AIDED COEXISTENCE/CONCURRENCY AT MOBILE DEVICES
Methods, systems, and devices are described that enable a WLAN access point (AP) to schedule packet transmissions to (or from) a mobile device taking into consideration the schedule of various other coexisting transmission/reception (Tx/Rx) activities on the mobile device. Various approaches may increase throughput at the mobile device. Various approaches also may benefit other stations associated with the same AP.
Latest QUALCOMM Incorporated Patents:
- User equipment (UE)-initiated discontinuous reception (DRX) medium access control (MAC) control element (MAC-CE)
- Techniques for time alignment of measurement gaps and frequency hops
- Configuration for legacy voice support in 5G
- Configuring beam management based on skipped transmissions of signals associated with beam management
- Distributed device management for positioning
The present application for patent claims priority to U.S. Provisional Patent Application No. 61/823,863 by Cho et al., entitled “SIFS RESPONSE TO PS-POLL,” filed May 15, 2013, assigned to the assignee hereof, and expressly incorporated by reference herein. The present application is related to copending application Ser. No. 13/302,9U1 by Cho et al., entitled “ACCESS POINT RESPONSE TO PS-POLL,” assigned to the assignee hereof, and expressly incorporated by reference herein. The present application is also related to copending application Ser. No. 13/302,9U2 by Cho et al., entitled “ACCESS POINT RESPONSE TO PS-POLL,” assigned to the assignee hereof, and expressly incorporated by reference herein.
BACKGROUNDWireless communications networks are widely deployed to provide various communication services such as voice, video, packet data, messaging, broadcast, and the like. These wireless networks may be multiple-access networks capable of supporting multiple users by sharing the available network resources.
A wireless communications network may include a number of network devices such as access points (APs) that can support communication for a number of wireless devices. A wireless device may communicate with a network device bi-directionally. For example, in a wireless local area network (WLAN), a station (STA) may communicate with an associated AP via downlink and uplink. The downlink (or forward link) refers to the communication link from the AP to the station, and the uplink (or reverse link) refers to the communication link from the station to the AP.
In WLANs, there may be cases in which a station may desire to enter a power saving mode in which transmissions between an AP and station are reduced, allowing the station to power off a component(s), such as radio components, and thereby reduce power consumption. Existing power saving techniques may, in some cases, result in relatively long periods of time between a determination by a station to enter a power saving mode and the powering off of related components, because of related network signaling to notify and confirm power saving mode with an AP. Therefore, power conservation techniques are desirable that are simple to implement and have relatively short time periods between a determination to enter a power save mode by a station and the station entering a power conservation mode.
SUMMARYVarious methods, systems, devices, and apparatuses are described for wireless communications that may enable a WLAN access point (AP) to schedule packet transmissions to (or from) a mobile device taking into consideration the schedule of various other coexisting transmission/reception (Tx/Rx) activities on the mobile device. Various embodiments may increase throughput at the mobile device. Various embodiments also may benefit other stations associated with the same AP.
A method for wireless communications is described. In one configuration, the method may involve determining interference information for a node having a WLAN radio. The interference information may relate to operations by an interfering radio of the node that interfere with WLAN communications of the node. The method also may involve scheduling a transmission to the node based at least in part on the interference information.
In some aspects, the method may involve adjusting a number of packets included in a physical layer convergence protocol (PLCP) protocol data unit (PPDU) of the transmission to the node based at least in part on the interference information. In some aspects, the PPDU may be an aggregated media access control (MAC) protocol data unit (A-MPDU). Alternatively or additionally, the method may involve fragmenting a media access control (MAC) protocol data unit (MPDU) of the transmission to the node based at least in part on the interference information.
In some aspects, the method may involve adjusting a number of packets included in a physical layer convergence protocol (PLCP) protocol data unit (PPDU) of a transmission to a different node based at least in part on the interference information. Alternatively or additionally, the method may involve fragmenting a media access control (MAC) protocol data unit (MPDU) of a transmission to a different node based at least in part on the interference information.
In some aspects, determining interference information for the node may involve receiving at least part of the interference information from the node. Alternatively or additionally, determining interference information for the node may involve estimating at least part of the interference information using transmissions received from the node.
In some aspects, the method may involve: determining that a transmission to the node is delayed due to interference; transmitting a PPDU over a transmission medium to a different node during the interference; and, providing a priority to the node for accessing the transmission medium after the interference ends. In some aspects, providing a priority to the node may involve adjusting a size of the PPDU to the different node so that transmission of the PPDU to the different node ends about a same time as the interference ends.
In some aspects, the method may involve: receiving a trigger frame from the node after the interference ends; and, transmitting data to the node in response to the trigger frame. The received trigger frame may have been sent following a space after the interference ended, wherein the space is selected from the group consisting of: a short interframe space (SIFS), a point coordination function (PCF) interframe space (PIFS), a distributed coordination function (DCF) interframe space (DIFS), or a reduced interframe space (RIFS). In other aspects, the method may involve: determining when the interference ends based at least in part on the interference information; and, transmitting data to the node once the interference ends.
In some aspects, the method may involve: setting a flag that indicates that the node has been bypassed for transmission; and, when the flag is set, adjusting a size of the PPDU to the different node so that transmission of the PPDU to the different node ends about a same time as the interference ends. In some aspects, the method also may involve clearing the flag upon successfully transmitting data to the node. Alternatively or additionally, the method may involve clearing the flag upon a certain number of unsuccessful transmissions of data to the node.
In some aspects, the transmissions of the interfering radio use a different radio access technology than WLAN. Alternatively or additionally, the interfering radio may be the WLAN radio. In such case, the interference information may be based at least in part on a schedule of the WLAN radio for accessing a channel other than a channel for communicating a node performing scheduling of the transmission, e.g., an access point of the node.
In some aspects, the method may involve: identifying a sub-frame error based at least in part on the interference information; and, handling the identified sub-frame error in rate control.
An apparatus for wireless communications is described. In one configuration, the apparatus may include a coexistence interference manager configured to determining interference information for a node having a WLAN radio. The interference information may relate to operations by an interfering radio of the node that interfere with WLAN communications of the node. The apparatus also may include a communications manager configured to schedule a transmission to the node based at least in part on the interference information. The coexistence interference manager and/or the communications manager may be configured to perform various additional functions of the methods described above and as described further herein. Alternatively or additionally, the apparatus may include additional components that are configured to perform various additional functions of the methods described above and as described further herein.
Another apparatus for wireless communications is described. In one configuration, the apparatus may include means for determining interference information for a node having a WLAN radio. The interference information may relate to operations by an interfering radio of the node that interfere with WLAN communications of the node. The apparatus also may include means for scheduling a transmission to the node based at least in part on the interference information. Further, the apparatus may include means configured to perform various additional functions of the methods described above and as described further herein.
A computer program product is described. In one configuration, the computer program product may be a non-transitory computer-readable medium including instructions stored thereon. The instructions may be executable by a computer to: determine interference information for a node having a WLAN radio, the interference information relating to operations by an interfering radio of the node that interfere with WLAN communications of the node; and, schedule a transmission to the node based at least in part on the interference information. Further, the stored instructions may be executable by the computer to perform various additional functions of the methods described above and as described further herein.
The foregoing has outlined rather broadly the features and technical advantages of examples according to the disclosure in order that the detailed description that follows may be better understood. Additional features and advantages will be described hereinafter. The conception and specific examples disclosed may be readily utilized as a basis for modifying or designing other structures for carrying out the same purposes of the present disclosure. Such equivalent constructions do not depart from the spirit and scope of the appended claims. Features which are believed to be characteristic of the concepts disclosed herein, both as to their organization and method of operation, together with associated advantages will be better understood from the following description when considered in connection with the accompanying figures. Each of the figures is provided for the purpose of illustration and description only, and not as a definition of the limits of the claims.
A further understanding of the nature and advantages of the present disclosure may be realized by reference to the following drawings. In the appended figures, similar components or features may have the same reference label. Further, various components of the same type may be distinguished by following the reference label by a dash and a second label that distinguishes among the similar components. If only the first reference label is used in the specification, the description is applicable to any one of the similar components having the same first reference label irrespective of the second reference label.
Described examples are directed to methods, systems, devices, and apparatuses for power conservation in a wireless communications system that may enhance power conservation through efficient transmissions and acknowledgements of information between an AP and a station. The time between a determination by a station to enter a power saving mode and entering network sleep mode by the station may be reduced through a transmission, by an AP, of a media access control (MAC) protocol data unit (MPDU) to the station successive to a short interframe space (SIFS) after transmission of an acknowledgement to the station of a PS-Poll frame from the station. Transmission of the MPDU after the SIFS following the acknowledgement may reduce the time associated with random backoffs following an acknowledgement of the AP, and may reduce or eliminate the time associated with queue delay, other traffic, or collisions of traffic with another station(s). The time to enter a power saving mode by a station may also be reduced through transmission of aggregated MPDUs (A-MPDUs), with initial MPDUs of an A-MPDU having an indicator bit set to indicate more data and a last MPDU of the A-MPDU having its indicator bit cleared to indicate no additional data is to be transmitted. Efficiencies may further be enhanced through an AP preventing a retransmission of an MPDU to the station in the absence of an acknowledgement from the station that the MPDU is received. In addition to power savings, examples described may also provide, for example, a more efficient usage of the overall wireless medium, thus enhancing medium resources available for other devices, providing a higher throughput, lower wait times for devices to access the medium, and may reduce the amount of collisions in the medium.
Throughout this description, the terms MPDU and A-MPDU are used. It should be understood, however, that other types of data units may be employed. In terms of MPDUs and A-MPDUs, the term physical layer convergence protocol (PLCP) data unit (PPDU) may be used.
The power conservation techniques presented herein are generally described in connection with WLANs for simplicity. A WLAN (or Wi-Fi network) may refer to a network that is based on the protocols described in the various IEEE 802.11 standards (e.g., 802.11a/g, 802.11n, 802.11ac, 802.11ah, etc.). The same or similar techniques, however, may be used for various other wireless communications systems such as cellular wireless systems, peer-to-peer wireless communications, ad hoc networks, satellite communications systems, and other systems. The terms “system” and “network” may be used interchangeably.
Thus, the following description provides examples, and is not limiting of the scope, applicability, or configuration set forth in the claims. Changes may be made in the function and arrangement of elements discussed without departing from the spirit and scope of the disclosure. Various examples may omit, substitute, or add various procedures or components as appropriate. For instance, the methods described may be performed in an order different from that described, and various steps may be added, omitted, or combined. Also, features described with respect to certain examples may be combined in other examples.
As used herein, the term “successive to” refers to a second transmission that immediately follows a first transmission. For example, an MPDU that is transmitted “successive to an SIFS after transmission of an acknowledgement” means that the MPDU is transmitted immediately following an SIFS period that immediately follows the termination of the acknowledgement.
Referring first to
The AP 105 is configured to communicate bi-directionally with each of the stations 115 using transmissions 130. The transmissions 130 may include downlink transmissions (e.g., beacon frames) that are sent from the AP 105 to a station 115 as well as uplink transmissions (e.g., acknowledgements or ACK frames) that are sent from a station 115 to the AP 105. Typically, the AP 105 is configured to broadcast its downlink transmissions to the stations 115 that are within the coverage area 120. In situations where a station 115 does not expect to actively transmit or receive data, it may be beneficial for the station 115 to power down certain of its components, such as radio components, in order to reduce power consumption of the station. Various wireless standards, such as the 802.11 standards, define a power-save mode for stations 115. In power-save mode, a station 115 may choose to enter a network sleep mode for a beacon interval(s)s, waking periodically to receive beacon frames that include a delivery traffic indication message (DTIM). In some implementations, a DTIM may be transmitted periodically in beacon frames, such as, for example, every other beacon frame, and a station 115 in network sleep mode may awaken to receive every other beacon frame but otherwise remain asleep and may thereby reduce power consumption. To initiate a power-save mode, a station 115 may transmit a notification to the AP 105, so that the AP 105 will know how to handle data traffic destined for the station 115. In some examples, the AP 105 and a station of the stations 115 may be configured to implement communications related to entry of a power save mode by the station.
With reference now to
At this point, the AP assumes that the station has gone back into a network sleep mode, and the station may go into network sleep mode. According to various implementations, the duration of the DIFS and RBO on average is approximately 110 μsec. Additionally, other factors may also cause delays in a station entering network sleep mode. For example, queue delays within the AP may result in a delay of the transmission of MPDU 225 by the AP, and reception of MPDU 225 by the STA. Such a queue delay may occur, for example, when another station receives an MPDU or an aggregated MPDU (A-MPDU) from the AP, which was queued to be transmitted before the MPDU 225. Such a queue delay may result in a delayed entry by the station into network sleep mode, and thus result in increased power consumption relative to a case that experiences no queue delay. Another factor that may delay a station from entering network sleep mode is traffic from another station that may be transmitted following lower RBO. The AP would then be delayed in transmitting MPDU 225, which would in turn delay the station from entering network sleep mode. A further factor that may delay a station from entering network sleep mode is a collision between the AP transmitted MPDU 225 and a transmission of another station. Such a situation results in a retransmission of the MPDU 225 following an increased RBO, potentially with a reduced data rate. Thus, such a situation may also delay the station from entering network sleep mode.
With reference now to
Circumstances may arise, however, which may prevent the acknowledgement 305 from being received at the AP. For example, interference may result in the AP being unable to properly receive the acknowledgement 305. The station, however, having sent the acknowledgement 305 may enter into network sleep mode. The AP, following a timeout period 315, may retransmit MPDU 225-a. The station, having entered network sleep mode, does not receive the retransmitted MPDU 225-a, and the AP thus does not receive an acknowledgement again. The AP, in this example, retransmits MPDU 225-a after period 310, which is an increased backoff period with respect to period 310. According to the example of
According to some examples, the AP may discontinue sending retransmissions of the MPDU following a limited number of MPDUs after the PS-Poll frame. Such a limit on retransmissions may save some network and AP resources, as compared to implementations where retransmissions are attempted until an acknowledgement is received. Additionally, according to some examples, a data transmission rate for the station may remain unadjusted in the absence of the acknowledgement from the station that the MPDU is received, based on the assumption that the station may be in sleep mode. In some other cases, the AP may transmit at unadjusted data rate for a limited number of attempts, and then adjust the data rate for a subsequent transmission(s) of an MPDU. In some examples, the AP and station may communicate on a busy or noisy channel, which may result in the station being unable to receive transmissions at the unchanged rate, and it may be determined that the lack of an acknowledgement is a result of the channel conditions or is a result of a collision with another station(s) communicating with the AP. In such cases, the retransmission of MPDU 225-a may be performed using an adjusted data rate or with a different backoff period applied. Adjusting the data transmission rate may be accomplished, for example, through an update to a rate adaptation table at the AP.
With reference now to
In some examples, an AP may have additional data in its buffered data queue to be transmitted to the station than may be transmitted in a single MPDU. With reference now to
Following an SIFS 530, the station may transmit an acknowledgement 535 that the MPDU 525 was received. At this point, the AP assumes that the station has gone to network sleep mode, although the station, based on the more bit of the MPDU 525, may not enter into sleep mode. In the example of
In some examples, rather than transmitting a single MPDU, an AP may transmit an aggregated MPDU (A-MPDU). Such an A-MPDU may include multiple MPDUs transmitted sequentially by the AP. With reference now to
Following an SIFS 645, the station may transmit a block acknowledgement (BA) 650 indicating which MPDUs 630, 635, 640 of A-MPDU 625 are properly received. Such a BA 650 may include, according to some implementations, a starting MPDU sequence number and a bitmap of a predefined number of prior sequence numbers, with bits of the bitmap set or cleared to indicate which sequence numbers have been properly received at the station. In the example of
In some cases, the AP may not properly receive a BA from a station, and may retransmit an A-MPDU following a random backoff period. Similarly as discussed above with respect to
Following an SIFS 745, the station may transmit a BA 750 indicating which MPDUs 730, 735, 740 of A-MPDU 725 are properly received. In the example of
In some implementations, a station may not be configured to recognize that different MPDUs in an A-MPDU may contain different values for more bits. In some examples, an AP may recognize that the station does not have such capability, and may always set the more bits in an A-MPDU to the same value. With reference now to
With reference now to
Turning now to
With reference now to
Turning to
The station 115-b may include a processor 1205, a memory 1210, a transceiver 1225, antennas 1230, and a power manager 1220. The power manager 1220 may be an example of the power save mode module 1115 of
The memory 1210 may include random access memory (RAM) and read-only memory (ROM). The memory 1210 may store computer-readable, computer-executable software (SW) code 1215 containing instructions that are configured to, when executed, cause the processor 1205 to perform various functions described herein for power conservation. Alternatively, the software code 1215 may not be directly executable by the processor 1205 but be configured to cause the computer (e.g., when compiled and executed) to perform functions described herein.
The processor 1205 may include an intelligent hardware device, e.g., a central processing unit (CPU), a microcontroller, an application-specific integrated circuit (ASIC), etc. The processor 1205 may process information received through the transceiver 1225 and/or to be sent to the transceiver 1225 for transmission through the antennas 1230. The processor 1205 may handle, alone or in connection with the power manager 1220, various aspects for entering into a network sleep mode.
The transceiver 1225 may be configured to communicate bi-directionally with APs 105 in
The components of the station 115-b may be configured to implement aspects discussed above with respect to
Turning to
The memory 1320 may include RAM and ROM. The memory 1320 may also store computer-readable, computer-executable software (SW) code 1325 containing instructions that are configured to, when executed, cause the processor 1310 to perform various functions described herein for entry of a power save mode by a station, for example. Alternatively, the software code 1325 may not be directly executable by the processor 1310 but be configured to cause the computer, e.g., when compiled and executed, to perform functions described herein.
The processor 1310 may include an intelligent hardware device, e.g., a CPU, a microcontroller, an ASIC, etc. The processor 1310 may process information received through the transceiver 1330, the AP communicator 1380, and/or the network communicator 1385. The processor 1310 may also process information to be sent to the transceiver 1330 for transmission through the antennas 1340, to the AP communicator 1380, and/or to the network communicator 1385. The processor 1310 may handle, alone or in connection with power save communicator 1345, various aspects related to power save mode communications as discussed above.
The transceiver 1330 may include a modem configured to modulate packets and provide the modulated packets to the antennas 1340 for transmission, and to demodulate packets received from the antennas 1340. The transceiver 1330 may be implemented as a transmitter(s) and a separate receiver(s). The transceiver 1330 may be configured to communicate bi-directionally, via the antennas 1340, with a station(s) 115 as illustrated in
According to the architecture of
The components of the AP 105-b may be configured to implement aspects discussed above with respect to
Turning next to
Turning next to
Turning next to
According to another aspect of this disclosure, described examples are directed to methods, systems, devices, and apparatuses to enable a WLAN access point (AP) to schedule packet transmissions to (or from) a mobile device taking into consideration the schedule of various other coexisting transmission/reception (Tx/Rx) activities on the mobile device. Various embodiments may increase throughput at the mobile device. Various embodiments also may benefit other stations associated with the same AP.
Tx/Rx activities coexisting with WLAN communications on the mobile device may include, for example, Long Term Evolution (LTE) and Bluetooth (BT). Additionally or alternatively, the coexisting Tx/Rx activities may include WLAN communications (e.g., Wi-Fi concurrency), such as when the mobile device accesses the Internet via the AP and concurrently communicates with another device, for example, in a peer-to-peer (P2P) network.
In one example, a WLAN AP may learn interference information (e.g., schedule, timing, etc.) from a coexisting radio at the mobile device (e.g., station). The AP may learn the interference information from the mobile device explicitly reporting to the AP. The device may report time windows with interference and a pattern of the windows, for example, using a proprietary signaling frame or an existing unscheduled automatic power save delivery (U-APSD) action frame (e.g., add traffic stream (ATS) frame). The device may notify the AP of the time windows during which the station is not available for receiving packets. The AP and mobile device may set up a BlockACK session to enable aggregated media access control (MAC) protocol data unit (A-MPDU) transmissions from the AP to the device. The device may send a trigger frame (e.g., PS-Poll) after the channel becomes available. In response, the AP may send an acknowledgment (ACK) followed by an A-MPDU with a size (e.g., # of sub-frames) adjusted according to the interference information. Thus, the size of the A-MPDU may be adjusted dynamically to fit the Wi-Fi time window that exists before the next interference window. The AP also may adjust the A-MPDU sizes to other non-coexistence stations using the interference information. Further, the AP may fragment the A-MPDU (or MPDU) using the interference information.
The scheduling techniques presented herein are generally described in connection with WLANs for simplicity. The same or similar techniques, however, may be used for various other wireless communications systems such as cellular wireless systems, peer-to-peer wireless communications, ad hoc networks, satellite communications systems, and other systems. The terms “system” and “network” may be used interchangeably.
Referring to
Existing solutions for coexisting communications at a mobile device, such as the coexisting communications depicted in
Another coexistence solution may involve a clear-to-send (CTS) signal, such as CTS-to-self. The CTS signal may block the entire basic service set (BSS), blocking transmissions from all other devices (e.g., stations) in the BSS. Such blocking may degrade the overall performance of the BSS.
When the CTS-based solution is used, the mobile device may explicitly disable A-MPDU to conservatively avoid collisions between AP's A-MPDU transmissions and BT activities on the mobile device, for example. As A-MPDU transmissions are employed to increase throughput, the foregoing existing solutions may be unsatisfactory or unsuitable.
With reference now to
The interference information may be provided to the AP by the STA using propriety signaling frames or leveraging unscheduled automatic power save delivery (U-APSD). For example, the STA may use an add traffic stream (ATS) frame 1805 to notify the AP of the time windows during which the STA is not available for receiving packets. The ATS frame 1805 may be referred to as a coexistence action frame in the context of this disclosure. In response to the ATS frame, the AP may transmit an acknowledgment (ACK) frame 1810-a to the STA. The STA and the AP may set up a BlockACK session to enable data transmissions, such as MPDU or A-MPDU transmissions, from the AP to the STA.
As noted above, the interference information provided to the AP via the ATS frame 1805 may indicate time windows 1815 with interference and a pattern of the windows, for example. The predefined field of the ATS frame 1805 are capable of providing limited information to the AP. However, the ATS frame includes an additional field for providing vendor-specific information. This additional field may be used to provide additional interference information to the AP. Examples of additional interference information may include an estimated duration and/or interference level of each time window (e.g., interference time window) during which Wi-Fi at the STA is not available, and/or clock drift between the coexisting radios (e.g., WLAN and BT or LTE).
A simple periodic pattern of interference time windows 1815 is illustrated in
After the ATS frame 1805 has been transmitted by the STA and acknowledged by the AP, a first interference time window 1815-a may occur, during which the STA may be considered to be unavailable for Wi-Fi communications. After the first interference time window 1815-a, the STA may transmit a first trigger frame (e.g., a PS-Poll) 1830-a to the AP to indicate that the STA is ready to receive data from the AP. The AP may send an ACK frame 1810-b in response, and then transmit data 1835-a as a first A-MPDU, for example. Using the interference information received via the ATS frame 1805 from the STA, the AP may adjust a size (e.g., number of sub-frames) of the outgoing A-MPDU 1835-a so that the A-MPDU 1835-a may be successfully delivered within an available time window before a subsequent interference time window 1815-b occurs. The STA may transmit an ACK frame 1810-c in response upon successfully receiving the first A-MPDU 1835-a.
Additionally or alternatively, the AP may fragment the A-MPDU 1835 (or an MPDU) using the interference information if the available time window is not long enough to fit the entire A-MPDU. Such interference-information aware fragmentation may enable the STA to operate robustly (e.g., good Wi-Fi throughput) even when channel conditions are poor (e.g., such that not even a single packet may be transmitted successfully). For example, poor conditions may cause the AP to drop its physical layer (PHY) data rate due to WLAN transmission failures (e.g., caused by coexistence interference), which may lower overall network performance. Adjusting the number of sub-frames in an A-MPDU and/or fragmenting an A-MPDU as described herein may increase successful WLAN transmissions by avoiding interference time windows and potential collisions that would otherwise result. In particular, adjusting the fragmentation size may help at least some data to be transmitted successfully. Thus, the approaches described herein may help to avoid the AP dropping its PHY rate, the potential increase in collisions/transmission failures resulting from the AP dropping its PHY rate, the potential further lowering of the APs PHY rate in response to the increase in collisions/transmission failures, and so on, which eventually may render the Wi-Fi link of the AP unusable.
The AP may not be able to completely avoid overlapping between A-MPDU transmissions and interference time windows using the interference information, for example, due to a lack of fine-grained timing control of outgoing frames by the AP. In such case, the AP may calculate which part(s) of the A-MPDU may get corrupted by the overlapping interference and may ignore the part(s) in PHY rate control/adaptation. Such calculation may be using the actual transmission time of the A-MPDU and the actual start of the overlapping interference time window.
As illustrated in
As shown, the adjusted size of the second A-MPDU 1835-b may differ from the adjusted size of the first A-MPDU 1835-a. In this example, the second A-MPDU 1835-b may be larger because the available time window before the subsequent interference time window 1815-c occurs is longer due to the second trigger frame 1830-b being sent sooner after the second interference time window 1815-b, as compared to the timing of the first trigger frame 1830-a after the first interference time window 1815-a. This is only one example of dynamically adjusting the size of an A-MPDU to fit the available non-interference time window. In practice, lengths of the available non-interference time windows may vary, for example, based on the duration 1825 of the preceding interference time window 1815 and the timing of the next interference time window 1815.
Special handling may be needed for retransmissions. If a retransmission of a packet to the STA cannot be performed in time because Wi-Fi will become unavailable, it may be desirable to avoid having the packet cause head-of-the-line blocking. When packets to other STAs can be transmitted, the packet to the STA may be buffered and the retry count of the packet for any later transmission may be remembered.
The approach described above with respect to
In some embodiments, the STA may be configured to attempt to stop the AP from transmitting packets to the STA when Wi-Fi is not available at the STA for receiving packets. The STA may transmit CTS frames and/or power save control frames (e.g., PS-Poll frames, QoS-Null frames, etc.) to attempt to stop the AP from transmitting packets to the STA. A pattern of such frames may be used by the AP to estimate whether the STA has an active coexistence radio, as well as to estimate information regarding the time windows during which Wi-Fi is unavailable for the STA. Using such estimated interference information, the AP may attempt to deliver data (e.g., MPDUs and/or A-MPDUs) to the STA. Such an approach may be employed, for example, when the AP has a relatively high confidence level regarding the estimated interference information or as long as the transmitted data is acknowledged by the STA as having been received successfully.
The timing diagram 1900 includes a timeline 1905 for the BT clock of the STA, a timeline 1910 for the TSF clock of the STA, and a timeline 1915 for the TSF clock of the AP. BT time windows (representing BT activities) 1920-a, 1920-b, 1920-c and 1920-d are shown as occurring at times t1, t3, t4 and t5, respectively, based on the BT clock. When an ATS frame 1925 is prepared at time t2 on the BT clock (time T1′ on the TSF clock of the STA), a time offset to the next BT time window is set according to the BT clock as t3−t2, where t3 is the start of next BT time window 1920-b based on the BT clock. Accordingly, the start time of the BT window 1920-b based on the TSF clock will be T1′+t3−t2. The interval between BT time windows 1920 may be calculated based on BT clock only. As noted above, the STA TSF clock (for WLAN) may be synchronized with the AP TSF clock, for example, using AP beacons. The difference between the STA TSF clock and the AP TSF clock is typically very small (e.g., less than 25 μs). A guard time may be set that is greater than or equal to the absolute value of T1′−T1, for example, to account for this difference.
In addition to dynamically adjusting the size of A-MPDUs sent to the mobile device/station having coexisting/concurrent communications as described above, various embodiments may have the AP adjust the size of A-MPDUs sent to another mobile device/STA that does not have coexisting/concurrent communications. The AP may use the interference information provided to the AP from the coexistence station and/or implicitly determine by the AP, such as described above, to guide the adjustment of the size of A-MPDUs sent to the non-coexistence station.
Adjusting the size of A-MPDUs sent to the non-coexistence station(s) may improve overall throughput, and also may improve fairness with respect to the coexistence station. As illustrated in the diagram 2000-a of
The STA-c may have interference time windows 2005-a, 2005-b, etc., for example, due to concurrently active radios. When the Wi-Fi radio of the STA-c becomes available at the end of the first interference time window 2005-a, there may be an ongoing transmission 2010 of data to the STA-r. At the end of the ongoing transmission 2010, the STA-r may send an ACK frame 2015 to the AP. The AP may recognize and respond to a trigger frame (e.g., PS-Poll) 2020 only after the ACK frame 2015 is received by the AP. Thus, the ongoing transmission 2010 postpones a transmission 2025 of data (e.g., following an ACK frame 2030 from the AP to the STA-c) from the AP to the STA-c and thus limits throughput for the STA-c, for example, by allowing for a relatively small adjusted-sized A-MPDU for the transmission 2025 (e.g., with time for an ACK frame 2035 from the STA-c to the AP) before the next interference time window 2005-b occurs. It should be understood that this problem may be exacerbated by the ever increasing WLAN devices and traffic in a network, which often may be the case in places such as airports, coffee shops, bookstores, libraries, etc.
Having the AP adjust the A-MPDU size to the non-coexistence station(s) may improve throughput for the coexistence station and fairness to the coexistence station. An example of this approach is illustrated in the diagram 2000-b of
Accordingly, an ACK frame 2015-a at the end of the transmission 2010-a may be sent by the STA-r to the AP sooner than in the example of
The foregoing examples illustrate how the AP may manage downlink traffic, which may be the most common scenario. However, the AP may control the parameters of a BlockACK session even for uplink traffic to help a coexistence station gain its share of the medium. If a non-coexistence station blocks transmissions from/to a coexistence station more often that is acceptable (e.g., greater than a threshold number of times and/or number of times within a certain time interval), the AP may reduce the size of the A-MPDU or may even disable the BlockACK for the transmissions from the non-coexistence station to the AP.
With reference now to
The STA-c may have interference time windows 2105-a, 2105-b, etc., for example, due to concurrently active radios. Although not shown, interference information for the STA-c may be provided to the AP by the STA and/or may be derived implicitly by the AP, such as described above. After a first transmission 2110 of data to the STA-r and a corresponding ACK frame 2115 from the STA-r to the AP, the STA-c may have its turn to use the medium (e.g., based on the scheduling policy of the AP, such as round-robin, by access class, etc.).
However, because the Wi-Fi radio of the STA-c may be unavailable due to the first interference time window 2105-a, there may be only a small time window to send data to the STA-c. When the time window is too small for at least k (e.g., with a default value of 1) packet transmissions to the STA-c, allowing transmissions to other STAs (e.g., STA-r) from the AP may provide a better utilization of the medium rather than waiting for the STA-c to become available for reception (e.g., waiting for the interference time window to transpire). Thus, because the transmission of data waiting at the AP for the STA-c may be delayed, the AP may bypass the turn of the STA-c and set a flag, denoted 2120 in
The AP may choose a random regular station (e.g., STA-r) if multiple regular stations have data pending at the AP, which may avoid favoring one particular regular station. In this example, a transmission 2125 to the STA-r, including a corresponding ACK frame 2130 from the STA-r to the AP may occur and end slightly after the first interference time window 2105-a. For example, even though there may be ten sub-frames of data waiting at the AP for the STA-r, the AP may adjust the size (e.g., truncate) the A-MPDU of the transmission 2125 to include only two sub-frames, denoted by 2135, so that the transmission 2125 ends soon after the first interference time window 2105-a. This may allow the STA-c to detect the end of this communication (transmission 2125 and ACK frame 2130) between the AP and the STA-r and to compete for the medium relatively soon thereafter (e.g., almost immediately).
If the AP knows when the interference is over (e.g., with a certain degree of accuracy, the AP may begin transmitting data to the STA-c right after the transmission 2125 to the STA-r is completed (e.g., acknowledged by the STA-r). If the AP does not know the end time of the first interference time window 2105-a, the STA-c may employ a trigger (TRG) frame 2140 to notify the AP that first interference time window 2105-a has ended and the STA-c is ready to receive data from the AP. In such case, the STA-c may compete for the medium using the trigger frame 2140 with a wait time T (either fixed or dynamically set) that is shorter than a distributed inter-frame space DIFS plus a random backoff. T may be based on DIFS, reduced inter-frame space (RIFS), point coordination function (PCF) inter-frame space (PIFS), or short inter-frame space (SIFS). In some embodiments, a default value for T may be the SIFS. The shorter the wait time T, the greater the chance that the STA-c may win the medium time for the AP.
After the STA-c wins the medium time using the trigger frame 2120-a as shown in
Upon receiving an ACK frame 2155 from the STA-c indicating that the transmission 2150 was received successfully, the AP may clear the flag, denoted 2160 in
Use of the flag may be modified, as appropriate or desired, based on certain conditions. For example, if a transmission to the STA-c fails, the flag may remain set. Also for example, if the STA-c fails, for a certain number of times (e.g., with a default value being 1), to utilize the medium time allocated to the STA-c, the AP may clear the flag.
In the case of multiple coexistence stations in the BSS, the AP may track collisions between trigger frames from the coexistence stations. Using such collision information, the AP may backoff the waiting time T for all but one of the coexistence stations. The one of the coexistence stations may be determined randomly, for example, to provide random access to the medium for the multiple coexistence stations.
Using an order of bypassing, the AP may set different wait time (T) values for the multiple coexistence stations. The different T values may establish a priority for the coexistence stations, such as by setting the T values in accordance with the order with the first bypassed coexistence station having a shortest T value, and so on. The setting of the different T values may involve sending non-standard messages to the multiple coexistence stations. However, the overhead associated with such messages may be reduced by adjusting (e.g., shortening) only the T value for the first bypassed coexistence station and leaving the T value(s) for the other coexistence station(s) at a default value. As the flags are successively removed, the next coexistence station in line may have its T value adjusted.
In addition to dynamically adjusting the size of A-MPDUs sent to the mobile device/station having coexisting/concurrent communications and/or adjusting the size of A-MPDUs sent to another mobile device/STA that does not have coexisting/concurrent communications, the AP may be configured to identify certain sub-frames errors using the interference information. Sub-frame errors, such as those at the end of an A-MPDU which are corrupted by the scheduled interference, may be predicted using the interference information. For example, based on the actual transmission time and configuration, the AP may find that the last three sub-frames overlap with the interference time window.
The AP may handle (e.g., resolve, avoid, render innocuous, etc.) the predicted sub-frame errors by treating the errors in rate control. For example, the AP may ignore errors of the last three sub-frames when calculating the packet error rate, which is used in determining the PHY rate for transmissions to the mobile device/station.
With reference now to
Turning to
The station 115-c may include a processor 2305, a memory 2310, transceiver(s) 2325, antennas 2330, and a coexistence interference manager 2320. The coexistence interference manager 2320 may be an example of the coexistence interference manager 2215 of
The memory 2310 may include random access memory (RAM) and read-only memory (ROM). The memory 2310 may store computer-readable, computer-executable software (SW) code 2315 containing instructions that are configured to, when executed, cause the processor 2305 to perform the various functions described herein for dealing with coexistence interference. Alternatively, the software code 2315 may not be directly executable by the processor 2305 but may be configured to cause the computer (e.g., when compiled and executed) to perform functions described herein.
The processor 2305 may include an intelligent hardware device, e.g., a central processing unit (CPU), a microcontroller, an application-specific integrated circuit (ASIC), etc. The processor 2305 may process information received through the transceiver 2325 and/or to be sent to the transceiver 2325 for transmission through the antennas 2330. The processor 2305 may handle, alone or in connection with the coexistence interference manager 2320, various aspects for dealing with coexistence interference.
The transceiver(s) 2325 may be configured to communicate bi-directionally with APs 105 in
The components of the station 115-c may be configured to implement aspects discussed above with respect to
Turning to
In some examples, the AP 105-c may also include one or both of an AP communicator 2480 and a network communicator 2485. Each of these components may be in communication with each other, directly or indirectly, over a bus(es) 2415.
The memory 2420 may include RAM and ROM. The memory 2420 may also store computer-readable, computer-executable software (SW) code 2425 containing instructions that are configured to, when executed, cause the processor 2410 to perform various functions described herein for dealing with coexistence interference. Alternatively, the software code 2425 may not be directly executable by the processor 2410 but may be configured to cause the computer, e.g., when compiled and executed, to perform functions described herein.
The processor 2410 may include an intelligent hardware device, e.g., a CPU, a microcontroller, an ASIC, etc. The processor 2410 may process information received through the transceiver 2430, the AP communicator 2480, and/or the network communicator 2485. The processor 2410 may also process information to be sent to the transceiver 2430 for transmission through the antennas 2440, to the AP communicator 2480, and/or to the network communicator 2485. The processor 2410 may handle, alone or in connection with the A-MPDU generator 2450 and/or the coexistence interference manager 2445, various aspects related to coexistence interference as discussed above and further below.
The transceiver 2430 may include a modem configured to modulate packets and provide the modulated packets to the antennas 2440 for transmission, and to demodulate packets received from the antennas 2440. The transceiver 2430 may be implemented as a transmitter(s) and a separate receiver(s). The transceiver 2430 may be configured to communicate bi-directionally, via the antennas 2440, with a station(s) 115 as illustrated in
According to the architecture of
The components of the AP 105-c may be configured to implement aspects discussed above with respect to
Turning next to
At block 2510, the station may report (e.g., transmit) the determined interference information to an access point (AP). This operation may be performed by the coexistence interference manager 2320 in conjunction with the processor 2305, the memory 2310 and/or the transceiver(s) 2325 of
Then, at block 2515, the station may receive an MPDU (or A-MPDU) from the AP, which may have adjusted a size of the MPDU (or A-MPDU) using the determined interference information. This operation may be performed by the transceiver(s) 2325 in conjunction with the processor 2305, and/or a communications manager (not shown) of
Turning next to
At block 2310, the AP may adjust a size of an MPDU (or A-MPDU) using the determined interference information. This operation may be performed by generating the MPDU (or A-MPDU) with a desired number of sub-frames and/or fragmenting the MPDU (or A-MPDU), such as described above. Thus, this operation also may be performed by the coexistence interference manager 2445 and/or the A-MPDU generator 2450 in conjunction with the processor 2410 and/or the memory 2420 of
Then, at block 2615, the AP may transmit the size-adjusted MPDU (or A-MPDU) to the station in accordance with the determined interference information. This operation may be performed, for example, in response to a triggering frame received by the AP from the station, or may be performed using the AP's knowledge of the end of a preceding transmission to a different station, such as described above. Thus, this operation also may be performed by the coexistence interference manager 2445 and/or the A-MPDU generator 2450 in conjunction with the communications manager 2455 and/or transceiver 2430 of
The methods described above with respect to
The detailed description set forth above in connection with the appended drawings describes exemplary examples and does not represent the only examples that may be implemented or that are within the scope of the claims. The term “exemplary” when used in this description means “serving as an example, instance, or illustration,” and not “preferred” or “advantageous over other examples.” The detailed description includes specific details for the purpose of providing an understanding of the described techniques. These techniques, however, may be practiced without these specific details. In some instances, well-known structures and devices are shown in block diagram form in order to avoid obscuring the concepts of the described examples.
Information and signals may be represented using any of a variety of different technologies and techniques. For example, data, instructions, commands, information, signals, bits, symbols, and chips that may be referenced throughout the above description may be represented by voltages, currents, electromagnetic waves, magnetic fields or particles, optical fields or particles, or any combination thereof.
The various illustrative blocks and modules described in connection with the disclosure herein may be implemented or performed with a general-purpose processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. A general-purpose processor may be a microprocessor, but in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine. A processor may also be implemented as a combination of computing devices, e.g., a combination of a DSP and a microprocessor, multiple microprocessors, a microprocessor(s) in conjunction with a DSP core, or any other such configuration.
The functions described herein may be implemented in hardware, software executed by a processor, firmware, or any combination thereof. If implemented in software executed by a processor, the functions may be stored on or transmitted over as an instruction(s) or code on a computer-readable medium. Other examples and implementations are within the scope and spirit of the disclosure and appended claims. For example, due to the nature of software, functions described above can be implemented using software executed by a processor, hardware, firmware, hardwiring, or combinations of any of these. Features implementing functions may also be physically located at various positions, including being distributed such that portions of functions are implemented at different physical locations. Also, as used herein, including in the claims, “or” as used in a list of items prefaced by “at least one of” indicates a disjunctive list such that, for example, a list of “at least one of A, B, or C” means A or B or C or AB or AC or BC or ABC (i.e., A and B and C).
Computer-readable media includes both computer storage media and communication media including any medium that facilitates transfer of a computer program from one place to another. A storage medium may be any available medium that can be accessed by a general purpose or special purpose computer. By way of example, and not limitation, computer-readable media can comprise RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to carry or store desired program code means in the form of instructions or data structures and that can be accessed by a general-purpose or special-purpose computer, or a general-purpose or special-purpose processor. Also, any connection is properly termed a computer-readable medium. For example, if the software is transmitted from a website, server, or other remote source using a coaxial cable, fiber optic cable, twisted pair, digital subscriber line (DSL), or wireless technologies such as infrared, radio, and microwave, then the coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio, and microwave are included in the definition of medium. Disk and disc, as used herein, include compact disc (CD), laser disc, optical disc, digital versatile disc (DVD), floppy disk and blu-ray disc where disks usually reproduce data magnetically, while discs reproduce data optically with lasers. Combinations of the above are also included within the scope of computer-readable media.
The previous description of the disclosure is provided to enable a person skilled in the art to make or use the disclosure. Various modifications to the disclosure will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other variations without departing from the spirit or scope of the disclosure. Throughout this disclosure the term “example” or “exemplary” indicates an example or instance and does not imply or require any preference for the noted example. Thus, the disclosure is not to be limited to the examples and designs described herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.
Claims
1. A method for wireless communications, comprising:
- determining interference information for a node having a WLAN radio, the interference information relating to operations by an interfering radio of the node that interfere with WLAN communications of the node; and
- scheduling a transmission to the node based at least in part on the interference information.
2. The method of claim 1, further comprising:
- adjusting a number of packets included in a physical layer convergence protocol (PLCP) protocol data unit (PPDU) of the transmission to the node based at least in part on the interference information.
3. The method of claim 1, further comprising:
- fragmenting a media access control (MAC) protocol data unit (MPDU) of the transmission to the node based at least in part on the interference information.
4. The method of claim 1, further comprising:
- adjusting a number of packets included in a physical layer convergence protocol (PLCP) protocol data unit (PPDU) of a transmission to a different node based at least in part on the interference information.
5. The method of claim 1, further comprising:
- fragmenting a media access control (MAC) protocol data unit (MPDU) of a transmission to a different node based at least in part on the interference information.
6. The method of claim 1, wherein determining interference information for the node comprises:
- receiving at least part of the interference information from the node.
7. The method of claim 1, wherein determining interference information for the node comprises:
- estimating at least part of the interference information using transmissions received from the node.
8. The method of claim 1, further comprising:
- determining that a transmission to the node is delayed due to interference;
- transmitting a PPDU over a transmission medium to a different node during the interference; and
- providing a priority to the node for accessing the transmission medium after the interference ends.
9. The method of claim 8, wherein providing a priority to the node comprises:
- adjusting a size of the PPDU to the different node so that transmission of the PPDU to the different node ends about a same time as the interference ends.
10. The method of claim 8, further comprising:
- receiving a trigger frame from the node after the interference ends; and
- transmitting data to the node in response to the trigger frame.
11. The method of claim 10, wherein the received trigger frame was sent following a space after the interference ended, wherein the space is selected from the group consisting of: a short interframe space (SIFS), a point coordination function (PCF) interframe space (PIFS), a distributed coordination function (DCF) interframe space (DIFS), or a reduced interframe space (RIFS).
12. The method of claim 8, further comprising:
- determining when the interference ends based at least in part on the interference information; and
- transmitting data to the node once the interference ends.
13. The method of claim 8, further comprising:
- setting a flag that indicates that the node has been bypassed for transmission; and
- when the flag is set, adjusting a size of the PPDU to the different node so that transmission of the PPDU to the different node ends about a same time as the interference ends.
14. The method of claim 13, further comprising:
- clearing the flag upon successfully transmitting data to the node.
15. The method of claim 13, further comprising:
- clearing the flag upon a certain number of unsuccessful transmissions of data to the node.
16. The method of claim 1, wherein the transmissions of the interfering radio use a different radio access technology than WLAN.
17. The method of claim 1, wherein:
- the interfering radio is the WLAN radio; and
- the interference information is based at least in part on a schedule of the WLAN radio for operating on a channel other than a channel for communicating with a node performing scheduling of the transmission.
18. The method of claim 1, further comprising:
- identifying a sub-frame error based at least in part on the interference information; and
- handling the identified sub-frame error in rate control.
19. An apparatus for wireless communications, comprising:
- a coexistence interference manager configured to determining interference information for a node having a WLAN radio, the interference information relating to operations by an interfering radio of the node that interfere with WLAN communications of the node; and
- a communications manager configured to schedule a transmission to the node based at least in part on the interference information.
20. The apparatus of claim 19, wherein the coexistence interference manager is configured to adjust a number of packets included in a physical layer convergence protocol (PLCP) protocol data unit (PPDU) of the transmission to the node based at least in part on the interference information.
21. The apparatus of claim 19, wherein the coexistence interference manager is configured to fragment a media access control (MAC) protocol data unit (MPDU) of the transmission to the node based at least in part on the interference information.
22. The apparatus of claim 19, wherein the coexistence interference manager is configured to adjust a number of packets included in a physical layer convergence protocol (PLCP) protocol data unit (PPDU) of a transmission to a different node based at least in part on the interference information.
23. The apparatus of claim 19, wherein the coexistence interference manager is configured to fragment a media access control (MAC) protocol data unit (MPDU) of a transmission to a different node based at least in part on the interference information.
24. The apparatus of claim 19, further comprising:
- a receiver configured to receive at least part of the interference information for the node, the coexistence interference manager being configured to obtain the at least part of the interference information received by the receiver.
25. The apparatus of claim 19, wherein the coexistence interference manager is configured to determine at least part of the interference information for the node by estimating the at least part of the interference information using transmissions received from the node.
26. The apparatus of claim 19, wherein:
- the coexistence interference manager is configured to determine that a transmission to the node is delayed due to interference;
- the communications manager is configured to schedule a transmission of a PPDU over a transmission medium to a different node during the interference; and
- the coexistence interference manager is further configured to provide a priority to the node for accessing the transmission medium after the interference ends.
27. An apparatus for wireless communications, comprising:
- means for determining interference information for a node having a WLAN radio, the interference information relating to operations by an interfering radio of the node that interfere with WLAN communications of the node; and
- means for scheduling a transmission to the node based at least in part on the interference information.
28. The apparatus of claim 27, further comprising:
- means for adjusting a number of packets included in a physical layer convergence protocol (PLCP) protocol data unit (PPDU) of the transmission to the node based at least in part on the interference information.
29. The method of claim 27, further comprising:
- means for adjusting a number of packets included in a physical layer convergence protocol (PLCP) protocol data unit (PPDU) of a transmission to a different node based at least in part on the interference information.
30. A computer program product for wireless communications, the computer program product comprising a non-transitory computer-readable medium storing instructions executable by a processor to:
- determine interference information for a node having a WLAN radio, the interference information relating to operations by an interfering radio of the node that interfere with WLAN communications of the node; and
- schedule a transmission to the node based at least in part on the interference information.
Type: Application
Filed: May 14, 2014
Publication Date: Nov 20, 2014
Applicant: QUALCOMM Incorporated (San Diego, CA)
Inventors: Yanjun Sun (San Diego, CA), Peerapol Tinnakornsrisuphap (San Diego, CA), Menucher Behram Menuchehry (San Diego, CA), Rahul Malik (San Diego, CA)
Application Number: 14/277,624
International Classification: H04W 52/02 (20060101); H04W 72/02 (20060101);