opportunistic and cooperative spatial multiplexing in mimo ad hoc networks

11
Opportunistic and Cooperative Spatial Multiplexing in MIMO Ad hoc Networks Shan Chu, Xin Wang Department of Electrical and Computer Engineering State University of New York at Stony Brook Stony Brook, NY, USA {schu, xwang}@ece .sunysb.ed u ABSTRACT It is important and challenging to develop ecient schemes to coordinate node transmissions in a MIMO-based ad hoc network. In this work, we propose a scheme to fully exploit the multiuser diversity and spatial diversity by taking ad- vantage of the meshed topology, while also supporting user transmission quality requiremen t. We formulate a concrete phys ical model, and present cross -lay er algor ithms which take advantage of physical layer channel information to op- portunistically schedule cooperative spatial mul tiplexed trans- missions between nodes, so that the data rate of the network can be max imi zed. The perfo rmance of our algo rithm is studied by extensiv e simulations and the results demonstrate that our algorithm is very eective and can signicantly in- crease the throughput while reducing the transmission delay. Categor ies and Subject Descriptors C.2.1 [Network Architecture and Design]: Wireless com- munication; C.2.2 [Computer-Communication Networks]: Network Protocols General Terms Algorithms, Design, Performance Keywords Spatial multiplexing, MIMO, ad hoc networks, scheduling, cross-layer design 1. INTRODUCTION Multiple-input multiple-output (MIMO) technology uti- lizes multiple antennas at the transmitter and the receiver with the aim of improving transmission reliability and pro- vidin g higher raw data rates. A transmitt er node can divide its data into multiple data streams and transmit them simul- taneously over multiple antenna elements, which is known as spatial multiplexing. As a rich scattering environment can Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for prot or commercial advantage and that copies bear this notice and the full citation on the rst page. To copy otherwise, to republish, to post on servers or to redistribute to lists, requires prior specic permission and/or a fee.  MobiHoc’08, May 26–30, 2008, Hong Kong SAR, China. Copyright 2008 ACM 978-1-60558-073-9/08/05 ...$5.00. provide independent transmission paths (multi-channels) be- tween dierent transmitting and receiving antenna pairs, an inte nded receive r node can separ ate and decode its receiv ed data streams based on their unique spatial signatures. In ad- dition to improving the transmission capacity through spa- tial multiplexing, in a network with multiple users, the chan- nels between dierent user and antenna pairs are dierent and vary over time. In cellular networks, multiuser diver- sity could be exploited by scheduling the user with the best channel condition to communicate with the base station [2, 3, 4]. Wit h the fas t pro gress of MIMO techno log y, it is now being adopted in 802.11n [1] and is also considered for ad hoc networks. Dierent from an infrastructure-based single- hop cellular network, it is dicult for nodes to coordinate in channel evaluations and transmissions in a dynamic ad hoc network. Dier ent nodes may hav e dieren t number of antennas, and the peer relationship changes as network topology changes. The quick vari ation of channel condition and network topology as well as the inconsistency in node density would lead to more challenges in ad hoc network design. Instead of simp ly extending the algorithms used in cellular networks, an ecient algorith m is needed to bet- ter exploit the peer-to-peer nature of the network and the varying channel condition to maximize the data rate of the network. Althou gh there are many recent eorts in devel- oping MAC protocols for applying MIMO technique to ad hoc networks [5 , 6, 8, 10, 11, 12, 13 ], ther e is very li m- ited work to fully exploit the meshed topology of ad hoc networks and consider both multiuser diversity and spatial dive rsit y to maximize network capacity. In addition, the trac at each node may be dierent and the user packets may have dierent service requirements, which leads to more open problems for the MAC protocol design in MIMO-based ad hoc networks. In this work, we propose an integrated scheduling scheme to improve the network throughput and transmission quality in MIMO-based ad hoc networks by jointly considering traf- c deman d, service requi remen ts, netw ork load, mul tiuser dive rsit y , and channel condition. In our scheme, a sender node can transmit to multiple downstream nodes using dif- ferent antennas, while a receiver node can receive packets from multi ple upstream nodes. There fore, a group of neigh - bori ng nodes can tak e adv antag e of the mes hed netwo rk topo log y to coope rate in transmiss ion and form a virtual MIMO array. In a transmission duration, transmitter nodes and their antenna set are selected opportunistically to ex- ploit the multiuser diversity and spatial diversity to a large 63

Upload: zeshan85

Post on 07-Apr-2018

218 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Opportunistic and Cooperative Spatial Multiplexing in MIMO Ad Hoc Networks

8/6/2019 Opportunistic and Cooperative Spatial Multiplexing in MIMO Ad Hoc Networks

http://slidepdf.com/reader/full/opportunistic-and-cooperative-spatial-multiplexing-in-mimo-ad-hoc-networks 1/10

Opportunistic and Cooperative Spatial Multiplexing inMIMO Ad hoc Networks

Shan Chu, Xin WangDepartment of Electrical and Computer Engineering

State University of New York at Stony BrookStony Brook, NY, USA

{schu, xwang}@ece.sunysb.edu

ABSTRACT

It is important and challenging to develop efficient schemesto coordinate node transmissions in a MIMO-based ad hocnetwork. In this work, we propose a scheme to fully exploitthe multiuser diversity and spatial diversity by taking ad-vantage of the meshed topology, while also supporting usertransmission quality requirement. We formulate a concrete

physical model, and present cross-layer algorithms whichtake advantage of physical layer channel information to op-portunistically schedule cooperative spatial multiplexed trans-missions between nodes, so that the data rate of the networkcan be maximized. The performance of our algorithm isstudied by extensive simulations and the results demonstratethat our algorithm is very effective and can significantly in-crease the throughput while reducing the transmission delay.

Categories and Subject Descriptors

C.2.1 [Network Architecture and Design]: Wireless com-munication; C.2.2 [Computer-Communication Networks]:Network Protocols

General TermsAlgorithms, Design, Performance

Keywords

Spatial multiplexing, MIMO, ad hoc networks, scheduling,cross-layer design

1. INTRODUCTIONMultiple-input multiple-output (MIMO) technology uti-

lizes multiple antennas at the transmitter and the receiverwith the aim of improving transmission reliability and pro-viding higher raw data rates. A transmitter node can divideits data into multiple data streams and transmit them simul-taneously over multiple antenna elements, which is knownas spatial multiplexing. As a rich scattering environment can

Permission to make digital or hard copies of all or part of this work forpersonal or classroom use is granted without fee provided that copies are

