Wireless channel varies rapidly
• To maximize throughput, we have to estimate channel and adjust bit rate continuously.
Motivation
0
5
10
15
20
25
30
0 2000 4000 6000 8000 10000
Time (Milliseconds)
SN
R (
dB
)
10 s
Source: VJB’09
2
Passive Adaptation• Infer channel from
packet loss rate• Coarse estimate ;
wasted transmissions
Passive Adaptation
P1
P2
P3
P1
ACK1
4
Active Adaptation
P1
P2
P3
P1
ACK1+ SNR1NACK2+ SNR2NACK3+ SNR3
SNR1
SNR2
SNR3
5
Passive Adaptation• Infer channel from
packet loss rate• Coarse estimate ;
wasted transmissions
Active Adaptation• Receiver feedback on
channel conditions• Higher overhead;
inaccurate for mobile wireless channels
• Redundancy to correct bit errors• ‘b’ data bits mapped to ‘c’ coded bits (c>b) then
code rate = (b/c)• Ideally this code can correct (c-b)/2 bit errors• Typical convolutional code rates : 1/3, 1/2, 2/3
• Higher code rate implies• Smaller redundancy• Lesser resilience to errors
Channel Coding
13
• Map channel coded bits to constellation points
Modulation
15
-b
(0,0)
-a
(0,1)
a=√(P/5) ; b=3√(P/5)[ (-b)2 + (-a)2 + a2 +b2]/4 =P
a
(1,1)
b
(1,0)
• Attenuation and additive noise from channel• To demodulate, map to closest constellation point
Demodulation
WirelessChannel
16
-b
(0,0)
-a
(0,1)
a=√(P/5) ; b=3√(P/5)[ (-b)2 + (-a)2 + a2 +b2]/4 =P
a b-b -a
N N
a
(1,1)
b
(1,0)
• 4-PAM to BPSK reduces errors for the same noise
Sparser Constellation Lesser Bit Errors
WirelessChannel
17
a-a
a=√P[ (-a)2 + a2]/2 =P
a-a
Minimum Distance between constellation points determines error rate
N
• Throughput α Coding rate α Constellation density
• Estimate highest coding rate and densest
constellation that can be supported.
Rate Adaptation
21
Automatic Rate Adaptation (ARA):• Uses fixed code rate• Automatically adjusts minimum distance of the
constellation without channel state feedback• Achieves throughput almost as good as omniscient
scheme with perfect advance channel knowledge
This Talk …
22
Can we achieve the best rate without doing any estimation or requiring channel feedback?
• Take 2 BPSK coded symbols• Keep sending random linear combinations of
coded symbols
An Example
-1
-1 1
1
-c-d(B1 = -1B2 = -1)
B1
B2
c = 0.89 ; d = 0.45c2 + d2=1
P1
P2
-c+d(B1 = -1B2 = 1)
c-d(B1 = 1B2 = -1)
c+d(B1 = 1B2 = 1)
-c-d(B1 = -1B2 = -1)
-c+d(B1 = 1B2 = -1)
c-d(B1 = -1B2 = 1)
c+d(B1 = 1B2 = 1)
2(c-d)
23
2d2d
P1 : cB1 + dB2
P2 : dB1 + cB2
• Take 2 BPSK coded symbols• Keep sending random linear combinations of
coded symbols
An Example
-1
-1 1
1B1
B2P1
P2
(-c-d, -c-d)(B1 = -1 , B2 = -1)
(-c+d, c-d)(B1 = -1 , B2 = 1)
(c-d, -c+d)(B1 = 1 , B2 = -1)
(c+d, c+d)(B1 = 1 , B2 = 1)
√2(2 (c-d))
Minimum Distance Transformer24
c = 0.89 ; d = 0.45c2 + d2=1
P1 : cB1 + dB2
P2 : dB1 + cB2
An Example
26
c11
c21
c12
c22
B1
B2
=P1
P2
…… …cM1 cM2 PM
• 2 dimensional point mapped to M dimensional space • Minimum distance α √M
An Example
27
B1
B2
=P1
P2
…PM
G
• 2 dimensional point mapped to M dimensional space • Minimum distance α √M
How does the receiver decode?
32
B1
B2
P1
P2
PM
…Transmitter
Receiver
ChannelP1+n1
P2+n2
PM+nM
…B1
B2
How does receiver decode• Receiver : y = Gx +n
• x = [B1 B2]T є 2- dimensional space ( the coded symbols we wished to transmit)
• y = [y1 y2 … yM]T є M - dimensional space ( each entry being a different received symbol)
• Find possible values of ‘x’ given ‘y’ and known G• Sphere Decoding
– Outputs probability of each bit in x• Probabilities fed into channel decoder
40
Characteristics• Existing coding and modulation techniques need not
be changed.• G is fixed and known at the transmitter and receiver.• Keep transmitting until minimum distance sufficient to
decode and receiver sends ACK• Achieved Rate = (2/M) bits per transmitted symbol
44
MATLAB Evaluation• ARA uses
– QPSK and fixed 2/3 convolutional code– 8 packets linearly combined
• Compared with omniscient scheme– Knows exact channel SNR in advance– Chooses best possible modulation and code rate among:
• (QPSK, 8-PSK, 16-QAM, 64-QAM) and (1/4,1/3,1/2,2/3) rates
45
Evaluation
46
4 6 8 10 12 14 16 18 200.5
1
1.5
2
2.5
3
3.5
4
Automatic Rate Adaptation
Omniscient Scheme
SNR
Thro
ughp
ut(b
its/t
rans
mitt
ed s
ymbo
l)
ARA’s throughput is almost as good as omniscient scheme without advance channel SNR knowledge
64 - QAM16 - QAM8 - PSKQPSK
2/31/21/31/4