13
Efficiency and Fairness in Distributed Wireless Networks Through Self-interference Cancellation and Scheduling Boˇ zidar Radunovi´ c, Dinan Gunawardena, Alexandre Proutiere, Nikhil Singh, Vlad Balan, Peter Key Microsoft Research,Cambridge, UK Technical Report MSR-TR-2009-27 Microsoft Research Microsoft Corporation One Microsoft Way Redmond, WA 98052 http://www.research.microsoft.com

E ciency and Fairness in Distributed Wireless Networks ...peterbkey.co.uk/wp-content/uploads/2017/03/MSR-TR-2009-27.pdf · E ciency and Fairness in Distributed Wireless Networks Through

Embed Size (px)

Citation preview

Page 1: E ciency and Fairness in Distributed Wireless Networks ...peterbkey.co.uk/wp-content/uploads/2017/03/MSR-TR-2009-27.pdf · E ciency and Fairness in Distributed Wireless Networks Through

Efficiency and Fairness in Distributed Wireless Networks ThroughSelf-interference Cancellation and Scheduling

Bozidar Radunovic, Dinan Gunawardena, Alexandre Proutiere,Nikhil Singh, Vlad Balan, Peter Key

Microsoft Research,Cambridge, UK

Technical ReportMSR-TR-2009-27

Microsoft ResearchMicrosoft Corporation

One Microsoft WayRedmond, WA 98052

http://www.research.microsoft.com

Page 2: E ciency and Fairness in Distributed Wireless Networks ...peterbkey.co.uk/wp-content/uploads/2017/03/MSR-TR-2009-27.pdf · E ciency and Fairness in Distributed Wireless Networks Through

1. INTRODUCTIONHandling interference is one of the major challenges

in the design of multi-user wireless systems. Tradition-ally, to combat interference, transmissions on interfer-ing links are made orthogonal in the time, frequency orcode domain. Such coordination is relatively simple toenforce in centralized systems, such as 2G-3G cellularnetworks, but becomes notoriously problematic in wire-less networks whose control mechanisms have to be dis-tributed, such as for 802.11 and 802.15-based systemsand related ad-hoc networks, mesh networks, WLANsand WPANs.

Such systems are interference limited, and use car-rier sensing mechanisms (CSMA) and random back-offMAC algorithms (such as the Distributed CoordinationFunction (DCF) of 802.11) to attempt to separate trans-missions on interfering links in time. However, the cur-rent carrier sensing mechanisms are too simple to cap-ture the actual structure of interference in the network.Collisions occur due to hidden terminals, and spatialreuse is degraded due to exposed terminals. Hiddenterminals are nodes whose transmissions interfere, butwhich are not prevented by the carrier sensing mecha-nism from transmitting simultaneously. Exposed termi-nals are nodes that do not interfere, but are unneces-sarily made simultaneously inactive by the carrier sens-ing mechanisms. Various virtual carrier sensing partialsolutions have been proposed, such as the 802.11 useof RTS/CTS, a signaling procedure designed to resolvethe hidden terminal problem. However, the over-headit generates significantly reduces the system through-put, and hence it is rarely deployed in practice. Lack offairness is another deficiency of current sensing mecha-nisms and MAC algorithms: for instance, when a linkhas more interferers than others, it senses the mediumbusy a higher proportion of time than its neighbors, andwhen it finally observes the channel idle, it competeswith more transmitters, experiences more collisions andhence gets a reduced throughput.

In this paper, we propose ContraFlow, a solution to al-leviate the throughput and fairness issues in wireless net-works with distributed control. This solution is based onSelf-Interference Cancellation (SIC), allowing a node totransmit and receive successfully and simultaneously onthe same channel. In-coming and out-going links froma node usually interfere, hence simultaneous transmis-sions and reception at a node requires several orthogo-nal channels. Interference Cancellation (IC) allows bothtransmissions on the same channel: to receive a packetwhile transmitting, the node first decodes the relativelystrong signal it is transmitting, and then uses this infor-mation to decode the received signal. We show using asoftware radio test-bed that this is indeed possible in aWPAN setting (see Section 2 for detail).

ContraFlow exploits this functionality as follows: when

a node, say A, senses the channel idle and when itsback-off counter reaches zero, it starts transmitting apacket to a node, say B. As soon as B is able to decodethe PHY/MAC header of the packet (indicating who istransmitting), it immediately starts transmitting eithera packet or a busy tone, depending on whether or notB has packets to send to one of its neighbors (includ-ing A). In all cases, B transmits while A transmits. Bperforms SIC to decode the packet sent by A. SimilarlyA uses SIC either to know that B sends a busy toneor to decode the packet sent by B. If A does not de-tect any transmission from B, it becomes aware that itstransmission to B is not successful. This scheme hastwo immediate advantages:(i) Eliminating hidden terminals. First, since the re-ceiver B sends a signal while receiving, it prevents anyother interfering node in its neighborhood from startingtransmitting, ensuring that the packet sent by A is re-ceived successfully. This can be seen as a perfect andinstantaneous RTS/CTS procedure. It has the sameadvantages of RTS/CTS and it is much less likely tobe missed. Hence ContraFlow provides an efficient wayof canceling the impact of hidden terminals, see Figure1(a).(ii) Enabling dual links. Second, since B is actuallyalso able to send a packet while receiving, successfultransmissions on two links that would interfere withoutIC are made possible. We refer to such pairs of linksas dual-links, and provide examples of symmetric andasymmetric dual-links in Figure 1(b). With dual-links,we can theoretically double the feasible throughput ofthe network.

Self-interference cancellation could be implementedwithout modifying the scheduling MAC protocols, butthe inherent fairness issues arising in network using CSMAwould then not be solved. To tackle these issues, Con-traFlow implements new scheduling MAC protocols, wherenodes (or links) that are interfered with by more linksthan others get more opportunities than others to starttransmitting when they sense the channel idle. Thisbalances the fact that these nodes sense the channel idleless often than others. With these protocols, a node thatdoes not manage to access the channel tends to decreaseits contention window (increase its channel access rate),and this is necessary if we seek to improve fairness. It isimportant to note that this principle cannot be applied ifthe hidden terminal problem is not solved (with the hid-den terminal problem, the transmissions of two hiddennodes typically collide, and hence these nodes would notaccess the channel successfully and decrease their con-tention window, which in turn further exacerbates theproblem). Hence to ensure fairness, it is crucial to firstaddress hidden terminals, which ContraFlow does.

IC is not a new concept, as it has been used in the70’s for example by Cover to analyze the information-

1

Page 3: E ciency and Fairness in Distributed Wireless Networks ...peterbkey.co.uk/wp-content/uploads/2017/03/MSR-TR-2009-27.pdf · E ciency and Fairness in Distributed Wireless Networks Through