not made or distributed for profit or commercial advantage and that copiesbear this notice and the full citation on the first page. To copy otherwise, torepublish, to post on servers or to redistribute to lists, requires prior specificpermission and/or a fee. MobiHoc’08, May 26–30, 2008, Hong Kong SAR, China.Copyright 2008 ACM 978-1-60558-073-9/08/05 ...$5.00.

provide independent transmission paths (multi-channels) be-tween different transmitting and receiving antenna pairs, anintended receiver node can separate and decode its receiveddata streams based on their unique spatial signatures. In ad-dition to improving the transmission capacity through spa-tial multiplexing, in a network with multiple users, the chan-nels between different user and antenna pairs are differentand vary over time. In cellular networks, multiuser diver-sity could be exploited by scheduling the user with the bestchannel condition to communicate with the base station [2,3, 4].

With the fast progress of MIMO technology, it is nowbeing adopted in 802.11n [1] and is also considered for adhoc networks. Different from an infrastructure-based single-hop cellular network, it is difficult for nodes to coordinatein channel evaluations and transmissions in a dynamic adhoc network. Different nodes may have different numberof antennas, and the peer relationship changes as networktopology changes. The quick variation of channel conditionand network topology as well as the inconsistency in nodedensity would lead to more challenges in ad hoc networkdesign. Instead of simply extending the algorithms used in

cellular networks, an efficient algorithm is needed to bet-ter exploit the peer-to-peer nature of the network and thevarying channel condition to maximize the data rate of thenetwork. Although there are many recent efforts in devel-oping MAC protocols for applying MIMO technique to adhoc networks [5, 6, 8, 10, 11, 12, 13], there is very lim-ited work to fully exploit the meshed topology of ad hocnetworks and consider both multiuser diversity and spatialdiversity to maximize network capacity. In addition, thetraffic at each node may be different and the user packetsmay have different service requirements, which leads to moreopen problems for the MAC protocol design in MIMO-basedad hoc networks.

In this work, we propose an integrated scheduling schemeto improve the network throughput and transmission quality

in MIMO-based ad hoc networks by jointly considering traf-fic demand, service requirements, network load, multiuserdiversity, and channel condition. In our scheme, a sendernode can transmit to multiple downstream nodes using dif-ferent antennas, while a receiver node can receive packetsfrom multiple upstream nodes. Therefore, a group of neigh-boring nodes can take advantage of the meshed networktopology to cooperate in transmission and form a virtual MIMO array. In a transmission duration, transmitter nodesand their antenna set are selected opportunistically to ex-ploit the multiuser diversity and spatial diversity to a large

63

Page 2: Opportunistic and Cooperative Spatial Multiplexing in MIMO Ad Hoc Networks

8/6/2019 Opportunistic and Cooperative Spatial Multiplexing in MIMO Ad Hoc Networks

http://slidepdf.com/reader/full/opportunistic-and-cooperative-spatial-multiplexing-in-mimo-ad-hoc-networks 2/10

degree, while supporting different transmission priorities, re-ducing transmission delay and ensuring fair transmissionsamong nodes. Our scheduling scheme is cross-layer , withthe consideration of physical channel condition and trans-mission power in MAC design. The main contributions of this paper are summarized as follows.

• We formally formulate the multiuser MIMO schedulingproblem using graph approach, and divide it into twosubproblems.

• We form a concrete physical layer model, and provideefficient methodologies to evaluate channel coefficientsand interference, in the presence of a large numberof nodes competing in transmission. This can reducethe gap between physical layer theoretical studies andpractical implementation of the algorithm in networkto improve performance.

• We propose a centralized algorithm to use as perfor-mance benchmark, and a distributed algorithm for prac-tical implementation. Both algorithms take advantageof the multiuser diversity and spatial diversity by op-portunistically selecting the nodes and antennas withgood channel conditions to form virtual transmission

array and maximize the spatial multiplexing gain.• We develop schemes to specifically consider the service

requirements of the user traffic, the transmission delay,and the fairness among nodes.

• We propose a new MAC scheme to better work in aMIMO-based multi-packet reception network, and tosupport our distributed algorithm design.

The rest of the paper is organized as follows. Section 2discusses the related work. We introduce the system archi-tecture in Section 3 and formally formulate the problem inSection 4. We describe our physical model in Section 5, andpropose our centralized and distributed algorithms in Sec-tion 6 and 7 respectively. In Section 8, we present our MACprotocol. Simulation results are given in Section 9 and thepaper is concluded in Section 10.

2. RELATED WORKOver the past several years, the application of MIMO tech-

nology in networks has undergone a fast development.Many studies have been performed to develop scheduling

schemes to select the best user to transmit based on certaincriteria in a multiuser MIMO-based cellular network. In [2],an overview of scheduling algorithms in MIMO-based fourth-generation wireless systems is given, and the relationship of spatial and multiuser diversity is also investigated. Paper [3]addresses the design of the optimal space time scheduler formultiuser MIMO system based on an information theoryapproach. In [4], the authors argue that b oth multiuser andspatial diversity can be exploited with more bits of feedback

information.In recent years, many efforts have been made to support

MIMO transmission in ad hoc networks. In [5], spatial di-versity (e.g. space time coding (STC)) is explored to com-bat fading and achieve robustness. SPACE-MAC, proposedin [6], enables denser spatial reuse patterns with the aidof transmitter and receiver beamforming. Authors in [10]introduce a distributed scheduling (DSMA) scheme withinthe CSMA/CA framework where the stream allocation de-pends on the transmitter-receiver distance. Layered space-time multiuser detection and its role in PHY-MAC cross-layer design are analyzed in [8]. In [13], spatial multiplexing

with antenna subset selection for data packet transmissionis proposed. In [10, 8, 13], a user can only be scheduled totransmit to one receiver node, and the selected user is al-lowed to use all or a subset of its antennas for transmission.In [11], the authors discuss key optimization considerationsfor MAC layer design in ad hoc networks with MIMO links,and develop a centralized algorithm and a distributed algo-rithm. However, there is no description on how to obtain theparameters necessary for stream selection and performanceoptimization, which is very challenging in ad hoc networks.A unified representation of the physical layer capabilitiesof different types of smart antennas, and unified mediumaccess algorithms are presented in [12]. In these literatureworks, spatial diversity and multiuser diversity are not fullyexploited. There is no support of QoS and consideration of the difference in node traffic demand.

3. SYSTEM ARCHITECTUREWe consider an ad hoc network where each node is equipped

with an antenna array. The number of antenna elementsmay vary from node to node. Our MAC design is TDMAbased, in which the time domain is divided into transmission

