Document

advertisement
Next Generation 802.11n
Dina Katabi
Jointly with Kate Lin and Shyamnath Gollakota
1-antenna devices
2-antenna devices
3-antenna devices
Wireless nodes increasingly have
heterogeneous numbers of antennas
802.11 Was Designed for 1-Antenna Nodes
Alice
Bob
Chris
When a single-antenna node transmits,
multi-antenna nodes refrain from transmitting
But, MIMO Nodes Can Receive Multiple
Concurrent Streams
Alice
Bob
Chris
It’s Not That Simple
Alice
Bob
Interference!!
Interference!!
Chris
But, how do we transmit without interfering at
receivers with fewer antennas?
+
802.11n
• Enables 802.11 nodes to contend for both
time and concurrent transmissions
• Maintains random access
1. How to transmit without interfering with
receivers with fewer antennas?

Interference nulling

Interference alignment
2. How do we achieve it in a random access
manner?

Multi-dimensional carrier sense
1. How to transmit without interfering with
receivers with fewer antennas?

Interference nulling

Interference alignment
2. How do we achieve it in a random access
manner?

Multi-dimensional carrier sense
Interference Nulling
Alice
Bob
y
• Signals cancel each other at Alice’s receiver
 don’t cancel each other at Bob’s receiver
• Signals

Because channels are different
Interference Nulling
Alice
h1
y
Bob

y
h2

h1y h2y  0
Nulling : h1  h2
0
 each other at Alice’s receiver
•
Signals
cancel



• Signals don’t cancel each other at Bob’s receiver


Because channels are different
• Bob’s sender learns channels either by feedback from
Alice’s receiver or via reciprocity


Interference Nulling
Alice
Bob

h1
y
y
h2

h1y h2y  0
Nulling : h1  h2
0

Q: How to transmit without interfering


with receivers with fewer antennas?
A: Nulling
Interference Nulling
Alice
Bob
Chris
NO!
Is Nulling Alone Enough? NO!!
Alice
Bob
Chris
NO!
Is Nulling Alone Enough? NO!!
Alice
Bob
Chris
Chris needs to null at
three antennas



NO!
Is Nulling Alone Enough? NO!!
null
Alice
(h11 h21h31)z  0
Bob
(h12  h22h32 )z  0
(h13  h23h33 )z  0
z
Chris z
z

z

Only solution       0
Transmit Nothing!!!
Are we doomed?

 we can use interference alignment
No,
MIMO Basics
1. N-antenna node receives in N-dimensional space
antenna 1
antenna 2
antenna 1
antenna 2
antenna 3
antenna 1
MIMO Basics
1. N-antenna node receives in N-dimensional space
2. N-antenna receiver can decode N signals
2-antenna receiver
y1
y2
MIMO Basics
1. N-antenna node receives in N-dimensional space
2. N-antenna receiver can decode N signals
3. Transmitter can rotate the received signal
2-antenna receiver
y
y’ = Ry
Rotate by multiplying transmitted signal by a
rotation matrix R
Interference Alignment
2-antenna receiver
I2
I1
wanted signal
If I1 and I2 are aligned,
 appear as one interferer
 2-antenna receiver can decode the wanted signal
Interference Alignment
2-antenna receiver
I1 + I2
wanted signal
If I1 and I2 are aligned,
 appear as one interferer
 2-antenna receiver can decode the wanted signal
Use Nulling and Alignment
Alice
Null as before
Bob
Bob
Alice
(unwanted)
Chris
Chris
Use Nulling and Alignment
Alice
Bob
Alice + Chris
(unwanted)
Bob
Chris
2-signals in 2D-space
Can decode Bob’s signal
Use Nulling and Alignment
Alice
Bob
Chris
3 packets through
receivers have fewer
than 3 antennas
MAC Protocol
• Each sender computes in a distributed way

where and how to null

where and how to align
• Analytically proved:

# concurrent streams = # max antenna per sender
1. How to transmit without interfering with
ongoing transmissions?

Interference nulling

Interference alignment
2. How do we achieve it in a random access
manner?

Multi-dimensional carrier sense
1. How to transmit without interfering with
receivers with fewer antennas?

Interference nulling

Interference alignment
2. How do we achieve it in a random access
manner?