A C

Busy Tone range

A

AB

(b) Enabling dual−links

sender #1

receiver #2

receiver #1

sender #1receiver #1

receiver #2

(a) Blocking hidden terminals

B

B

Figure 1: (a) Handling hidden terminals: Thetransmission from A to the access point is pro-tected from the hidden node B by the busytone/packet sent by the access point while re-ceiving the packet from A. (b) Enabling duallinks: using self-interference cancellation atnodes A and B, we can activate two links si-multaneously, i.e., dual links - (left) a symmetricdual link (A,B,A), (left) an asymmetric dual link(A,B,C).

theoretical capacity of the broadcast channel [1]. IC is amulti-user detection technique allowing a receiver to suc-cessfully decode several signals with different strengths:it sequentially decodes the signals in decreasing order ofstrengths, where the previously decoded signals is usedto detect the next signal. It has always been consideredas one of the most promising multi-user detection tech-niques, but has remained relatively challenging to imple-ment in practice, see [2, 3]. Two major implementationissues are that receiver complexity badly scales with thenumber of signals to decode, and that IC requires preciseestimates of the channels between the transmitters andthe receiver and of other factors impacting the receivedsignal. Our MAC guarantees that there will be at mosttwo received signals at one time. We wish to cancel theinterference of only one signal, one is almost known–since the transmitter and receiver are collocated, whichsimplifies the cancellation problem.

We implement and validate the concepts of ContraFlowin a Wireless Personal Area Network (WPAN) testbedbased on configurable radio hardware (namely Lyrtechsoftware-defined radios). The IC implementation is madein a FPGA, which is easily transferable in ASICs, doesnot require memory access, off-line processing, or stor-ing waveforms. We propose two possible IC schemes, thedigital and the analog IC schemes. The former can beimplemented in real time in our testbed, and managesto reduce self-interference by more than 30 dB when in-terference is generated by a busy tone, and 20 dB whenit corresponds to a packet transmission. The latter hasto be implemented off-line due to the specific architec-

ture of Lyrtech architecture, but performs much betterthe digital IC; it reduces interference by 40 dB or 30 dBin the case of busy tone or packet transmission, respec-tively. Both IC schemes allow ContraFlow to deliver theexpected performance improvements.

Finally we simulate network performance using thechannel measurements from the testbed. As our resultssuggest, ContraFlows first removes most of the hiddenterminal problems and then provides significant gainsboth in terms of system throughput and fairness.

The paper is organized as follows: In the next section,we describe and discuss the two proposed IC schemesand their implementations on Lyrtech radio boards. InSection 3, we present the modifications we made at theMAC layer to handle dual links enabled in ContraFlow.Section 4 is devoted to the new random back-off MACscheduling protocols with improved fairness. We presentnumerical evaluation in Section 5, and the related workin Section 6.

2. SELF-INTERFERENCE CANCELLATIONIN PRACTICE

In this section, we first outline the well-known con-cept of interference cancellation, and explain the tech-nical challenges faced when implementing it. We thendescribe how we built a system using Lyrtech software-defined radio cards, and give empirical results showingthat we can efficiently cancel interference in practice inour WPAN testbed. Our baseline design implements802.11b PHY, although it can easily be extended toother designs.

2.1 From theory to practiceInterference cancellation is simple to explain theoret-

ically: if two received signals r1(t) and r2(t), with re-spective powers P1 and P2, interfere, the receiver couldpotentially decode both, provided that one is strongerthan the other, say P1 > P2. The receiver first estimatesthe signal r1(t) treating the second signal as noise. Agood estimation can be performed if the correspondingSINR = P1/(P2 + N) is large (where N denotes thepower of thermal noise). The receiver then subtractsthe estimated signal r1(t) from the received signal, thusobtaining r2(t) + [r1(t)− r1(t)] +n(t). If the error in es-timating r1(t) is small enough, the receiver successfullycancels the interference of the first signal and hence candecode the second one.

In practice, the received signal r1(t) is a complicatedfunctional of the signal s1(t) sent by the source, result-ing from the perturbations introduced by electronic cir-cuitry, the antennas, and radio fading. This functionalhas a non-linear component E(s1(t), t) arising from theelectronic circuitry that is difficult to estimate. It alsohas a linear component from multi-path propagation.

2

Page 4: E ciency and Fairness in Distributed Wireless Networks ...peterbkey.co.uk/wp-content/uploads/2017/03/MSR-TR-2009-27.pdf · E ciency and Fairness in Distributed Wireless Networks Through

As the result the received signal has the following form:

r1(t) =∑

i pathhi × s1(t− di) + E(s1(t), t),

with s1(t) = κ sin((ω + δω(t))t+ φ(t+ δt))

where φ ∈ {π/4, 3π/4, 5π/4, 7π/4} for QPSK, and wherethe sum over i models multipath fading, and hi and diare the channel gain and delay along the i-th path. Theabove formulas illustrate the challenges in practical im-plementations of interference cancellation. To obtain aprecise estimate r1(t) of r1(t), one needs: (i) to deal withchannel uncertainty using the linear model, i.e., to esti-mate the various multipath gains and delays hi, di, ig-noring E(s, t) for simplicity; (ii) to deal with the carrierphase uncertainty, i.e., to estimate the unknown carriershift δω(t); (iii) to estimate the symbol sent, here rep-resented by the function φ; (iv) to deal with the symboltiming uncertainty, i.e., to estimate the time shift δt.

Carriers are slowly changing sine waves and henceeasy to estimate and correct. Moreover, any carrierphase estimation error is not catastrophic. Howevera symbol time estimation error translates into a mis-placed phase- shift (a complete change in the signal’samplitude). This results in a large impulsive residualnoise. For a similar reason the phase shifts and resul-tant symbol changes also emphasize the reconstructionerrors caused by the channel and the circuit uncertainty.When sending a busy-tone, which is a repeated sequenceof bits (e.g. ’0’ bits) we send a plain, unmodulated car-rier. Noise cancellation is easier since the channel recon-struction error is smaller.

Note that for our special case of self-cancellation, weknow the symbols themselves (the φs) and the symboltiming uncertainty (the δt), since we are both transmit-ting and receiving on the same device.