durations (TD). A TD consists of several time slots and cov-ers one round of control signal exchange and fixed-size dataframe transmission. The data transmission rate within aframe can vary based on the channel condition. For a chan-nel with higher quality, more efficient coding can be usedto encode the symbols at higher rate. Due to the peer-to-peer nature of nodal interaction in ad hoc networks, thetotal transmit power at each node is considered to be fixed,while the transmit power of each antenna is different whena node uses a different number of antennas for transmission.A link between a transmitter-receiver pair is half-duplex, sothat a node can either transmit or receive but not at thesame time. A node can transmit multiple streams to severaldownstream nodes or receive multiple streams from several

upstream nodes simultaneously. Therefore, a virtual  MIMOarray can be formed among a group of nodes. As we fo-cus on spatial multiplexing in this paper, spatial diversity isnot considered for range extension and transmission rangeis assumed to be uniform.

A stream is identified by a triplet (I TX , I RX , I ANT ), whereI TX/I RX/I ANT  are the index of the transmitter node/ re-ceiver node/ transmitter antenna respectively. At a trans-mitter node, independent data streams are transmitted fromselected antenna elements. The total number of transmittedstreams from a node is obviously limited by the total num-ber of antenna elements of the node. Due to the broadcastnature of wireless links, a stream transmitted from a nodei to its one-hop neighbor j is also received by all the otherone-hop neighbor nodes of  i, which causes interference at

these nodes. To differentiate the streams received at a node j, we call the streams targeted for j as data streams, and thestreams not for j as interference streams. Thanks to multi-ple antennas, a node is endowed with multiple packet recep-tion (MPR) capability so that it can receive data streamsand suppress interference streams concurrently. Note thatthe total number of data streams and interference streamsreceived at a node is also constrained by its degree of free-dom (DOF), which is approximately equal to its number of antennas in a rich scattering environment.

As it is hard to maintain a central controller in a prac-tical ad hoc network and a node can not be a transmitter

64

Page 3: Opportunistic and Cooperative Spatial Multiplexing in MIMO Ad Hoc Networks

8/6/2019 Opportunistic and Cooperative Spatial Multiplexing in MIMO Ad Hoc Networks

http://slidepdf.com/reader/full/opportunistic-and-cooperative-spatial-multiplexing-in-mimo-ad-hoc-networks 3/10

and receiver at the same time, our distributed schedulingalgorithm has two phases, namely transmitter nodes selec-

tion  and stream allocation . That is, a set of nodes are firstselected to be transmitter nodes based on their priority andthe current network topology, then the streams with higherpriority and/or better quality are allocated from the selectedset of transmitter nodes.

In the first phase of the scheduling, instead of randomlyselecting a set of transmitter nodes, our scheduling algorithmonly selects active nodes that have packets for transmissions,and the selection is based on the priority of packets whichdepends on both the service type and the delay time of pack-ets. In the second phase of scheduling, stream allocationis performed so that data packets of the transmitter nodesare allocated to a selected set of antennas for transmission.As discussed later in Section 5, multiple antennas at bothends of a link create multiple independent spatial channelswith different channel gains in a rich scattering environment,which makes channel capacity or achievable data rates of thestreams different. To maximize the temporal throughput of the network, it is important to allocate streams opportunis-tically by taking advantage of different channel gains, while

considering the priority of data packets.To capture the characteristics of a stream p, two parame-ters are defined below.

. stream priority P ( p): It depends on the type of thedata to be sent with the stream and the delay timeof the current data packet. A higher value of  P ( p)indicates higher priority of stream p.

. stream quality Q( p): It describes the reliability of a stream transmission, which depends on the trans-mission power of the stream (which will reduce whenmore streams are selected from the same sending node)and the channel condition between the transmitter an-tenna and the receiver node of this stream (which canbe represented by a vector function as discussed later).

4. PROBLEM FORMULATIONIn this section, we use graph representation to formally

formulate the two-phase scheduling problem described inSection 3. We first describe graph construction guideline andconstraints for scheduling, and then formulate the problemformally.

4.1 Graph ConstructionA directed graph G = (V, E ) is used to model the traf-

fic demand of the network. Each node is represented by avertex v ∈ V . A directed edge in the graph denotes a candi-date transmission stream between a sender and a receiver.We name edges corresponding to data streams as data edges,

and edges representing interference streams as interferenceedges. For instance, at the beginning of a transmission du-ration, node i has one packet targeted for node k, so thereis a candidate transmission stream from i to k. A data edgeappears in G with i as the source vertex and k as the destina-tion vertex; meanwhile, if j1, . . . , jn are nodes in the one-hopneighborhood of i, a set of interference edges are formulatedfrom i to j1, . . . , jn.

Edges are scheduled in sets. Each set {e}i consists of onedata edge ei = (is, it) and N i − 1 interference edges {e}i,where is /it are the source/destination vertices of ei and N iis the number of nodes within the transmission range of  is.

The stream parameters defined in Section 3 thus becomethe parameters of edges. The stream priority depends onthe data packet, thus one data edge and its correspondinginterference edge(s) share the same stream priority param-eter. The stream quality of an edge depends on the spatialchannel between the transmit antenna of the stream andthe target receiver node, and is associated with the streamtriplet (I TX , I RX , I ANT ) described in Section 3. As ei and{e}i are associated with different stream triplets, they havedifferent stream quality. The assignment of the triplet to adata stream is decided by the scheduling algorithm, whilethe interference streams are caused by the existence of thedata stream. The achievable data rate of a data stream ei,C (ei) can be calculated based on the stream quality of  eiand all the interfering streams received at node it.

At a certain transmission duration k, all candidate streamsof the network form a graph Gk. The scheduling is per-formed to select a subset of the data streams for transmis-sion. The selected data streams and their resulted interfer-ence streams along with their senders and receivers form asubgraph of  Gk, which is called Gk

opt. Denote the numberof outgoing data edges connected to a vertex i as di(out),

the number of incoming data edges connected to a vertexi as di(in.data), the number of incoming interference edgesconnected to a vertex i as di(in.int), and the number of an-tennas at the node of vertex i as ni. Due to the limitationof decoding capability of nodes and the half-duplex char-acteristic of links, the degrees of nodes are subject to thefollowing constraints.

Degree Constraint (DC)

At a transmission duration k, one and only one of thethree constraints is satisfied for a vertex i in subgraph Gk

opt:(1) 0 < di(out) ≤ ni;(2) di(out) = 0, di(in.data) = 0, and di(in.data) +di(in.int) ≤ (1 + α)ni;

(3) di(out) = 0 and di(in.data) = 0.

