FIELD OF THE INVENTION
The present invention relates generally to the field of wireless networks, and in particular, to wireless networks where multiple antennas are used to transmit multiple downlink traffic streams to multiple receiver stations simultaneously.
BACKGROUND OF THE INVENTION
In a typical wireless network utilizing a coordination function for coordinating transmissions among wireless stations, such a function may be implemented in one of the wireless stations or a coordinator device such as an access point (AP). The wireless stations may communicate via directional transmissions using sector antennas and beam-forming antenna arrays. The coordinator device may use omnidirectional transmissions for broadcasts to all wireless stations in all directions (e.g., 360 degrees range). Alternatively, the coordinator may use quasi-omnidirectional transmissions for broadcasts to a wide range, but not necessarily in all directions. In many wireless local area networks (WLANs) such as those according to IEEE 802.11 standards, a coordinator station in infrastructure mode is used for providing contention-free access to a wireless communication medium to support Quality of Service (QoS) for certain applications.
In the absence of a coordinator, to provide contention-free channel time reservation, existing techniques use announcement or information exchange among wireless stations in a network to negotiate/reserve the use of the communication medium.
BRIEF SUMMARY OF THE INVENTION
The present invention provides a method and system for wireless medium reservation for simultaneous transmission of multiple downlink spatial streams to multiple receiver wireless stations during a multi-user transmit opportunity over a wireless medium. Such a reservation includes reserving a transmission period for simultaneously transmitting data from a transmitting station to multiple intended receiving stations on multiple downlink spatial streams over a wireless communication medium. Reserving the transmission period includes transmitting a request-to-send (RTS) frame to the multiple receiving stations, the RTS frame including a receiver address (RA) field comprising compressed addresses for the multiple receiving stations.
These and other features, aspects and advantages of the present invention will become understood with reference to the following description, appended claims and accompanying figures.
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 shows a block diagram of a wireless system implementing an enhanced request-to-send (RTS)/clear-to-send (CTS) mechanism for communication channel reservation, and a multi-user transmit opportunity (MU-TXOP) for channel access, in multi-user multiple-input-multiple-output (MU-MIMO) communication, according to an embodiment of the present invention.
FIG. 2A shows a block diagram of a wireless system implementing downlink (DL) MU-MIMO for simultaneous multi-user communication, according to an embodiment of the present invention.
FIG. 2B shows a timing diagram of wireless channel access and transmission sequence in a MU-MIMO communication, according to an embodiment of the present invention.
FIG. 3 shows a frame structure of an enhanced RTS and a timing diagram of a wireless channel reservation sequence using a multi-user RTS (MU-RTS) frame providing enhanced RTS/CTS channel reservation in a DL MU-MIMO wireless network environment, according to an embodiment of the invention.
FIG. 4 shows an enhanced RTS frame including a compressed receiver address (RA) field, representing multiple wireless receiver stations, for enhanced RTS/CTS channel reservation in MU-MIMO communication, according to an embodiment of the invention.
FIG. 5 shows an example field structure of an Association ID (AID) in a compressed RA field, according to an embodiment of the invention.
FIG. 6 shows an example field structure of a compressed RA field including multiple AID fields, according to an embodiment of the invention.
FIG. 7 shows a field structure of a compressed RA field including multiple AID fields with example bit patterns, according to an embodiment of the invention.
FIG. 8 shows a flowchart of a receiving station operation process, according to an embodiment of the invention.
FIG. 9 shows a flowchart of an access point operation process, according to an embodiment of the invention.
FIG. 10 shows an IEEE MAC-48 address structure.
FIG. 11 shows a frame structure of a compressed RA field including Unique Octets representing different wireless receiver stations in a MU-RTS frame providing enhanced RTS/CTS channel reservation in a MU-MIMO wireless network environment, according to an embodiment of the invention.
FIG. 12 shows an example compressed RA field including Unique Octets representing different wireless receiver stations, according to an embodiment of the invention.
FIG. 13 shows a flowchart of a process for parsing the compressed RA field including multiple Unique Octets, according to an embodiment of the invention.
FIG. 14 shows a timing diagram of short inter-frame spacing (SIFS) between downlink (DL) and uplink (UL) transmissions, according to an embodiment of the invention.
FIG. 15 shows a diagram of a wireless system implementing enhanced RTS/CTS channel reservation, illustrating different travel distances of different CTS frames, according to an embodiment of the invention.
DETAILED DESCRIPTION OF THE INVENTION
The present invention provides a method and system for communication medium contention avoidance in multi-user (MU) multiple-input-multiple-output (MIMO) wireless networks. In one example, the communication medium comprises a wireless channel such as a radio frequency (RF) channel. In one embodiment, the present invention provides a contention avoidance mechanism comprising a multi-user request-to-send/clear-to-send (RTS/CTS) channel reservation protocol that enhances existing RTS/CTS techniques of wireless local area network (WLAN) standards.
One implementation of the invention is useful for simultaneously transmitting multiple downlink (DL) spatial streams to multiple receiver wireless stations during a multi-user transmit opportunity over a wireless channel. The invention avoids frame collisions due to third party stations, and allows multiple simultaneously transmitted downlink traffic streams. The third party stations comprise hidden terminals that pose frame collision issues.
FIG. 1 shows a wireless network 10, according to an embodiment of the invention. The wireless network comprises a wireless local area network (WLAN) comprising multiple wireless stations STA-A, STA-B, STA-C and STA-D capable of communication over a wireless communication channel.
A frame structure is used for data transmission between wireless stations such as a transmitter station and a receiver station. In one example, a frame structure in a Media Access Control (MAC) layer and a physical (PHY) layer is utilized, wherein in a transmitter station, a MAC layer receives a MAC Service Data Unit (MSDU) and attaches a MAC header thereto, in order to construct a MAC Protocol Data Unit (MPDU). The MAC header includes information such as a source address (SA) and a destination address (DA). A number of MPDUs can also be aggregated into an Aggregated MPDU (A-MPDU) to increase MAC layer throughput. The MPDU or A-MPDU is a part of a PHY Service Data Unit (PSDU) and is transferred to a PHY layer in the transmitter to attach a PHY header (i.e., PHY preamble) thereto to construct a PHY Protocol Data Unit (PPDU). The PHY header includes parameters for determining a transmission scheme including a coding/modulation scheme. The PHY layer includes transmission hardware for transmitting data bits over a wireless link. Before transmission as a frame from the transmitter station to the receiver station, a preamble is attached to the PPDU, wherein the preamble can include channel estimation and synchronization information.
In one embodiment according to the invention, communication medium contention avoidance according to the invention is utilized when a transmission opportunity (TXOP) is obtained. The TXOP may be obtained based on IEEE 802.11 channel access standards or using multi-user transmit opportunity (MU-TXOP) mechanism, for a wireless network to support multiple downlink traffic streams to multiple receiver wireless stations simultaneously.
Enhanced Distributed Channel Access (EDCA) provides quality of service (QoS) support for certain applications using announcement or information exchange. EDCA defines four Access Categories (ACs) and introduces service differentiation such that certain data traffic uses higher priority parameters to contend for the communication medium. EDCA allows contention for transmission opportunities (TXOPs), wherein a TXOP is a time interval when a QoS wireless station (STA) may initiate frame transfer on the wireless medium (e.g., wireless channel). The TXOP may be assigned to the wireless station by a coordinator, or the wireless station may obtain the TXOP by successfully contending for the wireless channel.
The wireless station STA-A comprises an access point (AP) having a PHY layer 14 and a MAC layer 12 implementing an EDCA MU-TXOP module 16 according to the invention. In this example, there are three traffic streams (or queues) of data frames (packets) for different Enhanced Distributed Channel Access (EDCA) access categories AC0, AC1, AC2 at the AP station for transmission to receiver stations STA-B, STA-C and STA-D, respectively.
The MAC layer 12 further includes a channel access module 16A comprising an enhanced RTS/CTS module providing enhanced RTS/CTS channel access mechanisms, described further below, according to embodiments of the invention. Each receiver station includes a MAC layer 12 and a PHY layer 14, wherein the MAC layer 12 further implements an enhanced RTS/CTS module 16B providing enhanced RTS/CTS channel access mechanisms in conjunction with the enhanced RTS/CTS module 16A of the AP station, described further below, according to embodiments of the invention.
FIG. 2A illustrates a downlink transmission involving multi-user MIMO transmission of frames B, C, D from the AP station to the receiver stations STA-B, STA-C, STA-D during a MU-TXOP, respectively, via multi-path directional transmissions, according to an embodiment of the invention. FIG. 2B shows a timing diagram for the example communication in FIG. 2A, wherein during a MU-TXOP in a downlink phase, the AP station simultaneously directionally transmits three frames B, C, D (each with a specified receiver address (RA)) to the receiver stations STA-B, STA-C and STA-D, respectively. In an uplink phase, each of the receiver stations sends a block acknowledgement (BA) to the AP station.
Embodiments of the invention provide a modified RTS/CTS mechanism that avoids frame collisions due to third party stations, and allows multiple simultaneously transmitted downlink traffic streams, as described below.
For downlink MU-MIMO, a wireless channel is reserved between a wireless sender and multiple wireless receivers. As one of the typical methods, Network Allocation Vector (NAV) information can be delivered to multiple receivers using a CTS-to-self packet. The CTS-to-self mechanism eliminates exchange of RTS/CTS messages and relies on a wireless station to determine channel availability before transmission. However, the CTS-to-self mechanism cannot handle hidden nodes (hidden terminals) and collisions, as RTS/CTS mechanism does. A hidden node problem exists when a wireless node is visible from a wireless station such as an access point (AP), but is not visible from other wireless nodes communicating with the wireless station, causing media access control issues.
Embodiments of the present invention provide an enhancement of existing RTS/CTS mechanisms for channel reservation in a downlink MU-MIMO environment with backward compatibility. The enhanced RTS/CTS mechanism according to the invention allows channel reservation among a wireless sender and multiple wireless receivers, while coping with the hidden node problem.
Referring to FIG. 3, an implementation of an enhanced RTS/CTS mechanism according to the invention is illustrated. Specifically, FIG. 3 shows a timing diagram of a wireless channel reservation sequence for downlink MU-MIMO communication using the enhanced RTS/CTS mechanism in a downlink MU-MIMO wireless network environment such as network 10 in FIG. 1. The example wireless channel reservation sequence in FIG. 3 is performed in advance of transmission of multi-user data. When a STA is able to send RTS, it has already obtained access to the wireless channel.
As illustrated in FIG. 3, the disclosed enhanced RTS/CTS mechanism provides a compressed receiver address (RA) field 41 for a RTS frame 40 to be transmitted from a wireless sender such as a wireless AP station, to multiple wireless receivers such as wireless stations STA1, STA2, STA3 over a wireless channel. The RTS frame 40 comprises a multi-user RTS (MU-RTS) frame for transmission to multiple receiver STAs in a MU-MIMO wireless network environment. The enhanced RTS/CTS mechanism further provides a shortened inter-frame space between multiple transmission of CTS frames from receiver STAs (e.g., 2×RIFS where RIFS stands for Reduced Inter-Frame Spacing in IEEE 802.11 standards), as described further below.
According to an embodiment of the invention, the compressed RA field 41 is achieved using an Association ID (AID) 42 instead of a typical full IEEE-48 MAC address. The Association ID is a value assigned by the AP station to each wireless station that associates with the AP station. The compressed RA field includes multiple AID fields 42. The compressed RA field 41 further comprises Compatibility Bits (CB) 43.
FIG. 4 shows the RTS frame 40 with the compressed RA field 41 which represents multiple wireless receiver stations (receiver STAs). In one implementation, the compressed RA field 41 may carry up to three AIDs 42 for three receiver STAs (e.g., AID1, AID2, AID3 corresponding to STAT, STA2, STA3 in FIG. 3).
Using AIDs in a Compressed RA Field
FIG. 5 shows the field structure of a typical AID 42 in the IEEE 802.11 standard. In FIG. 5, MSB represents most significant bits and LSB represents least significant bits, among bits b0-b7. Each AID 42 is a value assigned to a corresponding receiver STA by the AP station in an association response frame that establishes current association of that receiver STA. Each AID 42 is a field that is carried by several MAC layer frames and it has the following features. Each AID field is of 2-octet long and it always has its two MSBs b7 and b6 of the second octet set to 1. An AID is always unique in a Basic Service Set (BSS) so it can be used to uniquely identify a STA. Valid AID values range from 1 to 2007 (i.e., using only 11 bits even though the total length of the field is two octets). Up to 2007 receiver STAs can be uniquely addressed in a BSS. The AID values 0, and 2008 through 16383, are reserved. In the compressed RA field 41, each AID 42 is only 14 bits long, excluding the two MSBs of the second octet. Although the AID field is typically 2 octets long, only 14 bits are used in the compressed RA field according to an embodiment of the invention in order to conserve space.
FIG. 6 shows a compressed RA field 41 containing 3 AID fields (AID1, AID2, AID3 represented by different stippling, each is of 14 bits in length), according to an embodiment of the invention. Bit b0 of Octet 0 of the compressed RA field 41 indicates whether the compressed RA field 41 includes an individual station address or a group address, according to existing IEEE standard. According to an embodiment of the invention, it is set to indicate an individual address even though it in fact carries multiple individual addresses. Bits b1-b5 of Octet 1 of the compressed RA field 41 comprise Compatibility Bits (CB) 43, used to ensure the temporarily constructed addresses (i.e., compressed addresses) using AIDs does not equal to any actual (i.e., not virtual, real, normal or conventional) MAC addresses in the network.
The compressed RA field 41 holds at most 3 AIDs for three receiver STAs according to one embodiment of the invention. Each AID is 14 bits, instead of the original 16 bits. The two MSBs of the original AID are removed since they are always set to is in the existing standard. An AID field is set to 0 if it is not used to indicate any receiver STA. The order the AIDs are presented in the compressed RA field 41 indicates order of transmission of CTS frames (e.g., CTS1, CTS2, CTS3 in FIG. 3) from the corresponding receiver STAs (STA1, STA2, STA3) back to the AP station over the wireless channel.
The compressed addresses based on AIDs represent temporary or virtual addresses for corresponding receiver STAs in the network. The five Compatibility Bits field 43 distinguish the temporary, virtual address, from any existing MAC addresses present in the BSS for the wireless network. As noted, the AP station assigns an AID in an association response frame that establishes a current association of a receiver STA with the AP station. As such, the AP station has knowledge of all actual MAC addresses in the BSS, and the AP station maintains an exhaustive list of five CB bits b1-b5 for all present MAC addresses in the BSS. Therefore, an unpresented 5-bit pattern can be easily found and used as CB for indicating a compressed RA field to receiver STAs. Since the total pattern number is 25=32, the five CB bits are selected from the first 3 octets of an Organizationally Unique Identifier (OUI), wherein the network interface controllers (NICs) in the BSS are rarely from 32 or more unique manufacturers. Bit b1 of Octet 0 (the U/L add bit) is always set to “0” for most commercial products, wherein setting the bit b1 to “1” differentiates the compressed RA address 41 from most of the NICs in the BSS. In this case the bit b1 is set to indicate a locally assigned address, which has no harmful effect within a BSS.
To determine the CBs, an AP station maintains a list of all 32 patterns of the 5-bit CB field 43 before any receiver STA joins the BSS. The AP station removes its own 5-bit CB pattern from the list. Whenever a receiver STA associates with the AP, the 5-bit CB pattern of the joining receiver STA is removed. Whenever a receiver STA disassociates with the AP, the 5-bit CB pattern of the departing receiver STA is added back to the list if no other STAs are sharing the same CB pattern. At any moment, there is a list of 5-bit CB patterns that can be selected from and placed in the compressed RA 41 to distinguish it from present (actual) 48-bit MAC address.
Distinguishing a receiver STA requires only 11 bits. Addressing up to 4 receiver STAs requires 4×11=44 bits. In one implementation, if supporting 4 receiver STAs is required and use of AID is desired, then four AIDs 42 may be included in one compressed RA field 41. In this case, other mechanisms are used to differentiate the virtual address from actual MAC addresses, including shuffling the order of the 4 AIDs to compose a unique MAC address for a receiver station. In another implementation of the invention, the AID can be reduced to 10 bits, wherein only 1024 (210) STAs can be uniquely identified. In this case, the remaining 7 bits (48-bit IEEE address minus one I/G Address Bit, minus 4 10-bit AIDs) can be used as compatibility bits. The number of addressable STAs is reduced by about half (50%) but the number is still large enough for a single BSS in the foreseeable future.
An alternative implementation is to use 11 bits for AIDs for only three receiver STAs and expend the Compatibility Bits to up to 14 bits to increase non-overlapping chance. However, this increases the storage requirement for the list of available patterns. A balanced approach is to use 8 bits to form a list of 8-bit entries for Compatibility Bits, to use 11 bits for AIDs, and leave the rest of the bits (6 bits) as reserved bits.
In case an actual MAC address is interpreted as a compressed address where the actual MAC address happens to match one or more of the AIDs of receiver STAs, then a receiver STA with its actual MAC address matching the content of the compressed RA field considers itself the destination of the RTS frame and hence replies with a CTS frame immediately. In one example, a receiver STA with IEEE 802.11ac capability (i.e., IEEE 802.11ac-capable) may find that its actual MAC address does not match the content of the compressed RA field, but proceeds further to check whether an RA field is a compressed RA field, according to an embodiment of the invention.
As such, an IEEE 802.11 ac-capable receiver STA checks the RA field twice, according to an embodiment of the invention. At the first check, it determines whether the RA value matches its regular MAC address. If it matches, the STA is the intended receiver. This case is a single-user transmission, wherein the RA field contains only one receiver address. If it does not match, then the STA initiates a second check since the RA field may be a compressed RA field, as described further below. In that case, the corresponding bits of the actual MAC address in the RA field match the AID of the receiver STA. The receiver STA, although not the intended (target) receiver of the RTS frame, will also reply to a CTS frame at the time determined by the position of the AID in the RA field. The CTS frame may collide with the CTS frame from the intended STA or may collide with the data transmission following the RTS/CTS exchange.
To avoid an actual MAC address being interpreted as a compressed address, the AP station analyzes the MAC address of a STA when that STA associates with the AP station. When the AP station assigns AIDs to associating STAs, assuming 14-bit AIDs are used (as illustrated in FIG. 7), the AP station checks the positions of the MAC address corresponding to the three MSBs of each AID. These positions include the following bits:
-
- b1-b3 of Octet 2 (for AID1),
- b7 of Octet 3 and b0-b1 of Octet 4 (for AID2),
- b5-b7 of Octet 5 (for AID3).
If any of the above bits are non-zero, the corresponding AIDs do not pose issues (i.e., such AIDs will not be mistakenly treated as AIDs of a compressed RA field by a receiver STA).
If all three MSBs of an AID position are zeros, the AID is treated specially (i.e., assigned to the receiver STA as its own AID). In case the AID has been assigned to another STA previously, the AP station may need to disassociate the previous STA and re-associate it with another AID. The released AID will then be assigned to the receiver STA.
If more than a set of three-MSB positions have the “000” pattern, one AID is assigned as the AID of the receiver STA. Others AIDs are not assigned to any receiver STAs.
In the example shown in FIG. 7, positions of AID1 and AID2 are issue-free because at least one of the three MSB bits of actual AIDs is not zero so they will not match AID1 or AID2. The position of AID3 may possibly fall in the range of 1-2007, wherein bit b2 of Octet 4 to b4 of Octet 5 will be assigned as the AID of the receiver. Therefore, when the MAC address is parsed as a compressed RA, it could match an AID of the receiver STAs.
When a RTS with an actual MAC address in the RA field is received at an intended receiver STA, the STA processes it as an actual MAC address and replies with a CTS, and does not proceed further to analyze the RA field address. Other receiver STAs implementing IEEE 802.11 ac may attempt to analyze the RA field of the received RTS as a compressed RA. First such a receiver STA checks if all the following 9 bits are zeros:
-
- b1-b3 of Octet 2 (for AID1),
- b7 of Octet 3 and b0-b1 of Octet 4 (for AID2),
- b5-b7 of Octet 5 (for AID3).
Only when all the above 9 bits are zeros, the RA field may be a compressed RA. The STA receivers will then compare their own 14-bit AIDs with three AID positions of the compressed RA field, finding their AIDs not present in the compressed RA field because the AID in the compressed RA field has been assigned to the intended receiver STA. Therefore, an actual MAC address will not be misinterpreted as a compressed RA field. If any of the 9 bits are none zeros, the RA field is not a compressed RA and there is no need for further processing at the receiver STA.
AP Operation in Using AIDs in a Compressed RA Field
An example operation scenario for an AP station using AIDs in a compressed RA field of a MU-RTs frame for enhanced RTS/CTS exchange according to an embodiment of the invention is now described. The AP station determines up to 3 targeted (intended) receiver STAs, and obtains AIDs of the receiver STAs. The AP station then obtains a 5-bit pattern as Compatibility Bits from a list it maintains. The AP station composes the compressed RA field for a MU-RTS frame 41 (FIG. 4), and records the order of the AIDs of the receiver STAs presented in the compressed the RA field (responsive CTSs from the receiver STAs are expected to be received at the AP station in this order).
The AP station composes the MU-RTS frame 41 as typical except that the AP station replaces the typical (regular) RA field with the compressed RA field (FIG. 4), and sets the value of the Duration field needed to cover transmission of the longest data frame from the AP station and multiple immediate responses from the receiver STAs.
The AP station then transmits the MU-RTS frame 41 on the wireless channel in broadcast mode. The timers for the expected CTSs from the multiple receiver STAs are set to reflect the number of CTSs expected and the interframe spacings between multiple CTSs.
In response to the MU-RTS, the AP station receives a CTS from each receiver STA. If all expected CTSs are received at the AP, the enhanced RTS/CTS exchange according to the invention is done successfully. The AP station can start transmitting data frames. If one or more expected CTSs in response to the MU-RTS do not arrive at the AP station, the AP station may either send another MU-RTS with a revised Duration value, or during a MU-TXOP begin transmitting data frames to the receiver STAs that have replied with CTSs. After data frame transmission, the AP station releases the remainder of the MU-TXOP.
Receiving STA Operation in Using AIDs in a Compressed RA Field
An example operation scenario for a receiver STA in enhanced RTS/CTS exchange using AIDs in a compressed RA field of a MU-RTS frame, according to an embodiment of the invention is now described. For a legacy wireless receiver STA (i.e., a receiver STA which does not operate according to IEEE 802.11ac protocol), when the legacy STA receives a MU-RTS 41 from the AP station, the legacy STA checks the compressed RA field 41 of the MU-RTS 40 and finds the address in the compressed RA field 41 field does not match the MAC address of the legacy STA. As such, the legacy STA determines that it is not the intended (target) receiver for the frame. The legacy STA updates its NAV using a value indicated in the Duration field of the MU-RTS 41, wherein the legacy STA does not transmit until the NAV counts down to zero.
For a non-legacy receiver STA which operates according to the IEEE 802.11ac protocol, when the non-legacy STA receives a MU-RTS 41 from the AP station, the non-legacy STA checks the RA field therein and finds that the address in the compressed RA field does not match the MAC address of the non-legacy STA. The non-legacy STA then checks whether the RA field is a compressed RA field by parsing the RA field using the compressed RA field format in FIG. 6.
If the non-legacy STA determines that the RA field is a compressed RA field, and if the non-legacy STA is one of the intended receivers STAs, the non-legacy determines its order in the compressed RA field. If the non-legacy STA is the first receiver, then it calculates the correct Duration value and replies with a regular CTS immediately after Point Coordination Function Interframe Space (PIFS in IEEE 802.11 standards) or Short Interframe Space (SIFS in IEEE 802.11 standards) from the end of the reception of the MU-RTS. If the non-legacy STA is not the first receiver, then it calculates the correct hold off duration value and replies with a regular CTS after Toffset=SIFS+(n−1)×(CTS+2×RIFS), where integer n is the order of the non-legacy STA in the compressed RA field of the MU-RTS (1≦n≦3). For example, if the non-legacy STA is a third receiver in order, then Toffset=SIFS+2×(CTS+2×RIFS).
However, if the non-legacy STA is not one of the intended receivers indicated in the compressed RA field, the non-legacy STA updates its NAV using the value indicated in the MU-RTS Duration field. FIG. 8 shows a flowchart of the process 60 for a receiving STA operation described above, according to an embodiment of the invention, including the following process blocks:
-
- Block 61: MU-RTS 41 received from AP.
- Block 62: Check the RA field as actual (real or normal) MAC address.
- Block 63: This STA is a targeted receiver? If yes, proceed to block 67, else proceed to block 64.
- Block 64: Check the RA field as a compressed MAC address (compressed RA field).
- Block 65: This STA is a targeted receiver based on compressed address information in the compressed RA field? If yes, proceed to block 66, otherwise proceed to block 70.
- Block 66: This STA is a first receiver in address order in the compressed RA field? If yes, proceed to block 67, otherwise proceed to block 68.
- Block 67: Reply with a CTS after a SIFS period. Proceed to block 70.
- Block 68: Calculate the CTS transmission time for hold off duration value. Specifically, the STA calculates the correct hold off duration value and replies with a regular CTS after Toffset=SIFS+(n−1)×(CTS+2×RIFS), where integer n is the order of the non-legacy STA in the compressed RA field of the MU-RTS (1≦n≦3). For example, if the non-legacy STA is a third receiver in order, then Toffset=SIFS+2×(CTS+2×RIFS).
- Block 69: Reply with a CTS after PIFS or SIFS.
- Block 70: Update NAV accordingly. End.
Using the enhanced RTS/CTS exchange according to an embodiment of the invention, the AP station may address up to 3 or 4 receiver STAs, depending on the number of bits that can be used for each AID. To address more receiver STAs (e.g., up to 4) using a compressed RA field, using a Unique Octet in the MAC address is used, according to an embodiment of the invention, as described below.
Using Unique Octet as MAC Address in Compressed RA Field
According to another embodiment of the invention for enhanced RTS/CTS exchange, the compressed RA field comprises a Unique Octet of each receiver station MAC address to represent a full IEEE-48 MAC address.
In one implementation, one of the 6 octets in a 48-bit MAC address is used to uniquely represent a receiver STA. In this case, up to 4 receiver STAs can be addressed in the RA field 41. FIG. 10 shows an IEEE MAC-48 address structure according to IEEE Std. 802-2001 (R2007), IEEE Standard for Local and Metropolitan Area Networks: Overview and Architecture, 2007.
FIG. 11 illustrates a compressed RA field 41A including Unique Octets, in an MU-RTS frame for enhanced RTS/CTS exchange, according to an embodiment of the invention. The compressed RA field 41A includes Unique Octets as compressed addresses for 4 receiver STAs (i.e., STA1-STA4, as indicated by different stippling). Specifically, bit b0 of Octet 0 indicates whether RA field 41A is an individual address or a group address. Bits b1-b5 of Octet 1 are Compatibility Bits 43, ensuring the temporary address (i.e., compressed address) does not equal to any actual (real) hardware MAC addresses in the network. The RA field 41A holds at most 4 unique octets of 4 receiver STAs. Each 48-bit MAC address contains 6 octets. Among the 6 octets, the chance that one of the octets of a receiver STA (e.g., Octet 5) is different from the same octet (e.g., Octet 5) of all other receiver STAs is sufficiently high (depending on the number of receiver STAs in the BSS). This is called a Unique Octet. In the RA field 41A, there are two 2-bit position indicators and two 3-bit position indicators after the Compatibility Bits. These indicate the octet number (Octet 0 to Octet 5) of each Unique Octet that will be used to identify a receiver STA. The Octet contents are stored from Octet 2 to Octet 5 of the compressed RA field 41A.
FIG. 12 shows an example of using Unique Octets as MAC Addresses in the compressed RA field 41A corresponding to FIG. 11, according to an embodiment of the invention. In this example RA field 41A shown in FIG. 12, it is assumed Octet 3 of receiver STA2 is unique among all MAC addresses (different from Octet 3 of all other receiver stations in the network). Therefore, Octet 3 is selected to distinguish receiver STA2 from the rest of the receiver stations. This selection is indicated to the receiver stations, wherein the position of the unique Octet 2 (Position number=5−Octet number) is carried by bits b1 and b0 of Octet 1 of the compressed address field 41A. When the receiver stations receive an MU-RTS including such a compressed RA field 41A, each receiver STA compares its Octet 3 with the Octet 3 of the received field 41A, wherein a match indicates that the receiver STA is the destination of the MU-RTS.
In one implementation, in case the compatibility bits mechanism fails, the AP station cannot find any 5-bit pattern that is different from all present 5-bit patterns in the BSS. One solution involves composing a unique compressed RA field by selecting a 5-bit pattern, and shuffling the order of different AIDs or unique octets of the targeted receiver STAs. Because such failure only occurs when the receiver STA numbers are large and all 5-bit patterns have been presented in the network, essentially by selecting a proper 5-bit pattern and order of AIDs and unique octets, a unique compressed RA can be structured to be different from any existing actual MAC address.
AP Operation in using Unique Octet as MAC Address in Compressed RA Field
An example operation scenario for an AP station using Unique Octets in a compressed RA field 41A of an MU-RTS frame for enhanced RTS/CTS exchange according to an embodiment of the invention is now described. The AP station selects up to 4 intended (target) receiver STAs, and determines Unique Octets for each of the receiver STAs and records the position of each unique octet for the compressed RA field 41A. The AP station obtains a 5-bit pattern as Compatibility Bits from a list it maintains. The AP station composes the compressed RA field 41A, wherein for each selected receiver STA, the AP station places the unique octet position value in the corresponding 2- or 3-bit position field and places the content of the unique octet in its corresponding field in the RA field 41A (FIG. 11). The AP station records the order of each selected receiver STA presented in the compressed the RA field 41 (responsive CTSs for the MU-RTS are expected to arrive from the receiver STAs at the AP station in this order).
The AP station composes the MU-RTS frame 40 as typical, except the regular RA field is replaced with the compressed RA field 41A. The value of the Duration field indicates the length of the TXOP. The AP station then transmits the composed MU-RTS frame to the receiver STA in broadcast mode.
Timers for expected CTSs are set to reflect the number of CTSs expected and the inter-frame spacings between multiple CTSs. The AP stations holds off data transmission until the time expected to receive all CTSs has passed.
Upon receiving CTSs from individual receiver STAs at the AP station, if all expected CTSs are received, the enhanced RTS/CTS exchange is completed successfully and the AP station can start transmitting data frames in a MU-TXOP.
If one or more expected CTSs are not received at the AP station, the AP station may send another MU-RTS frame with revised Duration value, or may start transmitting data to the receiver STAs that have replied with CTSs. After such data transmission, the AP stations releases any remainder of the MU-TXOP. FIG. 9 shows a flowchart of the process 80 for a receiving AP operation described above, according to an embodiment of the invention, including the following process blocks:
-
- Block 81: Determine Unique Octets for each receiver.
- Block 82: Obtain a 5-bit pattern as Compatibility Bits.
- Block 83: Compose the compressed RA field.
- Block 84: Record the order of the receivers in the RA field.
- Block 85: Compose the MU-RTS frame.
- Block 86: Broadcast the MU-RTS frame.
Receiving STA Operation in Using Unique Octet as Mac Address in Compressed RA Field
An example operation scenario for a receiver STA in enhanced RTS/CTS exchange using Unique Octets in a compressed RA field of an MU-RTS frame, according to an embodiment of the invention is now described. A legacy receiver STA operates in a similar manner as described further above, in response to a MU-RTS including a compressed RA field 41A (FIG. 11).
Each non-legacy receiver STA that receives an MU-RTS including a compressed RA field 41A (FIG. 11) from the AP station checks the RA field 41A and finds that the address therein does not match its own MAC address. The non-legacy receiver STA checks if the RA field 41A is a compressed RA field by parsing the RA field using the format of the RA field 41A as shown in FIG. 11.
FIG. 13 shows a flowchart of an example process 50 for parsing the compressed RA field 41A including multiple unique octets, according to an embodiment of the invention, comprising:
-
- Block 51: Initialize receiver STA n to 1.
- Block 52: Obtain the Unique Octet (UO) position of receiver STA n.
- Block 53: Obtain the UO content for receiver n from the corresponding position in the compressed RA field.
- Block 54: Compare the obtained UO content with MAC address of the receiver n.
- Block 55: Does the obtained UO content match the specified octet of MAC address of the receiver n? If yes, proceed to block 56, else proceed to block 57.
- Block 56: Receiver n is an intended (target) receiver. End.
- Block 57: Is number n equal to 4? If not, proceed to block 58, else proceed to block 59.
- Block 58: Increment n and proceed to block 52.
- Block 59: Receiver n is not an intended receiver. End.
If the receiving non-legacy receiver STA is one of the intended (target) receivers, the non-legacy receiver STA determine its order in the RA field 41A. If the non-legacy receiver STA is the first receiver, it calculates the correct hold off duration value and replies with a regular CTS immediately after PIFS or SIFS from the end of the reception of the MU-RTS. If the receiving non-legacy receiver STA is not the first receiver, it calculates the correct duration value and replies with a regular CTS after Toffset=SIFS+(n−1)×(CTS+2×RIFS), where integer n is the order of the receiver in the compressed RA field 41A of the MU-RTS (1≦n≦3). For example, for the third receiver, Toffset=SIFS+2×(CTS+2×RIFS).
If the receiving non-legacy receiver STA is not one of the intended receivers, the non-legacy STA updates its NAV using the value indicated in the Duration field of the MU-RTS.
Shortened Inter-Frame Spacing
As noted, another aspect of the enhanced RTS/CTS exchange mechanism according to an embodiment of the invention involves using a SIFS period to separate a response frame (i.e., CTS) from the frame (i.e., RTS) that solicited the response. In one implementation, the inter-frame spacing between MU-RTS and CTS1 must be SIFS, as shown by example channel reservation frame exchange timing diagram in FIG. 14 for a receiver STA. The length of SIFS is determined by:
PHY layer receiving (Rx) latency,
MAC layer processing delay,
PHY layer transmitting (Tx) latency.
Between CTSs, all processes during a SIFS can be performed before the receiver STAs are ready to transmit CTSs. Therefore, the inter-frame spacing between CTSs can be reduced to 2×RIFS (e.g., 2×2 μs=4 μs, FIG. 3), considering the propagation delay between stations (FIG. 14). For propagation delay, in the worst case, one receiver STA may be far away from the AP station and the next receiver STA following it is very close to the AP station. The propagation delay may need to be accounted for in order to avoid collisions between CTSs. For example, in the wireless network shown in FIG. 15, assuming STA2 is 1000 m away from the AP, the propagation delay is 3.3 μs, while STA3 is very close to the AP wherein the propagation delay for STA3 is essentially zero. In this example it is assumed that clock drift can be ignored since RTS/CTS exchange occurs during a very short time frame. As such, the inter-frame spacing is set to 2×RIFS between each pair of CTSs.
FIG. 3 further shows example transmission time offset values (i.e., Toffset) for transmission of different CTSs. Specifically, for the nth receiver STA, the CTS transmission offset time is defined as:
t n =t 0+SIFS for n=1
t n =t 0+SIFS+(n−1)(CTS+2×RIFS) for n>1
Toffset calculations are based on a reference, t0, indicating a point in time when the last symbol of MU-RTS is received at a receiver STA. For example in FIG. 3, STAT must wait a turnaround time, SIFS, before it can transmit CTS1 to the AP station, wherein Toffset for CTS1 is t1=t0+SIFS. Further, STA2 must await a turnaround time of SIFS plus the CTS1 transmission time offset, and the CTS1 propagation delay, before STA2 can transmit CTS2 to the AP station, wherein t2=t0+SIFS+CTS1+2×RIFS. Similarly, for STA3, the value t3=t0+SIFS+CTS1+CTS2+2×(2×RIFS).
Time offsets t2 and t3 are calculated at t0 by the receiver STA2 and STA3, respectively, as soon as the compressed RA field of the MU-RTS is decoded at those receiver STAs. Therefore, STA2 need not monitor the wireless communication medium (wireless channel) before it can transmit CTS2. Indeed, if STAT is at an opposite side of the AP station relative to STA2, then STA2 may not be able to detect CTS1 on the wireless medium even if STA2 monitors the wireless medium. The same applies to STA3. Further, all receiver STAs are turned around at t0. Turn around means that the RF circuitry of the receiver switches from receiving state to transmitting state. As such, there is no turnaround again before the transmission of CTS2 and CTS3.
Referring back to the wireless network 10 in FIG. 1, the AP station (e.g., STA-A) further includes an enhanced RTS/CTS module 16A which implements the functions of the AP station for enhanced RTS/CTS for channel reservation described herein, according to embodiments of the invention. Further, each non-legacy wireless receiver STA (e.g., STA-B, STA-C, STA-D), includes an enhanced RTS/CTS module 16B which implements the functions of the non-legacy receiver STAs for enhanced RTS/CTS for channel reservation described herein, according to embodiments of the invention. FIG. 1 further shows a legacy station LSTA which operates under enhanced RTS/CTS, as described herein.
According to embodiments of the invention, a compressed RA field is to host multiple receiver MAC addresses in a MU-RTS for an enhanced RTS/CTS exchange mechanism which provides contention avoidance in MU-MIMO wireless communication. In one implementation, the compressed RA field comprises a group of AIDs, while in another implementation the compressed RA field comprises a group of Unique Octets of receiver station MAC addresses.
The MAC addresses in the compressed RA field are temporary receiver station addresses different from any actual (real) MAC address in the BSS. The temporary receiver station addresses are achieved using Compatibility Bits and shuffling of the order of representation of the receiver station addresses in the compressed RA field.
The compressed RA field is the same size as a typical RA field, but includes compressed addresses for multiple receiver stations, according to embodiments of the invention. As such, transmission of the compressed RA field does not require additional channel bandwidth compared to a conventional RA field such as in existing IEEE 802.11 standards. This provides backward compatibility with existing wireless local area networks.
In one implementation, the compressed RA field is utilized in a MU-RTS frame for IEEE 802.11 ac capable wireless stations. Shortened inter-frame spacing (shorter than SIFS) is used between consecutive CTSs from multiple receiver STAs in response to a MU-RTS from an AP station. The use of shortened inter-frame spacing improves throughput.
Embodiments of the invention are backward compatible with legacy stations, wherein the use of a compressed RA field in MU-RTS eliminates the need for a new type of frame format. Legacy STAs treat the MU-RTS as an RTS for other receiver STAs and can correctly update their NAVs.
Embodiments of the invention provide efficiency since the compressed RA field of a MU-RTS provides use of one MAC address field to holds up to 4 receiver station addresses, dramatically reducing the MU-RTS frame size. The AP station uses existing information to differentiate different receiver STAs, wherein both AID and MAC addresses are information known to the AP station (or are readily available for the AP station to obtain).
As is known to those skilled in the art, the aforementioned example architectures described above, according to the present invention, can be implemented in many ways, such as program instructions for execution by a processor, as software modules, microcode, as computer program product on computer readable media, as logic circuits, as application specific integrated circuits, as firmware, as consumer electronic devices, etc., in wireless devices, in wireless transmitters/receivers, in wireless networks, etc. Further, embodiments of the invention can take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment containing both hardware and software elements.
The terms “computer program medium,” “computer usable medium,” “computer readable medium”, and “computer program product,” are used to generally refer to media such as main memory, secondary memory, removable storage drive, a hard disk installed in hard disk drive, and signals. These computer program products are means for providing software to the computer system. The computer readable medium allows the computer system to read data, instructions, messages or message frames, and other computer readable information from the computer readable medium. The computer readable medium, for example, may include non-volatile memory, such as a floppy disk, ROM, flash memory, disk drive memory, a CD-ROM, and other permanent storage. It is useful, for example, for transporting information, such as data and computer instructions, between computer systems. Furthermore, the computer readable medium may comprise computer readable information in a transitory state medium such as a network link and/or a network interface, including a wired network or a wireless network, that allow a computer to read such computer readable information. Computer programs (also called computer control logic) are stored in main memory and/or secondary memory. Computer programs may also be received via a communications interface. Such computer programs, when executed, enable the computer system to perform the features of the present invention as discussed herein. In particular, the computer programs, when executed, enable the processor multi-core processor to perform the features of the computer system. Accordingly, such computer programs represent controllers of the computer system.
Though the present invention has been described with reference to certain versions thereof; however, other versions are possible. Therefore, the spirit and scope of the appended claims should not be limited to the description of the preferred versions contained herein.