Multi-dimensional carrier sense
In 802.11, contend using carrier sense
But, how to contend despite ongoing transmissions?
Multi-Dimensional Carrier Sense
Multi-Dimensional Carrier Sense
Alice
Bob
Alice
Contend
Ben
Contend
Alice
Bob and Ben contend for a second concurrent
transmission
Multi-Dimensional Carrier Sense
Alice
Bob
Alice
Contend
Ben
Contend
Alice
Project orthogonal to Alice’s signal
Multi-Dimensional Carrier Sense
Alice
orthogonal to Alice
no signal from Alice!!
Bob
Alice
Contend
Ben
Contend
Alice
orthogonal to Alice
no signal from Alice!!
Project orthogonal to Alice’s signal
Multi-Dimensional Carrier Sense
Alice
orthogonal to Alice
no signal from Alice!!
Bob
Alice
Contend
Ben
Contend
Alice
orthogonal to Alice
no signal from Alice!!
Apply carrier sense in the orthogonal space
Multi-Dimensional Carrier Sense
Alice
Bob
Win
Ben
Lose
Alice
Bob
Detect energy after projection
Multi-Dimensional Carrier Sense
To contend for the next concurrent transmission
• Project orthogonal to ongoing signals
• Apply standard carrier sense
1. How to transmit without interfering with
receivers with fewer antennas?

Interference nulling

Interference alignment
2. How do we achieve it in a random access
manner?