If constraint (1) is satisfied, the node is classified as atransmitter node, and the total number of outgoing streamsat a certain time cannot exceed its number of antennas. If constraint (2) is satisfied, a node receives some streams tar-geted for it, so it is an active receiver node. The parame-ter α ≥ 0 is called overload factor, which depends on thedecoding capacity of the receiver node [18], and the con-dition d(in.data) + d(in.int) ≤ (1 + α)n is used to con-strain the total number of incoming streams at a receivernode so that data streams can be decoded while interfer-ence streams can be suppressed. If constraint (3) is satis-fied, the node is an idle node, and is not currently involvedin either transmitting or receiving in the network. A node

is called fully loaded  if  di(out) = ni for a transmitter nodeor di(in.data) + di(in.int) = (1 + α)ni for a receiver node.

4.2 Problem DefinitionIn dynamic networks, a node gets data packets from its up-

per layers from time to time, and it is impossible to have theinformation of all data packets in advance. Moreover, thespatial channels between nodes may vary over time. There-fore, the scheduling can be modeled as an iterative optimumsubgraph selection problem at each transmission duration(TD). The residual graph is updated and left to the next

65

Page 4: Opportunistic and Cooperative Spatial Multiplexing in MIMO Ad Hoc Networks

8/6/2019 Opportunistic and Cooperative Spatial Multiplexing in MIMO Ad Hoc Networks

http://slidepdf.com/reader/full/opportunistic-and-cooperative-spatial-multiplexing-in-mimo-ad-hoc-networks 4/10

TD for processing. We first define the optimum subgraphproblem as follows.

Optimum Subgraph Problem (OSGP)

Select a subgraph Gopt of graph G, with antenna alloca-tion Lopt, such that:(1) Gopt satisfies constraint DC;

(2) Optimum Priority: Denote a residual graph G− =G − Gopt. For any edge ex in G− whose stream priority ishigher than the lowest stream priority of the edges in Gopt,DC cannot be held if  ex is added to Gopt.(3) Optimum Capacity: Denote the set of data edges inGopt as {e}data. The total achievable data rate of Gopt istherefore C (Gopt) =

È  

p∈{e}dataC ( p). There does not exist

another subgraph G(k) with antenna allocation L(k), whichalso satisfies (1) and (2), such that C (G(k)) > C (Gopt).

Basically, OSGP is to find a solution that satisfies all threeconditions. First, the subgraph selected should meet thedegree constraint. Second, the higher priority streams areselected to form the subgraph. Third, the subgraph selectedshould achieve optimum aggregate capacity.

If OSGP can be solved, the multi-user multi-stream schedul-ing can be performed in an iterative way as below.

Multi-User Multi-Stream Scheduling(MUMSS)

Initialization: G0 ← Gfor transmission duration k = 1, 2, . . .

- Update Gk−1 according to new traffic demands andupdated priority/quality, the new graph is Gk;

- OSGP(Gk), get graph Gkopt;

- Send data frames according to Gkopt;

- Gk ← Gk − Gkopt;

end

Our scheme is TDMA based by scheduling transmission ineach transmission time duration. Although promising [14],the application of TDMA in ad-hoc networks leads to theknown NP-complete Broadcast Scheduling Problem (BSP)[15]. Therefore, efficient algorithms to provide suboptimalsolution of the problem need to be developed.

So far, we formulate the problem of scheduling using graphrepresentation. In the next section, we discuss the physicallayer model which is the basis of our MUMSS algorithmdesign.

5. PHYSICAL MODELIn wireless communications, time-varying fading is com-

monly observed due to user mobility or the variation of prop-

agation environments [17]. A fading channel can generallybe expressed as

h = aejφ + b, (1)

where aejφdenotes the LOS component and b denotes thetime-varying component of the fading. When the LOS com-ponent is very weak, the channel can be well modeled byRayleigh fading.

Consider two nodes i and k which are within transmissionrange of each other, the numbers of antenna elements areni and nk respectively. When the separation of antennaelements at each node is large enough, the spatial channels

between node i and k are i.i.d fading channels, which can berepresented as a nk × ni matrix Hki:

Hki =

¼  

 

 

 

  

h11 h12 . . . h1ni

h21 h22 . . . h2ni

......

. . ....

hnk1 hnk2 . . . hnkni

½ 

 

 

 

 

(2)

where hpq is the spatial channel coefficient between the p-thantenna of node k and q-th antenna of node i, and can berepresented as in (1).

Let node i be the transmitter node at a particular timeslot, then the transmitted signal can be represented as avector

s = 

s1 s2 . . . sni¡  T 

(3)

where s1, s2, . . . , sni are symbols transmitted at antenna1, 2, . . . , ni. Note that s1, s2, . . . , sni may have different tar-get receiver nodes.

Consider an active node k with nk antennas within thetransmission range of node i. A receiving node is consideredactive if it is either a target receiver or a passive listening

node of a transmission. Therefore, the faded signal fromnode i received at node k can be represented as:

rki = Hkis =

¼  

 

 

 

  

È   nip=1 h1psp

È   nip=1 h2psp

...È   ni

p=1 hnkpsp

½ 

 

 

 

 

=

¼  

 

 

 

  

È  

p∈Xkih1psp

È  

p∈Xkih2psp

...È  

p∈Xkihnkpsp

½ 

 

 

 

 

+

¼  

 

 

 

  

È  

p/∈Xkih1psp

È  

p/∈Xkih2psp

...È  

p/∈Xkihnkpsp

½ 

 

 

 

 

= rki,sig + rint, (4)

where Xki is the set of antennas at node i that transmitsignals to node k. Due to the broadcast nature of wire-less channels, all signal streams transmitted by node i arereceived at node k. Therefore, node k has to differentiatestreams targeted for itself (data streams) from streams tar-geted for other nodes (interference streams). Denote thesignal to interference and noise ratio of received stream p atnode k as SINRp, the sum data rate that receiver node kgets from transmitter node i is:

Rki =   

p∈Xki

log(1 + SINRp) (5)

Denote the set of transmitting nodes that are within thereceiving range of node k as J k, the total sum rate at receivernode k is therefore the summation over all transmitter nodesin J k:

Rk =   

i∈J k

Rki =   

i∈J k

   

p∈Xki

log(1 + SINRp) (6)

The calculation of  SINRp depends on the decoding capac-ity at the receiver node. According to [17], a way to getoptimum performance for multiple stream decoding is usingMinimum Mean Square Error Sequential Interference Cance-lation (MMSE-SIC) receiver. In this case, the linear MMSE

66

Page 5: Opportunistic and Cooperative Spatial Multiplexing in MIMO Ad Hoc Networks

8/6/2019 Opportunistic and Cooperative Spatial Multiplexing in MIMO Ad Hoc Networks

http://slidepdf.com/reader/full/opportunistic-and-cooperative-spatial-multiplexing-in-mimo-ad-hoc-networks 5/10

receiver for a stream p is represented by the vector:

vp = K −1zp hp (7)