Interference cancellation schemes perform well in asym-metric scenarios, where one signal is stronger than theother, but where the asymmetry is not too large . In-deed, the residual interference r1(t)−r1(t) typically growswith the received power P1 of the signal. For example,in [3], the interference cancellation implementation candecode successfully two interfering signals when theirpower ratio remains roughly between 3 and 30 dB. Wewish to cancel interference in very asymmetric scenar-ios, since we seek to cancel self-interference. Our task issimplified by the fact that the co-location of transmit-ter and receiver, hence some of the components of r1(t)are either known (e.g. the symbol and its time shift)or easier to estimate (e.g. the path gains and delays,the carrier phase shift). As a consequence, we are ableto design interference cancellation schemes that performwell even in very asymmetric scenarios.

2.2 The Lyrtech platform

To assess the feasibility of self-interference cancella-tion, we use a configurable radio hardware, namely aLyrtech Small-Form Factor Software Defined Radio plat-form [4]. It consists of a radio module with ADC/DACconversion, an FPGA board and a DSP board. Thearchitecture of the platform is illustrated in Figure 2.

FPGADSP/ARM

TX Radio

RX Radio

Digital, clock = 80MHz Analog

DAC

ADC

MAC PHY

30 MHz

4 MHz

Analog IC

Figure 2: The Lyrtech platform

The radio board operates on TV band frequencies. Itcomprises separate transmission and reception circuits,each having its own antenna. The two antennas areapproximately 10 cm apart. The antenna separationweakens the received self-signal to the extent that it doesnot saturate the 14-bit AD converter and can be furtherprocessed and canceled digitally (although this is not anissue in analog IC).

The radio module operates at 20 MHz bandwidth. Ituses a fixed transmission power roughly equal to 0.5mW,which corresponds to the most common WPAN tech-nologies, such as UWB, Zigbee and Bluetooth.

We implemented an 802.11b-compatible physical layerusing a single rate of 1 Mbps. It uses QPSK modulationand CDMA spreading. Both the transmitter and the re-ceiver paths of the physical layer are fully implementedin FPGA. The transmitter path receives a MAC frameof a packet from the DSP, spreads it, modulates it, andtransmits it. The received signal at the output of ADC isa modulated 30 MHz carrier. The receiver path synchro-nizes to the 30 MHz carrier (using a Costas loop, see [5]for details), estimates the symbols and the symbol tim-ing, despreads them, detects the packet preamble anddelivers the decoded packet to the DSP. It also providesthe carrier sensing functionality. The interference can-cellation schemes presented below are also implementedin the FPGA; whereas MAC layer mechanisms are per-formed in the DSP. The latter interfaces with FPGA,and it implements the outline of the dual-link protocolpresented in Section 3.

2.3 Interference cancellation schemesWe now present two self-interference cancellation

schemes, one digital and other analog. We implementthe former in real time in our platform. The Lyrtechboard cannot be modified to provide a real time imple-mentation for the latter scheme, hence we implementedan off-line algorithm to evaluate its performance.

3

Page 5: E ciency and Fairness in Distributed Wireless Networks ...peterbkey.co.uk/wp-content/uploads/2017/03/MSR-TR-2009-27.pdf · E ciency and Fairness in Distributed Wireless Networks Through

2.3.1 Digital cancellationThis interference cancellation scheme is a digital im-

plementation of a scheme described above, i.e., at a givennode (board), we estimate the part of the received signalcorresponding to that sent by the same node r1(t), andsubtracts it from the received signal to be left with thesignal plus noise coming from other nodes. This schemeis illustrated in Figure 3.

Demodulate

Spread

OscillatorX

modulate

Delay X Matched Filter

Select

TX

RX

Despread

– Demodulate

Figure 3: Digital cancellation.

Interference is created locally by the node willing tocancel interference, which simplifies the interference can-cellation scheme and improves its performance as ex-plained below.(i) Channel estimation. We observe that due to proxim-ity of the receiving and transmitting antenna, the im-pact of fading is almost time-invariant, which allows usto estimate this impact off-line. Standard techniques,see e.g. [6], are then sufficient to obtain very accurateestimates of the channel.(ii) Carrier phase uncertainty. We estimate this uncer-tainty using standard Phase-Locked-Loop (PLL) tech-niques (c.f. [5]).(iii)-(iv) Symbol and symbol timing uncertainty. Weeliminate this type of uncertainty. We observe that thedelay between the time when a symbol is transmittedand the time at which the same symbol is received onthe other antenna is fixed. Since we know the transmit-ted symbols and their transmission times at the trans-mitter circuit in the FPGA, we convey this informationto the receiver circuit.(v) Non-linear circuitry effect. This effect is more dif-ficult to estimate (although we observe that it is time-invariant). Hence we ignore it, and treat it as noise,which is the main source of the possible inefficiencies ofthe digital cancellation scheme.

We illustrate the performance of the digital cancel-lation scheme in Figure 4. Blue points are SNR levelsmeasured at different distances between a transmitterand a receiver. The SNRs are given relative to the ther-mal noise and are measured in FPGA. The dashed line isthe level of the self-interference, received over the 10cmlink from the transmit to the receive antenna. The thickred arrows denote the performance of the two IC tech-

niques. In the case of digital IC we eliminate 22dB ofnoise when canceling a packet (the upper arrow) and 32dB of noise when canceling a busy tone (the upper andthe lower arrow). As an illustration, we are able to re-ceive a signal at a distance of 3m with an SNR = 8dBafter the digital IC.

1 10

20

30

40

50

60Self interference

Digital IC

SNR=8dB

Analog IC

SNR=8dB

Link length [m]

SN

R [d

B]

Figure 4: Performance of the cancellationschemes.

2.3.2 Analog cancellationThe main source of noise in the digital cancellation

scheme stems from the possible inefficiencies of the var-ious estimations that have to be performed, dominatedby the non-linear circuitry effect. Also, a strong self-interfering signal can saturate the DAC and no furtherdigital processing would be possible. Finally, differentdigital IC have to be implemented for different PHYs.In the proposed analog cancellation scheme, we cancelthis effect by producing two copies of the transmittedsignal to the receiver: one through the air and the otherthrough a wire, where both passed through the transmit-ter and the receiver circuitry. As a consequence, bothsignals will be exposed to the same transfer functions ofall the circuitry. The only difference between the signalsis caused by signal propagation through the air, how-ever this effect is small, since the antennas are physicallyclose, and can be estimated since the transfer functionis predominately linear and slowly changing.

We cannot modify our boards to implement such ascheme in real time. Instead, we performed the follow-ing experiment. We first transmitted a series of pack-ets through the air from one antenna to the other onthe same board. We the repeated the experiment butsending through a wire (coax). We then compared thereceived signals. Note that there is a clock drift in theradio which varies in time, and hence differs for differenttransmissions. We selected transmissions with similarclock drifts and compared them. The results are pre-sented in Figure 4. The thick red arrow on the right

4

