Wireless Communication Systems
@CS.NCTU
Lecture 14: Full-Duplex Communications
Instructor: Kate Ching-Ju Lin (林靖茹)
1
Outline
• What’s full-duplex
• Self-Interference Cancellation
• Full-duplex and Half-duplex Co-existence
• Full-duplex relaying
2
What is Duplex?
• Simplex
• Half-duplex
• Full-duplex
How Half-duplex Works?
• Time-division half-duplex
• Frequency-devision half-duplex
Co-Channel (In-band) Full-duplex
• The transmitted signals will be an interference of the received signals!
• But, we know what we are transmitting à Cancel it!
Very strong self-interference (~70dB for 802.11)
Benefits beyond 2x Gain
• Can solve some fundamental problems
⎻ Hidden terminal
⎻ Primary detection for cognitive radios
⎻ Network congestion and WLAN fairness
⎻ Excessive latency in multihop wireless
6
Mitigating Hidden Terminal
7
• Current network have hidden terminals
⎻ CSMA/CA cannot solve this
⎻ Schemes like RTS/CTS introduce significant overhead
• Full-duplex solves hidden terminals
⎻ Since both slides transmit at the same time, no hidden terminals exist
X
Primary Detection in Whitespaces Primary Detection in Whitespaces
Secondary transmitters should sense for primary transmissions before channel use
Time
56
Primary TX (Wireless Mics)
Secondary TX (Whitespace AP)
Primary sensing
Primary TX (Wireless Mics)
Secondary TX (Whitespace AP)
Traditional nodes may still interfere during transmissions
Interference
8
Primary Detection in Whitespaces
Secondary transmitters should sense for primary transmissions before channel use
Time
57
Primary sensing
Primary TX (Wireless Mics)
Secondary TX (Whitespace AP)
Full-duplex nodes can sense and send at the same time
Primary sensing
Primary TX (Wireless Mics)
Secondary TX (Whitespace AP)
9
Primary Detection in Whitespaces
Network Congestion and Fairness
Network Congestion and WLAN Fairness
Without full-duplex:
•
1/n bandwidth for each node in network, including APDownlink Throughput = 1/n Uplink Throughput = (n-1)/n
58 10
Network Congestion and WLAN Fairness
Without full-duplex:
•
1/n bandwidth for each node in network, including APDownlink Throughput = 1/n Uplink Throughput = (n-1)/n
59
With full-duplex:
•
AP sends and receives at the same timeDownlink Throughput = 1 Uplink Throughput = 1 11
Network Congestion and Fairness
Reducing Round-Trip Time
Long delivery and round-trip times in multi- hop networks
Solution: Wormhole routing
N1 N2 N3 N4
N1
N2
N3
N4
N1
N2
N3
N4
Time Time
Half-duplex
Time
Full-duplex
Reducing Round-Trip Times
12 60
Outline
• What’s full-duplex
• Self-Interference Cancellation
• Full-duplex and Half-duplex Co-existence
• Full-duplex relaying
13
Self-Interference Cancellation
Y = Hx + H
selfx
self+ n
Hserlf H
Wanted signals Unwanted
self-interference
Challenge1: self-interference is much stronger than wanted signals, i.e.,|H
self|
2≫ |H|
2Challenge 2: hard to learn real H
selfSelf-Interference Cancellation
• Analog interference cancellation
⎻ RF cancellation (~25dB reduction)
⎻ Active
• Digital interference cancellation
⎻ Baseband cancellation (~15dB reduction)
⎻ Active
• Antenna cancellation
⎻ Passive
What Makes Cancellation Non-Ideal?
• Transmitter and receiver phase noise
• LNA (low-noise amplifier) and Mixer noise figure
• Tx/Rx nonlinearity
• ADC quantization error
• Self-interference channel
16
Noise figure (NF) is the measure of degradation of SNR caused by
components in a RF chain
Analog Cancellation
• Why important?
⎻ Before digital cancellation, we should avoid saturating the Low Noise Amplifier and ADC
⎻ Eg., Tx power = 20 dBm and LNA with a saturation level -25dB à at least need -45 dB of analog
cancellation
• Major drawback
⎻ Need to modify the radio circuitry
⎻ Should be added after RF down-converter but
before the analog-to-digital converter, usually not accessible
17
Analog Cancellation
• Objective is to achieve exact 0 at the Rx antenna
• Cancellation path = negative of interfering path
• These techniques need analog parts
18
RF
Up
h
Ix[n]
Cancellation Path
+ 0
Digital Cancellation
• Cancel interference at baseband
• Conceptually simpler – requires no new
“parts”
• Useles
s if interference is too strong (ADC bottleneck)19
RF
Up
h
Ix[n]
Cancellation Path
+
DownRF BasebandHow Digital Cancellation Works?
• Assume only Tx is transmitting à Tx receives self-interference
• Estimate the self-channel
• When Rx starts transmitting à Tx now receives
• Cancel self-interference by
20
DAC ADC Xtx
Ytx
Node 1 (Tx)
Htx,tx
Node2 (Rx) Xrx DAC
Hrx,tx
Y = Htx,txXtx + n
Hˆtx,tx = Y Xtx
Y = Hrx,txXrx + Htx,txXtx + n
Yrx Y Hˆtx,txXtx = Hrx,txXrx + n
Digital Cancellation for OFDM
• Cancel for each subcarrier separately
• But, can’t just perform cancellation in the frequency domain à Why
⎻ Hard to do iFFT à Cancellation à FFT in real-time
• How can we do digital cancellation for each subcarrier in the time-domain?
⎻ See FastForward [Sigcomm’14]
21
Yrx[k] Y [k] H[k]ˆ tx,txXtx[k] = Hrx,tx[k]Xrx[nk] + n
Combine RF/Digital Cancellation
22
Tx Rx
DAC ADC
Tx samples
RF canceler Tx signal
Adapter Σ
Rx samples
Analog
Cancellation
Digital
Cancellation
Antenna Cancellation
• Separate the antennas such that the two signals become deconstructive
⎻ The distance different = λ/2
~30dB self-interference cancellation
combined with analog/digital cancellation
à 70 dB
Antenna Cancellation: Block Diagram
24
Tx
RF Frontend Rx
RF Frontend
Digital processor
Power splitter Attenuator
Rx Tx
Tx
Performance
25
-60 -55 -50 -45 -40 -35 -30 -25
0 5 10 15 20 25
RSSI (dBm)
Position of Receive Antenna (cm)
TX1 TX2
Only TX1 Active
Only TX2 Active Both TX1 &
TX2 Active
Antenna Cancellation: Performance
27
Null Position
Impact of Bandwidth Bandwidth Constraint
35
fc fc+B
fc -B
d d + λ/2
TX1 RX TX2
d2 d2 + λ+B/2
TX1 RX TX2
d1 d1 + λ-B/2
TX1 RX TX2
WiFi (2.4G, 20MHz) => ~0.26mm precision error A λ/2 offset is precise for one frequency
not for the whole bandwidth
26
Bandwidth v.s. SIC Performance Bandwidth Constraint
37
2.4 GHz 5.1 GHz 300 MHz
•
WiFi (2.4GHz, 20MHz): Max 47dB reduction•
Bandwidth => Cancellation➡•
Carrier Frequency => Cancellation27
Outline
• What’s full-duplex
• Self-Interference Cancellation
• Full-duplex and Half-duplex Co-existence
• Full-duplex relaying
28
Full-Duplex Radios
• Transmit and receive simultaneously in the same frequency band
• Suppress self-interference (SI)
[Choi et al. 2010, Bharadia et al. 2013]AP
send receive
self interference
Three-Node Full-Duplex
• Commodity thin clients might only be half-duplex
• Inter-client interference (ICI)
⎻ Uplink transmission interferes downlink reception
AP
Alice Bob
downlink uplink
interference
Access Control for 3-Node FD
• ICI might degrade the gain of full-duplex
⎻ Appropriate client pairing is required
⎻ Always enabling full-duplex may not good due to inter-client interference
⎻ Switch adaptively between full-duplex and half- duplex
AP
Rx1 Small ICI
Rx2
Tx1
Tx2 Rx3
Existing Works
• Only allow hidden nodes to enable full- duplex
[Sahai et al. 2011]⎻ Favor only part of clients, e.g., hidden nodes
• Pair clients based on historical transmission success probability
[Singh et al. 2011]⎻ Statistics takes time and might not be accurate due to channel dynamics
• Schedule all the transmissions based on given traffic patterns
[Kim et al. 2013]⎻ Need centralized coordinator and expensive overhead of information collection
Our Proposal: Probabilistic-based MAC
• Flexible adaptation
⎻ Adaptively switch between full-duplex and half-duplex
• Fully utilizing of full-duplex gains
⎻ Assign a pair of clients a probability of full- duplex access
⎻ Find the probabilities so as to maximize the expected overall network throughput
• Distributed random access
⎻ Clients still contend for medium access based on the assigned probability in a distributed way
Candidate Pairing Pairs
• Full-duplex pairs
⎻ Only allows those with both clients with non- negligible rates
⎻
• Half-duplex virtual pairs
⎻ Let ‘0’ denote the index of a virtual empty node
⎻
• All candidate pairs
⎻
Assign each pair a probability p(i,j)
Linear Programming Model
Expected total rate
Downlink fairness
Uplink fairness
Sum probability
Probabilistic Contention
• AP selects downlink user i with probability
• Given downlink user i, uplink users adjust its priority by changing its contention window to
AP
Rx1
Rx2
Tx1
Tx2 Rx3
1. AP selects downlink user first
2. Uplink clients
contend by CSMA/CA
Outline
• What’s full-duplex
• Self-Interference Cancellation
• Full-duplex and Half-duplex Co-existence
• Full-duplex relaying
37
Today’s Wireless Networks
• Ideally, 802.11ac and 802.11n support up to 780 Mb/s and 150 Mb/s, respectively
• In reality, signals experience propagation loss
What Can We Do?
• Increase capacity and coverage using relay
relay
Traditional Half-Duplex Relaying
TX and RX in a time/frequency division manner
direct
Half Duplex relayed buffer or
switch frequency
RX TX
symbol 1 direct
relayed symbol 1 symbol 2
time symbol 2
symbol n symbol n
…
…
Improve SNR, but also halve the bandwidth
Full-Duplex Relaying!
Simultaneous TX and RX on the same frequency
direct
Full Duplex relayed self-interference
cancellation
TX
symbol 1 direct
relayed symbol 1 symbol 2
time symbol 2
symbol n symbol n
…
…
Improve SNR without halving the bandwidth
RX
1. Amplify-and-forward or Construct-and-forward
2. Demodulate-and-forward
relayed
rather decrease the SNR
direct
relayed
combined
rotate before forward
amplify constructively
may amplify destructively
[FastForward, SIGCOMM’14]
direct I
Q
I
Q
combined
[DelayForward, MobiHoc’16]
Pros and Cons of Amplify-and-Forward
✔Negligible processing delay at relay
✘ Also amplifying the noise at the relay
Still decodable with OFDM
noise direct
relayed noise
noise
noise
noise combined CP symbol1
direct
Δt
relayed
CP symbol2 CP symbol1 CP symbol2
S↑
N↑
1. Amplify-and-forward or Construct-and-forward
2. Demodulate-and-forward
relayed
rather decrease the SNR
direct
relayed
combined
rotate before forward
amplify constructively
may amplify destructively
[FastForward, SIGCOMM’14]
direct I
Q
I
Q
combined
11
Nr 01
00 10
x’ x Q
I
denoise at the relay noise
noise
relayed direct
only amplify the signal
S↑
N
Challenges: Mixed Symbols
• Demodulation takes a much longer time
⎻ Receive the whole symbol à FFT à demodulation à modulation à IFFT
• It’s unlikely to fast forward within a CP interval
Inter-symbol interference at the destination
Need to recover from mixed symbols
CP symbol 1 direct
relayed Δt
CP symbol 2
CP symbol 1 CP symbol 2
• Introduce delay to enable symbol-level alignment
• Structure of combined signals is analogous to convolutional code
How to Ensure Decodability?
reception + processing + delay
x1 x2 x3 x4 … xn-1
…
xn direct
relayed x1 x2 x3 x4 xn-1 xn
x5 x6
xn-3 xn-2
xi xi-1 xi-2 direct +
relayed
combined
à Viterbi-type Decoding
Pros and Cons of Delay-and-Forward
✔Negligible processing delay at relay
✘ Also amplifying the noise at the relay
Still decodable with OFDM
noise direct
relayed noise
noise
noise
noise combined CP symbol1
direct
Δt
relayed
CP symbol2 CP symbol1 CP symbol2
S↑
N↑