The corresponding SINR achieved is

SINRp = σ2ph∗pK −1zp hp (8)

where hp is the nr × 1 channel vector for stream p to a re-ceiver with nr antennas, K zp is the covariance of  zp, whichis the noise plus interference faced by data stream p: zp =È   N k

l>p hlsl+n, where the set N k contains all the transmissionstreams around the receiver k of stream p. Since a receiverusing SIC decodes the strongest stream first, all the weakerstreams create interference at p. As we consider each nodehas a fixed transmitting power, the transmitting power of a stream only depends on the number of streams allocatedfrom this node. For instance, denote the total transmit-ting power of node i as P i, the number of allocated streamsof node i as nallo

i , then the transmitting power of a singlestream p is P p = P i/nallo

i if the total power is uniformlyallocated to each stream. With power P j associated withdata stream j, we can explicitly calculate K zp as

K zp = N 0I nr +

N k   

j>p

P jhjh∗j (9)

which is invertible. Substitute (9) into (8), the output SINRfor stream p can be calculated as:

SINRp = P ph∗p

  

N 0I N r +

N k   

j>p

P jhjh∗j

  −1

hp (10)

Substitute (10) into (6), we can calculate the data rate foreach receiver node. Therefore, the aggregate data rate of the network is:

R =   

k∈Sr

Rk (11)

where S r is the set of all receiver nodes.Based on the analysis above, stream quality Q( p) intro-

duced in Section 3 can be quantitatively specified here. From(10), it is obvious that the larger the value of hp2 = h∗php

is, the better is the strength of stream p. So a straightfor-ward way to define Q( p) is to simply use the channel vectorand the transmitting power:

Q( p)sim = P p(h∗php) = P php2 (12)

However, in order to achieve better aggregate data rateof the whole network, the strength of interference streamscaused by a data stream should also be taken into consid-eration. Unfortunately, an explicit expression can not b ededuced from equation (10). Here we define a normalizedstream quality to capture the impact of interference streams:

Q( p)nor =P php2

È  

s∈SintP shs2

=hp2

È  

s∈Sinths2

(13)

where S int is the set of interference streams caused by thedata stream p. The definition of stream quality is then usedin the following sections for stream allocation.

6. CENTRALIZED ALGORITHMIn this section, we propose a centralized algorithm to solve

the MUMSS problem where all the stream information is as-sumed to be known at a central controller. The design of the

centralized algorithm can provide a basis for the distributedalgorithm.

CMUMSS: Centralized MUMSS Algorithm

1. InitializationCheck the queue of data packets at every node, and con-struct a graph G0 according to Section 4.1. The graph is

updated in each transmission duration.2. Greedy Scheduling

For a transmission duration k (k = 1, 2, . . .), perform thefollowing steps in sequence based on graph Gk−1.

I. Pre-scheduling UpdateThis step is performed at the beginning of a transmis-sion duration. Each vertex i keeps a list Lprio

i where itsoutgoing data edges (associated with to-be scheduleddata streams) are ordered in decreasing sequence ac-cording to the priority of the corresponding data pack-ets, with the priority calculated based on the servicetype and delay time of a packet. After checking thenew data packets from upper layers for every node,the list for each vertex is updated according to the

priority of the new packets. The new edges from allthe lists are then added to graph Gk−1 and the exist-ing weights of  Gk−1 are updated based on the packetdelay. The updated graph is denoted as Gk. Let theoptimum subgraph Gopt = NULL. Create anothersubgraph called blocked graph Gb, used to save edgesets that cannot be scheduled in the current duration,and set Gb = NULL. Each node is allowed either tobe a transmitter node or a receiver node at this stage.

II. Stream AllocationSelect one edge with the highest priority in Lprio

i fromeach vertex i to form a set {e}h. The j-th element in{e}h is a data edge denoted as eh( j) = (sj, tj), wheresj and tj are the source and destination vertices of 

eh( j) respectively. eh( j) and its corresponding inter-ference edges form a set {eh( j)}. Sort all the elementsin {e}h according to their priority. The set {e}h canthen be reorganized into another set {e}prio, whereeach element in the set consists of edges in {e}h thathave the same priority.

for j = 1 → |{e}prio|

- Denote the j-th element of {e}prio as a set eprio( j),the q-th element in eprio( j) along with its inter-ference edges as {eh(q)};

- Construct a set:S j = {Q(a, B)|eh(q) = (sq, tq), a ∈ Asq , B =tq, ∀eh(q) ∈ eprio( j)}where Asq is the set of unused antennas at sq,

Q(a, B) is the stream quality factor for streambetween antenna a and node B;

- for q = 1 →|eprio( j)|

– Find the largest element in S j , denote it asQmax, and the corresponding transmitter node,receiver node and antenna as smax, tmax andamax respectively;

– If  smax is marked as a receiver node or tmax

is marked as a transmitter node, remove theset {e} where e = (smax, tmax) from Gk andadd it to Gb;

67

Page 6: Opportunistic and Cooperative Spatial Multiplexing in MIMO Ad Hoc Networks

8/6/2019 Opportunistic and Cooperative Spatial Multiplexing in MIMO Ad Hoc Networks

http://slidepdf.com/reader/full/opportunistic-and-cooperative-spatial-multiplexing-in-mimo-ad-hoc-networks 6/10

– Else:Tentatively add {e} to Gopt. Check whetherDC is still satisfied for Gopt.

. If no, remove {e} from Gk and add it toGb;

. Else, mark smax as a transmitter nodeand tmax as a receiver nodes if they are

not currently marked. Assign e to theantenna amax, add {e} along with the al-location information to Gopt, and updateAsmax . Meanwhile, if any vertex associ-ated with {e} becomes fully loaded, deleteall edge sets that may overload it from Gk

and add them to Gb. Delete elements as-sociated with amax from S j.

– Delete Qmax from S j .

- endend

III. End CheckCheck whether there is still any edge set in Gk. If yes,go to (II); else got to (IV).

IV. Post-scheduling updateThe optimum subgraph for this transmission durationis generated. Schedule the transmissions according tograph Gopt. Add the edges in Gb back to Gk, whichwill be used for scheduling in the next transmissionduration.

The centralized algorithm is used as a benchmark to eval-uate the performance of the distributed algorithm to be pre-sented next.

7. DISTRIBUTED ALGORITHM

As introduced in Section 3, the scheduling algorithm actu-ally involves two phases, namely transmitter nodes selectionand stream allocation. Although the two problems can beconsidered together in the centralized algorithm to achievebetter overall performance, in the distributed case withouta central controller, a node always has to decide whetherit is a transmitter node first. Then the candidate outgo-ing streams of the selected transmitter nodes are compared,and the streams with higher priority and/or better qualityare allocated for transmissions. In this section, we describeour algorithms for distributed transmitter nodes selection(DTNS) and distributed stream allocation (DSA) in detail,and DTNS and DSA jointly form the distributed MUMSSsolution (DMUMSS).

