achieving spectrum efficiency
DESCRIPTION
Achieving Spectrum Efficiency. Lili Qiu University of Texas at Austin. Motivation. Explosive increasing user traffic Spectrum crisis [NewYorkTimes12, CNET12, …] Urgent need of new technologies to dramatically increase spectrum efficiency. Our Work. Spectrum sharing - PowerPoint PPT PresentationTRANSCRIPT
1
Achieving Spectrum Efficiency
Lili QiuUniversity of Texas at Austin
2
Motivation• Explosive increasing user traffic
• Spectrum crisis [NewYorkTimes12, CNET12, …]
• Urgent need of new technologies to dramatically increase spectrum efficiency
3
Our Work• Spectrum sharing
– Develop an efficient MAC for multiple nodes to efficiently share the medium
• Spectrum access– Develop and implement multi-point to
multi-point MIMO
4
Our Work• Spectrum sharing
– Develop an efficient MAC for multiple nodes to share the medium
• Spectrum access– Develop and implement multi-point to
multi-point MIMO
CRMA: Collision Resistant Multiple
AccessJoint work with
Tianji Li, Mi Kyung Han, Apurv Bhartia, Eric Rozner, Yin Zhang, Brad Zarikoff
ACM MobiCom 20115
6
Motivation• Traditional MAC protocols avoid collisions
– FDMA, TDMA, FTDMA, CSMA, …
• Avoid collisions large overhead– FDMA: unoccupied channel and guard band– TDMA: global coordination and centralized scheduling– CSMA: carrier sense overhead, hidden terminals,
exposed terminals• 1500-byte frame: 29% for 802.11a (54Mbps) and
72% for 802.11n (600Mbps)• TCP ACK: 77% overhead for 802.11a and 83%
overhead for 802.11n– …
7
Collision Avoidance Collision Resistance
Let collisions happen naturally and decode collisions
8
Our Contributions• New encoding/decoding to allow multiple
signals transmitted on the same channel
• Collision resistant medium access protocol (CRMA) based on the encoding/decoding
• Evaluation to show CRMA is a promising direction for spectrum sharing
9
CRMA: An Illustrating Example
Channel 1
Channel 2
S1 R1
S2 R2Randomly pick a channel? - 50% collisions!
Coordinate to avoid using the same channel? - Large overhead especially for lots of dynamic flows
10
CRMA: An Illustrating Example
Channel 1
Channel 2
Frame 1
Frame 2
Frame 1
Frame 2
S1 R1
S2 R2
𝑅 (2 )=h (2,1 )×𝑐 (2,1 )×𝑥1+h (2,1 )×𝑐 (2,2 )×𝑥2
𝑅 (1 )=h (1,1 )×𝑐 (1,1 )×𝑥1+h (1,2 )×𝑐 (1,2 )×𝑥 2
11
CRMA: An Illustrating Example
Channel 1
Channel 2
Frame 1
Frame 2
Frame 1
Frame 2
𝐑=𝐀𝐱
S1 R1
S2 R2
12
CRMA: Research QuestionsChannel 1
Channel 2
Frame 1Frame 2
Frame 1Frame 2
A B
C D
𝑅 (1 )=h (1,1 )×𝑐 (1,1 )×𝑥1+h (1,2 )×𝑐 (1,1 )×𝑥 2𝑅 (2 )=h (2,1 )×𝑐 (2,1 )×𝑥1+h (2,1 )×𝑐 (2,2 )×𝑥2
13
CRMA: Research QuestionsChannel 1
Channel 2
Frame 1Frame 2
Frame 1Frame 2
A B
C D
- What is the code c?- How do the sender and receiver agree on the code?
𝑅 (1 )=h (1,1 )×𝑐 (1,1 )×𝑥1+h (1,2 )×𝑐 (1,1 )×𝑥 2𝑅 (2 )=h (2,1 )×𝑐 (2,1 )×𝑥1+h (2,1 )×𝑐 (2,2 )×𝑥2
14
CRMA: Research QuestionsChannel 1
Channel 2
Frame 1Frame 2
Frame 1Frame 2
A B
C D
- What is the code c?- How do the sender and receiver agree on the code?- How to decode transmissions?- How to handle decoding failures?- How to decode misaligned collisions?- How to limit # transmissions in a collision?- How to enhance spectrum utilization?
𝑅 (1 )=h (1,1 )×𝑐 (1,1 )×𝑥1+h (1,2 )×𝑐 (1,1 )×𝑥 2𝑅 (2 )=h (2,1 )×𝑐 (2,1 )×𝑥1+h (2,1 )×𝑐 (2,2 )×𝑥2
15
CRMA- What is the code c?- How do the sender and receiver agree on the
code?- How to decode transmissions?- How to handle decoding failures?- How to decode misaligned collisions?- How to limit # transmissions in a collision?- How to enhance spectrum utilization?
16
Code Selection• We use a binary code for simplicity
– C(i,f)=1 if transmitter i uses channel f, otherwise 0
Channel 1
Channel 2
Channel 3
C =
17
Code Selection• We use a binary code for simplicity
– C(i,f)=1 if transmitter i uses channel f, otherwise 0
Channel 1
Channel 2
Channel 3C = ) =
18
Code Selection• We use a binary code
– c(i,f)=1 if transmitter i uses channel f, otherwise 0
Channel 1
Channel 2
Channel 3
𝑅=𝐴𝑥=[ h11 h210h31
h220 ]𝑥
19
Code Selection (Cont.)• For a collision to be decodable (, matrix A
should be full rank– # transmissions in a collision # channels– Rows in matrix A are linearly independent
• Different flows select different sets of channels
– Selecting random or least used channels• Different flows that select the same channel
see different channel coefficients– Validated by previous work on location
distinction and secure communication• Use a non-binary code to further increase
the chance of having a full rank A
20
CRMA- What is the code c?- How do the sender and receiver agree on the
code?- How to decode transmissions?- How to handle decoding failures?- How to decode misaligned collisions?- How to limit # transmissions in a collision?- How to enhance spectrum utilization?
21
Code Establishment• Using control channel
– The sender and receiver negotiate the code on a separate control channel
• In band notification– Each frame has two PN sequences to denote
sender and receiver IDs– A receiver correlates the received signal
• with its ID to determine if the frame is destined to itself
• with senders’ IDs to determine who send traffic– Correlation is close to 0 except when perfectly
aligned with the IDs works under collisions!– In-band processing but no need for control
channel
22
CRMA- What is the code c?- How do the sender and receiver agree on the
code?- How to decode transmissions?- How to handle decoding failures?- How to decode misaligned collisions?- How to limit # transmissions in a collision?- How to enhance spectrum utilization?
23
Decoding Transmissions• Detect frame arrival and departure
– Correlate the received signal with the preamble and postamble
– Correlation is close to 0 except when perfectly aligned with preamble or postamble
Accurate preamble detection (e.g., false positive and false negative ratios are 0 when SINR=-2).
24
Decoding Transmissions (Cont.)• Detect sender and receiver IDs
– Correlate with PN sequences corresponding to their IDs– Consistently identifies correct IDs when SINR varies from -6 to
6• Solve
– Find is minimized• Obtain channel estimation
– Clean preamble: the standard approach– Preamble with data: iterative decoding [ZigZag]
• Solve for data x assuming A and R are known• Plug x back to Ax=R, and solve for channel coefficients
• Adapt to channel change during frame transmission: iterative decoding
25
Handling Decoding Failures• Use ACKs and retransmissions to
enhance reliability
• ACKs are sent in the same way as data frames – Receiver sends an ACK on the same set
of selected channels– Sender decodes the ACK by solving a
linear system (as decoding data frame)
26
Problem of Misaligned Collisions
Symbol 1
Symbol 2
FFT window
27
Handling Misaligned Collisions
CPi-1
CPi CPi+1
CPi-1 CPi CPi+1
Symbol i-1
Symbol i-1
Symbol i-1
Symbol i-1
Symbol i+1
Symbol i+1
offset
FTT window
• Cyclic prefix (CP) allows collided symbols fall in the same FFT window
28
Handling Misaligned Collisions
CPi-1CPi CPi+1
CPi-1 CPi CPi+1
Symbol i-1
Symbol i-1
Symbol i-1
Symbol i-1
Symbol i+1
Symbol i+1
offset
FTT windowsame
• Cyclic prefix (CP) allows collided symbols fall in the same FFT window
• Timing offset results in a phase shift after receiver FFT
• Signals perfectly align: solve • With misalignment of • Use synchronization to keep the offset within
[nT, nT + CP] (e.g., SourceSync, FICA)
29
Other Design Components• Limiting overlapping transmissions
– Different from IEEE 802.11, CWmin = 0– Use exponential backoff upon loss
• Enhancing spectrum utilization– When # flows # channels , each physical flow
creates multiple virtual flows so that is close to to increase utilization
30
Evaluation Methodology• Testbed experiments show feasibility
– Implement CRMA on top of the default OFDM implementation in USRP
– 5 GHz, BPSK, 200 subcarriers, each 1.95KHz
• Qualnet simulations evaluate efficiency– Compare CRMA w/ and wo/ virtual flows,
CSMA/CA (multiple channels), WiFi (one channel), random access
– 1000-byte frames, 16 QAM, 20MHz total spectrum divided into 10 channels
– 700 MHz for long distance, and 5 GHz for short distance networks
31
Testbed Experiments (Cont.)
SINR (dB) High SINR Low SINR0 25% 25%1 98% 95%3 98% 95%5 100% 98%7 99% 0.09%
Delivery rate of 1000-byte frames
• High decoding rate when 1 ≤ SINR ≤ 5, and degrades as SINR approaches 0 or too high.
• The latter could be improved by partial packet recovery.
32
Testbed Experiments (Cont.)
CRMA accurately decodes collisions up to 140 sample offsets.
33
Qualnet Simulation: Varying # flows in long distance
networks
CRMA-VF > CRMA > other schemes.
0
10
20
30
40
50
0 5 10 15 20
Total
thro
ughp
ut (M
bps)
Number of flows
CRMA-VFCRMACSMAR_ACCESSWIFI
34
Qualnet Simulation: Varying # flows in short distance
networks
10 20 30 40 50 60 70
0 2 4 6 8 10 12 14 16 18
Total
thro
ughp
ut (M
bps)
Number of flows
CRMA-VFCRMACSMAR_ACCESSWIFI
CRMA-VF > CRMA > other schemes.
35
Qualnet Simulation:Varying data rate
CRMA significantly out-performs the other schemes and its benefit increases with data rate.
0.3 0.4 0.5 0.6 0.7 0.8 0.9
1
1 2 4 8 16 32 64
Norm
alize
d Thr
ough
put
Data Rate (Mbps)
CRMACSMAR_ACCESSWIFI
Related Work• Decoding collisions
– Successive interference cancellation, ZigZag, analog network coding, …
– CRMA: a MAC protocol based on ability to decode collisions
• CDMA– Synchronous CDMA: handful orthogonal codes and
requires tight synchronization– Asynchronous CDMA: suffers Multiple Access
Interference (MAI)• Channel assignment and channel hopping
– Try to avoid collisions– CRMA: a new perspective on spectrum sharing
36
37
Summary of CRMA• CRMA: a new direction for spectrum sharing
– A new encoding and decoding scheme– A new MAC protocol based on it– Experimental evaluation to show it can achieve
high efficiency without fine-grained coordination
• Future work – Robust to channel estimation errors– Effectively support high data rate– More graceful degradation as # transmissions
exceeds # channels
38
Our Work• Spectrum sharing
– Develop an efficient MAC for multiple nodes to share the medium
• Spectrum access– Develop and implement multi-point to
multi-point MIMO
39
Multi-point to Multi-point MIMO in WLANs
Joint work with Sangki Yun and Apurv Bhartia
Under submission
40
Overview• Motivation
– MIMO promises a dramatic capacity increase
• 802.11n, 802.11ac, …– But usually limited by # antennas at an AP
– Multi-point to multi-point MIMO achieves a
higher capacity and overcomes the limitations
41
Multi-point to Multi-point MIMO
AP1 AP2 APn
Client1 Client2 Clientn
n concurrent downlinkor uplink streams
42
Multi-point to Multi-point MIMO
AP1 AP2 APn
Client1 Client2 Clientn
n concurrent downlink
Is it feasible?
43
Our Contributions• Demonstrate the feasibility and
effectiveness of multi-point to multi-point MIMO on USRP and SORA
• Design multi-point to multi-point MIMO-aware MAC
• Extensions to support general traffic and network conditions
44
Our Contributions• Demonstrate the feasibility and
effectiveness of multi-point to multi-point MIMO on USRP and SORA
• Design multi-point to multi-point MIMO-aware MAC
• Extensions to support general traffic and network conditions
45
Point-to-Point MIMOAP
Client
[𝑦 1𝑦 2]=H [𝑝1
𝑝2]
46
Multi-point to Multi-point MIMO: Downlink
AP1 AP2 APn
Client1 Client2 Clientn
n concurrent downlink
47
Multi-point to Multi-point MIMO in Downlink
• Clients can not cooperate• APs perform joint precoding (e.g.,
zero-force beamforming)– Such that the combined precoded
signals arriving at the clients can be modulated as usual
– Precoding matrix W = H-1
– Received signal HWp=HH-1p= p• Is it feasible in practice?
48
Practical Challenges• Each AP has its own clock different
carrier frequency offset (CFO)
• Challenges– Phase synchronization– Time synchronization
49
Phase Synchronization (I)• Motivation
Transmitted signals:
Received signals:
The effective channel is not diagonalized as intended and the receiver cannot decode it!
50
Phase Synchronization (II)• Phase is a function of time and CFO
• Measure CFO and initial phase of lead sender
LTS
Leader AP L ead er A P
Time
LTS
LTS Co -senders
Client
Feed back
T im eC li tb ac k
DATA symbols
DATA symbols
DATA symbols
51
Phase Synchronization (III)• Synchronizing the initial phase
– Multiply precoded signals by
• Synchronizing remaining signals’ phase– Multiply n-th signal by
52
Distributed MIMO in UplinkShare the received signals over the Ethernet
Client 1
AP 2AP 1
Client 2
APs share their received signals and jointly decodey1 = h11 p1 + h12 p2
y2 = h21 p1 + h22 p2
53
MAC Design• Rate adaptation• Support ACKs• Deal with losses and collisions• Schedule transmissions• Limit Ethernet overhead• Obtain channel estimation
54
MAC Design• Rate adaptation• Support ACKs• Dealing with losses and collisions• Scheduling transmissions• Limiting Ethernet overhead• Obtaining channel estimation
55
Rate Adaptation (I)• Challenges
– Receiver receives a combination of signals from all the transmitting APs
– Per link SNR based rate adaptation does not work
56
Rate Adaptation (II)
• Error vector magnitude (EVM) based SNR– Distance between the received symbol and
the closest constellation point– Incorporate frequency diversity by
computing this metric for each subcarrier to derive BER and effective SNR
57
Support ACKs• ACKs enjoy the same spatial
multiplex in the reverse direction• Downlink
– Data: APs multiplex to clients via precoding
– ACK: clients multiplex to APs and APs jointly decode
• Uplink– Data: clients multiplex to APs and APs
jointly decode– ACK: APs multiplex to clients via
precoding
58
Evaluation• Implement downlink on USRP
– SORA transmitter has random initial phase and makes it hard to support phase sync.
• Implement uplink on SORA– Both USRP and SORA support uplink and
use SORA for higher capacity
59
Downlink Phase Misalignment
0
0.2
0.4
0.6
0.8
1
0.00 0.05 0.10 0.15
CDF
Phase misalignment ( radian angle )
Median phase misalignment is 0.075 radianand reduces SNR by 0.4 dB.
60
Downlink Throughput
Downlink throughput almost linearly increases with # antennas across different APs or clients.
0
10
20
30
40
116QAM
2QPSK
3QPSK
4BPSK
5BPSK
Throu
ghpu
t (Mbp
s)
Location ID
individual2x2 downlink3x3 downlink
61
Uplink Throughput
0
10
20
30
116QAM
2QPSK
3QPSK
4 5BPSK
Throu
ghpu
t (Mbp
s)
Location ID
individual2x2 uplink3x3 uplink
Uplink throughput almost linearly increases with # antennas across different APs or clients.
62
Ran adaptation in Downlink
0
1
2
0 100 200 300
Throu
ghpu
t (Mbp
s)
Packet Trace Index (x 20)
Best fixed ESNR
Achieves close to 96% throughput of best fixed rate.
63
Summary• First step towards multi-point to
multi-point MIMO
• This new transmission method opens up– New network optimization – New network management– New applications
64
Thank you!
64
65
Qualnet Simulation:Varying payload size
CRMA out-performs the other schemes and its benefit is larger for small packets.
10 20 30 40 50 60 70 80
100 200 400 600 1000 1200 1500
Total
thro
ughp
ut (M
bps)
Payload size (Bytes)
CRMACSMAR_ACCESSWIFI
66
Testbed Experiments (Cont.)
Phase shift correctly compensate for the offset signal.
Ethernet
Client 1
Commander
Client 2 Client n
68
Frequency Synchronization• Motivation
– Each AP has itw own clock and has different carrier frequency offset (CFO)
• Our approach– Measurement phase: all senders
transmit preambles in order and let a receiver estimate CFO
– Compensation phase: each transmiter except the lead sender multiples to its data signals, where n is the signal index
69
Multi-point to Multi-point MIMO in Downlink
• Clients can not cooperate• APs perform joint precoding (e.g.,
zero-force beamforming)– Such that the combined precoded
signals arriving at the clients can be modulated as usual
– Precoding matrix W = HT(HHT)-1
– Received signal HWx=HHT(HHT)-1x= x• Is it feasible in practice?
70
Overview• Motivation
– MIMO promises a dramatic capacity increase
• 802.11n, 802.11ac, …– But usually limited by # antennas at an AP
– Multi-point to multi-point MIMO achieves a
higher capacity and overcomes the limitations
• State-of-art– Theory: significant work on distributed
MIMO– Practice: not clear how well it works in
reality