Page 6: E ciency and Fairness in Distributed Wireless Networks ...peterbkey.co.uk/wp-content/uploads/2017/03/MSR-TR-2009-27.pdf · E ciency and Fairness in Distributed Wireless Networks Through

denotes the performance of the Analog IC. We elimi-nate 32dB of noise when canceling a packet (the upperarrow) and 40 dB of noise when canceling a busy tone(the upper and the lower arrow).

2.4 Performance on dual-links: Digital cancel-lation

We now give results from experiments using digitalinterference cancellation scheme and dual links. Bothsymmetric ((A,B,A)) and asymmetric ((A,B,C)) duallink scenarios were used, as depicted in Figure 1, andlabeled ABA and ABC. In Figure 5 (left), we comparethe performances of an isolated link (A,B) when B doesor does not send a busy tone. In the former case, Bimplements the digital cancellation scheme. The perfor-mance metric is the packet success rate, and each pointrepresents the average success rate over 500 packets ofsize 1000 bytes. Here A and B are at distance 1.5 m,but we observed that the performance does not reallyvary as the distance does not exceed more than 2m.In Figure 5 (right), we evaluate the packet success ratesfor dual symmetric (ABA) and asymmetric (ABC) duallinks. Here R1 and R2 referred to received packet suc-cess rates (goodputs) at A and B. The results can becompared to the success rates obtained on the isolatedlinks (A,B) and (B,A or C) presented by the pointson the x-axis and y-axis, respectively. We also illus-trate the performance of dual links obtained when usingperfect time-sharing (scheduling) between links (A,B)and (B,A or C). This performance is illustrated by thediagonal dashed line.

First note that the clustered points lie above the straightline joining the performance when just isolated nodessend. In other words, although we loose more packetswhen using self-interference cancellation, a consequenceof not being able to perfectly cancel interference, thecombined throughput is greater than the optimal pos-sible without interference cancellation (when transmitsand receives are scheduled separately). Note also thatin the asymmetric scenario, link (B,C) has similar per-formance to the same link in isolation (since C does nottransmit any signal).

2.5 DiscussionWe conclude the section with a few remarks.

Towards analog cancellation. Although we have pre-sented both digital and analog self-interference scheme,it should be clear that in future, only analog cancel-lation needs to be considered, for performance reasonsand because it is (conceptually) easier to implement.Our SDR platform did not allow such an implementa-tion in real time, and instead we implemented the digitalcancellation scheme that achieves lower, but yet good,performance as shown in §2.4.Performance issues: By allowing concurrent, full-duplex

w/o IC w. BT0

0.71

0.82

1

R1

0 0.55 0.7 0.87 10

0.55

0.7

0.87

1

R2

R1

A−B−AA−B−C

Figure 5: Average performance of dual links.

transmission, we have increased the number of trans-missions but also the overall noise in the system. Wemeasured benefits for the 802.11b PHY. It remains as afuture work to study what are the limits of the analogIC and its implications for PHY designs.Power and distance scaling: An increase in the trans-mission power will not impact the performance of a sys-tem with self interference cancellation. It will raise boththe level of the received signal and the residual interfer-ence after the IC, but the SNR will remain the same.Consequently, in order to increase the dimensions of anetwork with IC, raising the transmission power will nothelp; one has to further improve the interference cancel-lation techniques instead.

3. HANDLING DUAL LINKSWe now detail the MAC-layer mechanisms involved in

ContraFlow. We first explain how we handle dual-linksusing interference cancellation. Then, we show how in-terference cancellation can be exploited in the designof random back-off MAC algorithms ensuring both effi-ciency and fairness.

3.1 Packet and ACK transmissions on dual-links

We start by describing how ContraFlow initiate andhandle dual-links. In the following we refer to the nodeinitiating a link or a dual link as the primary sender, tothe node receiving the packet sent by the primary senderas a primary receiver, and in the case of dual-links, thenode receiving the packet sent by the primary receiveras the secondary receiver. For example, in the systempresented in Figure 1.b (left), node A is the primarysender and the secondary receiver, and B is the primaryreceiver.

Here is a chronological description of how nodes initi-ate and handle transmissions. Figure 6 illustrates thesebasic mechanisms. Note that each node implements acarrier sensing mechanism (CSMA/CA) as specified inthe 802.11 or 802.15 standards. At the end of a pe-

5

Page 7: E ciency and Fairness in Distributed Wireless Networks ...peterbkey.co.uk/wp-content/uploads/2017/03/MSR-TR-2009-27.pdf · E ciency and Fairness in Distributed Wireless Networks Through

riod where the channel has been busy, a node will startdecrementing its back-off counter after sensing the chan-nel idle for a period of duration DIFS. Then the back-offcounter is decremented in each time slot, should it besensed idle.Primary transmission. Assume that at time 0, node Ahas its back-off counter equal to zero. A then becomesa primary sender, and it starts transmitting to node Ba packet whose header indicates that it is a primarytransmission. While starting the transmission, A alsostarts a primary timer expiring at PT.Secondary transmission. As soon as B is able to decodethe MAC header of the packet sent by A, it becomesthe primary receiver and immediately decides to eithertransmit a busy tone or a packet to a secondary receiver,say C, chosen from a list SA of nodes (note that C maybe different than A). The way nodes create and main-tain these lists is described in §3.2.(i) If at time PT, A could not sense a signal sent by B, itimmediately stops transmitting and declares a primarycollision. A then updates its back-off algorithm param-eter accordingly (see the next section).(ii) Otherwise, A proceeds with the transmission.MAC acknowledgments. Let tA (resp. tB) be the time atwhich the transmission of the packet sent by A (resp. B)ends. The size of the packet sent by B is always chosensuch that its transmission ends before tA + ε, where ε isthe small off-set representing the time difference betweenthe epochs at which A and B start transmitting. We jus-tify this choice below. At time tend = max (tA, tB), Backnowledges the packet sent by A. This ack transmis-sion lasts for ACK1. During the time interval [tB , tend],node B sends a busy tone, while during [tA, tend+ACK1],A also makes the medium busy by sending a busy tone.Node C acknowledges the packet sent by B as soon asit senses the channel idle, i.e., at time tend + ACK1. Justas in 802.11 standards, if a transmitter does not receivethe MAC ack before expiration of a timer, it declaresa collision, and updates the parameters of its back-offalgorithm accordingly. A transmission failure from B toC is referred to as a secondary collision.

We impose that the secondary transmission ends al-most no later than the primary transmission. The ra-tionale for this is that the secondary transmission is notas well protected from hidden terminals as the primarytransmission (because the secondary receiver does notsend a signal while receiving, except in the case of sym-metric dual link, i.e., the primary sender is also thesecondary receiver). The packet sent by the primaryreceiver could be much smaller than the packet it is re-ceiving, e.g., it could be a TCP acknowledgment. Weillustrate this scenario below.

