A problem encountered in the IEEE 802.11 MAC is the collision of simultaneous transmissions from either neighboring nodes or hidden nodes within the same contention floor. This paper presents the selective decoding schemes in MAC (SDS-MAC) protocol for MIMO ad hoc networks. It is able to mitigate interferences by means of a minimum mean-squared error (MMSE) technique. As a result, it allows a pair of simultaneous transmissions to the same or different nodes to yield the network utilization increase. The decoding schemes and time line operations are properly selected corresponding to the transmission demand of neighboring nodes to avoid collision. Transmission demand can be determined by the number of RTS packets and type of CTS packets. Simulation results are given to illustrate the SDS-MAC performance.

1. Introduction

With the lack of any infrastructure support in ad-hoc networks, the nodes must use medium access control (MAC) protocols to reserve local access medium. In IEEE 802.11 standard [1], the distributed coordination function uses carrier sense multiple access with collision avoidance (CSMA/CA) as the access method. The handshake frames RTS/CTS (request to send/clear to send) in the CSMA/CA can prevent the collision from the hidden station being outside transmission range that occupying the channel. However, the use of handshaking cannot perfectly solve the exposed node problem. Collision problem still remains [1]. Moreover, spectrum allocation in the IEEE 802.11 MAC is inefficiency since it does not allow a pair of simultaneous transmissions.

Recently, researches exploit the advantages of multiple-input multiple-output (MIMO) technique to improve the performance of the IEEE 802.11 MAC [2โ€“5]. Space-time codes by multiple transmit antennas can be combined with multiple receive antennas to minimize the effects of multipath fading and to achieve the channel capacity [6]. A MAC protocol termed NULLHOC [2] designed for multipath MIMO communication channels cancels interferences by direct nulls toward other users involving in existing communication sessions. The accuracy depends on the appropriate transmit and receive weights selection in order to ensure that the signal is received with a certain gain or is perfectly null. The attractive one is Mitigation Interference using Multiple Antennas MAC (MIMA-MAC) [4] which allows two or more simultaneous data streams to communicate at the same time. It can mitigate interferences from neighboring nodes by employing the spatial multiplexing capability of MIMO. However, in order to successfully separate all the data streams at receivers, MIMA-MAC uses only half of the transmit antennas for data transmission. As a result, the channel resources are not always fully utilized. Parallel RTS Processing (PRP-MAC) [5] has developed an algorithm to maximize the number of transmitted data streams, and the number of transmitted antennas is determined by the number of transmission demands. Although, the number of transmit antennas is maximized in single stream situation, it still uses a half of the transmit antennas for two transmission demands. Thus, the problem of the number of transmit antennas is still remain, and the channel capacity of the system is limited. Further, these methods do not incorporate diversity gains from the capability of MIMO channels.

The paper is organized as follows. In Section 2, we describe the MMSE interference cancellation. Its application to the SDS-MAC protocol is presented in Section 3. In Section 4, the SDS-MAC performance is shown and compared to the MIMA-MAC. The conclusion is given in Section 5.

2. MMSE Interference Cancellation

Recently, attempts to mitigate interferences induced in MIMO links have been actively made. Consider two synchronous cochannel terminals having a transmitter as seen in Figure 1 (upper). They are communicating with the same node using two antennas for reception. For the first terminal, let โ„Ž๐‘–๐‘— be the channel coefficient between the ๐‘–th transmit and the ๐‘—th receive antennas, ๐‘–,๐‘—=1,2. Similarly, ๐‘”๐‘–๐‘— is the coefficient between the ๐‘–th transmit and the ๐‘—th receive antennas for the second terminal. There are ๐œ=[๐‘1๐‘2]๐‘‡, ๐ฌ=[๐‘ 1๐‘ 2]๐‘‡ that represent the two symbol vectors encoded and transmitted from the first and the second terminals, respectively. In the Alamouti space-time coding [7], a block of two symbols [๐‘1๐‘2] is taken in each encoding operation. At the first transmission period, ๐‘1 and ๐‘2 are transmitted simultaneously from antenna one and antenna two, respectively. In the second transmission period, โˆ’๐‘โˆ—2 and ๐‘โˆ—1 are transmitted instead. The superscript โˆ— denotes complex conjugate. Space-time coded OFDM which is known as an effective technique for high data rate applications is used. The OFDM concept can be found in [8]. Briefly, it is taking the IFFT of ๐ฟ symbols into ๐ฟ difference orthogonal subcarriers.

In the receiver shown in Figure 1 (lower), the OFDM demodulation is the FFT. The received signals over two consecutive transmission periods at the first receive antenna and the second receive antenna are given as (๐‘Ÿ11, ๐‘Ÿ12) and (๐‘Ÿ21, ๐‘Ÿ22), respectively. Denote ๐ซ1=[๐‘Ÿ11๐‘Ÿโˆ—12]๐‘‡, ๐ซ2=[๐‘Ÿ21๐‘Ÿโˆ—22]๐‘‡, ๐ง1=[๐‘›11๐‘›โˆ—12]๐‘‡ and, ๐ง2=[๐‘›21๐‘›โˆ—22]๐‘‡.๐ง1 and ๐ง2 are uncorrelated complex Gaussian random vectors with zero mean. By letting ๐ซ=[๐ซ1๐ซ2]๐‘‡, the matrix representation of the overall received signal vectors becomes