7.1 Transmitter Nodes SelectionAs the transmission is half-duplex and a node cannot b e a

transmitter and a receiver at the same time, it is necessaryto select a subset of the nodes to serve as the transmitterin a transmission duration. Instead of randomly selectingthe transmitter nodes, our DTNS supports service differ-entiation and reduces transmission delay by giving highertransmission priority to the packets that are in higher ser-vice class and/or have larger queuing delay.

We consider a node with packets to transmit an activenode. To select a subset of nodes to be transmitter nodesin a neighborhood, we introduce a probability P TX , below

which an active node can be selected as a transmitter node.The parameter P TX is estimated by each node based on thenumber of active nodes around each neighboring node j andthe maximum number of simultaneous flows allowed by j inits neighborhood. That is, a node estimates P TX based onits two-hop information announced through a Hello messageat network layer. In a neighborhood with n nodes, in or-der to not exceed the decoding capacity of any node at datatransmission time, the number of streams that can be simul-taneously transmitted in the neighborhood is constrained.Therefore, we constrain the number of transmitter nodesas well to this value to avoid unnecessary channel measure-ment, reduce processing complexity at a receiver, and betterserve higher priority packets. For each active node i, denotethe number of its neighboring nodes as nn

i , the number of streams that can be decoded at its neighboring node j asN decj , and the number of active nodes around j as na

j , P TX

at node i is calculated as follows:

P TX =nni

minj=1

  

N decj

naj

 

(14)

Note that our selection is more conservative for a node toconsider the decoding capability of all its neighbors insteadof only the selected receiver nodes, whose information is notavailable at the selection time.

An active node will then decide if it can be selected asa transmitter node based on P TX and the priority of itspackets, which depends on the service type and delay timeof the packets. A possible way to integrate both factors intothe priority calculation is to let a packet to have its initialpriority equal to its service priority number, and the priorityof the packet will be increased as its queuing time increases.Assume node i has N pkti packets and the priority of the m-

th packet in queue is ppkti (m), the priority of node i can be

calculated as p(i) =È   N 

pkti

m=1 ppkti (m)/N pkti . Before a nodehas any data transmission, it can attach its initial prioritywith the Hello message sent out. Thereafter, the updatedpriority is attached with each packet it sends out. A nodewith priority 0 is idle.

A node can calculate the average priority, ¯ p, of all the ac-

tive nodes in its neighborhood as ¯ p = (È   na

i=1 p(i))/na. Nodeswith higher priority should be given higher transmission op-portunity. To avoid extra signaling and control overhead,an active node i has to self-decide if it should be selected asa transmitter node by calculating an index number rTXi asfollows:

rTXi =¯ p − p(i)

¯ p+ γ i = P i + γ i (15)

where γ i is a uniformly distributed random number withvalue in the range [0,1], which is generated at a node i ateach transmission duration. The random number γ i is intro-duced to provide some fairness among nodes, while the factorp−p(i)

pis used to give a higher priority node the larger prob-

ability of transmission. If  rTXi < P TX , node i is selectedas a transmitter node in the current transmission duration;otherwise, it has no right of transmission. Therefore, a nodewith higher service level and/or larger load and hence longerdelay has higher chance of being selected as a transmitternode, and our selection algorithm supports QoS and loadbalancing while ensuring certain fairness.

68

Page 7: Opportunistic and Cooperative Spatial Multiplexing in MIMO Ad Hoc Networks

8/6/2019 Opportunistic and Cooperative Spatial Multiplexing in MIMO Ad Hoc Networks

http://slidepdf.com/reader/full/opportunistic-and-cooperative-spatial-multiplexing-in-mimo-ad-hoc-networks 7/10

7.2 Stream AllocationIn distributed scheduling, as there is no centralized con-

trol mechanism, the stream allocation decision can be madeeither at the transmitter nodes or at the receiver nodes, andthere is a tradeoff for taking either of the options. In this sec-tion, we propose a distributed stream allocation algorithm(DSA) which makes decision first at the transmitter nodes,

then at the receiver nodes and finalizes the decision at thetransmitter nodes to concurrently consider the priority andquality of the streams and constrain the number of trans-mission streams to be within the decoding capability of thereceivers. The algorithm is given below.

DSA: Distributed Stream Allocation Algorithm

At the beginning of each transmission duration, take thefollowing steps in sequence.

(1) Step 1: actions at the transmitter nodesAt this step, a transmitter node selects n0

i data packets fromits queue. Denote the number of antennas at a transmitternode i as ni. If the total number of packets in the queue isless than ni, all of them are selected, i.e., n0

i < ni; otherwise,

only the ni packets with the highest priority are selected.The IDs of the target receiver nodes of the selected pack-ets, the value n0

i , and a training signal are then rotationallybroadcasted through each antenna of the transmitter node.

(2) Step 2: actions at the receiver nodesAfter a receiver node k decodes the information sent from allthe selected transmitter nodes in its neighborhood, it learnsthe number of streams it may receive in the current duration,N 0k , including the data streams targeted to itself and theinterference streams targeted to other nodes. Assume thereare nt

k transmitter nodes in the one-hop neighborhood of k,we have:

N 0k =

ntk   

j=1

n0j (16)

At the reply slot, the receiver will broadcast N 0k and themaximum number of streams it can decode N deck along witha training sequence.

(3) Step 3: actions at the transmitter nodesUpon the reception of messages from neighboring receivernodes, a transmitter node estimates the channel coefficientsusing the training sequence inserted in the messages, andmake the final decision for stream allocation based on thereceiving stream information at all its neighboring receivers.Denote the number of receiver nodes within the transmissionrange of a transmitter node i as nr

i . Each receiver k sendsback the total number of streams it may receive, N 0k , andthe maximum number of streams it can decode, N deck . Inorder to ensure all the receiver nodes in its neighborhood tohave high probability of meeting degree constraint, node iconstrain its number of sending streams to a number nallo

i

as follows:

nalloi = n0

i

nrimink=1

  

N deck

N 0k

 

. (17)

Note that the value nalloi may be a fraction number. Instead

of directly calculating nalloi according to equation 17, in our

algorithm, nalloi is estimated based on the probability that

one stream can be allocated, which is:

P alloi =nri

mink=1

  

N deck

N 0k

 

(18)

The stream allocation scheme of a selected transmitter nodeis then as follows.

1. Determine the number of streams that can be allowedfor transmission nallo

i .