It is important that the primary sender and receivertransmit a busy tone during the first MAC ack and be-fore the end of the primary transmission, respectively, so

DIFS

Node Atime

PT

(b) A primary collision

DIFS

0121 02 34

PT

collision

t end

Node C

B/TONE

(a) Successful dual−link transmissions

2 1 0 time

Node B

DIFS

Node A

ACK1

ACK1

ACK2

ACK1

t=0

ACK2

PACKET RCD FROM B

PACKET TX TO C

PACKET RCD FROM A

PACKET RCD FROM B

PACKET TX TO B

Figure 6: (a) An example of successful transmis-sions on an asymmetric dual-link. (b) A primarycollision experienced by node A.

as to occupy the medium to protect the transmissionsof both MAC acks. Otherwise, the medium could besensed idle for a duration greater than DIFS by otherinterfering nodes that could then start transmitting.

3.2 Selection of the secondary receiverWhen a primary receiver selects a secondary receiver

from its neighbors, it has to account for the fact thatthe primary sender could interfere the reception at thesenodes. The objective for a primary receiver is to do thisselection so as to minimize the secondary collision rate.

There are two causes for secondary collisions: theycan be due either (1) to the interference structure ofthe network, i.e., the primary sender interferes at thesecondary receiver; or (2) to the level of congestion ofthe network, i.e., a node in the neighborhood of the sec-ondary receiver not sensing the activity of the primarysender and receiver, starts transmitting during the sec-ondary transmissions (the hidden terminal problem forthe secondary transmission). Ideally we would like todistinguish these two kinds of events.

To limit secondary collisions, when a primary receiverreceives a packet from a primary sender, sayA, it choosesthe secondary receiver in a weighted list SA, where theweight of each possible secondary receiver, say C, repre-sents the proportion of successfully secondary transmis-sions in the past using dual-link (A,B,C). In practice,

ACK1

ACK1 timeNode A

Node B B TONE

PACKET TX TO B

SIGNAL RX FROM B

PACKET RX FROM A

PCK TX TO C

6

Page 8: E ciency and Fairness in Distributed Wireless Networks ...peterbkey.co.uk/wp-content/uploads/2017/03/MSR-TR-2009-27.pdf · E ciency and Fairness in Distributed Wireless Networks Through

the weight is computed on the basis of the x (=10) pre-vious such transmissions. This weight is used to choosethe secondary receiver as specified in the MAC schedul-ing algorithm, described in the next section (a node witha higher weight is more likely to be selected). In the nu-merical experiments presented later, we observed thatthis simple way of building the weighted lists was suf-ficient to efficiently discover the interference structureof the network. In the case where the network topol-ogy is fixed and where fading is not highly varying, theweighted lists do not evolve in time. In other cases,these lists adapt to the topology and fading changes.We present an example of such list in Figure 7.

A B

C

D

E SA weightA 1.00C 0.00D 0.90E 0.80

Figure 7: An example a weighted list of secondary re-

ceivers at node B.

3.3 Impact of PHY-layer designThe way interference cancellation is implemented in

our platform impacts the structure of a transmitted packet.The latter depends on whether indirect or direct inter-ference cancellation is used.

Indirect cancellation at the primary receiver. In thiscase, we have specific synchronization issues. Whennode B starts receiving a packet from node A, it be-comes a secondary transmitter. It first needs to parsethe header of the packet to find out who the trans-mitter is. The transmission of the PHY preamble andthe MAC header by the primary transmitter takes δ1,roughly equal to 300 µs in our implementation. Thennode B needs to select a node from SA and starts trans-mitting. This is done at the MAC layer which is exe-cuted at the DSP, and once a packet is selected, it hasto be transferred to the FPGA and to the radio board,which takes δ2 ranging from 100 µs to 200µs in our plat-form. Once node B is transmitting, it needs to cancelits own signal. As described in Section 2, it needs tolock on the phase of its signal in order to reconstruct it,which takes δ3 up to 50 µs. To allow node B to performthese operations, the primary sender A sends, after thePHY preamble and MAC header, a busy tone for a du-ration δ4 ≥ δ2 + δ3. Finally, after starting transmitting,node B is no longer synchronized on the signal sent byA and it has to lock on it again (lock on the phase, sym-bol time and orientation) which is why after the busytone, A resends the preamble. All these procedures areillustrated in Figure 8(a). Note that the overhead due

to this synchronization issue is δ4 plus the duration ofthe preamble, i.e., around 450 µs in our implementa-tion. This roughly represents 5% of the entire packettransmission for a 1000 bytes payload at 1Mbps. Alsonote that these synchronization issues do not exist atthe primary sender.

Figure 8: A structure of a packet transmittedon a dual link. The figure depicts a secondarytransmitter receiving a packet, and starting asecondary transmission in the case of indirectcancellation.

Direct cancellation. In this case, there is no synchro-nization issues as discussed in Section 2, and the primarysender can send the packet payload right after the MACheader.

3.4 DiscussionWe conclude this section by two remarks on the MAC-

layer design as presented above.Dual links are always initiated by the primary sender.

As shown above, a dual link (A,B,C) is initiated byA, the primary sender. This may not always be thebest choice, for example if B has no packets to send.However, this is the only possible choice. Indeed if Binitiates the dual link, after it starts transmitting, thechannel is seen busy by node A. Then the latter has nosimple mean of deciding, using carrier sensing, if it cansend to B without causing a collision.

Spectral reuse and exposed terminals. Our MAC-layermechanisms completely eliminate the hidden terminalproblem for the primary transmission. In the case ofsymmetric dual-links, we eliminate the hidden terminalproblem for the secondary transmission. But we alsomitigate the impact of the exposed terminal problem.Consider for example the system of Figure 9. The carriersensing mechanism forbids both links (A,B) and (C,D)from being active simultaneously, hence reducing spa-tial reuse. Now for example, if the dual link (A,B,A) isactivated, two links in the vicinity of node A are activesimultaneously, which brings the spatial reuse aroundnode A at the same level as that we would obtain acti-vating link (C,D) (without the exposed terminal prob-lem).

4. RANDOM MAC ALGORITHMS

7

Page 9: E ciency and Fairness in Distributed Wireless Networks ...peterbkey.co.uk/wp-content/uploads/2017/03/MSR-TR-2009-27.pdf · E ciency and Fairness in Distributed Wireless Networks Through

DCB A

Figure 9: Dual links mitigate the impact of ex-posed terminals.

