Pokemon guide

Embed Size (px)

Citation preview

  • 7/24/2019 Pokemon guide

    1/17

    Opportunistic Retransmission in WLANsMei-Hsuan Lu, Student Member, IEEE,

    Peter Steenkiste, Fellow, IEEE, and Tsuhan Chen, Fellow, IEEE

    AbstractThis paper presents an efficient opportunistic retransmission protocol (PRO, Protocol for Retransmitting Opportunistically)to improve the performance of IEEE 802.11 WLANs. PROis a link-layer protocol that allows overhearing nodes to function as relaysthat

    retransmit on behalf of a source afterthey learn about a failed transmission. Relays with better connectivity to the destination have a

    higher chance of delivering the packet than the source, thereby resulting in a more efficient use of the channel. PRO has four main

    features. First, channel reciprocity coupled with a runtime calibration process is used to estimate the instantaneous link quality to the

    destination. Second, a local qualification process filters out poor relays early. Third, a distributed relay selection algorithm chooses the

    best set of eligible relays among all qualified relays and prioritizes them. Finally, 802.11e Enhanced Distributed Channel Access

    (EDCA) is leveraged to make sure high-quality relays transmit with higher probability. PRO is designed to coexist with legacy 802.11

    stations. Our extensive evaluation on both a controlled testbed and in the real world shows that PRO can improve throughput in diverse

    wireless environments. PRO helps the most when there is significant contention for the ether, under fading, and with user mobility.

    Index TermsOpportunistic retransmission, wireless LANs, relaying

    1 INTRODUCTION

    WIRELESS local area networks (WLANs) have becomevery popular, but the complex behavior of wirelesssignal propagation, particularly indoors, creates significantchallenges. In this paper, we present an efficient opportu-nistic retransmission protocol (PRO, Protocol for Retrans-mitting Opportunistically) that improves networkperformance in dynamic infrastructure WLANs. The ideais to exploit overhearing nodes to retransmit (or relay) onbehalf of the source after they learn about a failed

    transmission. Opportunistic retransmission leverages thefact that wireless networks inherently use broadcasttransmission and that errors are mostly location dependent[4], [19]. Thus, if the intended recipient does not receive thepacket, other nodes may have received the packet and thusbecome candidate retransmitters for that packet. Withmultiple wireless devices distributed in space, the chancethat at least one available device can transmit the packetincreases. Candidate relays participate if they have a higherchance of delivering the packet successfully than the source,thus results in an increased throughput.

    Opportunistic retransmission involves two key chal-

    lenges. First, it requires an effective measure of link qualityto decide whether a node is suitable to serve as a relay. Thismetric must accurately reflect channel conditions in fastchanging wireless environments. PRO leverages path loss

    information (i.e., Received Signal Strength Indicator (RSSI))obtained via channel reciprocity to estimate instantaneouschannel quality [16]. An online calibration scheme is used todeal with link asymmetry. RSSI values are reported byalmost all wireless cards, making RSSI-based estimation apractical solution.

    The second challenge is to efficiently coordinate theretransmission process given that there may be manycandidate relays. The protocol needs to ensure the best

    relay that overheard the transmission forwards the packetwhile avoiding simultaneous retransmission attempts thatcan lead to duplicates or collisions. This is especially hardwhen relays are hidden from each other. Prior work relieson per-transmission feedback from all the receivers toperform centralized relay selection [7], [19], [13]. Whilefeedback simplifies relay selection, it also adds overhead byadding delay or using more spectrum. PRO reduces thecoordination overhead by using distributed relay selection.Specifically, qualified relays periodically share informationabout the quality of the channel with respect to sources anddestinations. Using this information, relays can then

    (locally) decide whether they should retransmit packetsfor a particular source-destination pair, and if so, what theirpriority is. If multiple eligible relays contend to relay, PROleverages 802.11e EDCA [1] to prioritize retransmissions sorelays with a higher RSSI with respect to the destination aremore likely to retransmit.

    The contributions of this paper are as follows: first, wedesigned a link-layer opportunistic retransmission protocol,PRO, that is simple, lightweight, and allows partialdeployment (i.e., PRO enabled and legacy nodes cancoexist). Second, we performed a statistical analysis thatquantifies the performance of PRO in cases when relays can

    hear each other and when relays are hidden fromthemselves. The analytical results are used to guide theselection of protocol parameters. Third, we implementedPRO in the Madwifi driver for wireless NICs using the

    IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. 11, NO. 12, DECEMBER 2012 1953

    . M.-H. Lu is with Microsoft Corporation, 15851 Northup Way, Bellevue,WA 98008. E-mail: [email protected].

    . P. Steenkiste is with the School of Computer Science, Carnegie MellonUniversity, 5000 Forbes Avenue, Pittsburgh, PA 15213.E-mail: [email protected].

    . T. Chen is with the School of Electrical and Computer Engineering, CornellUniversity, Phillips Hall, Room 224, Ithaca, NY 14853.E-mail: [email protected].

    Manuscript received 14 Feb. 2010; revised 7 Sept. 2011; accepted 23 Sept.2011; published online 20 Oct. 2011.For information on obtaining reprints of this article, please send e-mail to:[email protected], and reference IEEECS Log Number TMC-2010-02-0072.Digital Object Identifier no. 10.1109/TMC.2011.227.

    1536-1233/12/$31.00 2012 IEEE Published by the IEEE CS, CASS, ComSoc, IES, & SPS

  • 7/24/2019 Pokemon guide

    2/17

    Atheros chipset [26], allowing for immediate deployment ofPRO. Fourth, we explored both how opportunistic commu-nication affects fairness, and how it can be combined withtransmit rate adaptation algorithms. These issues areimportant but are often overlooked in prior work. Finally,we evaluated PRO in diverse environments, including acontrolled testbed and two real-world settings. Our resultsshow that PRO boosts throughput, especially in highcontention channels, under channel fading, or with usermobility [24].

    The remainder of this paper is organized as follows:

    Section 2 describes the basic concept of opportunisticretransmission using a simple example. Section 3 provides

    an overview of PRO. Sections 4 and 5 elaborate on relay

    selection, including a performance analysis with respect to

    collision avoidance. Section 6 describes relay retransmis-

    sion and discusses fairness issues. Section 7 introduces

    multirate PRO. Sections 8 and 9 present our evaluation

    results on a controlled testbed and in the real world,

    respectively. Sections 10 and 11 discuss related work and

    summarize the paper.

    2 BASICCONCEPT

    The basic idea of opportunistic retransmission is to haveintermediate nodes that overhear a failed packet toretransmit (or relay) the packet on behalf of the source.Here, we provide some intuition into the potential benefitsof opportunistic retransmission using the three-node net-work in Fig. 1. We denote Pij as the packet delivery rate(PDR) from i to j.

    Let us look for the best strategy to deliver a packet from Sto D, using the expected number of transmissions needed todeliver a packet as the metric. The simplest strategy is tosimply transmit the packet directly from S to D. On average,

    direct communication takes

    T Xdirect 1

    PSD1

    transmissions to deliver a packet. An alternative is to

    exploit opportunistic retransmission. If a packet transmis-

    sion from S to D fails, but the packet is overheard by A, then

    it is more efficient to have A retransmit (or relay) the packet

    rather than S if A has a higher packet delivery rate to D.

    Based on this philosophy, we can calculate the expected

    number of transmissions in the case of opportunistic

    retransmission, assuming no overhead, as

    T Xopport relayX1i1

    iPi; 2

    where Pi is the probability of taking i transmissions todeliver a packet [27].

    In contrast to PRO, which uses relays opportunisticallyfor retransmission in infrastructure (single hop) net-works, mesh networks use multihop routes to reach adestination [2], [32]. Routes are selected a priori, i.e., beforeany communication takes place. In the example of Fig. 1,the sender S can choose between two routes: S can send

    packets directly to D, or S can send packets to A, whichthen forwards them to D. S uses the option that requires thefewest transmissions. On average, this method takes

    T Xmesh network min 1

    PSA

    1

    PAD;

    1

    PSD

    3

    transmissions to deliver a packet.Fig. 2 compares the three schemes for PSA PAD p

    andPSD 0:3. The figure shows that with the participationof an appropriate relay PRO outperforms the meshapproach, which in turn outperforms direct communica-tion. In fact, it can be formally shown that, ignoring

    overheads, opportunistic retransmission statistically alwaysrequires the same number or fewer transmissions thanmesh networking and direct communication [25].

    3 PROTOCOLOVERVIEW

    Fig. 3 presents a high-level overview of PRO. In thebackg rou nd, candidate relay s conti nuo usly monitorthe channel quality with respect to the source(s) and thedestination(s). The channel quality to the destination showshow likely the node will successfully (re)transmit packets tothe destination. The channel quality to the source indicates

    how often the node is likely to overhear packets from thesource, i.e., how often the node will be in a position tofunction as a relay for the source. Each node locally decideswhether it is a qualified relay for a source-destination pairbased on a threshold for the quality of the channel to thedestination. Such qualified relays advertise their linkquality with respect to both the source and the destinationthrough periodic broadcasts.

    By collecting periodic link quality broadcasts, eachqualified relay independently constructs a global map ofthe connectivity between qualified relays, the source, and thedestination. Using this information, each qualified relay then

    decides whether it is aneligible relayfor a source-destinationpair. Only eligible relays are allowed to retransmit after afailed transmission. Clearly, the selection process shouldresult in a set of eligible relays that is large enough so there is

    1954 IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. 11, NO. 12, DECEMBER 2012

    Fig. 1. A three-node network containing source (S), destination (D), anda single relay (A). Pij represents the packet delivery rate from i to j.

    Fig. 2. Analytical comparison results withPSA PAD p andPSD 0:3.

  • 7/24/2019 Pokemon guide

    3/17

    a high likelihood that one of them overhears the source.However, including too many relays can be harmful forseveral reasons. First, using too many relays can increasecontention in the network which may result in morecollisions. Moreover, having poor relays retransmit canprevent or delay retransmission by better relays, thusreducing the success rate for retransmissions.

    After a failed transmission, eligible relays that over-heard the packet then participate in the retransmission ofthe packet as if they were retransmitting a local packet, i.e.,

    they follow the 802.11 random access procedure. Relaysstop the retransmission when they overhear an ACK thatconfirms a successful reception by the destination. To giveprecedence to relays with better connectivity to thedestination, eligible relays choose the size of their initialcontention window based on their priority, i.e., their rankin terms of how effective they are among all eligible relays.Relays with a higher rank are associated with a smallercontention window so that they have a higher chance ofaccessing the channel. We elaborate on each functionalcomponent in Sections 5 and 6.

    4 ESTIMATINGLINKQUALITY

    Link quality information is needed to quantify thesuitability of a node as a relay. We need a measure forlink quality that is both accurate and easy to obtain. Onesolution is to assess link quality by monitoring the successor failure of probe messages [10], [11]. The resulting packetdelivery rate is then used as an estimate of link quality.Probing-based methods do not need hardware support butrespond slowly to channel dynamics. Moreover, probemessages require extra bandwidth, which may undo thegains from opportunistic retransmission. Another solution

    is to use location information with respect to sources anddestinations based on ideas from geographical routing[31]. This requires infrastructure support for distanceestimation (e.g., GPS devices) and a mechanism to

    translate physical distance into link quality, which isdifficult given shadowing and fading effects.

    An alternative is to estimate link quality by monitoringsignal-to-noise ratio (SNR) of packets at the receiver [8].SNR-based solutions are attractive because they can poten-tially adapt quickly to the changing signal environment.SNR is largely determined by the received signal strength(RSS) [22]. This is especially true in indoor environmentswhere multipath effects are mitigated by dynamic equalizerin wireless network cards, which can equalize both

    amplitude and delay dispersion at the same time [22].In practice, RSS can be estimated using the ReceivedSignal Strength Indicator [22], [30], which is reported bymost wireless cards. To understand how RSSI relates toPDR, we use the CMU wireless emulator [21] to collectmeasurements of PDR and RSSI for UDP packets ofdifferent sizes (1,472, 1,024, 512, and 16 bytes). The test

    LU ET AL.: OPPORTUNISTIC RETRANSMISSION IN WLANS 1955

    Fig. 4. Measurement results of PDR and RSSI with transmit rate equal to11 Mbps for different packet sizes.

    Fig. 3. Protocol flowchart of PRO.

  • 7/24/2019 Pokemon guide

    4/17

    nodes are equipped with wireless cards using the AtherosAR5212 chipset and run the MADWIFI 0.9.3 driver [28]. Thepath loss between the transmitter and the receiver ischanged from 90 to 110 dB with a step size of 0.5 dB. Foreach loss value, we collected the average RSSI and PDR for10 experiments of 1,000 packets each. Fig. 4 shows theresults for two transmitter/receiver pairs, out of a total of

    10 pairs. The other eight pairs exhibit similar behavior.We make the following observations based on theseresults:

    1. The PDR as a function of RSSI is somewhat noisy,in particular for 16-byte UDP packets. However,there is generally a strong correlation betweenRSSI and PDR.

    2. There is an RSSI threshold (T hh), above whichpackets are nearly always received.

    3. The PDR-RSSI graphs for different cards have asimilar shape, but are shifted by 2-4 units. Based onchannel reciprocity [16], forward link quality can be

    predicted using reverse link conditions if theamount of the shift is known.

    The above observations do not hold for small packets(

  • 7/24/2019 Pokemon guide

    5/17

    This information is collected through periodic broadcastsfrom all the qualified relays. The link quality to thedestination is predicted using the RSSI of the reversechannel (Section 5.1). The link quality to the source is thepacket reception rate, which is obtained by keeping track ofsequence numbers in packets originated from the source.According to the 802.11 specification, sequence numbers areincremented by 1 for each packet. Thus, packet losses can bedetected from a gap in sequence numbers. A node can

    qualify as a relay for multiple sessions, so the broadcastmessages should contain information for all possiblesource-destination pairs.

    The periodic broadcast frequency is 1 second in ourimplementation. This value is borrowed from the defaultHELLO message interval used in AODV. Relays canfurther reduce the broadcast overhead by adapting thebroadcast frequency based on how fast the channelconditions change. They can also suppress broadcastswhen the chance of becoming an eligible relay is low.When a qualified relay fails the qualification process (thepredicted RSSI falls below T hh or the relay does not hearthe destination for 2 seconds), it stops broadcasting linkquality information for that destination. Other relaysexclude a relay from the relay selection process if they donot hear its broadcasts for 2 seconds. More details on thecost of periodic broadcasts are provided in [24].

    5.2.2 Selecting Eligible Relays

    The relay selection algorithm is based on the followingdesign guidelines:

    . Relays with stronger connectivity to the destinationare favored because they have a higher chance ofsuccessfully transmitting the packet.

    . Relays with stronger connectivity to the source arefavored because they have a higher likelihood ofoverhearing the source, so they offer higher oppor-tunistic gains.

    . The resulting set must be large enough so there isa high probability that at least one eligible relayoverhears the source. At the same time, we wantto limit the set size to minimize any increases incollision rates.

    Algorithm 1 gives the pseudocode for the algorithm. Thealgorithm starts by selecting the node that has the highestRSSI with respect to the destination. It continues to add the

    node with the next highest RSSI (step 6) until the probabilityof having one of the selected relays hears the source (steps 8-9) is larger than a threshold T hr (steps 10-12). Table 2 givesan example of five qualified relays: q0, q1, q2, q3, and q4 of

    which the source packet reception rates are 0.8, 0.7, 0.7, 0.6,and 0.6, respectively. Results in Sections 8 and 9 show thatour relay selection algorithm works well. Note that a highT hr does not infer a large number of eligible relays. Forexample, ifq0 is 0.99, only q0 will be selected as eligible.

    Algorithm 1.RELAYSELECTION(Q)Require:All qualified relays Q

    Ensure:All eligible relays R1: InitializeQ to the set of all qualified relays2: R( ;3: p( 14: RankQ according to the RSSI with respect to the

    destination5: while Qis not empty do6: Pick the current highest rankedq in Q7: Insert qtoRand delete qfrom Q8: Retrieve the source packet reception rate qofq9: p( p 1 q

    10: if 1p T hr then11: break12: end if13: end while14: return R

    5.3 Collision Avoidance

    The use of multiple relays introduces the risk of increasedcollision rates, which can affect the performance of all flowsin the network. This section presents a statistical analysisthat quantifies the tradeoff between the participation ofmultiple relays and the potential of increased collisions.The analytical results are then used as a guideline forselecting optimal protocol parameters. We will considertwo cases: 1) all relays can hear each other and 2) somerelays are hidden from each other (but they can hearsources and destinations).

    5.3.1 No Hidden Relays

    Consider N qualified relays that can hear each other. Forsimplicity, assume these relays have an equal probability ofhearing the source, denoted as , and they contend for thechannel with an independent and identical uniformdistribution X. The probability function fx and thecumulative mass function Fx Px fx are

    fx 1

    CW and Fx

    x 1

    CW ; 4

    where x2 f0; 1; 2; . . . ; CW1g and CW is the contentionwindow size. Let n be the number of eligible relays.According to Algorithm 1, ncan be written as

    n minfij1 1 i T hr; i Ng

    minfdlog11 T hre; Ng:5

    Upon a failed transmission, a subset of the eligible relaysoverhear the packet. Denote the subset size as k k n.

    Among thekrelays, the relayr that has the smallest backoffinterval transmits first. The rest of the relays suppress theirretransmission attempt when they overhear the retransmis-sion from r. Collisions occur when the minimum backoff

    LU ET AL.: OPPORTUNISTIC RETRANSMISSION IN WLANS 1957

    TABLE 2Relay Selection Example withT hr 0:95

    (The Resulting Set of Eligible Relays Is fq0; q1; q2g)

  • 7/24/2019 Pokemon guide

    6/17

    interval is associated with two or more relays so theytransmit at the same time. The collision probability cantherefore be written as

    Prcollisionj k overhearing relays

    1Prsuccessful retxj k overhearing relays

    1 kXCW2x0

    fxXCW1

    yx1fx

    !k1

    1 kXCW2x0

    fx1 Fxk1:

    6

    According to the law of total probability, we can derive thecollision probability as

    Prcollision Xnk2

    Prcollisionjkoverhearing relays

    Prkoverhearing relays

    X

    n

    k2

    1 kX

    CW2

    x0

    fx1 Fxk1 !

    n

    k

    k1 nk:

    7

    Substituting (4) into (7), we then obtain the collisionprobability.

    Fig. 5 shows the collision probability as a function ofT hrwhenNis large. The stair shape is due to the constraint thatthe number of relays must be an integer. The figure showsthat collision probabilities grow as T hr increases. Using alarger contention window reduces the impact of collisions

    but it comes with a cost of increased delay, whichconstitutes to another form of overhead.

    While a large T hr can result in more collisions, it allowsmore eligible relays to participate, increasing the chancethat at least one of the eligible relays here the source:

    Prone or more overhearing relays

    1Prno overhearing relay 1 1 n:8

    Thus, a tradeoff exists between choosing T hr large tomaximize the chance of opportunistic retransmission andchoosing T hr small to minimize the collision probability.

    This tradeoff can be quantified as the probability of asuccessful retransmission. To see that, assume eligiblerelays have perfect connectivity to the destination. Theprobability of a successful retransmission is then

    Prsuccessful retx

    Xnk1

    Prsuccessful retxj k overhearing relays

    Prkoverhearing relays

    Xn

    k1

    1Prcollisionj k overhearing relays 1

    Prkoverhearing relays

    Xnk1

    Prkoverhearing relays

    Xnk1

    Prcollisionj k overhearing relays

    Prkoverhearing relays

    Prone or more overhearing relays Prcollision:

    9

    The optimal T hr, T hoptr is the value for which the

    successful retransmission probability attains its maximum,that is,

    T hoptr argmaxT hr

    Prsuccessful retx: 10

    Fig. 6 shows the successful retransmission probability asa function of T hr. We see that the sensitivity to T hrincreases as the source packet reception rate decreases.T hoptr for CW 32 and CW 16 falls on 0.98 and 0.96,respectively. These results provide a guideline for selectingT hr. In Section 8.1.1, we will show experimental resultswhen T hr 0:9 is used (i.e., other close-by values shouldserve similar purposes). The use of this slightly conserva-tive threshold helps alleviate collisions in real-world

    environments where nodes may incorrectly declare them-selves to be eligible relays due to, e.g., the hidden terminaleffect (see Section 9.1). The experimental results show thatour algorithm is quite effective at mitigating collisions.

    The simplified analysis assumes perfect relay-destina-tion channels, which does not always hold. When the firstretransmission fails and the second retransmission isneeded, more relays may participate in the contentionprocess because relays that missed the initial transmissionbut overheard the first retransmission become eligible totransmit. This phenomenon continues until the packet issuccessfully delivered or discarded after too many trials.

    We do not consider second or later retransmissions in theabove analysis because 1) the use of binary exponentialbackoff should reduce the increase in contention level and2) the relay qualification process only allows good relays

    1958 IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. 11, NO. 12, DECEMBER 2012

    Fig. 5. Collision probabilities as a function of T hr. Fig. 6. Successful retransmission probability.

  • 7/24/2019 Pokemon guide

    7/17

    to participate, reducing the probability of failed retrans-missions. The use of a large initial contention windowcan further reduce collisions but the cost is a smallincrease in delay.

    5.3.2 Hidden Relays

    The relay selection algorithm selects a set of eligible relays

    that hear both the source and the destination, but it does notguarantee that eligible relays can hear each other. Theparticipation of hidden relays can increase the collisionprobability.

    When hidden relays can still communicate using the baserate, they are able to collect periodic broadcasts and performrelay selection correctly. In this case, using a conservativeT hr helps in mitigating collisions. Further, the onlinecalibration process gradually filters out hidden relays byincreasing the qualification threshold after too many failedtransmissions (Note that this process works on a much largertime scale than the core opportunistic retransmission

    process). When two or more relays are completely hiddenfrom each other, they will not hear each others periodicbroadcasts, so they are not aware of each others existence.The distributed relay selection algorithm may select toomany eligible relays. In the worst case, all qualified relayswill be selected as eligible, so (5) becomes

    n N : 11

    Substituting (11) into (7), we obtain the collision probabilitywhen all relays are hidden from each other in Fig. 7. In thisworst case scenario, the impact of collisions can besignificant, even when only a small number of relays

    participate. It is possible to use RTS/CTS to partlyovercome the hidden terminal problem between the relays,although this introduces additional overhead.

    In addition to manipulating protocol parameters andusing online calibration, the hidden relay effect can also beresolved by modifying the periodic broadcasting mechan-ism. For example, destinations can be made responsible forcollecting the broadcast messages and notifying relays ofthe global connectivity map. Because relays and destina-tions are within communication range (otherwise relays areunqualified), this method assures that each relay receivescorrect link quality information. In Section 9, we show that

    PRO deals with hidden terminals more effectively than themesh network-based approach by exploiting multirelaydiversity. Further improvement to resolve the hiddenterminal issue is considered in the future work.

    5.4 Relay Prioritization

    When multiple eligible relays overhear a failed transmis-sion, it is advantageous to have the relay with highest RSSIto the destination retransmit the packet. This can beachieved by having relays coordinate after each failedretransmission to determine who should retransmit thepacket [7], [13]. Explicit coordination has two problems.First, it requires scheduling among relays to decide whosends feedback when, which introduces additional com-plexity. Second, the overhead of distributing feedback forevery failed transmission can be considerable.

    PRO avoids using feedback on a per-retransmission basisand instead leverages the 802.11 protocol to prioritize therelays. The 802.11 standard provides several mechanismsfor achieving this, e.g., by managing the minimal andmaximal contention window size (CWmin and CWmax),backoff increase factor, interframe space, and backoff timedistribution [6]. For example, 802.11e EDCA [1] performsprioritization by manipulating the interframe spacing or/and contention window size. In our implementation,

    effective relays obtain a higher priority by using a smallerCWmin. For example, higher priority relays can use aCWminof 32 and lower priority relays a CWmin of 64, so higherpriority relays have a higher chance of accessing themedium first if both relays overhead the packet. Note thatthe source always participates as an eligible relay after afailed transmission. We discuss the CWmin settings used inour implementation in Section 8.

    While this paper focus on the 802.11 DCF network, it isworth noting that PRO can be easily generalized to an802.11 EDCA network where the source node itself adoptsEDCA in prioritizing different types of traffic. In that case,

    relays select the initial contention window sizes byadditionally considering the access category (AC) of theforwarding packet: high AC packets are associated withsmaller initial contention window sizes while low AC onesare associated with greater sizes.

    5.5 A Note on Incentive to Relay

    Opportunistic retransmission raises the question of whatincentives relays have for retransmitting packets for othernodes [29]. Solutions fall into two classes. Reputation-basedapproaches encourage packet forwarding by quantifyingthe reputation of a node by monitoring whether it forwardspackets appropriately [18]. Once identified, a selfish node

    can then be punished by its neighbors, for example, byhaving its packets dropped probabilistically. Reputationsystems are difficult to implement in an opportunisticcontext because transmission paths are not preconstructed.As a result, it is hard to determine whether an eligible relayattempted to retransmit, since, it may, for example, not haveoverheard the packet or its retransmission attempt mayhave been preempted by another relay.

    Credit-based approaches reward relays to encourageparticipation [29]. Relays earn credits for forwarding apacket, while the source (or destination) that benefits fromthe retransmission gives up credit. Relays can use the credit

    they earn to obtain help with the retransmission of theirown packets. Since credit-based solutions actively rewardparticipation, rather than punish nonparticipation, they area better fit for opportunistic protocols such as PRO. The

    LU ET AL.: OPPORTUNISTIC RETRANSMISSION IN WLANS 1959

    Fig. 7. Collision probability as a function of T hr when all relays arehidden from each other.

  • 7/24/2019 Pokemon guide

    8/17

    actual design of incentive schemes is outside the scope ofthis paper.

    6 RETRANSMISSION

    Relays detect failed transmissions through the lack of anACK. Eligible relays that overheard the packet thencontend to retransmit the packet using the contentionwindow selected during the relay prioritization procedure.The relay overwrites Address 4 in the MAC header with itsown MAC address so that the receivers can identify theoriginator of this packet and ACKs can be sent to thesource correctly. If a relay is eligible for serving multiplesessions, it ignores transmission activities from othersessions when it is already in the process of relaying. If aretransmission fails, relays double the size of contentionwindows and again contend for the channel, similar to theprocess used for local retransmissions. The use of relayingis transparent to legacy 802.11 stations.

    Relays terminate the retransmission process when they

    observe one of the following events:

    . An ACK frame destined for the source is overheard,since it implies successful reception.

    . The retry limit is reached after several unsuccessfulretransmissions.

    . A new data packet (i.e., a packet stamped with ahigher sequence number) originating from the sourceis overheard. This means that either the source hasdiscarded the current packet, or the packet wassuccessfully received but the relay missed the ACK.

    It is likely that the relay overhears a retransmission of the

    packet after hearing an ACK. This means that the packetwas received successfully, but either a relay or the sourcemissed the ACK. In this case, the relay should reacknow-ledge the packet to avoid further retransmissions. Theobvious solution, sending another ACK, does not work: ifmultiple relays detect the spurious retransmission, it willlead to systematic collisions of the ACKs. Instead, the relayssend a null packet,1 i.e., the original data packet with thepayload stripped, as an ACK. Since null packets aretransmitted as data packets (i.e., using backoff), we avoidsystematic collisions. Note that when the unnecessaryretransmission was sent by the source, this approach

    effectively corresponds to the relaying of the ACK.When the channel between the source and the destina-tion is very poor, frequent relaying of ACKs may occur. Inthat case, it may be more efficient to employ a meshnetwork-based approach (i.e., the source sends packets to arelay which forwards them to the destination) as almost allpackets will be relayed anyway. We present experimentalresults for such a scenario in Section 9.1. It is possible todynamically switch between opportunistic relaying andmesh-based forwarding, similar to [2]. For example, when asource observes frequent relaying of ACKs, it can switch tothe mesh networking mode and notify relays by setting a

    flag in the packets. The source can then select the best relay

    to function as the forwarder, for example, based on thechannel state information it obtained from periodic broad-casts. When the forwarder receives a packet from thesource, it generates an ACK and forwards the packet to thedestination. The source can switch back to the opportunisticrelaying mode when it starts overhearing traffic from thedestination. The exact design for supporting dynamicswitching is considered in the future work.

    6.1 Fairness

    The 802.11 exponential backoff procedure offers not onlyshort-term collision avoidance but also long-term fairnessacross multiple stations. However, as multiple relays canretransmit on behalf of a single source, the joint channelaccess behavior is no longer uniform. This results inunfairness across flows with different numbers of relays.

    To see this, considerk eligible relays that overheard a failedtransmission. The backoff interval of the transmission is theminimum among the krelays, which can be written as

    Y minfX1; X2; . . . ; Xkg: 12

    The cumulative mass function ofY,Gy, can be derived as

    Gy PrY y 1PrY > y

    1PrX1 > y; X2 > y; . . . ; Xn > y

    1PrX1 > yPrX2 > y . . . P rXk > y

    1 1 Fyk

    1 1 y 1CW

    k

    :

    13

    Fig. 8 shows the probability distribution of the backoffinterval as a function of the number of eligible relays,assuming each relay uses a uniform backoff distribution inthe range [0, 31]. It clearly shows that source-destinationpairs that use more relays are more likely to gain access tothe channel.

    Fairness is a policy question and different policies arepossible. One policy might be that it is acceptable to givepriority to relayed transmissions, because opportunistic

    retransmission can improve network efficiency. Anotherpolicy is to force equal channel access probabilities acrossall flows. A particular fairness policy can be achieved bytuning the backoff distribution. One example is the use of

    1960 IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. 11, NO. 12, DECEMBER 2012

    1. PRO is disabled for original lost packets that are null packet (i.e., usedin power management, scanning, etc.). This prevents continuously broad-casts of null packets.

    Fig. 8. Probability functions of backoff intervals from multiple relays thatindividually have a uniform backoff distribution (gy).

  • 7/24/2019 Pokemon guide

    9/17

    larger initial contention windows when relaying, as wealready mentioned earlier. The initial contention windowcan also be tuned based on the number of eligible relays.An even more aggressive solution is to have relays use anonuniform distribution Z for selecting slots in thecontention window. This makes it possible to have thejoint behavior of the relays appear as that of a single legacy802.11 node (i.e., a node that uses a uniform distribution forselecting a slot). Denote hz and Hz as the probabilityfunction and probability mass function of Z. Following(13), we can write

    Fz 11Hzk z1

    CW ) Hz 1

    ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi1

    z1

    CW

    k

    r ; 14

    hz Hz Hz1 ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi

    1z1

    CW

    kr

    ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi1

    z

    CW

    kr : 15

    Fig. 9 shows the probability functions of backoff intervalsof individual relays that collectively yield a uniformbackoff distribution in a range of [0, 31]. We have notexplored these more advanced techniques, but we presentan experimental evaluation of how the size of the initialcontention window used by relays affects performance andfairness in Section 8.3.

    Note that the above analysis assumes the use of identicaltransmit rates and fixed contention window sizes (nobinary exponential backoff). In practice, the binary expo-

    nential backoff results in unequal channel access distribu-tion across flows with good and poor channel conditions,which increases unfairness. On the other hand, the 802.11rate adaptation changes the share of transmission time,making flows using poor channels consume disproportio-nately more time. These factors complicate the provisioningof fairness.

    7 MULTIRATEPRO

    802.11 provides multirate capabilities that reduce thepacket error rate by lowering bitrates, i.e., rate adaptation

    trades longer transmit time for higher packet successrates. Opportunistic retransmission adopts a differentphilosophy: the source and relays continue using highertransmit rates and use relaying to improve the success

    retransmission rate. Hence, opportunistic retransmissiontrades more transmissions for shorter transmit time. Thisleads to the following question: upon a failed transmis-sion, should the sender reduce the transmit rate or shouldit use relaying to combat errors?

    Whether rate adaptation or opportunistic retransmissionshould be used depends in part on how well rate adaptation

    performs, e.g., how quickly does the rate adapt to changesin the environment. Current rate adaptation algorithms aredominated by probe-based approaches, i.e., transmit ratesare adapted based on the successful ratio of probemessages. While probe-based approaches are simple andeasy to implement, several studies have shown that theyperform poorly in highly dynamic environments [8], [15],[20]. Thus, recent efforts have explored using SNR-basedmethods to help select the transmission rate [8], [16], [30]. InSections 8, 9.1, and 9.2, we compare PRO with probe-basedSampleRate [3] and SNR-based CHARM [16] rate adapta-tion methods. Our experimental results show that in

    practical 802.11b scenarios PRO outperforms 802.11 withrate adaptation.It is however important to explore how rate adaptation

    and opportunistic relaying can be combined, since bothtechniques have limitations. For example, no rate adapta-tion algorithm can completely eliminate packet losses andrelaying can help reduce the cost of packet errors, sorelaying is likely to be more important in very dynamicchannels. Opportunistic retransmission on the other handcan only be effective when good relays are available, so rateadaptation remains important.

    Integrating rate adaptation and opportunistic retrans-

    mission is however a complex research problem. As a firststep, we combined PRO with the CHARM rate adaptationalgorithm. Our multirate PRO is a minimal integration inthe sense that we purposely minimized the changes to PROand CHARM. In multirate PRO, the source and relays relyon the regular CHARM algorithm to select transmissionrates. CHARM uses a rate selection table that lists theminimum required RSSI threshold for each transmit rate.This table is built offline based on general card character-istics and calibrated online to deal with card differencesand link asymmetry. Senders use channel reciprocity toestimate the received signal strength at the receiver, similar

    to PRO, and then use a table lookup to determine thetransmit rate to use. For simplicity, multirate PROeliminates the threshold calibration component of CHARM.Instead, it avoids errors caused by per-card differences andlink asymmetry by only using three out of the possible 12rates (18, 36, and 54 Mbps). Upon a transmission failure,multirate PRO executes the PRO protocol described in theprevious section.

    Multirate PRO changes the original CHARM and PROprotocols in only two ways. First, we want to avoid thatrelays that use a lower transmit rate than the sourceretransmit the packet. This should generally not happen,

    but this type of rate inversion is possible becauseCHARM updates channel state information more quicklythan PRO. When an eligible relay observes that itstransmission rate is lower than that used by the source, it

    LU ET AL.: OPPORTUNISTIC RETRANSMISSION IN WLANS 1961

    Fig. 9. Probability functions of backoff intervals of individual relays thatcollectively yield a uniform backoff distribution (hz).

  • 7/24/2019 Pokemon guide

    10/17

    disqualifies itself. Second, since relaying makes retransmis-sion more efficient, we make rate selection on the sources

    more aggressive. This is done by having the sources shiftthe rates in their threshold table up one class.

    Multirate PRO works as follows: Sources use the RSSIwith respect to the destination as an index to locate thetransmit rate. Relays constantly overhear traffic as in PROto collect link quality information. Upon a failed transmis-sion, eligible relays that overheard the packet use the RSSIwith respect to the destination as an index to look up thetransmit rate. The selected rate has to be higher than orequal to the rate used in the original packet; otherwise, theretransmission attempt is terminated. The transmit rate ofthe original packet can be retrieved from the packet header.

    Relays retransmit the packet according to the relayprioritization procedure specified in Section 5.4. When norelay is present (i.e., no periodic broadcast is received),sources fall back to CHARM. In Section 9.3, the perfor-mance of multirate PRO in an 802.11g network is presented.The results show that multirate PRO, though not yet fullyoptimized, outperforms both SampleRate and a meshnetwork-based approach.

    The above protocol is clearly just a first step. Not onlywill a full implementation want to use all transmit rates, butsome of the mechanisms can also be further optimized. Forexample, how much more aggressive the source can be inrate selection requires further study. In fact, it may bebeneficial to have rate selection on the source depend on thenumber and quality of relays.

    8 EVALUATIONUSING THE EMULATOR

    We implemented PRO in the Madwifi driver for wirelessNICs based on the Atheros chipset. We uses FlexMAC [26],a flexible software platform for developing and evaluatingCSMA protocols, that offers a number of controls in the hostthat are useful in implementing PRO (e.g., user-definedbackoff mechanisms and flexible retransmission policies).We use the interoperability mode to develop PRO so the

    implementation is 802.11 compatible. This section presentsevaluation results collected on the CMU wireless networkemulator [21], a testbed that supports realistic and fullycontrollable and repeatable wireless experiments. Theemulation-based experiments are useful in studying micro-scopic behavior of the protocol. Real-world experimentalresults are presented in the next section.

    In the following tests, the source constantly sends back-to-back UDP packets to the destination. The UDP packetsare 1,472 bytes long. We run each test for 3 minutes beforewe start collecting the statistics to allow the runtimecalibration process to converge. Each test runs for 1

    minute and we present the median of five tests. Theexperiments in this section use 802.11b (instead of802.11b/g) because of testbed limitations. We present802.11g results in Section 9.3.

    8.1 Static Scenario

    We build a topology in which source-to-destinationdistance is 120 meters. Five relays are uniformly placedbetween the source and the destination (see Fig. 10). Thissetup is useful to understand the fundamental behavior ofPRO for wireless stations with different proximity to theaccess point.

    We first consider the following three scenarios:

    . freespace uses a log distance large-scale path loss

    model with a path loss exponent of 3.. fading_k0adds a Ricean fading envelope with K 0

    to the log distance model. This scenario exhibitssevere fading.

    . fading_k5adds a Ricean fading envelope with K 5to the log distance, so fading is less severe.

    In order to differentiate collisions from errors due tocorruption, we add a monitor node in the network. Themonitor node is manually configured to have perfect linkquality with the other nodes. Thus, packet losses observedby the monitor node must be caused by collisions.

    In the following experiments, sources use a CWmin of

    32 slots for their initial transmissions. Eligible relays selectCWmin based on their priority. The best two relays use aCWmin of 32 slots, the next two use 64 slots, and anyremaining relays use 128 slots. The periodic broadcastinterval is 1 second and the threshold T hr is 0.9.

    8.1.1 Overall Performance

    Let us first consider the two extreme scenarios, freespaceandfading_k0. We measure the throughput for different posi-tions of the destination corresponding to different source-destination distances. Fig. 11 shows the result for PRO and802.11 (no rate adaptation). In both scenarios, PRO

    improves performance for poor channels and it does notharm the performance under good channel conditions.Improvements are higher for fading channels.

    Next, we compare the throughtput of five mechanismsfor all three scenarios:

    1. 802.11 with rate adaption off (none);2. 802.11 with CHARM (CHARM);3. 802.11 with SampleRate (SampleRate);4. a mesh network that forwards packets along the

    highest throughput multihop path using the highesttransmit rate (mesh); and

    5. an ideal (but unrealistic) version of PRO that uses a

    single relay with perfect link quality to both thesource and the destination (PRO optimal).

    The last case corresponds to the optimal performance PROcan achieve.

    1962 IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. 11, NO. 12, DECEMBER 2012

    Fig. 11. UDP throughput over different source-destination distances.

    Fig. 10. Static scenario topology.

  • 7/24/2019 Pokemon guide

    11/17

    Fig. 12 shows the throughput results. In freespace, PROand CHARM perform equally well and they both outper-form SampleRate. However, the difference is not significant.In such a static environment, PRO performs close to optimalas the protocol can converge to the best operating point. In

    fading_k0and fading_k5, PRO outperforms SampleRate andCHARM by 25 and 40 percent, respectively, because theyhave trouble keeping up with the severe fading environ-ment. Thus, senders continue to use a low rate after thechannel improves, and they also suffer packet losses whenthe channel quality drops. This can be seen in Fig. 13, whichshows that the retransmission success rates of CHARM andSampleRate drop significantly in fast fading environments.In PRO, relays also sometimes make imprecise predictionunder small-scale fading. This suggests that the 1-secbroadcast interval for channel updates may be too long insuch environments. However, the multirelay diversity

    makes PRO less sensitive to imprecise channel informationand thus more robust for dynamic channels. The meshnetworking approach relies on a single forwarder, whichleads to poor performance when it experiences deep fading.

    To investigate the impact of concurrent transmissionsfrom relays, we collected collision rates. The number ofcollisions was calculated by subtracting the number oftransmissions from relays from the number of relayedtransmissions captured by the monitor node. Fig. 14 showsthat the collision rates are fairly low for all scenarios(

  • 7/24/2019 Pokemon guide

    12/17

    8.2 Mobile Scenario

    Next, we evaluate the mobile scenario shown in Fig. 18. Itconsists of a source (nodew1), a mobile destination(nodew2), and five relays distributed in the test area. Thedestination navigates a route at a speed of 5 m/s in aclockwise fashion. Because of the mobility, what relaysparticipate in retransmission has to change over time. Thechannel model combines log distance attenuation with apath loss exponent of 3.3 and Ricean fading with K 3.

    The results in Fig. 19 show that PRO outperformsCHARM and SampleRate most of the time. The exceptionis interval 50-58 seconds, when the destination node movesto (50, 0). At this point, it is out of the communication rangeof the source at 11 Mbps, so PRO performs poorly.Nevertheless, PRO outperforms rate adaptation by 50 per-cent on average. Note that the current system is optimizedfor slow-moving nodes (e.g., people walking with handhelddevices). If users move too fast, the protocol will not workwell due to the 1-second periodic broadcast interval. Apossible solution is to use an adaptive policy that adjuststhe beacon interval online based on the variation in channel

    condition.The results presented in this section do not represent an

    exhaustive study of mobile scenarios. One can easily createa scenario in which PRO offers little or no benefit, forexample, when no or only poor relays are present.However, the results in Fig. 19 indicate that in the presenceof good relays, PRO can adapt quickly to a changingtopology; hence, a higher throughput is achievable. Anextension of PRO that supports dynamic switching (Sec-tion 6) and multirate relaying (Section 7) can be moreeffective in dealing with mobile sources, relays, anddestinations.

    8.3 Fairness

    To understand how PRO affects fairness, we conductedexperiments in which PRO and legacy 802.11 stations

    coexist in the network. To isolate the impact of relaying,we do not use rate adaption in the 802.11 stations, unlessotherwise noted. The first scenario includes two source-destination pairs, one using PRO and the other 802.11; the

    distance between source and destination is 130 meters foreach pair. The channel model is log distance with a pathloss exponent of 3 combined with Ricean fading withK 0. We place the two sources close to each other so theydefer as a result of carrier sense. For PRO, five relays areuniformly placed between the source and the destination.To study the impact of the numbers of relays, we add relaysone by one, starting with the one closest to the source.

    Fig. 20a shows the throughput result. Overall, as morerelays participate, PRO sees an increase in throughput butthe throughput of the 802.11 station decreases. Since theincrease observed by PRO is distinctly higher than the

    throughput drop for the 802.11 node, network capacityincreases. As discussed in Section 6.1, this unfairphenomenon is due to the nonuniform channel accessbehavior with multiple relays. The unfairness can bereduced by increasing the contention window size forrelays. For example, we tried a conservative policy by using32 slots for the best relay (instead of the best two relays),64 slots for the next relay (instead of the third and fourthbest relays), and 128 slots for the rest. The 5 conservrelays bar in Fig. 20a shows that this strategy reduces theunfairness, although there is also a drop in aggregatethroughput. If fairness is a major concern, we can further

    increase CWmin or strictly limit the number of relays.Note however that 802.11 is not a fair protocol in terms of

    channel access probabilities as a result of its binaryexponential backoff process: sessions that experience packetlosses will constantly contend for the channel with largercontention windows. To illustrate this, we conducted anexperiment that includes two 802.11 source-destinationpairs, one with perfect channel conditions and anotherwith a poor channel that experiences constant packet loss.We manipulated the source-destination distances such thatthe poor session sees a throughput equal to the 802.11session in the 5-relay case. The rightmost bar in Fig. 20a

    shows that there is extreme unfairness.We next consider a heterogeneous scenario where the

    two flows have different source-destination distances: oneis 100 meters and the other is 50 meters. The distant pair

    1964 IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. 11, NO. 12, DECEMBER 2012

    Fig. 19. Throughput result of the mobile scenario.

    Fig. 18. Mobile scenario test topology.

    Fig. 17. Online calibration result (offset to the default threshold).

  • 7/24/2019 Pokemon guide

    13/17

    uses PRO while the close uses 802.11 over a nearly error-free channel. The rest of the experimental setup remainsthe same. Fig. 20b shows the throughput result. In contrastto the equidistant experiment, network capacity decreaseswith the number of relays: PRO sees an increase inthroughput, but throughput of the 802.11 station decreases.In all cases, the increase observed by PRO is lower than thethroughput drop for the 802.11 pair. PRO increases thesuccessful retransmission ratio of the distant source-destination pair, resulting in a relatively smaller backoffinterval and a better chance to gain channel access.However, the more frequent transmissions from the distantsource-destination pair also reduces efficiency, thereby

    reducing aggregate throughput. In fact, this phenomenonalso exists in 802.11 rate adaptation. To show this, weconfigure the remote pair to run 802.11 with SampleRate.From the result shown in the rightmost bar in Fig. 20b, rateadaptation exhibits the same tradeoff: improving linkquality for poor sessions increases fairness but reducesaggregate network capacity. Note that both the individualand aggregate throughputs are lower with SampleRatethan with PRO.

    The results in this section show PRO can indeed createunfairness relative to legacy 802.11 sessions, but that we cancontrol the degree of unfairness through the selection of the

    CWminwindow used by the relays. Our results also suggestthat the degree of unfairness introduced by PRO is no worsethan what is already present in 802.11 networks.

    The UDP results presented in this section reflect therawperformance of PRO as UDP is a thin transport layerprotocol. It is worth noting that TCP applications shouldalso benefit from PRO for the decreased number ofretransmissions, reduced latency, and in-order delivery [24].

    9 REAL-WORLDEVALUATION

    To investigate how PRO performs in the real world, we

    conducted experiments in two indoor environments: anoffice building with hard partitions and an open studentlounge where people pass through frequently. Theseexperiments automatically account for all effects that are

    naturally present in deployed wireless networks, e.g.,interference, noise, multipath fading, and shadowing. Wefirst present 802.11b results in Sections 9.1 and 9.2 followedby 802.11g results using multirate PRO in Section 9.3.

    9.1 Office Building

    We placed 10 laptops randomly in an office building (seeFig. 21a). The experiments were conducted during the

    night, when changes in the environment are relativelylimited. In the first experiment, the laptops take turns as thesource and send UDP packets to the other nine laptops oneby one, resulting in 90 data points. During each of the runs,nodes other than the source and the destination serve as

    relays. We also conducted the same experiment usingSampleRate and a mesh network setup.

    Fig. 22 compares the throughput cumulative distributionfunctions (CDFs). We can split the curves into threeregions, each covering about one third of the sessions.The high throughput region (>6 Mbps ) contains sessionscovering short distances. Sources can communicate withdestinations successfully at the highest rate so all techni-ques achieve the maximum link capacity. The centerthroughput region (3-6 Mbps) contains source destinationpairs that can communicate directly, albeit not always atthe highest data rate. This region is likely to be representa-tive of a typical infrastructure WLAN. In this case, PROoutperforms SampleRate and the mesh network setup by0.3 and 0.5 Mbps, respectively, for the median pair. Theseresults are consistent with the emulation results that usefading with a large K factor. The low throughput region

    (

  • 7/24/2019 Pokemon guide

    14/17

    network approach, as described in Section 6, would bebeneficial.In the second experiment, we evaluate PRO with

    concurrent flows. Three source-destination pairs are ran-domly chosen every 1 minute and the test lasts 15 minutesresulting in 45 data points. Note that with concurrenttransmissions a relay may serve multiple source-destinationpairs, and destinations may serve as relays for other source-destination pairs. Fig. 23 compares the throughput CDFs forPRO, SampleRate, and a mesh network setup. PROsthroughput is 1.8 Mbps for the median session, whereasmesh and SampleRate achieved 1 Mbps and 98 Kbps,

    respectively. SampleRate performs poorly for two reasons.First, SampleRate sometimes misjudges collisions as errorsin high contention environments, which results in an overlyconservative transmission rate. This problem can be severein the presence of hidden terminals [16]. Second, 802.11provides equal channel access probability across contend-ing stations. When rate adaption is used, poor channels willuse a low transmit rate, using disproportionately more timethan good channels. This can result in an inefficient use ofthe channel. PRO and mesh only use the highest rate sogood sessions are not penalized.

    With concurrent flows, PRO consistently outperforms

    the mesh network as a result of hidden terminals. By having

    senders ping each other and analyzing the ping result, weobserved that sometimes senders are not within commu-nication range of each other. When senders are hidden andtheir receivers are close (or there is a common receiver),collisions degrade the performance of the mesh networksignificantly. PRO alleviates the impact of hidden terminalsin two ways. First, when two sources are hidden from eachother and their transmissions keep colliding at a relay (ortwo nearby relays), other relays that are not involved in thehidden terminal can still successfully transmit the packet.Second, when two relays are hidden from each other andtheir transmissions collide at two nearby destinations, the

    online calibration gradually filters out those hidden relays.When more active sessions are present, fewer idle relays

    are available, since in the current protocol design, nodesonly participate in relaying when no local packet is waitingfor transmission. This results in drop in the performancebenefit of PRO and mesh networking. An extreme case isthat all the nodes are actively transmitting. In that case,rate adaptation is preferred because there are no multihoptransmission opportunities. The multirate PRO describedin Section 7 addresses this issue. It would be interestingto explore policies for relaying when there are pendinglocal packets.

    1966 IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. 11, NO. 12, DECEMBER 2012

    Fig. 23. Throughput CDF of concurrent session scenario in an officebuilding.Fig. 22. Throughput CDF of single session scenario in an office building.

    Fig. 21. Test floor plan.

  • 7/24/2019 Pokemon guide

    15/17

    9.2 Student Lounge

    We also conducted experiments in a student lounge duringthe day time when students come and go frequently, thuscreating a lot of movement in the environment. We againuse 10 laptops randomly placed in the lounge as shown inFig. 21b. Each laptop takes turns as the source and sendsUDP packets to the other nine laptops one by one.

    The results in Fig. 24 shows that for the median session,PRO outperforms SampleRate and mesh by 11 and 22percent, respectively. The reason is that there is a lot ofmovement, resulting in significant small-scale fading that isa challenge for rate adaptation algorithms. As mentionedearlier, PRO does not need very accurate prediction of linkquality, making it more robust in the presence of significantfading. Note that this result is consistent with the resultsobtained on the emulator testbed using fading with a smallKfactor. PRO also outperforms the mesh network setup forthe vast majority of the flows because this environment hasfew out-of-range node pairs.

    9.3 802.11g with Multirate PRO

    We now present evaluation results for 802.11g nodes usingthe multirate PRO algorithm described in Section 7. Ourimplementation is built upon FlexMACs flexible mode,which allows the use of 802.11g transmit rates with802.11b interframe spacings [26]. This is equivalent to an802.11g station operating in the mixed 802.11b/g mode. Weconducted experiments in the same real-world environ-ments with the same setup as the 802.11b scenarios

    presented earlier in this section. Figs. 25, 26, and 27 showthe results for the single session and concurrent sessionscenarios in the office building and in the student lounge,respectively. Similar to the 802.11b results, multirate PRO,

    though not fully optimized, outperforms SampleRate andthe mesh network-based approach in both high contentionand high fading environments, when few out-of-rangenode pairs are present.

    10 RELATEDWORK

    The concept of opportunistic communication has beenapplied in many contexts. Opportunistic retransmissionexploits packet reception outcomes that are random andunpredictable, similar to techniques such as opportunisticrouting or opportunistic relaying. There are howeversignificant differences:

    Opportunistic routing in multihop wireless networks [5],[9], [25] improves the performance of static predeterminedroutes by determining the route as the packet movesthrough the network based on which nodes receive eachtransmission. The actual forwarding is done by the nodeclosest to the destination. While opportunistic retransmis-sion and opportunistic routing bear some similarity (i.e.,exploiting multiple paths between the source and thedestination), they are very different approaches. First,opportunistic retransmission applies to infrastructure net-works so it is more generally applicable. Second, opportu-nistic routing requires a separate mechanism to propagate

    LU ET AL.: OPPORTUNISTIC RETRANSMISSION IN WLANS 1967

    Fig. 25. Throughput CDF of single session scenario in an office building(802.11g).

    Fig. 27. Throughput CDF of single session scenario in a student lounge(802.11g).

    Fig. 26. Throughput CDF of concurrent session scenario in an officebuilding (802.11g).

    Fig. 24. Throughput CDF of single session scenario in a student lounge.

  • 7/24/2019 Pokemon guide

    16/17

    route information. Moreover, opportunistic routing isforced to use broadcast transmissions in order to enablereceptions at multiple routers since it operates in thenetwork layer. This constraint raises two issues. First,broadcasts messages are transmitted using basic link rates,which are generally overly conservative. Second, it is notpossible to use rate adaptation. In contrast, opportunisticretransmission is a link layer technique, so it automaticallyavoids these drawbacks. Finally, opportunistic retransmis-sion does not affect (or may even decrease) packet latencyand packet delivery order, while opportunistic routingoften increases latency and generates out-of-order deliv-eries in order to amortize scheduling and routing over-heads, which is a problem for interactive applications andTCP transmission.

    Another type of opportunistic routing protocol usesnetwork coding, which lets the routers encode informationin received packets before transmission by inserting acoding layer between the IP and MAC layers [12], [17], [14],[23]. The design is based on two key principles. First, thebroadcast nature of the wireless channel is embraced so theabove comparison for opportunistic routing and opportu-nistic retransmission also applies. Second, network codingis integrated to improve efficiency. This technique can beemployed in combination with opportunistic retransmis-sion to acquire additional gains.

    The notion of opportunistic repeating for 802.11 WLANsis proposed in [2]. The idea is to have wireless linksdynamically switch between direct transmission and two-hop mesh forwarding. The motivation is replacing linksthat use low transmit rates, and are thus inefficient, by twohops that use high transmit rates. While both PRO and

    opportunistic repeating rely on intermediate nodes toforward packets, they differ in several facets. First, PROexplicitly considers fairness and provides a mean forcontrolling the degree of unfairness it introduces. Second,opportunistic repeating does not exploit per-packet oppor-tunistic receptions at the destination and relays, butswitches between two modes, similar to the switchingalgorithm described in Section 6. Finally, PRO usesmultiple relays.

    Recently, opportunistic relaying has been proposed as apractical scheme for cooperative diversity, in view of thefact that practical space-time codes for cooperative relay

    channels are still an open and challenging area of research[7], [31]. It relies on a set of cooperating relays that arewilling to forward received information toward thedestination. The challenge is to develop a protocol thatselects the most appropriate relay to forward informationtoward the receiver. The scheme can use either digitalrelaying (decode and forward) or analog relaying (amplifyand forward).

    Opportunistic retransmission only uses relays that canfully decode the packets. From a functional perspective,opportunistic retransmission can be categorized as a light-weight, decode-and-forward opportunistic relaying me-

    chanism. It however differs from opportunistic relaying intwo aspects. First, in PRO, the destination does not combinethe signals from the source and the relay, but tries to decodethe information using either the direct signal or the relayed

    signal (in case that the direct signal is not decodable). This

    sacrifices some achievable rates but avoids the cost of

    additional receive hardware, so it is easy to deploy. Second,

    existing opportunistic relaying protocols require a RTS/

    CTS handshake to assess instantaneous channel conditions

    and/or to exchange the feedback of relay selection results

    [7], [32]. The use of RTS/CTS introduces extra overhead and

    delay. PRO avoids these overheads by leveraging channelreciprocity for link quality estimation.

    11 CONCLUSION

    Opportunistic retransmission offers an effective means to

    improve throughput in wireless networks by exploiting

    relays to retransmit on behalf of the source upon failed

    transmissions. In this paper, we presented an efficient

    opportunistic retransmission protocol for IEEE 802.11

    WLANs. Our protocol allows coexistence with legacy

    802.11 stations. We offered an analytical analysis that

    quantifies the performance of PRO in terms of collisionavoidance and fairness provisioning. We have implemented

    PRO in the Madwifi driver for Atheros cards and conducted

    extensive experiments on both a controlled testbed and in

    the real world. Our results show that PRO improves

    throughput in many wireless environments. PROs benefits

    are most pronounced when there is significant contention

    for the channel, under fading, and with user mobility.

    REFERENCES[1] IEEE 802.11 Wireless Medium Access Control (MAC) and Physical

    Layer (PHY) Specification: Medium Access Control (MAC) Quality ofService (QoS) Enhancements,1999.

    [2] P. Bahl, R. Chandra, P. Lee, V. Misra, J. Padhye, D. Rubenstein,and Y. Yu, Opportunistic Use of Client Repeaters to ImprovePerformance of WLANs,Proc. ACM CoNEXT Conf., Dec. 2008.

    [3] J.C. Bicket, Bit-Rate Selection in Wireless Networks, mastersthesis, Massachusetts Inst. of Technology, 2005.

    [4] S. Biswas and R. Morris, Opportunistic Routing in Multi-HopWireless Networks, Proc. Workshop Hot Topics in Networks(HotNets II), Nov. 2003.

    [5] S. Biswas and R. Morris, ExOR: Opportunistic Multi-HopRouting for Wireless Network,Proc. ACM SIGCOMM,Sept. 2005.

    [6] A. Bletsas, A. Khisti, D. Reed, and A. Lippman, A QoS-EnabledMAC Architecture for Prioritized Service in IEEE 802.11 Wlans,Proc. IEEE GlobeCom, Dec. 2003.

    [7] A. Bletsas, A. Khisti, D. Reed, and A. Lippman, A Simple

    Cooperative Diversity Method Based on Network Path Selection,IEEE J. Selected Areas of Comm., vol. 24, no. 3, pp. 659-672, Mar. 2006.[8] J. Camp and E. Knightly, Modulation Rate Adaptation in Urban

    and Vehicular Environments: Cross-Layer Implementation andExperimental Evaluation,Proc. ACM MobiCom, Sept. 2008.

    [9] S. Chachulski, M. Jennings, S. Katti, and D. Katabi, TradingStructure for Randomness in Wireless Opportunistic Routing,Proc. ACM SIGCOMM, Aug. 2007.

    [10] D.D. Couto, D. Aguayo, J. Bicket, and R. Morris, A High-Throughput Path Metric for Multi-Hop Wireless Routing, Proc.

    ACM MobiCom, Sept. 2003.[11] R. Draves, J. Padhye, and B. Zill, Routing in Multi-Radio, Multi-

    Hop Wireless Mesh Networks, Proc. ACM MobiCom, Sept. 2004.[12] E. Rozner, Y. Mehta, L. Qiu, A.P. Iyer, and M. Jafry, ER: Efficient

    Retransmission Scheme for Wireless LANs, Proc. ACM CoNEXTConf.,Dec. 2007.

    [13] C. Lo et al., Opportunistic Relay Selection with LimitedFeedback,Proc. IEEE Vehicular Technology Conf., Sept. 2007.[14] F.-C. Ku et al., XOR Rescue: Exploiting Network Coding in Lossy

    Wireless Networks,Proc. Sixth Ann. IEEE Comm. Soc. Conf. Sensor,Mesh, and Ad Hoc Comm. and Networks (SECON), June 2009.

    1968 IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. 11, NO. 12, DECEMBER 2012

  • 7/24/2019 Pokemon guide

    17/17

    [15] G. Holland et al., A Rate Adaptive MAC Protocol for Multi-HopWireless Networks,Proc. ACM MobiCom, Sept. 2001.

    [16] G. Judd et al., Efficient Channel-Aware Rate Adaptation inDynamic Environment, Proc. Sixth Intl Conf. Mobile Systems,

    Applications, and Services (MobiSys), June 2008.[17] S. Katti et al., XORs in the Air: Practical Wireless Network

    Coding, Proc. ACM SIGCOMM, Oct. 2006.[18] Q. He, D. Wu, and P. Khosla, SORI: A Secure and Objective

    Reputation-Based Incentive Scheme for Ad-Hoc Networks, Proc.IEEE Wireless Comm. and Networking Conf. (WCNC 04), Mar. 2004.

    [19] S. Jain and S.R. Das, Exploiting Path Diversity in the Link Layerin Wireless Ad Hoc Networks,Proc. Sixth IEEE Intl Symp. Worldof Wireless Mobile and Multimedia Networks (WoWMoM), June 2005.

    [20] A. Jardosh, K. Ramachandran, K. Almeroth, and E. Belding-Royer,Understanding Congestion in IEEE 802.11b Wireless Networks,Proc. ACM SIGCOMM Conf. Internet Measurement (IMC),Oct. 2005.

    [21] G. Judd and P. Steenkiste, Using Emulation to Understand andImprove Wireless Networks and Applications, Proc. Conf. Symp.Networked Systems Design and Implementation (NSDI 05),May 2005.

    [22] G. Judd and P. Steenkiste, Characterizing 802.11 Wireless LinkBehavior, Wireless Networks J., vol. 16, pp. 167-182, Jan. 2010.

    [23] P. Larsoon and N. Johansson, Multi-User ARQ, Proc. IEEEVehicular Technology Conf. (VTC), June 2006.

    [24] M. Lu, Optimizing Transmission for Wireless Video Streaming,PhD dissertation, Carnegie Mellon Univ., Aug. 2009.

    [25] M. Lu, P. Steenkiste, and T. Chen, Video Transmission Over

    Wireless Multihop Networks Using Opportunistic Routing,Proc.Packet Video Workshop, Nov. 2007.

    [26] M. Lu, P. Steenkiste, and T. Chen, Using Commodity HardwarePlatform to Develop and Evaluate CSMA Protocols, Proc. Third

    ACM Intl Workshop Wireless Network Testbeds, ExperimentalEvaluation and Characterization (WiNTECH), Sept. 2008.

    [27] M.-H. Lu, P. Steenkiste, and T. Chen, Design and Implementationof an Efficient Opportunistic Retransmission Protocol,Proc. ACM

    MobiCom,Sept. 2009.[28] Multiband Atheros Driver for WiFi (MADWIFI), http://madwifi-

    project.org, 2012.[29] F. Wu, T. Chen, S. Zhong, L.E. Li, and Y.R. Yang, Incentive-

    Compatible Opportunistic Routing for Wireless Networks, Proc.ACM MobiCom, Sept. 2008.

    [30] J. Zhang, K. Tan, J. Zhao, H. Wu, and Y. Zhang, A Practical SNR-Guided Rate Adaptation,Proc. IEEE INFOCOM, Apr. 2008.

    [31] B. Zhao and M. Valenti, Practical Relay Networks: A General-ization of Hybrid-Arq, IEEE J. Selected Areas of Comm., vol. 23,no. 1, pp. 7-18, Jan. 2005.

    [32] H. Zhu and G. Cao, rDCF: A Relay-Enabled Medium AccessControl Protocol for Wireless Ad Hoc Networks, IEEE Trans.

    Mobile Computing, vol. 5, no. 9, pp. 1201-1214, Sept. 2006.

    Mei-Hsuan Lureceived the MS degree in 2008and the PhD degree in electrical and computerengineering from Carnegie Mellon University in2009. Her research interests span video stream-ing, wireless networking, and mobile computing.From 1999 to 2003, she was a senior softwareengineer developing broadband communicationand information appliance products at ASUSTeKComputer, Inc., Taiwan. In 2004, she served asa technical consultant in the broadband commu-

    nication division at ASUS. She is now with Microsoft Corporation,Redmond, Washington. She is a student member of the IEEE.

    Peter Steenkiste received the engineeringdegree from the University of Gent, Belgium,and the MS and PhD degrees in electricalengineering from Stanford University. He is aprofessor of computer science and of electricaland computer engineering at Carnegie MellonUniversity. His research interests are in theareas of networking and distributed systems. Hehas done research in high performance network-ing and distributed computing, network quality of

    service, overlay networking, and autonomic computing. His currentresearch is the areas of wireless networking, pervasive computing, andself-management network services. He is a fellow of the IEEE and amember of the ACM.

    Tsuhan Chen received the BS degree inelectrical engineering from the National TaiwanUniversity, Taipei, in 1987 and the MS and PhDdegrees in electrical engineering from theCalifornia Institute of Technology, Pasadena, in1990 and 1993, respectively. He has been withthe School of Electrical and Computer Engineer-ing, Cornell University, Ithaca, New York, sinceJanuary 2009, where he is a professor anddirector. From October 1997 to December 2008,

    he was with the Department of Electrical and Computer Engineering,Carnegie Mellon University, Pittsburgh, Pennsylvania, as a professorand associate department head. From August 1993 to October 1997, he

    worked at AT&T Bell Laboratories, Holmdel, New Jersey. He coeditedthe book Multimedia Systems, Standards, and Networks (MarcelDekker, 2000). He is a fellow of the IEEE.

    . For more information on this or any other computing topic,please visit our Digital Library at www.computer.org/publications/dlib.

    LU ET AL.: OPPORTUNISTIC RETRANSMISSION IN WLANS 1969