Set nalloi = 0;

for j = 1 → n0i

-Generate a uniformly distributed random variable

β j in the range[0,1];

-If  β j ≤ P alloi , nalloi + +;

end

2. Allocate streams to antennas. Since node i can trans-mit up to nallo

i number of streams, it needs to selectnalloi packets among the n0

i packets selected at step(1)and assign them to the nallo

i best antennas. In orderto achieve higher data rate, the selection in this stepis solely based on the stream quality. Denote the setof antennas of node i as {ai}, and the set of targetreceiver nodes selected in step(1) as {Bi}. Therefore,there is a set S i consisting of all the stream qualityfactors:

S i = {(Q(ai( p), Bi(q))|ai( p) ∈ {ai}, Bi(q) ∈ {Bi}}

for i = 1 → nalloi

- Find the largest element in S i, denote it as Qmax,and the corresponding antenna and receiver nodeas {amax,Bmax};

- Allocate the packet for the receiver Bmax to theantenna amax;

- Delete {(Q(amax, Bi(q))|Bi(q) ∈ {Bi}} from S i;if there is no other packet with Bmax as the targetnode, also delete {(Q(ai( p), Bmax)|ai( p) ∈ {ai}}from S i;

end

Note that the data packets that cannot be scheduled inthis transmission duration will be kept in the transmissionqueue and scheduled in the next duration. Due to the in-crease in delay time, the unscheduled packets will have theirpriority increased, and hence have higher chance of beingscheduled.

8. PROTOCOL DESCRIPTION

In order to realize our distributed algorithm, we devise aMAC protocol based on the RTS/CTS mechanism of theIEEE802.11 distributed coordination function (DCF). Asmentioned in Section 3, a transmission duration consistsof four slots, namely RTS, CTS, DATA and ACK, whichhave different slot length. The duration of each slot is fixedand long enough for the corresponding messages to com-plete their tasks. Note that slot synchronization is currentlyachievable in the IEEE802.11 family of protocols [8]. As anode has to decode multiple control signals from nodes inits neighborhood, a multiple-access scheme is required formultiuser detection. Generally, TDMA and CDMA are two

69

Page 8: Opportunistic and Cooperative Spatial Multiplexing in MIMO Ad Hoc Networks

8/6/2019 Opportunistic and Cooperative Spatial Multiplexing in MIMO Ad Hoc Networks

http://slidepdf.com/reader/full/opportunistic-and-cooperative-spatial-multiplexing-in-mimo-ad-hoc-networks 8/10

commonly used schemes. In our design, we combined bothschemes to facilitate multi-user and multi-antenna access.

(1) RTS transmissionIn this phase, nodes which determine themselves to be

the selected transmitter nodes as in Section 7.1 broadcastRTSs to receiver nodes in its one-hop neighborhood at thebeginning of an RTS slot. An RTS contains the ID of node k,

the IDs of node k’s targeted set of receiver nodes as selectedin step (1) in Section 7.2, and a short training sequence.The training sequence is a fixed pseudo-random code withspecific structure for channel estimation at receiver nodes.An RTS is masked by another random code, called ID code,which is assigned to each node according to its node ID.ID Codes for different nodes are almost orthogonal, whichmeans that the cross-correlation of different nodes’ codes isclose to zero. Such code series can be constructed in a similarway as in CDMA systems, e.g. using OVSF code. The codelength is related to the node density of the network. Eachnode keeps a set of random codes, where the size of the setis large enough to cover the maximum number of nodes inits neighborhood. The assignment of codes can be done in asimilar way as [16]. An RTS signal from node i is rotationally

transmitted through node i’s antennas 1 ∼ ni, and there isa short notice signal between two antennas’ transmissions toseparate them.

(2) RTS reception and CTS transmissionIn an RTS slot, a receiver node is in listening mode us-

ing all its antenna elements. Upon the reception of multipleRTSs, a receiver correlates its received signal with each el-ement in its set of random codes to differentiate trainingsequence from different transmitter nodes and estimate spa-tial channels. Then information included in RTSs can b eextracted to be used in receiver action as in step(2) of Sec-tion 7.2. At a CTS slot, a receiver node k broadcasts aCTS signal masked by the ID code of  k, which includes itsID, number of total streams it may receive N 0k , number of 

streams it is able to decode N deck , and a short training se-

quence. To inform the transmitter nodes of full channel con-dition information, a CTS is rotationally transmitted fromnode k’s antennas 1 ∼ nk, as in the case of RTS. There-fore, each independent spatial channel between a transmit-ter/receiver pair can be estimated at transmitter nodes.

(3) CTS reception and DATA transmissionIn a CTS slot, transmitter nodes are in listening mode.

Similar to the case at receivers, a transmitter node has toextract the information included in multiple CTSs. Specifi-cally, as described in Section 7.2, it has to extract N deck andN 0k from all its neighbor receiver nodes to determine thenumber of streams allowed for transmission, and estimatesall spatial channels to construct the set S i of stream quality

factors, which are used to allocate streams to antennas. Af-ter stream allocation is completed, spatial multiplexed datastreams are transmitted through the selected antennas inDATA slot.

(4) DATA reception and ACK transmissionIn a DATA slot, receiver nodes receive streams from the

neighboring transmitter nodes. With channel coefficients es-timated in phase (2), streams are decoded using MMSE-SICas described in Section 5. If a data stream is decoded cor-rectly, the receiver node has to confirm with the transmitternode through ACK broadcast. An ACK thus includes theIDs of the transmitter nodes whose streams have been cor-

rectly received and is also masked by the ID code of thereceiver.

(5) ACK receptionIn an ACK slot, all transmitter nodes are in listening

mode. Using channel coefficients estimated in phase (3), atransmitter node extracts information in ACKs and checkswhether the streams it transmits in this transmission dura-

tion are all received correctly. Correctly received data pack-ets are removed from the queue of the node, and erroneouslyreceived or lost data packets remain in the queue, waitingto be scheduled in the next transmission duration.

Note that random ID codes are only used for differenti-ation in control signal transmission. As control signals arerelatively short and sent at the maximum power, there is nosignificant overhead induced for packet encoding and decod-ing and there is no need for power control.

9. PERFORMANCE EVALUATION

In this section, we evaluate the performance of our pro-posed algorithms through simulations. We consider an ad

hoc network with random topology. Nodes are distributeduniformly over a 1250m × 1250m area. Each node has atransmission range of 250m. A simulation result is obtainedby averaging over several runs of simulations with differentseeds.

The distributed multi-user multi-stream scheduling algo-rithms (DMUMSS) is implemented based on the MAC frame-work described in Section 8 and the algorithms proposed inSection 7. The centralized multi-user multi-stream schedul-ing algorithm (CMUMSS) is also implemented, which servesas a benchmark for performance comparison. To demon-strate the benefit of using many-to-many cooperative trans-mission by fully taking advantage of multiuser diversity ina meshed network and through antenna selection, the per-

formance of our algorithms is compared with correspondingcentralized and distributed schemes of Single-User Multi-Stream Scheduling (SUMSS), which is based on conventionalmultiuser selection. In SUMSS, only one pair of transmit-ter/receiver nodes is allowed to communicate in the neigh-borhood, and both transmitter and receiver nodes use alltheir antenna elements. In each transmission duration, thenode pair with the best channel quality is selected, andtransmitter node selection is also implemented in SUMSSto reduce collision.

The metrics we use for comparison are aggregate datarate, average drop rate and normalized delay. Aggregatedata rate is the total data rates of the network averaged overthe number of transmission durations. Packets are droppeddue to erroneous decoding when the total number of streams

received at a receiver exceeds its decoding capability. Thedrop rate is defined to be the total number of dropped pack-ets divided by the total number of transmitted packets. De-lay time is defined as the number of transmission durationsa packet waits in the queue before it is successfully trans-mitted. The two phases of distributed scheduling, namelyDistributed Transmitter Nodes Selection (DTNS) and Dis-tributed Stream Allocation (DSA), are first studied sepa-rately; then the overall performance of DMUMSS is eval-uated and compared with CMUMSS, centralized SUMSS(CSUMSS) and distributed SUMSS (DSUMSS). If not oth-erwise specified, the number of nodes in the network is 100,

70

Page 9: Opportunistic and Cooperative Spatial Multiplexing in MIMO Ad Hoc Networks

8/6/2019 Opportunistic and Cooperative Spatial Multiplexing in MIMO Ad Hoc Networks

http://slidepdf.com/reader/full/opportunistic-and-cooperative-spatial-multiplexing-in-mimo-ad-hoc-networks 9/10

(a)40 60 80 100 120 140 160 180

150

200

250

300

350

400

Number of Nodes

   D  a   t  a   R  a   t  e   (   b   i   t   /  s   /   H  z   )

 

Selection 1

Selection 2

Selection 3

(b)40 60 80 100 120 140 160 1800

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Number of Nodes

   N  o  r  m  a   l   i  z  e   d   D  e   l  a  y

 

Selection 1

Selection 2

Selection 3

Figure 1: Performance of DTNS: (a) data rate withdifferent types of transmitter nodes selection; (b)normalized delay with different types of transmitternodes selection.

the number of antenna elements at each node is 4, and theoverload factor α defined in Section 4.2 is 0.

(1) Performance of DTNSWe first evaluate the performance of DTNS by varying

the node density. We consider three types of distributed

transmitter nodes selection:Selection 1: Use DTNS as described in 7.1;Selection 2: Use P TX as described in 7.1, but does not

consider node priority in rTX calculation;Selection 3: Use a fixed P TX , which is 0.5 in the simula-

tion, and does not consider node priority in rTX calculation.Aggregate data rate and normalized delay for the three se-

lection schemes are compared in Figure 1. Selection scheme 3is seen to have the lowest aggregate rate and the highestnormalized delay, as it does not consider node density andload condition in node selection. Scheme 2, although out-performs scheme 3, loses to scheme 1 in both aggregate datarate and normalized delay as it can not fully adapt to thetraffic demands of nodes. By considering the active nodedensity and traffic load in a neighborhood to reduce colli-

sion and delay, selection scheme 1 is seen to achieve morethan 60% higher aggregate rate at the highest node densitystudied while reducing the delay up to 90%.

(2) Performance of DSAIn Section 7.2, the number of streams allocated is adap-

tively adjusted according to the traffic condition in the neigh-borhood. To demonstrate its advantage, we implement analternative of DSA where the number of streams allocated isfixed. The number of streams is fixed to different values inthe simulation. The performance of DSA and the alternativescheme is illustrated in Figure 2. It is evident that by ad- justing the number of streams according to traffic condition,

(a)40 60 80 100 120 140 160 1800

50

100

150

200

250

300

350

400

450

500

Number of Nodes

   D  a   t  a   R  a   t  e   (   b   i   t   /  s   /   H  z   )

 

DSA

4 streams

3 streams

2 streams

1 stream

(b)40 60 80 100 120 140 160 1800

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Number of Nodes

   P  a  c   k  e   t   D  r  o  p   R  a   t  e

 

DSA

4 streams

3 streams

2 streams

1 stream

Figure 2: Performance of DSA: (a) data rate withDSA and non-adaptive distributed stream alloca-tion; (b) packet drop rate with DSA and non-adaptive distributed stream allocation.

DSA outperforms its alternative by providing significantlyhigher data rate and lower packet drop rate. As the nodedensity increases, data rate for the alternative scheme re-duces. Moreover, the rate is lower when the fixed stream isset at a larger number as it leads to severe collisions.

(3) Performance of DMUMSSThe overall performance of DMUMSS is evaluated in Fig-ure 3, with CMUMSS, CSUMSS and DSUMSS as references.According to Figure 3 (a), the aggregate rates of DMUMSSand CMUMSS are close, but the rate of DMUMSS is morethan double that of CSUMSS and almost eight times of therate of DSUMSS. This demonstrates that the data rate canbe greatly increased in a meshed network through many-to-many cooperative transmissions by fully exploiting mul-tiuser diversity and spatial diversity. Moreover, as the num-ber of nodes in the network increases, the data rates of bothCMUMSS and DMUMSS increase, while the data rate of CSUMSS saturates at a maximum value and the rate of DSUMSS even decreases, as it cannot fully take advantageof the multiuser diversity to achieve higher rate. Figure 3(b)

illustrates the changing of data rate with varied number of antenna elements. Again, data rate of MUMSS increasesalmost linearly. In comparison, limited by the single userconstraint, the increasing of data rate of SUMSS slows downas the number of antennas grows. In Section 4.1, we havementioned overload factor α, which allows more streamsto be correctly decoded than the number of antenna ele-ments at receiver nodes. The impact of factor α is stud-ied in Figure 3(c). SUMSS can not take advantage of thehigher decoding capability to improve data rate, since onlyinterference-free one-to-one communication is allowed in aneighborhood, and the number of streams transmitted be-

71

Page 10: Opportunistic and Cooperative Spatial Multiplexing in MIMO Ad Hoc Networks

8/6/2019 Opportunistic and Cooperative Spatial Multiplexing in MIMO Ad Hoc Networks

http://slidepdf.com/reader/full/opportunistic-and-cooperative-spatial-multiplexing-in-mimo-ad-hoc-networks 10/10