In this section, we propose several random MACscheduling algorithms suited to exploit the interferencecancellation feature of ContraFlow. We first start by ex-plaining how to adapt the current MAC algorithms (e.g.those of the 802.11 or 802.15 standards) to ContraFlowarchitecture. Then we present new random back-offMAC algorithms that aim at solving the inherent fair-ness issues of protocols that build over CSMA/CA.

4.1 Using DCF with ContraFlowContraFlow could be used without modifying the MAC

protocols of 802.11 standard, i.e., the DCF. The lat-ter specifies how each node attempts to use the chan-nel when it has packet to transmit. More specifically,each primary sender accesses the medium using DCF:(i) when a node whose buffers are initially empty re-ceives a packet to transmit, it will do so after observinga medium idle period of duration DIFS; (ii) when itsbuffers are not empty, after a successful primary trans-mission, it randomly picks a back-off counter uniformlybetween 0 and CWmin − 1, and after a primary colli-sion, it picks a back-off counter uniformly between 0and 2min (7,m+1)CWmin−1, where it chose this counter be-tween 0 and 2mCWmin − 1 for the previous un-successfultransmission.

It remains to specify how the primary receiver selectsa secondary receiver from its weighted list SA where Adenotes the primary sender. We propose a threshold-based selection algorithm. A primary receiver selects thesecondary receiver whose weight is higher that a giventhreshold ST, and whose buffer is the largest (breakingtie uniformly). To give a chance to secondary receiverswhose weights are below the threshold to increase theirweights, every Y transmissions, the primary receiverrandomly selects one of these receivers. That way, theweighted list can adapt to topology changes. The choiceof Y depends on an estimate on how fast the networktopology changes.

When the threshold is relatively low, it is very likelythat the selected secondary receiver is not interfered bythe primary sender. Indeed, assume for example thatST = 0.2. If a node from SA has a weight below thethreshold, it must have experienced more than 4 suc-cessive transmission failures. It means that with highprobability either it is interfered by the primary sender,or it suffers from a hidden terminal effect of another node(note that experiencing 4 direct successive collisions isvery unlikely with DCF in absence of hidden terminals).

4.2 Fair random algorithms for ContraFlow

The lack of fairness observed in 802.11 or 802.15-basedsystem is caused by the carrier sensing mechanisms andto basic principle of the DCF. The problem is classicallyillustrated in a 3-link network, without hidden terminals(see Figure 10).

C

D

E

FB

A

Figure 10: A 3-link network with fairness issues.A dashed line between two nodes mean that theysense each other.

Link 1 (A,B) and 3 (E,F ) do not interfere with eachother, whereas they interfere and interfered with by link2 (C,D). When link 1 (resp. link 3) is active, link 2senses the medium busy and does not attempt to useit, whereas link 3 (resp. link 1) may start transmitting.As a result, link 2 may see the medium busy for a verylong period, corresponding to a succession of transmis-sions on links 1 and 3. Link 2 finally observes an idlemedium when all links are inactive. But now becauselink 2 competes with more links than links 1 and 3, itwill experience a higher collision probability, and hencebecause of the DCF, will have a smaller transmissionprobability than the other links.

As illustrated, fairness problems are caused by the badinteraction of the carrier sensing mechanisms and of theMAC algorithm (DCF). Keeping CSMA, the only way ofensuring fairness is to increase the transmission proba-bility of nodes that do not get access to the channel, anddecreasing that of nodes being served. However for suchprotocols to work well, it is crucial to first eliminate hid-den terminals: if two nodes are hidden from each other,their transmissions would collide and fail, and conse-quently they would increase their transmission proba-bilities which in turn exacerbates the hidden terminalproblem there. Hence, algorithms can be implementedthanks to the fact that ContraFlow eliminates hiddenterminals.

We propose a random access MAC protocols that doesnot involve any message passing and nodes tune their ac-cess probability as a function of the past proportions oftime their own out-going links have been active. It canbe seen as an extension of those proposed in [7] to thedual-link model. Our protocol has two components: theaccess scheme that defines how nodes attempt to use thechannel, and the dual-link component that specifies howdual links are formed. In the following description weassume slotted time in order to simplify the presenta-tion.

For each node n, there is a set of out-going links On.For each of these links, node n maintains a pressureindicator pl, and updates it at the beginning of each

8

Page 10: E ciency and Fairness in Distributed Wireless Networks ...peterbkey.co.uk/wp-content/uploads/2017/03/MSR-TR-2009-27.pdf · E ciency and Fairness in Distributed Wireless Networks Through

slot according to:

pl[t+ 1] = pl[t] + ε× (I(pl[t])−D(pl[t], Sl[t])) , (1)

where Sl[t] represents the service received on link l dur-ing slot t, and where I(·) and D(·, ·) are positive func-tions. ε is a small parameter. I and D are such thatthe value of pl is upper bounded by pmax. Node n runsa back-off algorithm whose contention window at slot tis a random variable uniformly taken from the interval[0, 2CWn[t]−1] where CWn[t] = 1/Pn[t]. Pn[t] is the accessprobability of node n related to the pressure indicatorsof all out-going links from n:

Pn[t] = maxl∈On

pl[t]/Ll[t], (2)

where Ll[t] would be the duration (in slots) of the trans-mission of the packet at the Head-of-Line (HoL) in thebuffer of link l.

Note that Sl[t] is related to the evolution of the trans-mission probabilities Pn, and hence (1)-(2) may be inter-preted as the equations of the stochastic approximationalgorithm. This algorithm is not classic as the updatesdepend on stochastic processes Sl[t] whose evolution aredriven by the parameters themselves. Here we choose:

I(x) =xV

log x, D(x, s) = xs.

V is a parameter (equal to 1 in our experiments). Notethat the algorithm clearly increases (resp. decreases)the transmission probability of links that are not served(resp. that are served), which will improve fairness. Itcan be established [7, 8] that without the dual link fea-ture of ContraFlow, without hidden terminals, and withpackets of fixed and identical sizes, the algorithm tendsto a proportionally fair sharing of the resources [9] whenε is small enough, i.e., it maximizes the sum of the logof the long-term throughput of the various links, whichcan be regarded as a good fairness criterion. The analy-sis of the convergence properties of the algorithm com-bined with ContraFlow is beyond the scope of this pa-per. However, as shown experimentally in the next sec-tion, the algorithm indeed converges and significantlyimproves fairness.

Finally, to choose the second link composing the dual-links, we pick the node maximizing weightC × pm[t].

4.3 Handling collisionsIn the fair MAC protocols we just presented, when

transmitters do not access the channel, their pressureindicator increases, which in turn increase their trans-mission probability. In particular, nodes increase theirtransmission probability upon collisions, which can beproblematic. That is why it is important to carefullychoose the algorithm parameters.

