The present invention relates generally to communications and, in particular, to retransmitting information in wireless communication systems.
This section introduces aspects that may help facilitate a better understanding of the inventions. Accordingly, the statements of this section are to be read in this light and are not to be understood as admissions about what is prior art or what is not prior art.
As OFDM becomes the foundation of modern high-speed wireless networks due to its advantages such as lower symbol rate, effective usage of a large frequency band, and resistance to frequency-selective fading, collisions in overlapping OFDM channels become an increasingly important problem in the deployment of high-speed wireless networks. Specifically, in an OFDM network, each channel is allocated a set of subcarriers, and two channels overlap when the intersection of their sets of subcarriers is not empty. Consider 802.11 g, which is becoming almost ubiquitously deployed in many residential neighborhoods. With only 3 non-overlapping channels with disjoint sets of subcarriers but a large number of access points in densely populated neighborhood, it is inevitable that many 802.11 access points in range of each other use overlapping channels, as observed by previous measurement studies (e.g., [1]). Although one may try to alleviate the shortage of orthogonal channels by using variable bandwidth channels, as advocated in [5, 10], bursty or time varying workload can pose a problem for channel width adaptation. As the authors of [15] have shown, partially overlapping channels may improve network throughput even in managed 802.11 networks, when the number of orthogonal channels is limited. Channel overlapping is also allowed in WiFi networks built on digital white spaces [2].
However, collisions in overlapping OFDM channels during congestion or in the presence of hidden terminals are distinct from collisions in a single-channel setting, and they are becoming an increasingly important problem in the deployment of high-speed wireless networks. For example, if one base station or access point uses channel 1, a nearby one uses channel 2 (channel 1 and 2 overlap), then overlapping channel collisions can become a serious problem. Currently deployed systems retransmit when collisions occur. The hope is that the retransmission will go through interference free. However, persistent collisions can occur frequently due to MAC effect or hidden terminal problems. The best existing solution appears to be Zigzag decoding (see, e.g., [7]); however, it does not deal with overlapping channel collisions very well. Thus, new solutions and techniques that are able to address overlapping channel collisions would meet a need and advance wireless communications generally.
Specific embodiments of the present invention are disclosed below with reference to
Simplicity and clarity in both illustration and description are sought to effectively enable a person of skill in the art to make, use, and best practice the present invention in view of what is already known in the art. One of skill in the art will appreciate that various modifications and changes may be made to the specific embodiments described below without departing from the spirit and scope of the present invention. Thus, the specification and drawings are to be regarded as illustrative and exemplary rather than restrictive or all-encompassing, and all such modifications to the specific embodiments described below are intended to be included within the scope of the present invention.
Various methods and devices are provided to address the need for new techniques to handle overlapping channel collisions. In one method, a first mapping is generated for information to be transmitted via a channel. The channel includes a plurality of subcarrier groups, a first portion of the information is mapped to a first subcarrier group of this plurality of subcarrier groups and a second portion of the information is mapped to a second subcarrier group of the plurality of subcarrier groups. The information is transmitted via the channel using the first mapping. A second mapping is generated for the information. A first portion of the information is mapped to a subcarrier group of the plurality of subcarrier groups that is different than the first subcarrier group, while a second portion of the information is mapped to a subcarrier group of the plurality of subcarrier groups that is different than the second subcarrier group. The information is retransmitted via the channel using the second mapping. An article of manufacture is also provided, the article comprising a processor-readable storage medium storing one or more software programs which when executed by one or more processors performs the steps of this method.
In another method, information is remapped according to an information-to-subcarrier remapping schedule. Various portions of the information are mapped to different subcarrier groups than the various portions of the information were mapped to in a previous transmission of the information. The information is retransmitted in accordance with the remapping that is performed. An article of manufacture is also provided, the article comprising a processor-readable storage medium storing one or more software programs which when executed by one or more processors performs the steps of this method.
Various transceiver node apparatuses are also provided. A first transceiver node being configured to communicate with other devices of a system and being operative to generate a first mapping for information to be transmitted via a channel, where the channel comprises a plurality of subcarrier groups. A first portion of the information is mapped to a first subcarrier group of the plurality of subcarrier groups and a second portion of the information is mapped to a second subcarrier group of the plurality of subcarrier groups. The first transceiver node is also operative to transmit the information via the channel using the first mapping and to generate a second mapping for the information, where a first portion of the information is mapped to a subcarrier group of the plurality of subcarrier groups that is different than the first subcarrier group and where a second portion of the information is mapped to a subcarrier group of the plurality of subcarrier groups that is different than the second subcarrier group. The first transceiver node is also operative to retransmit the information via the channel using the second mapping.
A second transceiver node being configured to communicate with other devices of a system and being operative to remap information according to an information-to-subcarrier remapping schedule, where various portions of the information are mapped to different subcarrier groups than the various portions of the information were mapped to in a previous transmission of the information. The second transceiver node is also operative to retransmit the information in accordance with the remapping.
To provide a greater degree of detail in making and using various aspects of the present invention, a description of our approach to retransmitting information and a description of certain, quite specific, embodiments follows for the sake of example.
Remap is the paradigm proposed herein for handling collisions in OFDM networks with overlapping channels. Different from the existing, passively-repeat paradigm, Remap introduces the concept of retransmission-permutation that permutes the bit-to-subcarrier mapping after each retransmission. Retransmission-permutation is a powerful diversity technique [18] that can recover frequency selective losses from subsequent retransmission when there is no collision. When there are collisions, it in essence provides channel-width adaption and allows bootstrapping the decoding of collided packets that may otherwise not be possible.
Specifically, the foundation of Remap is based on the observation that when two packets transmitted in overlapping channels collide, only the subcarriers in the intersection of the two channels collide and the bits in other subcarriers are clean and can be collected. However, the non-colliding subcarriers do not contain complete packet information. The idea of Remap is to introduce structured permutation on the mapping from bits to subcarriers after each collision to create structured diversity. This diversity allows either independent decoding or bootstrapping other decoding techniques such as Zigzag decoding [7]. Integrating Remap with an existing system requires minimal change to the OFDM physical layer.
In particular, we have designed 802.11 g/Remap, which applies Remap to 802.11 g to demonstrate its effectiveness. We show that using the diversity created by remapped packets, an 802.11 g receiver a can decode any packet Pa after 4 collisions with other transmissions in adjacent channels; the number of collisions reduces to 2 if the other transmissions are not in adjacent channels. These numbers do not make any assumptions on the packets collided with Pa. If the packets collided with Pa are the same (i.e., both collisions are between Pa and another packet Pb), Remap can bootstrap decoding both packets with the bits on the collision-free subcarriers. Decoding both packets at a single AP is important so that the combiner (used in systems such as [16]) behind the APs can make use of the reception diversity. In contrast, without Remap, Zigzag cannot decode both packets. Furthermore, 802.11 g/Remap is backwards compatible with 802.11 MAC. Thus, 802.11 g/Remap can be deployed with simple software and firmware updates to the vast existing 802.11 networks.
We have implemented 802.11 g/Remap in a software radio test-bed. Our experimental results show that Remap works and achieves a BER on decoding collision-free subcarriers that is very close to collision-free transmissions when the interference signal strength is smaller than the desired signal by at least 5 dB.
We use 802.11 g to illustrate our basic idea. In standard 802.11 g, data bits are assigned to subcarriers. We denote the first 16 subcarrier frequencies of 802.11 g as G1, the next 16 as G2, etc. Each 802.11 g channel consists of 64 consecutive subcarrier frequencies (only 48 subcarriers carry data bits). Thus, the first channel C1 of 802.11 g consists of G1, G2, G3 and G4; channel C2 consists of G2, G3, G4 and G5; channel C3 consists of G3, G4, G5 and G6; channel C4 consists of G4, G5, G6 and G7, etc. Note that C1 overlaps with C1, C2, C3 and C4. We say that C2 is an adjacent channel of C1; C3 and C4 are overlapping non-adjacent channels of C1. (Note that non-overlapping channels do not equal orthogonal channels; due to imperfect filtering, guard bands are needed to achieve orthogonality. Our decoding technique is subject to adjacent channel interference.)
Assume that a sender uses channel C1 to send a packet P consisting of data bits A1, A2, A3, and A4. Let the bit-to-subcarrier assignment be that A1->G1, A2->G2, A3-<G3, and A4->G4. In other words, the bits A1 are assigned to be carried by subcarrier group G1, A2 by G2, A3 by G3, and A4 by G4. If the transmission for packet P is not successful, 802.11 g retransmits the packet P where the bit-to-subcarrier assignment is the same.
In contrast, in the Remap approach during a retransmission, permutation scheduling of bit-to-subcarrier mapping is performed. Diagram 100 of
Having described by example the basic idea, we now demonstrate the benefits of Remap using another example. Consider two residential users, Alice and Bob, who use 802.11 g to connect to access points APa and APb respectively. Let the channel between Alice and APa be Ca, and that between Bob and APb be Cb. Assume that the two channels are overlapping channels. Diagram 200 of
Due to hidden terminals or randomness, Alice may transmit a packet Pa to APa concurrently with Bob transmitting a packet Pb to APb, causing collisions at APa and APb. Without receiving an acknowledgment, Alice retransmits Pa, which may again collide with a transmission of Bob for packet Pb. Note that Pb may be different from Pb due to rescheduling. Without Remap, packet Pa cannot be decoded by the access point APa so long there are collisions.
Remap, however, allows decoding of collided packets. To illustrate our idea, we consider how APa decodes Pa. We will show that Remap allows APa to decode Pa after at most 3 retransmissions. We illustrate three cases.
Collisions in Non-adjacent Channels: Diagram 300 of
Collisions in Adjacent Channels: The worst-case of 3 retransmissions happens when Alice and Bob use adjacent channels: Alice uses C1 and Bob uses C3. Diagram 400 of
Matching Collisions: The worst case of 3 retransmissions does not make any assumption on the packets that collided with Pa. When the first two packets that collided with Pa are the same, Remap can achieve higher efficiency. We refer to this case as matching collisions.
Specifically, for the case of matching collisions, Remap uses bits that are mapped to collision-free subcarriers to bootstrap more advanced decoding motivated by ZigZag decoding. Again, see diagram 400. For the example, we have bit sequences A1 and A4 which are on collision-free subcarriers. A1 is the bit sequence of all the symbols of Pa that are mapped to subcarrier group 1. We first decode them. Once we decode A1, we then re-encode them onto subcarrier group 4. We subtract the re-encoded signal from the second collision so that we can decode B3. When we get B3, we further re-encode them onto subcarrier group 3 and subtract from the first collision. After the subtraction, we can decode A3 from the first collision. Similarly, A3 causes B5 to get decoded. We then decode from A4. A4 causes B4 to be decoded from the first collision. B4 causes A2 to get decoded from the second collision and followed by B2. Thus, we can decode all bits in all subcarriers, even the bits of the second packet transmitted in subcarriers outside of channel k in the first transmission! Diagram 500 of
In this section, we give more details on some key issues related to Remap. We use 802.11 g to be concrete. Our presentation setting is that an 802.11g·AP tries to decode packets (Pa, P′a) from a sender A to the AP. We refer to the transmissions from A to the AP as the primary channel. The transmissions from other transmitters, say packets Pb and Pb from a sender B to another targeted receiver, are called secondary channels. (We focus on the case of one secondary channel but the scheme can be extended to multiple channels.) The secondary channels cause interference to the primary channel.
Detecting Collisions
To detect a collision, the AP exploits the known preamble with which every packet starts. 802.11 g preamble consists of 10 identical short symbols, each of 16 samples, and 2 identical long symbols, each of 64 samples. 802.11 g receiver does auto-correlation of the first 160 received samples. It then shifts one sample at one time, and performs auto-correlation on another 160 samples starting at the shifted positions. Because the preamble is independent of A and B's data, the correlation of the preamble samples with A and B's data should be close to zero.
If the correlation peaks in the middle of the packet, then it is very likely that we have a collision. We now need to determine which channel the collided packet is transmitted on. We use standard energy-detection technique. We illustrate using 802.11 g. Each 802.11 g channel consists of 64 subcarriers (a 20 MHz channel). As discussed before, we partition them into 4 groups. We try to find out which group's energy has significant change before and after the correlation peak. Based on 802.11 g channel structure, once we determine which subcarrier groups experience collision, we can infer which channel the second packet is transmitted on.
Detecting Matching Collisions
Once an AP determines the received signal is the result of collision, it will search for a matching collision (a collision of the same two packets). Each AP stores recent unmatched collisions. Because senders in 802.11 keep retransmitting a failed transmission as soon as the medium is free, it is sufficient to store a few most recent collisions.
We again use correlation to match the current collision against stored collisions. Assume the AP is trying to match two collisions (Pa, Pb) and (P′a, P′b). The AP knows which channels each of these four packets are transmitted and the timing offsets. Without loss of generality, let us assume Pa an P′a are transmitted on prime channels. Because Remap maps bits to different subcarriers during retransmissions, we cannot simply perform a correlation in the time domain.
We perform a FFT on the received mixed samples y and y using the timing of A's packet. Let N be the number of subcarriers and M be the number of symbols in each packet. After correcting frequency offsets, let Y[l,i], Y′[l,i] be the i-th subcarrier sample of the l-th symbol in the frequency domain for y and y′ respectively. Let Ha[i] and H′a[i] be the channel gain associated with the i-th subcarrier of A's channel to her AP. Let Ŷ′[l,i] be the reversed-mapped sample. That is, if subcarrier i is mapped to subcarrier k in P′a, then Ŷ′[l,i]=H′a[i]Y′[l,k]/H′a[k]. The correlation is computed as follows.
Note that, we assume the channel of each subcarrier for the retransmitted packet does not change much from the original transmission.
Detecting Modulation
Note that, given one collision, we cannot decode the PLCP header of the overlapping channel packet. Thus, we do not know with what modulation scheme the second packet is encoded. Remap solves this problem nicely. We assume that the channel has not changed much between the two collisions. This is reasonable given that 802.11 is used primarily in indoor environments. Rather than decode and re-encode Pb, we subtract the raw samples of Pb during the Remap decoding process of adjacent channel collisions. The drawback from decode and re-encode subtraction is added noise. However, PLCP is redundantly encoded; so it is very noise resilient. Once we obtain the PLCP header from the first pass of Remap. We can then apply the normal Remap decoding process. For subsequent bits of the second packet, we decode using the modulation scheme encoded in its PLCP header's Signaling field.
Remap Decoding
The full Remap decoding algorithm is shown in below. Remap decode takes a new collision and the set of saved collisions. channel is the channel that the receiver tunes to.
We first detect whether collision happens on all 4 subcarrier groups. If so, then the collision is on the same channel. We pass it to the Zigzag decoder. If it is a collision on overlapping channels, we will run through the set of collisions colset. We first see if it is a matching collision pair; if so, we decode matching collisions. If it is not a matching collision pair, we will try to see if and y′ matches y in terms of the packet in channel channel. If that is the case, we will collect bits on collision-free subcarriers.
When we finish the loop, we will further collect collision-free subcarriers from the new collision y. We will then try to reconstruct the pkt in channel channel. If we have enough bits and the decoding passes CRC check, we will return pkt. Otherwise, we will return NULL.
We characterize the effectiveness of Remap using the following theorem:
THEOREM 1. Given k=2, 3 matching collisions. Each sender Si uses mapping πi,j in collision j=1, . . . , k. If πi,j≠πi,j′ as long as j≠j′, then Remap can decode all k collisions.
Issue with Scrambler
All the bits transmitted by 802.11 g are scrambled using a frame synchronous 127 bits sequence generator. Scrambling is used to randomize the input bits to prevent long strings of 1s and 0s. The initial state of the scrambler varies from packet to packet. To unable estimation of sender scrambler state, 802.11 g sets the seven least significant bits of the SERVICE field of the PLCP header to all zeros. Scrambling is done after convolutional encoding.
To enable Remap decoding when the scrambler of the sender changes state from packet to packet. We need to descramble the received samples of a packet (with collisions). To descramble, we need to know the scrambling seed. For the prime channel packet, we can infer the seed from the most recent non-collision packets received from the sender. For the non-prime packet, we may need to try out all possible adjacent seeds (127 of them) for pairs of collisions.
Experimental Setup
We evaluate Remap using the Sora software radio platform [6]. Sora has a full-fledged 802.11 g physical layer according to the standard. The OFDM implementation uses the 802.11 g standard preamble structure. We have implemented both Remap decoding of non-matching collisions and matching collisions. However, we focus on evaluating Remap decoding of the non-matching collision case. Remap works well with a variety of modulation schemes. In this evaluation, we use Binary Phase Shift Keying (BPSK). BPSK is used for the 6 Mbps data rate of 802.11 g.
We perform the following experiments. We set up one SDR receiver, and two SDR senders A and B. We set sender A to transmit on channel 3. We fix the receiver at channel 3 as well. We change the locations of these nodes to get different SNRs. We perform two experiments for each location. In the first experiment, we set sender B to transmit at channel 4; in the second, we set B to transmit at channel 5. For each experiment, we let A and B send continuously for a duration. We call the data collected a dump. We perform 100 independent dumps. Each dump lasts several hundred micro-seconds which contains 10 to 20 independent packets. For each packet from A, we send the original version and 3 additional remap versions. B continuously sends random generated packets. After we collect the dump data, we post-process it. We first locate the preamble of each channel 3 packet and cut them into groups of 4 packets each. We adjust these 4 groups through the collision matching algorithm. We then decode each of the 4 packet samples. We collect BER and throughput. Since we know each packet A's content, we know whether each demodulated bit is correct or not. We then use the 802.11 g Viterbi decoder to decode the packet. If the packet passes through the CRC check, we then count the packet as decoded correctly. Otherwise, we count it as an error packet. Note that, we can decode at most two packets from each 4-packet group for collisions with channel 5, and at most one packet for collisions with channel 4. We normalize with the best throughput each setting can achieve.
We did our experiments at many locations in the floor of a big building. There are rarely any background 802.11b/g activities. We pick two representative locations to report. In both locations, we also perform decoding of normal collision-free transmissions of channel 3 packets. Almost all packets can be decoded. Furthermore, we decode the collision packets using a normal 802.11 decoder (the same decoding capability as a successive interference decoder). The throughput is virtually zero (a few packets out of about 1500 packets).
Non-Adjacent Channel Collision
Table 1 shows the overall throughput of the two settings. Note that the SNR of 21.2 dB of channel 5 is the measured SNR at the receiver which is tuned to channel 3. We see that, with SNR difference about 5 dB and 9 dB between channel 3 and channel received signal strength, the normalized throughput is 0.81, 0.98 (i.e., 1 means all collisions are decoded correctly).
To have a detailed understanding of the BER of each collision group and the throughput of each dump, we plot the scatter plot of each. We only show the second experiment. As shown in graphs 600 and 700 of
Adjacent Channel Collision
Now we look at the adjacent channel collision case. Table 2 shows the overall throughput of the two settings. Note that, in the second case when the SNR difference is 10 which is similar to the non-adjacent channel case, the decoding probability is 0.91 which is similar to the non-adjacent channel collision case (0.98). However, when the SNR difference is 3 dB, only half of the packets decoded pass CRC check. When the SNR difference is 3 dB, the largest BER are clustered in 0.25 and 0.125. These are due to the error of our group separation algorithm (when interference is high). The rest of the packets that did not pass CRC are mostly due to high interference. The energy leaked from channel 4 causes the signal to interference and noise ratio to be low.
Remap's key contribution is the bit-to-subcarrier remapping approach for resolving collisions in overlapping channels. It is different from prior work on interference cancellation and joint decoding [20, 14, 11]. These techniques operate on a single collision and decoding capability is limited by the channel capacity. Remap is related to analog network coding [13]. However, a receiver capable of analog network coding can decode a collision only if it knows one of the colliding packets.
Zigzag is designed in the context of no bit-to-subcarrier remapping. Remap builds on top of Zigzag. Remap works for non-overlapping channel collisions and is designed to take advantage of bit-to-subcarrier remapping. Unlike Zigzag, Remap does not rely on matching collisions. Even in the case of two matching collisions, Remap enables diversity combining from receptions at multiple APs as used in [16]. The reason is that Remap can decode both packets involved in the collisions as long as the number of overlapping subcarriers is no more than half of the total.
Remap differs from prior work on the MAC layer [12, 3] that avoids collisions. Remap decodes collisions and works with 802.11 MAC without any modifications.
The concept of decoding interfering users has been an area of intense study in communication and information theory. These techniques such as MIMO [19] and recent interference alignment [9, 8, 4] require synchronization, coding and scheduling. In contrast, Remap resolves collisions without these requirements.
802.11 Specifics of Remap
In this appendix, we discuss some 802.11 specifics of Remap decoding. 802.11 index subcarriers from −32 to +31. Subcarriers [−32,−27], [27,31] and 0 are unused. Subcarriers −21,−7, +21,+7 are used as pilots. Non-pilot subcarriers in [−26,−1] and [1,26] are mapped with information bits. We divide subcarriers into four groups (G1, G2, G3, G4) with equal number of subcarriers in each group: [−26,−14], [−13,−1], [1,13] and [14,26]. However, the adjacent channel subcarrier groups do not align with the prime channel. In particular, its subcarrier groups are mapped into [−10,2], [3,15], [17,29] and [30,42] as shown in diagram 800 of
We modify the Remap decoding process as shown in diagram 900 of
Overlapped Collisions
There are two cases. The first case is Pa is on the prime channel and the second case is Pb is on the prime channel. The main difference between decoding overlapped collisions from non-overlapped collisions is the dependency among different decoding paths. In the non-overlapped case, we can start decoding with either of the two collision-free bit sequences A4 and A1. This is not the case for overlapped collisions. Another difference is that we need to detect the start of the second collision in the overlapped case.
For the first case, we start with bit sequence A1. The decoding and re-encoding, subtraction sequence is shown in diagram 1000 of
For the second case, we need to start with bit sequences A4. The decoding and re-encoding, subtraction sequence is shown in diagram 1100 of
The detailed and, at times, very specific description above is provided to effectively enable a person of skill in the art to make, use, and best practice the present invention in view of what is already known in the art. In the examples, specifics are provided for the purpose of illustrating possible embodiments of the present invention and should not be interpreted as restricting or limiting the scope of the broader inventive concepts.
Aspects of embodiments of the present invention can be understood with reference to
Below is a list of references that are referred to throughout the present specification:
Benefits, other advantages, and solutions to problems have been described above with regard to specific embodiments of the present invention. However, the benefits, advantages, solutions to problems, and any element(s) that may cause or result in such benefits, advantages, or solutions, or cause such benefits, advantages, or solutions to become more pronounced are not to be construed as a critical, required, or essential feature or element of any or all the claims.
As used herein and in the appended claims, the term “comprises,” “comprising,” or any other variation thereof is intended to refer to a non-exclusive inclusion, such that a process, method, article of manufacture, or apparatus that comprises a list of elements does not include only those elements in the list, but may include other elements not expressly listed or inherent to such process, method, article of manufacture, or apparatus. The terms a or an, as used herein, are defined as one or more than one. The term plurality, as used herein, is defined as two or more than two. The term another, as used herein, is defined as at least a second or more. Unless otherwise indicated herein, the use of relational terms, if any, such as first and second, top and bottom, and the like are used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions.
The terms including and/or having, as used herein, are defined as comprising (i.e., open language). The term coupled, as used herein, is defined as connected, although not necessarily directly, and not necessarily mechanically. Terminology derived from the word “indicating” (e.g., “indicates” and “indication”) is intended to encompass all the various techniques available for communicating or referencing the object/information being indicated. Some, but not all, examples of techniques available for communicating or referencing the object/information being indicated include the conveyance of the object/information being indicated, the conveyance of an identifier of the object/information being indicated, the conveyance of information used to generate the object/information being indicated, the conveyance of some part or portion of the object/information being indicated, the conveyance of some derivation of the object/information being indicated, and the conveyance of some symbol representing the object/information being indicated.
The present application claims priority from a provisional application, Ser. No. 61/253,724, entitled “METHOD AND APPARATUS FOR RETRANSMITTING INFORMATION,” filed Oct. 21, 2009, which is commonly owned and incorporated herein by reference in its entirety.
Number | Date | Country | |
---|---|---|---|
61253724 | Oct 2009 | US |