Multi-dimensional carrier sense
Performance
Implementation
• Implemented in USRP2
• OFDM with 802.11-style modulations
and convolutional codes
Experiment
Alice
Bob
Chris
Throughput Results
1
CDFs
0.8
0.6
0.4
0.2
0
0
20
40
60
Total throughput [Mb/s]
80
Throughput Results
1
CDFs
0.8
0.6
0.4
802.11n+
802.11n
0.2
0
0
20
40
60
Total throughput [Mb/s]
80
Throughput Results
1
CDFs
0.8
0.6
~2x
0.4
802.11n+
802.11n
0.2
0
0
20
40
60
Total throughput [Mb/s]
n+ doubles the median throughput
80
MegaMIMO: Scaling Wireless
Throughput with the Number of
Users
Hariharan Rahul, Swarun Kumar and Dina Katabi
MegaMIMO
MegaMIMO alleviates the capacity crunch by
transmitting more bits per unit of spectrum
using a distributed MIMO transmitter
Today’s Wireless Networks
Ethernet
Access
Point 1
Access
Point 2
Access
Point 3
Interference!
User 1
User 2
User 3
Access Points Can’t Transmit Together in the
Same Channel
MegaMIMO
Ethernet
Access
Point 1
Access
Point 2
Access
Point 3
User 3
User 1
User 2
Interference from
Interference from
Interference from
x1+x2≈0
x
+x
≈0
2
3
Enables senders xto
transmitData:
together
1+x3≈0
x3 survives
Data: x1 surviveswithout
Data:interference
x survives
2
All Access Points Can Transmit Simultaneously in the Same Channel
MegaMIMO = Distributed MIMO
Distributed protocol for APs to act as a huge MIMO
transmitter with sum of antennas
Ethernet
AP2
AP1
User 1
User 2
AP3
User 3
…
AP10
…
10 APs  10x higher throughput
User 10
Diving Into The Details
Transmitting Without Interference
AP 1
Wants x1
Receives y1 Cli 1
AP 2
Wants x2
Receives y2
Cli 2
y1 = d1 x1 + 0 . x2
y2 = 0 . x1 + d2 x2
y1
d1 0
=
y2
0 d2
x1
x2
Transmitting Without Interference
AP 1
Wants x1
Receives y1 Cli 1
AP 2
Wants x2
Receives y2
Cli 2
y1 = d1x1Non-Interference
+ 0 . x2
Diagonal Matrix
y2 = 0 . x1 + d2 x2
1
1
Goal: Makeythe
effectivexchannel
matrix
=diagonal
D
y2
x2
Diagonal
On-Chip MIMO
• All antennas on the MIMO sender are
synchronized in time to within nanoseconds of
each other.
• All antennas on a MIMO sender have exactly
the same oscillator, i.e., no frequency offset.
On-Chip MIMO
Sends x1
h11
y1 Cli 1
Sends x2
AP
h12
h21
h22
y2 Cli 2
y1 = h11 x1 + h12 x2
y2 = h21 x1 + h22 x2
y1
h11 h12 x1
=
h21 h22 x2
y2
Non-diagonal
Matrix 
Interference
On-Chip MIMO
Sends x1
h11
y1 Cli 1
Sends x2
AP
h12
h21
h22
y2 Cli 2
y1 = h11 x1 + h12 x2
y2 = h21 x1 + h22 x2
y1
h11 h12 x1
=
h21 h22 x2
y2
On-Chip MIMO
Sends s1
Sends s2
AP
h11
y1 Cli 1
h12
h21
h22
y2 Cli 2
y1 = h11 s1 + h12 s2
y2 = h21 s1 + h22 s2
y1
h11 h12 s1
=
h21 h22 s2
y2
On-Chip MIMO
Sends s1
Sends s2
AP
h11
h12
h21
h22
y2 Cli 2
y1 Cli 1
y1 = h11 s1 + h12 s2
y2 = h21 s1 + h22 s2
y1
=
y2
H
s1
s2
Making Effective Channel Matrix Diagonal
Sends s1
Sends s2
AP
h11
h12
h21
h22
y2 Cli 2
y1 Cli 1
y1 = h11 s1 + h12 s2
y2 = h21 s1 + h22 s2
y1
=
y2
H
s1
s2
Making Effective Channel Matrix Diagonal
Sends s1
Sends s2
AP
h11
h12
h21
h22
y2 Cli 2
y1 Cli 1
y1 = h11 s1 + h12 s2
y2 = h21 s1 + h22 s2
y1
=
y2
H
s1
s2
H-1
x1
x2
Making Effective Channel Matrix Diagonal
Sends s1
Sends s2
AP
h11
h12
h21
h22
y2 Cli 2
y1 Cli 1
y1 = h11 s1 + h12 s2
y2 = h21 s1 + h22 s2
y1
=
y2
H H-1
x1
x2
Effective
channel is
diagonal
Beamforming System Description
Channel Measurement:
• Measure channels from sending antennas to clients
• Clients report measured channels back to APs
Data Transmission:
• MIMO sender computes its beamformed signal si
using the equation s = H-1 x
• Clients 1 and 2 decode x1 and x2 independently
Distributed Transmitters Are Different
• Nodes are not synchronized in time.
– We use SourceSync to synchronize senders within
10s of ns
– Works for OFDM based systems like Wi-Fi, LTE
etc.
• Oscillators are not synchronized and have
frequency offsets relative to each other.
Distributed Transmitters Are Different
• Nodes are not synchronized in time.
– We use SourceSync to synchronize senders within
10s of ns
– Works for OFDM based systems like Wi-Fi, LTE
etc.
• Oscillators are not synchronized and have
frequency offsets relative to each other.
What Happens with Independent Oscillators?
AP 1
h11
AP 2
h12
h21
h22
Cli 2
Cli 1
h11
h12
h21
h22
What Happens with Independent Oscillators?
ωT1 AP 1
h11
AP 2
h12
h21
Cli 2
ωR1 Cli 1
h11 ej(ω T1h21
h22
ωR1)t
h12
h22
What Happens with Independent Oscillators?
ωT1 AP 1
h11
AP 2
h12
h21
Cli 2
ωR1 Cli 1
h11 ej(ω T1h21
h22
ωR1)t
h12
h22
What Happens with Independent Oscillators?
ωT1 AP 1
h11
ωT2 AP 2
h12
h21
Cli 2
ωR1 Cli 1
h11 ej(ω T1h21
h22
ωR1)t
h12ej(ω T2h22
ωR1)t
What Happens with Independent Oscillators?
ωT1 AP 1
h11
ωT2 AP 2
h12
h21
Cli 2
ωR1 Cli 1
h11 ej(ω T1h21
h22
ωR1)t
h12ej(ω T2h22
ωR1)t
What Happens with Independent Oscillators?
ωT1 AP 1
h11
ωT2 AP 2
h12
h21
ωR2
ωR1 Cli 1
h22
Cli 2
h11 ej(ω T1-
ωR1)t
h12ej(ω T2-
ωR1)t
h21 ej(ω T1-
ωR2)t
h22 ej(ω T2-
ωR2)t
What Happens with Independent Oscillators?
ωT1 AP 1
h11
ωT2 AP 2
h12
h21
ωR2
ωR1 Cli 1
h22
Cli 2
h11 ej(ω T1-
ωR1)t
h12ej(ω T2-
ωR1)t
h21 ej(ω T1-
ωR2)t
h22 ej(ω T2-
ωR2)t
Time
Varying
Channel is Time Varying
ωT1 AP 1
h11
ωT2 AP 2
h12
h21
ωR2
ωR1 Cli 1
H(t)
h22
Cli 2
Does Traditional Beamforming Still Work?
ωT1 AP 1
h11
ωT2 AP 2
h12
h21
ωR2
ωR1 Cli 1
y1(t)
=
y2(t)
H(t)
h22
Cli 2
s1(t)
s2(t)
Does Traditional Beamforming Still Work?
ωT1 AP 1
h11
ωT2 AP 2
h12
h21
h22
ωR2
Cli 2
Beamforming does not
work
ωR1 Cli 1
y1(t)
=
y2(t)
H(t) H-1
x1(t)
x2(t)
Not
Diagonal
Challenge
Channel is Rapidly Time Varying
Relative Channel Phases of Transmitted Signals
Changes Rapidly With Time
Prevents Beamforming
Distributed Phase Synchronization
High Level Intuition:
• Pick one AP as the lead
• All other APs are slaves
– Imitate the behavior of the lead AP by fixing
the rotation of their oscillator relative to
the lead.
Decomposing H(t)
e-jω R1 t
0
h11 ej(ω T1-
ωR1)t
h12ej(ω T2-
ωR1)t
h21 ej(ω T1-
ωR2)t
h22 ej(ω T2-
ωR2)t
h11 ej(ω T1 )t
h12ej(ω T2)t
e-jω R2t h21 ej(ω T1)t
h22 ej(ω T2)t
0
Decomposing H(t)
e-jω R1 t
0
h11 ej(ω T1 )t
h12ej(ω T2)t
e-jω R2t h21 ej(ω T1)t
h22 ej(ω T2)t
0
Decomposing H(t)
e-jω R1 t
0
h11
h12
ejω T1 t
e-jω R2t h21
h22
0
0
0
ejωT2t
Decomposing H(t)
e-jω R1 t
0
h11
h12
ejω T1 t
e-jω R2t h21
h22
0
0
0
ejωT2t
Decomposing H(t)
e-jω R1 t
ejωT1 t
0
0
H
0
e-jω R2t
0
ejωT2t
Diagonal
Devices cannot track their own oscillator phases…
Decomposing H(t)
e-jω R1 t
ejωT1 t
0
0
H
ejωT1 t
0
e-jω R2t
e-jω T1 t
0
ejωT2t
Decomposing H(t)
ej(ωT1- ωR1)t
0
0
1
H
0
ej(ωT1- ωR2)t
R(t)
0
ej(ωT2- ωT1)t
T(t)
Depends only on
transmitters
Decomposing H(t)
ej(ωT1- ωR1)t
0
0
1
H
0
ej(ωT1- ωR2)t
R(t)
ej(ωT2- ωT1)t
0
T(t)
H(t) = R(t).H.T(t)
Beamforming with Different Oscillators
y1(t)
= R(t).H.T(t)
H(t)
y2(t)
s1(t)
s2(t)
s1(t)
x1(t)
= T(t)-1H-1
s2(t)
x2(t)
Beamforming with Different Oscillators
x1(t)
y1(t)
-1H-1
= R(t).H.T(t)
T(t)
H(t)
x2(t)
y2(t)
Diagonal
s1(t)
x1(t)
= T(t)-1H-1
s2(t)
x2(t)
Transmitter Compensation
1
0
T(t) =
0
ej(ωT2- ωT1)t
Transmitter Compensation
1
0
T(t)-1 =
0
e-j(ωT2- ωT1 )t
Slave AP imitates lead by multiplying each sample by
oscillator rotation relative to lead
Requires only local information  Fully distributed
Measuring Phase Offset
• Multiply frequency offset by elapsed time
• Requires very accurate estimation of
frequency offset
– Error of 25 Hz (10 parts per BILLION) changes
complete alignment to complete misalignment in
20 ms.
Need to keep resynchronizing to avoid error
accumulation
Resynchronization
AP 1
Cli 1
h2lead
AP 2
Cli 2
h2lead(t) = h2lead ej(ωT2- ω T1)t
Directly compute phase at each slave by measuring
channel from lead
Resynchronization
AP 1
Sync
AP 2
Data
Lead AP:
– Prefixes data transmission with synchronization
header
Resynchronization
AP 1
AP 2
Sync
Data
Slave AP:
– Receives Synchronization Header
– Corrects for change in channel phase from lead
– Transmits data
Receiver Compensation
y1(t)
= R(t).H.T(t)
H(t)
y2(t)
s1(t)
s2(t)
Receiver Compensation
x1(t)
y1(t)
-1H-1
= R(t).H.T(t)
T(t)
H(t)
x2(t)
y2(t)
y1(t)
= R(t)-1 R(t)
y2(t)
x1(t)
x2(t)
Receiver Compensation
e-j(ωT1- ωR1)t
0
R(t)-1 =
0
e-j(ωT1- ωR2)t
Receiver Compensation
e-j(ωT1- ωR1)t
0
R(t)-1 =
0
e-j(ωT1- ωR2)t
Receiver does what it does today –
correct for oscillator offset from lead
Performance
Implementation
Implemented in USRP2
2.4 GHz center frequency
OFDM with 10 MHz bandwidth
10 software radios acting as APs, all in the
same frequency
• 10 software radios acting as clients
•
•
•
•
Testbed
Does MegaMIMO Scale Throughput with
the Number of Users?
•
•
•
•
Fix a number of users, say N
Pick N AP locations
Pick N client locations
Vary N from 1 to 10
• Compared Schemes:
– 802.11
– MegaMIMO
Total Throughput [Mb/s]
Does MegaMIMO Scale Throughput with
the Number of Users?
300
250
200
150
100
50
0
1
2
3
4
5
6
7
8
Number of APs on Same Channel
9
10
Total Throughput [Mb/s]
Does MegaMIMO Scale Throughput with
the Number of Users?
300
250
200
150
100
802.11
50
0
1
2
3
4
5
6
7
8
Number of APs on Same Channel
9
10
Total Throughput [Mb/s]
Does MegaMIMO Scale Throughput with
the Number of Users?
300
250
MegaMIMO
200
150
10x
100
802.11
50
0
1
2
3
4
5
6
7
8
9
10
Number of APs on Same Channel
10x throughput
gain over existing Wi-Fi
What are MegaMIMO’s Scaling Limits?
• Theoretical
N log SNR
Can Scale Indefinitely with N
• Practical
Errors in H and phase synchronization
affect accuracy of beamforming
What are MegaMIMO’s Scaling Limits?
• N APs transmit to N users, N = 2 .. 10.
• Perform MegaMIMO as before, but with a zero
signal for some client (i.e. null at that client)
Phase Alignment is Accurate
 Received signal at noise floor (0 dB)
Inaccuracy in Phase Alignment
 Received signal higher than noise floor (>0 dB)
Interference to Noise Ratio (dB)
What are MegaMIMO’s Scaling Limits?
1.8
1.6
1.4
1.2
1
0.8
0.6
0.4
0.2
0
2
3
4
5
6
7
8
9
Number of APs on Same Channel
10
Interference to Noise Ratio (dB)
What are MegaMIMO’s Scaling Limits?
1.8
1.6
1.4
1.2
1
0.8
0.6
0.4
0.2
0
2
3
4
5
6
7
8
9
Number of APs on Same Channel
10
Interference to Noise Ratio ~1.5 dB at 10 users
Conclusion
• Learned about Nulling, Alignment, and MegaMIMO
• In N+, the gains are lower but
– Transmitters need not be connected to the same
Ethernet and exchange the packets
– No need for phase synchronization
• In MegaMIMO, the gains are linear with the total
number of users
– Need high speed Ethernet to connect the transmitters
– Need tight phase synchronization between transmitters
Download