The crucial parameter to control the collision proba-bility is the minimum value of the contention window,

AE

B

C

D

(a) Scenario 1

AB

C

D E

F

(b) scenario 2

AB C D E

(c) Scenario 3

Figure 11: Network scenarios.

or equivalently the maximum value pmax of the pressureindicator of links. Choosing a high value would limitthe collision rate, but at the expense of efficiency. Ide-ally, to get negligible collision rates, we could choosea very large minimum contention window, but to com-pensate the efficiency loss, a very large channel holdingtime too. Here the channel holding time corresponds tothe duration of a packet transmission, and it can notbe arbitrarily increased (unless we can perform packetaggregation).

In the implementation, we have chosen a minimumcontention window equal to 16, which basically impliesthat the collision probability remains always less than1/16. To further reduce the impact of collision, we pro-pose to halve the pressure indicator of a link when itsuffers from a primary collision. We do not see the needof decreasing the pressure indicator in the case of sec-ondary collisions, because as explained earlier, the pri-mary objective of our work is to protect primary trans-missions - secondary transmissions come as a bonus.

5. NUMERICAL RESULTSTo illustrate the performance gains achieved with Con-

traFlow, we present here results obtained through simu-lations. We implemented an event-driven simulator thatcaptures all aspects of the PHY (with digital IC) andMAC layers described in the previous sections and weused it to evaluate different network scenarios. Nextwe explain the simulation setup, and then provide theresults.

5.1 Simulation frameworkNetwork topology. We have chosen to simulate net-

works of limited sizes but that illustrate well the effi-ciency and fairness issues of such distributed systems,and the improvements ContraFlow provide. Some ofthe topologies considered are presented in Figure 11(dashed lines depicts the interference graphs). In addi-tion we have considered the network presented in Figure10 known for its fairness issues.

PHY and MAC layers. We compare the performanceobtained with 3 different systems: (i) first we have sim-

9

Page 11: E ciency and Fairness in Distributed Wireless Networks ...peterbkey.co.uk/wp-content/uploads/2017/03/MSR-TR-2009-27.pdf · E ciency and Fairness in Distributed Wireless Networks Through

Parameter Value

Pmax 132CWmin 16Lmax 25 slotsAck 1 slots

SNR reception 10 dBρmax = Pmax ∗ Lmax 18.75

qmax 18.75SIFS 1 slotDIFS 2 slot

Table 1: Simulation parameters

ulated standard 802.11 protocol (e.g. with CSMA andDCF, without SIC); (ii) then we have complemented theprevious system with SIC; (iii) Finally, we have fully im-plemented ContraFlow, including SIC and the new MACscheduling algorithm.

The simulation parameters are given in Table 1, wherein addition, the bandwidth was 1Mbs and the SNR modeltakes into account the fading model, transmit power andnoise.

Traffic assumptions and performance metrics. Foreach topology, we have generated several traffic scenar-ios. For each scenario, at most one flow in each direc-tion on each link is created. We have randomly gen-erated traffic patterns, except for a few of them delib-erately chosen to illustrate the issues we address withContraFlow. We assume all the sources are infinitelybacklogged (we get similar results for TCP-like trafficbut we omit them due to lack of space). For each topol-ogy, each system, and each traffic scenario, we have re-peated the simulation 20 times. As for the performancemetrics, we compare the total throughput and the util-ity (taking Proportional Fairness as the reference, i.e.,the utility is the sum of the log of flow rates). Note thatfor example a difference of 2 in the utility in a networkwith 4 flows would approximately represents an aver-age throughput gain of 60 % per flow (this gain woulddecrease to 28 % with 8 flows).

5.2 Results

5.2.1 Illustrative traffic scenariosWe now explain the benefits of ContraFlow on the

network of Figure 10, known for its fairness issue (c.f.[10]). To further exacerbate this issue, we artificiallyincrease the packet TX duration to 300 slots (only inthis example), and use UDP traffic. The throughputsobserved on the 3 links are as follows: for simple 802.11systems (10.7− 0.4− 10.7) and with ContraFlow (7.9−2.6 − 7.9). ContraFlow brings fairness at a good level(close to that of Proportional Fairness).

Another illustrative example is Scenario 1 in Figure 11,with flows D → A, A→ B, C → A and A→ E. This isan access point scenarios where all nodes talk to the ac-cess point A in the middle, however some nodes (e.g. C)interfere with more nodes and other nodes (e.g. E) ex-

perience more hidden terminals. The rates of the 4 flowsin the classic 802.11 systems are (0.07−0.08−0.02−0.03)whereas ContraFlow achieves (0.07−0.08−0.04−0.04).It gives higher rates to node C, who competes with threeneighbors, and node E who competes with three hiddenterminals.

5.2.2 Random traffic scenariosWe next evaluate the total throughput (Figure 12)

and proportional fairness (Figure 13) for several randomtraffic metrics on the described topologies. We see thatin many scenarios, ContraFlow has higher total through-put due to full-duplex nature. In some scenarios this isnot the case because of relatively high loss rate with Di-rect IC. We also see that in the large majority of casesthe utility is maximized when CotraFlow is used. ICwith DCF is not sufficient to improve the fairness in thesystem.

6. RELATED WORKThere has recently been an important research effort

to improve the throughput and fairness of CSMA-baseddistributed wireless systems, by proposing solutions atthe PHY, MAC, or even higher layers.

The use of busy tone has been proposed in [11] tocombat hidden terminals, but this requires a second sig-naling channel (which we don’t need here). The use ofdirectional antennas could help improving throughput asshown in [12]; the use of MIMO techniques help as well.It is worth noting that our nodes have two antennas,and that in theory, our proposed scheme outperformsthe capacity of a 2x2 MIMO channel [13], just becausein our case, both nodes use their maximum power, sothe total used power is twice greater than that usedin a 2x2 MIMO system. To improve efficiency, smartMulti-User Detection techniques have been also advo-cated recently, such as those presented in [14,15]. Againin theory, ContraFlow should do as good or better thanthese techniques. Implementing IC in distributed wire-less systems has been recently proposed in [3, 16]; therethe authors suggest that interference from other nodes(not self-interference only) can be cancelled, but then,the design of appropriate MAC scheduling algorithmsfor this kind of systems remains unclear. It should benoted that in the above mentioned related solutions, theimplementation is made on GNU software defined ra-dios, and hence has to be performed off-line, whereaswe have implemented ContraFlow in real time. Alsonote that most of the aforementioned approaches areorthogonal and hence complementary to ours. Finally,the feasibility of analog self-interference cancellation hasbeen shown in [17], where similar interference reductionsas those observed in ContraFlow are obtained.