๎‚ƒ๐‡๐ซ=๐‡ฤ‡+๐ง1๐†1๐‡2๐†2๐œ๐ฌ๎‚„+๎‚ƒ๐ง๎‚„๎‚ƒ1๐ง2๎‚„,(1) where

๐‡๐‘—=๎‚ธโ„Ž1๐‘—โ„Ž2๐‘—โ„Žโˆ—2๐‘—โˆ’โ„Žโˆ—1๐‘—๎‚น,๐†๐‘—=๎‚ธ๐‘”1๐‘—๐‘”2๐‘—๐‘”โˆ—2๐‘—โˆ’๐‘”โˆ—1๐‘—๎‚น.(2) Assuming that we are interested in decoding the symbols ๐‘1 and ๐‘2. The cost function is defined as [9]

๐ฝ๎€ท๐›ผ๐‘˜๎€ธ=โ€–โ€–๐›ผ,๐›ฝโˆ—๐‘˜๐ซโˆ’๐›ฝโˆ—๐œโ€–โ€–2,(3) where ๐›ผ๐‘˜=[๐›ผ๐‘˜,1๐›ผ๐‘˜,2๐›ผ๐‘˜,3๐›ผ๐‘˜,4]โˆ—,๐‘˜=1,2, and ๐›ฝ=[๐›ฝ1๐›ฝ2]โˆ— are chosen such that ๐„{๐ฝ(๐›ผ๐‘˜,๐›ฝ)} is minimized. When ๐›ฝ1=1, ๐›ฝ2=0 we have ๐›ผ1=๐Œโˆ’1๐ก1 and when ๐›ฝ1=0, ๐›ฝ2=1, we have ๐›ผ2=๐Œโˆ’1๐ก2, where ๐ก๐‘ is the ๐‘th column of ๐‡ and ๐Œ=๐‡๐‡โˆ—+(1/๐œŒ)๐ˆ4, ๐œŒ=๐ธ๐‘ /๐‘๐‘œ is the signal-to-noise ratio (SNR). Consequently, the MMSEs are ๐ฝ(๐›ผ1)=โ€–๐›ผโˆ—1๐ซโˆ’๐‘1โ€–2 and ๐ฝ(๐›ผ2)=โ€–๐›ผโˆ—2๐ซโˆ’๐‘2โ€–2. A general scheme for rejecting interferences can be found in [10].

It is important to mention while decoding a symbol that it cancels interferences regardless of another symbol. To decode a pair of symbols ๐œ=[ฬ‚๐‘1ฬ‚๐‘2], compute the Maximum Likelihood (ML) over a set of all possible symbols ๐•ฎ as


3. Selective Decoding Scheme-MAC (SDS-MAC)

3.1. SDS-MAC Decoding

Let us consider the topology shown in Figure 2. There are three cases: (1) DATA A to B only happens; (2) DATA A to B and DATA C to D concurrently happen. The shaded arrow in Figure 2 indicates an interferer to node B while DATA C to D is connecting and (3) DATA A to B and DATA C to B are concurrently connecting to node B. Channel state information (CSI) is assumed available. Three decoders are presented.

(1)Decoding Schemeโ€‰1 is used when the transmission of DATA A to B happens. The ML decoding rule is


(2)Decoding Schemeโ€‰2 is used when two data streams are simultaneously transmitted and aimed to different destinations. The MMSE interference canceller premultiplies ๐ซ by ๐›ผ1 and ๐›ผ2. Then, compute the ML decoding rule in (4).

(3)Decoding Schemeโ€‰3 is presented in order to decode two data streams simultaneously transmitted. After calculating (4), it decodes the symbols ๐ฌ transmitted from the second terminal by computing ๐ฑ1=๐ซ1โˆ’๐‡1ฬ‚๐œ, ๐ฑ2=๐ซ2โˆ’๐‡2ฬ‚๐œ, as follows:


3.2. SDS-MAC Time Line Operation

Figure 3 shows the time structure of the SDS-MAC protocol. It is assumed that all nodes are perfectly synchronized. It consists of five types of slots. Each slot has two time segments except the data transfering slot. The tasks of each slot are briefly explained as follows.

