Presentation on theme: "Dynamic Rate Adaptation in IEEE WLANs"— Presentation transcript:
1 Dynamic Rate Adaptation in IEEE 802.11 WLANs August 10, 2008
2 References On the Performance Characteristics of WLANs: Revisited (SIGMETRICS 2005) CARA: Collision-Aware Rate Adaptation for IEEE WLANs (INFOCOM 2006) Robust Rate Adaptation for Wireless Networks (MOBICOM 2006) IEEE Rate Adaptation: A Practical Approach (MSWiM 2004) Link Adaptation Strategy for IEEE WLAN via Received Signal Strength Measurement (ICC 2003)
3 Outline Introduction of Rate Adaptation in IEEE 802.11 WLANs Existing ChallengesDevelopment of Rate Adaptation AlgorithmsPresentative old onesNew Kids in this areaMy Opinion
4 Outline Introduction of Rate Adaptation in IEEE 802.11 WLANs Existing ChallengesDevelopment of Rate Adaptation AlgorithmsPresentative old onesNew Kids in this areaMy Opinion
5 802.11 MAC (with RTS/CTS on)  RTS: 20 bytes in mac CTS: 14 bytes in mac
6 What is “Rate Adaptation” ? The a/b/g/n standards allow the use of multiple transmission rates802.11b, 4 rate options (1,2,5.5,11Mbps)802.11a, 8 rate options (6,9,12,18,24,36,48,54 Mbps)802.11g, 12 rate options (11a set + 11b set)The method to select the transmission rate in real time is called “Rate Adaptation”Rate adaptation is important yet unspecified by the standards
7 Why do we need “Rate Adaptation” ? AccessPointMN
8 Why do we need “Rate Adaptation” ? AccessPointMN
9 Why do we need “Rate Adaptation” ? SRNAccessPointMNDistance Effects :attenuationfadinginterference
10 Why do we need “Rate Adaptation” ? BPSK 1MbpsQPSK 2MbpsBPSK/QPSK/CCKDifferentmodulationschemesBestthroughputIdeally, the transmission rate should be adjusted according to the channel condition
11 under-utilize the capacity How to adjust the rate ?Rate adaptation plays a critical role to the throughput performanceIdeally, the transmission rate should be adjusted according to the ……Rate too highRate too lowLoss ratio increasesunder-utilize the capacitythroughput decreasesRate too high → loss ratio increasesRate too low → under-utilize the capacitychannel condition
12 How to estimate channel condition ? SNR of the channelSNR of receiver……no feedback in ……fluctuation of SNR……Gauging how well the currently chosen rate performs (Statistics: transmission loss/success)not timelyaffected by random collisions (unnecessary downshift)Modified framesenderreceiverSymmetric linkRate too high → loss ratio increasesRate too low → under-utilize the capacityeasy to implement
13 Outline Introduction of Rate Adaptation in IEEE 802.11 WLANs Existing ChallengesDevelopment of Rate Adaptation AlgorithmsPresentative old onesNew Kids in this areaMy Opinion
15 Channel Dynamics When should the transmission rate be updated? too quick: perform bad when channel conditions fluctuate acutelytoo slow: not in time (base on a relative long history)The algorithm should be adaptive…
16 Equidistant Distribution MN1Node Contention Effects:Collisions induced by:random backoffhidden terminalMN4AccessPointMN2基础设置模式下，所有节点都跟AP保持同样距离MN3
17 Equidistant Distribution- random collisions means:unnecessarydownshift基础设置模式下，所有节点都跟AP保持同样距离
18 Equidistant Distribution- hidden terminal means:unnecessarydownshift基础设置模式下，所有节点都跟AP保持同样距离Hidden terminal broadcast packets at a mild rate of 0.379Mbps continuously while other nodes begin with 11Mbps
19 Non-equidistant Distribution Nodes Diversity Effects:collisionshidden terminalchannel diversitylink captureMN1MN4AccessPointMN2MN3fairness
20 Non-equidistant Distribution- fairness Different kinds of fairness:throughput fairnesstime-share fairnessIn single-rate networks: equivalentIn multi-rate networks:time-share fairness is the oneto be concerned由于不同的节点的链路状况是不同的。因而需要采用不同的发送速率以达到最小的包误码率。而当节点采用不同的发送速率发送同样大小的数据包时，需要的时间长短是不一样的。高速率发送的快一些。因而在复杂的网络环境中，各个节点的差异比较大的时候，不能单纯的追求各个节点之间的throughput fairness。time-share fairness 才是更加重要的。可以让高速率的节点获得信道的时候，连续多发几个包（按照比例。。。比方说1Mbps的为基准。1Mbps的发一个包，2Mbps的发两个包，11Mbps的发送11个包。。。依次类推）。The poor-channel flows would consumemore time and system resources
21 Outline Introduction of Rate Adaptation in IEEE 802.11 WLANs Existing ChallengesDevelopment of Rate Adaptation AlgorithmsPresentative old onesNew Kids in this areaMy Opinion
23 Classification of existing algorithms Information channel estimation depends on:Open-loopClosed-loopLocal channelestimationPacket transmissionsituationRTSCTSBeaconprobe responseARFAARFMMRAMRRONOELD-ARF(NACK)SampleRateCARARRAARBAROARCARARRAALACHARMAORA (idle slots)CHARM(noise)
24 Classification of existing algorithms Rate Adaptation Processing:Estimation (channel conditions)Action (how to adjust)Which layerto useWhich messagesto useHow toestimatesequentialrateadjustmentbestrateadjustmentMAChybridsignaldatamappingcalculatePHYprobeARF/AARFMMR/AMMRLD-ARFSamleRateCARA、RRAAAORA、ONOEARFAARFMRRAMRRONOELD-ARFCARARRAAAORARBARLASampleRateCHARMNoprobedeterministicstatisticalRBAROARCARALD-ARFRRAACHARMARF/AARFMMR/AMMRLD-ARFSampleRateAORACHARMARFAARFLD-ARFMRRONOECARAAMRRSampleRateRRAAAORACHARMRBAROARLACHARMRBAROARLA、CHARMRRAA
25 Trend of rate adaptation algorithms easy to implementcan not react on the real time channel situationsuffer from random collisionsOne probe every 10 framesCan react quickly to mobilityToo sensitive to probe failureThe SNR is obtained based on” Symmetric link”, which is not accurate…improve the upshift performanceStill suffer from random collisionnot compliant with current networksDifferentiate the reasons for packet loss…Increasing load at some level…Each algorithm hasits own Achille’s heel…open-loop & statistics based: ARFclose-loop & SNR based (rts/cts): RBAR/OARstatistics & SNR based & adaptive: LAstatistics based & adaptive: AARFstatistics based & adaptive & estimate transimission time for different rates: SampleRatestatistics based & collisions avoid/detect: CARA、RRAA
26 Outline Introduction of Rate Adaptation in IEEE 802.11 WLANs Existing ChallengesDevelopment of Rate Adaptation AlgorithmsPresentative old onesNew Kids in this areaMy Opinion
27 Presentative old onesARFRBAROARLAAARFSampleRate
28 ARF- How does it work ?Use packet transmission situation to estimate the channel condition:If two consecutive ACK frames are not received correctly, the second retry and subsequent transmissions are done at a lower rate and a timer is started.When the number of successfully received ACKs reaches 10 or the timer goes off, a probe frame is sent at the next higher rate. However, if an ACK is NOT received for this frame, the rate is lowered back and the timer is restarted.
29 ARF- Does it work well ? Advantages: Disadvantages: Compliant withAll things can be done by the senderEasy to implementDisadvantages:Suffer from random collisions and hidden terminalsConstantly upshift try when channel condition is stableRate can only be adjusted step by step
30 RBAR- How does it work ?Receivers control sender’s transmission rate:RTS and CTS are modified to contain info on size and rate.Uses analysis of RTS reception to estimate SNR and send choice back to sender in CTS.Receiver picks rate based on pre-defined SNR thresholds.
31 RBAR- Does it work well ? Advantages: Disadvantages: Rate can be adjusted according to the real time channel conditionDo not need to adjust the rate step by stepWill not suffer from random collisions and hidden terminalsDisadvantages:not compatible (modified RTS/CTS)The rate-SNR table is obtained based on a priori channel modeSNR is not easy to get (most WLAN cards only have RSSI)RTS/CTS is seldom used (only when the frame is too large…)RTS/CTS introduce extra load
32 OAR- How does it work ?Make full use of coherence times, provide time-share fairness:Improvement based on RBAR.Coherence times are durations for which mobile stations have better-than-average channels.Grant the user during a coherence time a channel access time that allows multiple packet transmissions (Fragment mechanism in ).The poor-channel flows would consume more time and system resources
33 OAR- Does it work well ? Advantages: Disadvantages: Nodes with good channels can send more packets while providing time-share fairness to all the nodesThe same as RBAR…Disadvantages:
34 LA- How does it work ? Assume that the channel is symmetric: Use RSSI to approximate SNR.Use SNR of the sender to approximate SNR of the receiver.Each node maintains 12 dynamic RSS thresholds.The thresholds are updated depending on whether the transmission is successful .Rate selection is based on both the RSS thresholds and number of retransmission attempts.
35 LA- Does it work well ? Advantages: Disadvantages: 802.11 compatible. RSSI is much more easy to get.Rate can be adjusted according to the real time channel condition.Do not need to adjust the rate step by step.Can adjust the rate during network congestion.Disadvantages:The symmetric assumption is dubitable.RSSI is quite different from SNR.suffer from random collisions and hidden terminals.
36 AARF- How does it work ? Dynamic adjust the upshift threshold of ARF: Improvement based on ARF.To fix one existing problem of ARF (Constantly upshift try when channel condition is stable)ARFAARF
37 AARF- Does it work well ? Advantages: Disadvantages: Compliant withAll things can be done by the senderEasy to implementDisadvantages:Suffer from random collisions and hidden terminalsRate can only be adjusted step by stepWhen channel condition gets better quickly…it can not react quickly on it
38 SampleRate- How does it work ? Select rate by statistic information about the transmission time for each rate:maintain the expected transmission time for each rate and update it after each transmission. (wnd=1s--10s)A frame is transmitted at the rate that currently has the smallest expected transmission time.sends one probe packet at another randomly selected rate every 10 frames.Downshift its rate every 4 consecutive transmission failure.
39 SampleRate- Does it work well ? Advantages:React quickly to mobilityDo not always need to adjust the rate step by stepCompliant withDisadvantages:suffer from random collisions and hidden terminals (time window)Can be very sensitive to probe failure
40 Outline Introduction of Rate Adaptation in IEEE 802.11 WLANs Existing ChallengesDevelopment of Rate Adaptation AlgorithmsPresentative old onesNew Kids in this areaMy Opinion
41 New Kids in this area CARA - Collision Aware Rate Adaptation RRAA – Robust Rate Adaptation Algorithm
42 CARA- the key ideaThe primary contribution is to differentiate frame collisions from frame transmission failures caused by channel error.focus on rate down only, rate up is the same as that of ARFTwo methods for identifying collisions:Adaptive RTS probingIdentifying collision via CCA detection
43 CARA- Adaptive RTS Probing Assumptions:All RTS transmission failures are due to collisions.Transmission failure after RTS/CTS must be due to channel errors.To reduce the signaling overhead, RTS probing that enables an RTS/CTS exchange ONLY when a data frame transmission fails.
44 CARA-with default RTS Probing Data frame transmitted without RTS/CTS.If the transmission fails, RTS/CTS exchange is activated for the next retransmission. If this one fails again, then the rate is lowered.If retransmission is successful, stay at the same rate and send next frame without RTS/CTS.
45 CARA –Identifying collision via CCA detection If the wireless channel is busy while the expected ACK reception dose not start, the station conclude that a collision has just happened to its data transmission.A transmission failure detected by CCA to be a collision will not cause a RTS Probing
46 CARA- Performance evaluation 1 CARA-1: CARA with only default RTS ProbingRTS/CTS: ARF scheme using RTS/CTS all the time
47 CARA- Performance evaluation 2 CARA-1: with only default RTS ProbingCARA-2: with both default RTS Probing and CCA detecion
48 CARA-existing problems When the channel condition is so bad that even the RTS can not be sent… CARA will be stuck there…The network congestion can not be sensed, in which situation the rate should be downshifted…when hidden terminals exist, it suffers from the drawback of RTS oscillation, which alternates on and off for RTS.
49 RRAA- the key idea Short-term statistics to handle Adaptive RTS random lossmobilitydrastic changesAdaptive RTSto handlecollision
50 RRAA- loss estimation Instead of single probe frame. Uses a loss estimation window and computes the estimated loss ratio over the window (20-100ms).Uses upper and lower loss threshold for each rate and estimated loss ratio to decide when to switch rates.Otherwise, retain the current rate and continue sliding window
51 RRAA- Critical Loss Ratio (P*) For any rate R, let the next lower rate be R_ and the next higher rate be R+.With a loss ratio of P*, the throughput at R becomes the same as the loss-free throughput at R_.
52 RRAA- PMTL and PORI We set PMTL = αP*(R), α ≥ 1 PORI = PMTL(R+) / 2 Decrease the rate when expected throughput is more than PMTLα = 1.25>1, to anticipate certain level of losses at R_PORI = PMTL(R+) / 2increase the rate when expected throughput is less than PORIThe loss ratio at the current rate R has to be small enough such that the rate increase not quickly jump back to R
53 loss ratio thresholds: RRAA- Rate changeloss ratio thresholds:
54 RRAA- Adaptive RTS Filter Selective use of RTS/CTSTradeoff between overhead and benefits of RTSRTSwnd (RTScounter)RTSwnd is initially set to be 0.Window is increased by one when last frame lost without RTS (potentially due to a collision)When the last frame was lost with RTS or succeeded without RTS, RTSwnd is halved (assume no collision involved).
55 RRAA- Adaptive RTS Example NocollisionCollision may occurMore packets are sent with RTS ifthe collision level is high
57 RRAA- existing problems How to decide the window size under different situationThe network congestion can not be sensed, when turn on RTS/CTS
58 Outline Introduction of Rate Adaptation in IEEE 802.11 WLANs Existing ChallengesDevelopment of Rate Adaptation AlgorithmsPresentative old onesNew Kids in this areaMy Opinion
59 My Opinion The ability to differentiate the reasons for a frame loss. Link error (SNR)Random collisions/Hidden terminalsNetwork congestion (available bandwidth? CCA? Idle slots?)The speed of the adaptation (be adaptive in different situation? What happens when introduce handoffs here?)The interaction between link-layer rate adaptation and high-layer (TCP) rate adaptationAn Evaluation model