At the MAC layers, many solutions have been testedto eliminate hidden and exposed terminals, see e.g. [18]

10

Page 12: E ciency and Fairness in Distributed Wireless Networks ...peterbkey.co.uk/wp-content/uploads/2017/03/MSR-TR-2009-27.pdf · E ciency and Fairness in Distributed Wireless Networks Through

0

0.05

0.1

0.15

0.2

Traffic Scenarios

Tot

al th

roug

hput

802.11DCF+ICCF

0

0.05

0.1

0.15

0.2

Traffic Scenarios

Tot

al th

roug

hput

802.11DCF+ICCF

0

0.02

0.04

0.06

0.08

0.1

0.12

Traffic Scenarios

Tot

al th

roug

hput

802.11DCF+ICCF

Figure 12: Total throughput of network topologies 1 (left), 2 (middle) and 3 (right). X axis denotesdifferent traffic matrices and Y axis is the total throughput.

−2

0

2

4

6

Traffic Scenarios

Diff

eren

ce in

util

ity

DCF+ICCF

−4

−2

0

2

4

6

Traffic Scenarios

Diff

eren

ce in

util

ity

DCF+ICCF

−2

0

2

4

6

Traffic Scenarios

Diff

eren

ce in

util

ity

DCF+ICCF

Figure 13: Proportional fariness of network topologies 1 (left), 2 (middle) and 3 (right). X axisdenotes different traffic matrices and Y axis is the absolute improvement in proportional fairness(difference in proportional fairness between DCF+IC and 802.11 and ContraFlow and 802.11, re-spectively).

and references therein. A recent interesting proposal isto alleviate the interference impact by learning the inter-ference map, and taking scheduling decisions accordingto this map. At higher layers, network coding could alsoboost the system throughput, as demonstrated in [19].Again these approaches are complementary to ours.

Fairness issues are well-known in CSMA networks,and they have been modeled analytically, see e.g. [10].Theoretical solutions to these issues have been studied,e.g. in [20], but their practical implementations wouldrequire heavy message passing procedures as in [21],which introduces a significant overhead. It is worth men-tioning the solution proposed in [22], where basically, anode interfered by more links than others would artifi-cially creates collisions and increase the contention win-dows of its neighbors so as to get more opportunities totransmit. The overhead introduced by these collisionscould be potentially important. The MAC schedulingalgorithms presented here and implemented do not havethis problem, and seems to constitute the most promis-ing solution to fairness issues.

7. REFERENCES[1] Thomas M. Cover. Broadcast channels. IEEE

Trans. Info. Theory, pages 2–14, 1972.[2] J.G. Andrews. Interference cancellation for cellular

systems: a contemporary overview. WirelessCommunications, IEEE, 12(2):19–29, April 2005.

[3] D. Halperin, T. Anderson, and D. Wetherall.Taking the sting out of carrier sense: interferencecancellation for wireless lans. In MobiCom ’08:Proceedings of the 14th ACM internationalconference on Mobile computing and networking,pages 339–350, New York, NY, USA, 2008. ACM.

[4] http://www.lyrtech.com/.[5] J. Hamkins (Ed), M. K. Simon (Ed.), and J. H.

Yuen (Series Ed.). Autonomous Software-DefinedRadio Receivers for Deep Space Applications.Wiley, 2006.

[6] http://www.tools4sdr.com/.[7] L. Jiang and J. Walrand. A distributed csma

algorithm for throughput and utility maximizationin wireless networks. In Allerton conf. on controland comm.

[8] J. Liu, Y. Yi, A. Proutiere, M. Chiang, andV. Poor. Convergence and trade-off inutility-optimal csma.(http://research.microsoft.com/pubs/70634/tr-

11

Page 13: E ciency and Fairness in Distributed Wireless Networks ...peterbkey.co.uk/wp-content/uploads/2017/03/MSR-TR-2009-27.pdf · E ciency and Fairness in Distributed Wireless Networks Through

2008-128.pdf).[9] F. Kelly, A. Maulloo, and D. Tan. Rate control in

communication networks: shadow prices,proportional fairness and stability. Journal of theOperational Research Society, 49:237–252, 1998.

[10] M. Garetto, T. Salonidis, and E. Knightly.Modeling per-flow throughput and capturingstarvation in csma multi-hop wireless networks. InIEEE Infocom, 2006.

[11] Z. J. Haas and Jing Deng. Busy tone multipleaccess (dbtma): A multiple access control schemefor ad hoc networks. IEEE Trans. onCommunications, 50, June 2002.

[12] Anand Prabhu Subramanian and Samir R. Das.Addressing deafness and hidden terminal problemin directional antenna based wireless multi-hopnetworks. ACM/Kluwer Wireless Networks(WINET 2008) Journal, Special Issue on bestpapers of COMSWARE 2007, 2008.

[13] E. Teletar. Capacity of multi-antenna gaussianchannels. 10:585–596, 1999.

[14] Shyamnath Gollakota and Dina Katabi. Zigzagdecoding: combating hidden terminals in wirelessnetworks. In ACM Sigcomm, pages 159–170, NewYork, NY, USA, 2008. ACM.

[15] Sachin Katti, Shyamnath Gollakota, and DinaKatabi. Embracing wireless interference: Analognetwork coding. In ACM Sigcomm, 2007.

[16] Daniel Halperin, Thomas Anderson, and DavidWetherall. Interference cancellation: betterreceivers for a new wireless mac. In SixthWorkshop on Hot Topics in Networks,HotNets-VI, November 2007.

[17] Anand Raghavan, Edward Gebara, Emmanouil M.Tentzeris, and Joy Laskar. Analysis and design ofan interference canceller for collocated radios.IEEE Trans. on Microwave Theory andTechniques, 53, Nov. 2005.

[18] Li Bin Jiang and Soung Chang Liew. Improvingthroughput and fairness by reducing exposed andhidden nodes in 802.11 networks. IEEE Trans. onMobile Computing, 7, Jan. 2008.

[19] Sachin Katti, Hariharan Rahul, Wenjun Hu, DinaKatabi, Muriel Medard, and Jon Crowcroft. Xorsin the air: Practical wireless network coding. InACM Sigcomm, 2006.

[20] M. J. Neely, E. Modiano, and C. Li. Fairness andoptimal stochastic control for heterogeneousnetworks. IEEE/ACM Transactions onNetworking, 16:369–409, April 2008.

[21] E. Modiano, D. Shah, and G. Zussman.Maximizing throughput in wireless networks viagossip. In ACM Sigmtrics/Performance, 2006.

[22] Ying Jian and Shigang Chen. Can csma/canetworks be made fair? In ACM Mobicom, 2008.

12