(i)Contention Slot. In this slot, the transmitters send RTS packets to alert the receivers for connection establishment. The transmitters having data to send must contend to acquire the channel. A small random number of back-off minislots based on CSMA/CA are included at the beginning of each RTS slot to avoid collision of RTS packets [1]. (ii)Responding Slot. After receiving an RTS packet, the receiver node waits for another RTS packet in the next slot. If it does not receive any more RTS packet, it generates a CTS-I packet (node B in Figure 4(a)) to inform that it is ready for data transfer. If it receives another RTS packet for other node, it generates a CTS-II packet (nodes B and D in Figure 4(b)). If it receives another RTS packet for itself, it generates CTS-III packet (node B in Figure 4(c)) to response both transmitters (nodes A and C in Figure 4(c)). To alert other nodes of channel occupation, every node receiving a CTS packet starts Network Allocation Vector (NAV) period. They stop generating RTS packets in NAV period otherwise it can collide the existing transfer. (iii)Training Slot. The receiver uses the transmitted training sequence to estimate CSI which is necessary for decoding computation. (iv)Data Transfer Slot. The transmitters that acquired the channel transmit their data in this slot. Unlike other slots, two data streams can be transferred simultaneously in one slot due to employing the MMSE interference canceller for data separation. (v)Acknowledgement Slot. The receiver replies with an ACK packet to confirm the data reception.

As shown in Figure 4, slot timing and decoding vary in the transmission demands. The SDS-MAC protocol selects the proper decoding scheme corresponding to the number of RTS packets and the type of CTS packets as follows.

(1)CTS-I. The CTS-I packet is used when only one RTS packet is transmitted in the contention slot. It means only one data stream is transmitted (DATA A to B). The destined node sends back a CTS-I to the transmitter for connection permission. This control packet stores the transmitter ID and reduced number of slots. The frame structure is reduced to a single stream transmission as shown in Figure 4(a). Accordingly, the decoding schemeโ€‰1 is chosen since it does not need to suppress interferences.

(2)CTS-II. The CTS-II packet is used when two RTS packets are transmitted in the contention slot. Two terminals send their own data streams to different nodes at the same time (DATA A to B and DATA C to D). The CTS packets in the responding slot and the time line are shown in Figure 4(b). The decoding schemeโ€‰2 is designed for this situation.

(3)CTS-III. In the case of DATA A to B and DATA C to B, the node B responses both terminals by the CTS-III packet. Transmitter IDs of both RTS packets are stored in the CTS-III packet. The frame structure is shown in Figure 4(c). The node B has to use the decoding schemeโ€‰3 for data separation.

4. Simulation Results

To evaluate the SDS-MAC performance, the MIMA-MAC is used for comparison. The differences of both protocols can be concluded as follows. The SDS-MAC protocol allows the total transmit antennas (๐‘€๐‘ก) to be active whereas the MIMA-MAC protocol uses only half of its transmit antennas (๐‘€๐‘ก/2). In the SDS-MAC protocol, we can have at most two simultaneous links in the network either to the same or to the different receivers. This gains transmit diversity using the Alamouti code. The MIMA-MAC system, however, is designed for at most two simultaneous transmissions only for different receivers. This is to develop the mechanism of the 802.11 style MAC which there can be only one active transmitter at a time using all of ๐‘€๐‘ก transmit antennas. Moreover, the MMSE interference canceller mentioned in Section 2 is employed with the ML decoders in the SDS-MAC protocol. Zero-forcing (ZF) receiver [11] is employed as a spatial multiplexing and interference cancellation in the MIMA-MAC protocol.

In the case of one link (DATA A to B), Figure 5 shows the SERs for six cases which are divided into two groups of BPSK and 8PSK. In each modulation, the decoding schemeโ€‰1 has the SER results better than the decoding schemeโ€‰2 and the MIMA-MAC protocol since it is specifically designed for the scenario 1 and use the ML as a decoder which is optimal decoding, while the ZF receiver is suboptimal.

In the cases of two links either (1) DATA A to B and DATA C to D or (2) DATA A to B and DATA C to B, the SER results are compared as illustrated in Figure 6. By using the SDS-MAC protocol, we improve the channel utilization that allows decoding two simultaneous data streams. With the presence of interferences, the decoding scheme1 cannot decode data streams efficiently. Similarly, the ZF receiver in the MIMA-MAC system can mitigate interferences but it is unable to decode data streams for the case of scenario 3. The SER results of one link are better than that of two links since when there is only one user using the channel, the diversity is four. However, the diversity reduces to two, where interference appears because one of the receive antennas is effectively used for interference suppression.

Besides the simulation results justify the efficiency of SDS-MAC protocol, it can be justified by the link capacity [11]. Basically, the capacity increases according to the number of transmit antennas, the number of links, and SNR. At the same SNR, the SDS-MAC protocol utilizes more the number of transmit antennas and the number of links than the MIMA-MAC protocol. Therefore, it yields that the SDS-MAC protocol has more capacity than the MIMA-MAC protocol.

5. Conclusion

A wireless MAC design with selective decoding schemes in MIMO links is presented. The MMSE interference canceller increases the channel utilization since it enables simultaneous transmissions. The decoding schemes and frame time lines are properly selected depending on transmission demands of neighboring nodes. Consequently, two data streams can be simultaneously transferred by two terminals to the same or different destined nodes. The results assure that the SDS-MAC outperforms the MIMA-MAC.