dynamic rate adaptation in ieee 802.11 wlans -...
TRANSCRIPT
References
[1] On the Performance Characteristics of WLANs: Revisited (SIGMETRICS 2005)
[2] CARA: Collision-Aware Rate Adaptation for IEEE 802.11 WLANs (INFOCOM 2006)
[3] Robust Rate Adaptation for 802.11 Wireless Networks (MOBICOM 2006)
[4] IEEE 802.11 Rate Adaptation: A Practical Approach (MSWiM 2004)
[5] Link Adaptation Strategy for IEEE 802.11 WLAN via Received Signal Strength Measurement (ICC 2003)
Outline Introduction of Rate Adaptation in IEEE 802.11 WLANs
Existing Challenges Development of Rate Adaptation Algorithms
Presentative old ones New Kids in this area My Opinion
Outline Introduction of Rate Adaptation in IEEE 802.11 WLANs
Existing Challenges Development of Rate Adaptation Algorithms
Presentative old ones New Kids in this area My Opinion
What is “Rate Adaptation” ?
The 802.11 a/b/g/n standards allow the use of multiple transmission rates 802.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 802.11 standards
Why do we need “Rate Adaptation” ?
Access Point MN
Distance Effects : attenuation
fading interference
SRN
Why do we need “Rate Adaptation” ?
[5]
BPSK 1Mbps QPSK 2Mbps
BPSK/QPSK/CCK Different modulation schemes
Best throughput
How to adjust the rate ?
Rate adaptation plays a critical role to the throughput performance
Ideally, the transmission rate should be adjusted according to the ……
throughput decreases
Rate too high
Loss ratio increases
Rate too low
under-utilize the capacity
channel condition
How to estimate channel condition ?
SNR of the channel SNR of receiver…… no feedback in 802.11…… fluctuation of SNR……
Gauging how well the currently chosen rate performs (Statistics: transmission loss/success) not timely affected by random collisions (unnecessary downshift) easy to implement
receiver sender
Modified frame
Symmetric link
Outline Introduction of Rate Adaptation in IEEE 802.11 WLANs
Existing Challenges Development of Rate Adaptation Algorithms
Presentative old ones New Kids in this area My Opinion
Channel Dynamics
Wireless channel exhibits rich channel dynamics in practical scenarios
Random channel error Mobility-induced change Collisions induced by
Hidden-terminals Multiple contending clients
Random collision congestion
Channel Dynamics
When should the transmission rate be updated?
too quick: perform bad when channel conditions fluctuate acutely
too slow: not in time (base on a relative long history)
The algorithm should be adaptive…
Equidistant Distribution
Access Point MN2
MN1
MN4
MN3
Node Contention Effects:
Collisions induced by: random backoff hidden terminal
Equidistant Distribution- hidden terminal
[3]
means: unnecessary downshift
Hidden terminal broadcast packets at a mild rate of 0.379Mbps continuously while other nodes begin with 11Mbps
Non-equidistant Distribution
Access Point
MN3
Nodes Diversity Effects:
collisions hidden terminal channel diversity link capture
MN1
MN2
MN4
fairness
Non-equidistant Distribution- fairness
The poor-channel flows would consume more time and system resources
Different kinds of fairness: throughput fairness time-share fairness
In single-rate networks: equivalent In multi-rate networks: time-share fairness is the one to be concerned
Outline Introduction of Rate Adaptation in IEEE 802.11 WLANs
Existing Challenges Development of Rate Adaptation Algorithms
Presentative old ones New Kids in this area My Opinion
Rate Adaptation Algorithms List 1997 ARF 1998 1999 2000 2001 RBAR 2002 OAR 2003 LA 2004 AARF MultiRateRetry AMRR 2005 ONOE LD-ARF SampleRate 2006 CARA RRAA 2007 AORA CHARM TBC ……
Classification of existing algorithms
Open-loop
Local channel estimation
Closed-loop
Packet transmission situation
RTS CTS
Beacon probe response
Information channel estimation depends on:
LA CHARM
AORA (idle slots)
ARF AARF MMR AMRR ONOE
LD-ARF(NACK) SampleRate
CARA RRAA
RBAR OAR CARA RRAA
CHARM (noise)
Classification of existing algorithms
Estimation (channel conditions)
Which layer to use
Action (how to adjust)
Which messages to use
How to estimate
sequential rate
adjustment
best rate
adjustment
PHY MAC hybrid data signal
probe No probe
mapping calculate
deterministic statistical
Rate Adaptation Processing:
RBAR OAR
ARF/AARF MMR/AMMR
LD-ARF SamleRate
CARA、RRAA AORA、ONOE
LA、CHARM
RBAR OAR CARA
LD-ARF RRAA
CHARM
ARF/AARF MMR/AMMR
LD-ARF SampleRate
AORA CHARM
RRAA
RBAR OAR LA
CHARM
ARF AARF
LD-ARF MRR ONOE CARA
AMRR SampleRate
RRAA AORA CHARM
ARF AARF MRR AMRR ONOE LD-ARF CARA RRAA AORA
RBAR LA
SampleRate CHARM
Trend of rate adaptation algorithms
open-loop & statistics based: ARF close-loop & SNR based (rts/cts): RBAR/OAR statistics & SNR based & adaptive: LA statistics based & adaptive: AARF statistics based & adaptive & estimate transimission time for
different rates: SampleRate statistics based & collisions avoid/detect: CARA、RRAA
• easy to implement • can not react on
the real time channel situation
• suffer from random collisions
• not compliant with current 802.11 networks
• The SNR is obtained based on” Symmetric link”, which is not accurate…
• improve the upshift performance
• Still suffer from random collision
• One probe every 10 frames
• Can react quickly to mobility
• Too sensitive to probe failure
• Differentiate the reasons for packet loss…
• Increasing load at some level…
Each algorithm has its own Achille’s heel…
Outline Introduction of Rate Adaptation in IEEE 802.11 WLANs
Existing Challenges Development of Rate Adaptation Algorithms
Presentative old ones New Kids in this area My Opinion
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.
ARF- Does it work well ? Advantages:
Compliant with 802.11 All things can be done by the sender Easy to implement
Disadvantages: Suffer from random collisions and hidden
terminals Constantly upshift try when channel condition
is stable Rate can only be adjusted step by step
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.
RBAR- Does it work well ? Advantages:
Rate can be adjusted according to the real time channel condition
Do not need to adjust the rate step by step Will not suffer from random collisions and
hidden terminals Disadvantages:
not 802.11 compatible (modified RTS/CTS) The rate-SNR table is obtained based on a
priori channel mode SNR 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
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 802.11).
The poor-channel flows would consume more time and system resources
OAR- Does it work well ?
Advantages: Nodes with good channels can
send more packets while providing time-share fairness to all the nodes
The same as RBAR… Disadvantages:
The same as RBAR…
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.
LA- Does it work well ? Advantages:
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.
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) ARF
AARF
AARF- Does it work well ?
Advantages: Compliant with 802.11 All things can be done by the sender Easy to implement
Disadvantages: Suffer from random collisions and hidden
terminals Rate can only be adjusted step by step When channel condition gets better
quickly…it can not react quickly on it
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.
SampleRate- Does it work well ?
Advantages: React quickly to mobility Do not always need to adjust the rate step
by step Compliant with 802.11
Disadvantages: suffer from random collisions and hidden
terminals (time window) Can be very sensitive to probe failure
Outline Introduction of Rate Adaptation in IEEE 802.11 WLANs
Existing Challenges Development of Rate Adaptation Algorithms
Presentative old ones New Kids in this area My Opinion
New Kids in this area
CARA - Collision Aware Rate Adaptation
RRAA – Robust Rate Adaptation Algorithm
CARA- the key idea The 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 ARF
Two methods for identifying collisions: • Adaptive RTS probing • Identifying collision via CCA detection
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.
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.
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.
[2] A transmission failure detected by CCA to be a collision will not cause a RTS Probing
CARA- Performance evaluation 1
[2]
CARA-1: CARA with only default RTS Probing RTS/CTS: ARF scheme using RTS/CTS all the time
CARA- Performance evaluation 2
[2]
CARA-1: with only default RTS Probing CARA-2: with both default RTS Probing and CCA detecion
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.
RRAA- the key idea
Short-term statistics to handle • random loss • mobility • drastic changes
Adaptive RTS to handle
• collision
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
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_.
RRAA- PMTL and PORI
We set PMTL = αP*(R), α ≥ 1 • Decrease the rate when expected throughput
is more than PMTL • α = 1.25>1, to anticipate certain level of
losses at R_
PORI = PMTL(R+) / 2 • increase the rate when expected throughput
is less than PORI • The loss ratio at the current rate R has to
be small enough such that the rate increase not quickly jump back to R
RRAA- Adaptive RTS Filter
Selective use of RTS/CTS Tradeoff between overhead and benefits of RTS
RTSwnd (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).
RRAA- Adaptive RTS Example
Collision may occur
No collision
More packets are sent with RTS if the collision level is high
RRAA- Performance evaluation
[3]
Compared with ARF、AARF、SampleRate Static client case:
• Throughput gains 0.3% ~ 67.4%
Mobile client case • Throughput gains 10.0% ~ 27.6%
Hidden-station case • Throughput gains 74% ~ 101%
RRAA- existing problems
[3]
How to decide the window size under different situation
The network congestion can not be sensed, when turn on RTS/CTS
Outline Introduction of Rate Adaptation in IEEE 802.11 WLANs
Existing Challenges Development of Rate Adaptation Algorithms
Presentative old ones New Kids in this area My Opinion
My Opinion The ability to differentiate the reasons for
a frame loss. Link error (SNR) Random collisions/Hidden terminals Network 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 adaptation
An Evaluation model