Advanced Architectures for Self-interference Cancellation ...
A General Algorithm for Interference Alignment and Cancellation in Wireless Networks
description
Transcript of A General Algorithm for Interference Alignment and Cancellation in Wireless Networks
![Page 1: A General Algorithm for Interference Alignment and Cancellation in Wireless Networks](https://reader036.fdocuments.us/reader036/viewer/2022081603/56815c94550346895dcaa1f9/html5/thumbnails/1.jpg)
1
A General Algorithm for Interference Alignment and
Cancellation in Wireless NetworksLi (Erran) Li
Bell Labs, Alcatel-Lucent
Joint work with: Richard Alimi (Yale), Dawei Shen (MIT), Harish Viswanathan (Bell Labs),
Richard Yang (Yale)
![Page 2: A General Algorithm for Interference Alignment and Cancellation in Wireless Networks](https://reader036.fdocuments.us/reader036/viewer/2022081603/56815c94550346895dcaa1f9/html5/thumbnails/2.jpg)
22
Talk Outline
Wireless mesh network design General interference alignment and cancellation (GIAC)
problem Design overview Problem formulation Computational complexity Algorithm
GNU radio testbed implementation Related work Conclusion and future work
![Page 3: A General Algorithm for Interference Alignment and Cancellation in Wireless Networks](https://reader036.fdocuments.us/reader036/viewer/2022081603/56815c94550346895dcaa1f9/html5/thumbnails/3.jpg)
33
Limitation of Conventional Mesh Network Design
Current mesh networks have limited capacity [dailywireless.org]
Increased popularity of video streaming and large downloads will only worsen congestion
Network-wide transport capacity does not scale [Gupta and Kumar 2001]
O( ) where n is the number of users Traditional design limitations:
Treats wireless transmission as a point-to-point link for unicast
Treats interference from other transmissions as noise
n
![Page 4: A General Algorithm for Interference Alignment and Cancellation in Wireless Networks](https://reader036.fdocuments.us/reader036/viewer/2022081603/56815c94550346895dcaa1f9/html5/thumbnails/4.jpg)
44
A New Paradigm for Mesh Network Design
Wireless networks propagate information rather than transporting packets Physical layer: interference cancellation, zero forcing,
interference alignment Network coding
Capacity scales better in this new paradigm for α in [2,3) and random placement [Ozgur, Leveque
and Tse, IEEE Trans. Info. Theory’07]
Optimal scaling requires cooperative transmission when node placements are “less regular” [Niesen, Gupta and Shah’08]
2n
![Page 5: A General Algorithm for Interference Alignment and Cancellation in Wireless Networks](https://reader036.fdocuments.us/reader036/viewer/2022081603/56815c94550346895dcaa1f9/html5/thumbnails/5.jpg)
55
GIAC Design Overview
Goal: increase concurrency through interference cancellation techniques
Design constraints and guidelines
Global cooperation not practical: cooperate locally
No explicit exchange of data packets for cooperation: exploit naturally occurring opportunities
Channel state information essential for any cooperative techniques: exchange only channel state information and necessary signaling messages
![Page 6: A General Algorithm for Interference Alignment and Cancellation in Wireless Networks](https://reader036.fdocuments.us/reader036/viewer/2022081603/56815c94550346895dcaa1f9/html5/thumbnails/6.jpg)
66
GIAC Problem Formulation
Objective: find the max number of simultaneous transmissions
Connectivity graph G=(V, E) Interference graph GI=(V, EI) A set of senders S V A set of receivers R V Receiver can be one or two hops away
from sender pkti is destined to Ri Each node u has a packet pool Lu which
records overheard packets Assume transmission rate is fixed at ρ Assume channel matrix H is known
Y = HX+N; X: input, Y: output, N: noise
A snapshot of a local neighborhood
Sj
Ri
hij
![Page 7: A General Algorithm for Interference Alignment and Cancellation in Wireless Networks](https://reader036.fdocuments.us/reader036/viewer/2022081603/56815c94550346895dcaa1f9/html5/thumbnails/7.jpg)
77
GIAC Problem Formulation (cont’d) How to enable simultaneous transmissions?
NXΦXΦHY 21
Goal: where is a diagonal matrix
Thus, yi=λixi+Ni
Sender pre-coding
Receiver interference cancellation
ΦH 2
![Page 8: A General Algorithm for Interference Alignment and Cancellation in Wireless Networks](https://reader036.fdocuments.us/reader036/viewer/2022081603/56815c94550346895dcaa1f9/html5/thumbnails/8.jpg)
88
GIAC Problem Formulation (cont’d)
Example: u1 has required channel state information u1 can trigger S1 and S2 to transmit simultaneously
S1
R1
S2R2
u1
u2
t=0
![Page 9: A General Algorithm for Interference Alignment and Cancellation in Wireless Networks](https://reader036.fdocuments.us/reader036/viewer/2022081603/56815c94550346895dcaa1f9/html5/thumbnails/9.jpg)
99
GIAC Problem Formulation (cont’d)
Example: u1 has required channel state information u1 can trigger S1 and S2 to transmit simultaneously
S1
R1
S2R2
u1
u2
t=1
![Page 10: A General Algorithm for Interference Alignment and Cancellation in Wireless Networks](https://reader036.fdocuments.us/reader036/viewer/2022081603/56815c94550346895dcaa1f9/html5/thumbnails/10.jpg)
1010
GIAC Problem Formulation (cont’d)
Example: u1 has required channel state information u1 can trigger S1 and S2 to transmit simultaneously
S1
R1
S2R2
u1
u2
t=2
![Page 11: A General Algorithm for Interference Alignment and Cancellation in Wireless Networks](https://reader036.fdocuments.us/reader036/viewer/2022081603/56815c94550346895dcaa1f9/html5/thumbnails/11.jpg)
1111
Talk Outline
Wireless mesh network design General interference alignment and cancellation (GIAC)
problem Design overview Problem formulation Computational complexity Algorithm
GNU radio testbed implementation Related work Conclusion and future work
![Page 12: A General Algorithm for Interference Alignment and Cancellation in Wireless Networks](https://reader036.fdocuments.us/reader036/viewer/2022081603/56815c94550346895dcaa1f9/html5/thumbnails/12.jpg)
1212
GIAC Complexity: Sender Side
Computational complexity matters because algorithm runs in fast path
The interference control problem is NP-hard Consider a special case where the packet pool at each
node is empty Reduction from max independent set
for each e=(vi, vj), create a gadget with sender Si, Sj, and receiver Ri, Rj where Si, Sj has pkti, pktj
Si
Sj
Ri
Rj
![Page 13: A General Algorithm for Interference Alignment and Cancellation in Wireless Networks](https://reader036.fdocuments.us/reader036/viewer/2022081603/56815c94550346895dcaa1f9/html5/thumbnails/13.jpg)
1313
GIAC Complexity: Receiver Side
The problem is NP-hard Reduction from clique: given G=(V,E), for each e=(vi,
vj), create a gadget with sender Si, Sj, and receiver Ri, Rj where Si, Sj has pkti, pktj and receiver Ri, Rj has pktj, pkti
Assume H has full rank (no channel alignments)Si
Sj
Ri
Rj
![Page 14: A General Algorithm for Interference Alignment and Cancellation in Wireless Networks](https://reader036.fdocuments.us/reader036/viewer/2022081603/56815c94550346895dcaa1f9/html5/thumbnails/14.jpg)
1414
GIAC: Optimal Algorithm for a Special Case
Assumptions No receiver-side cancellation Channel matrix H has full rank (ignore channel alignment cases) No power constraint
Key intuition: for each transmitted packet pkti, need an independent packet pkti to cancel its interference at each receiver
1. Let PKT be the set of packets to be transmitted
2. For each pkti, Let ni be the number of senders
3. While |PKT|>min{ni | pkti PKT}
4. Let pkt be the one with minimal ni
5. PKT = PKT-{pkt}
6. done
![Page 15: A General Algorithm for Interference Alignment and Cancellation in Wireless Networks](https://reader036.fdocuments.us/reader036/viewer/2022081603/56815c94550346895dcaa1f9/html5/thumbnails/15.jpg)
1515
GIAC: Optimal Algorithm for a Special Case (cont’d)
S1
S2
S4
R1
R2
S3 R3
pkt1,pkt2, pkt3:
n1, n2, n3: 2 2 1
Example
{pkt1, pkt2}
|{pkt1 , pkt2}| = min{n1 , n2} Stop!
n3<|{pkt1, pkt2 , pkt3}|
![Page 16: A General Algorithm for Interference Alignment and Cancellation in Wireless Networks](https://reader036.fdocuments.us/reader036/viewer/2022081603/56815c94550346895dcaa1f9/html5/thumbnails/16.jpg)
1616
GIAC Algorithm for One-Hop Opportunities
Feasibility problem: Given a set of packets and
power constraint at each sender, can they be transmitted at the same time at a given rate?
Yes, a feasible solution does not exist iff there exists W s.t. R)(WMax],,[W
R
[ρ, …, ρ]
W
R
![Page 17: A General Algorithm for Interference Alignment and Cancellation in Wireless Networks](https://reader036.fdocuments.us/reader036/viewer/2022081603/56815c94550346895dcaa1f9/html5/thumbnails/17.jpg)
1717
GIAC Algorithm for One-Hop Opportunities (cont’d)
Convex programming to compute feasibility
0
1
..
)],,,[( minimize
1
121
i
K
ii
K
iik
w
w
ts
wwwwf
k
jij
ij
k
i i
iiik
Pmi
hkjiji
HHts
NhBwwwwf
1
2
'
'
1
2'
221
|| :1
0 : ,1 ,
..
)||1(logmax)],,,[(
Notation:H: channel matrixm: number of sendersk: number of receiversФ: coding coefficient matrixP: max powerNi: noise at receiver Ri
![Page 18: A General Algorithm for Interference Alignment and Cancellation in Wireless Networks](https://reader036.fdocuments.us/reader036/viewer/2022081603/56815c94550346895dcaa1f9/html5/thumbnails/18.jpg)
1818
GIAC Algorithm for One-Hop Opportunities (cont’d)
1. Let PKT be the set of packets to be transmitted
2. Create pseudo senders for any packet pkt a receiver has
3. While NotFeasible(PKT, H, ρ)
4. ni = maxNonIntR(PKT, H, i), i=1,2,…,|PKT|
5. Let pkt be the one with minimal ni
6. PKT = PKT-{pkt}
7. done
1. Let PKT be the set of packets to be transmitted
2. For each pkti, Let ni be the number of senders
3. While |PKT|> min{ni | pkti PKT}
4. Let pkt be the one with minimal ni
5. PKT = PKT-{pkt}
6. done
Generalize the special case's optimal algorithm
![Page 19: A General Algorithm for Interference Alignment and Cancellation in Wireless Networks](https://reader036.fdocuments.us/reader036/viewer/2022081603/56815c94550346895dcaa1f9/html5/thumbnails/19.jpg)
1919
GIAC Algorithm for One-Hop Opportunities (cont’d)
Computing max non-interfering receivers of pkti : maxNonIntR(PKT, H, i) Find the maximum matching Mi between senders with pkti
and receivers in interference graph; Let Li be the set of receivers not interfered by pkti and not
in the matching maxNonIntR(PKT, H, i) = | Mi | + | Li |
![Page 20: A General Algorithm for Interference Alignment and Cancellation in Wireless Networks](https://reader036.fdocuments.us/reader036/viewer/2022081603/56815c94550346895dcaa1f9/html5/thumbnails/20.jpg)
2020
GIAC Algorithm for One-Hop Opportunities (cont’d)
Example
S1
R1
S2
S3
R2
R3
Receivers not interfered by pkt1: {R3}
Similarly, n2= |M2|+ |L2|=1+2=3; n3= |M3|+ |L3|=2+1=3
|M1|=2
|L1|=1
n1 = |M1|+ |L1|=3
S1 R1
S2 R2
Max matching of pkt1
![Page 21: A General Algorithm for Interference Alignment and Cancellation in Wireless Networks](https://reader036.fdocuments.us/reader036/viewer/2022081603/56815c94550346895dcaa1f9/html5/thumbnails/21.jpg)
2121
GIAC Algorithm for One-Hop Opportunities (cont’d)
Example 2
S1R1
S2 R2
Create pseudo senders
R1
R2
S1
S2
S3
S4
![Page 22: A General Algorithm for Interference Alignment and Cancellation in Wireless Networks](https://reader036.fdocuments.us/reader036/viewer/2022081603/56815c94550346895dcaa1f9/html5/thumbnails/22.jpg)
2222
GIAC Implementation in GNU Radio
Time synchronization Only need to synchronize within
cyclic prefix Sampling rate 500KHz
Drift within 0.75 samples/sec
Drift within 0.75 samples/sec
![Page 23: A General Algorithm for Interference Alignment and Cancellation in Wireless Networks](https://reader036.fdocuments.us/reader036/viewer/2022081603/56815c94550346895dcaa1f9/html5/thumbnails/23.jpg)
23
GIAC Implementation in GNU Radio: (cont’d)
Channel estimation and feedback Need amplitude and phase offset Stable phase offset estimate difficult in GNU radio
Current estimation error: 15~20Hz Feedback delay: software processing delay, hardware--
software latency
![Page 24: A General Algorithm for Interference Alignment and Cancellation in Wireless Networks](https://reader036.fdocuments.us/reader036/viewer/2022081603/56815c94550346895dcaa1f9/html5/thumbnails/24.jpg)
2424
Related Work
Practical interference cancellation techniques Networked MIMO [Samardzija et al, Bell Labs Project 2005~now] Physical/analog layer network coding [Zhang et al, MOBICOM’06,
Katti et al, SIGCOMM’07]
Interference alignment and cancellation [Gollakota, Perli, Katabi, SIGCOMM’09]
![Page 25: A General Algorithm for Interference Alignment and Cancellation in Wireless Networks](https://reader036.fdocuments.us/reader036/viewer/2022081603/56815c94550346895dcaa1f9/html5/thumbnails/25.jpg)
2525
Conclusion and Future Work
We have designed algorithms and protocols for opportunistic interference control
Ongoing and future work Implementation related
Channel phase shift estimation and feedback Other implementation platforms, e.g. Bell Labs networked MIMO
platform or MSR Sora? How to solve the problem when there are multiple
antennas? Information theory related
How much does dirty paper coding help? Can our interference control scheme achieve optimal capacity
scaling in networks with “less regular” node deployments?
![Page 26: A General Algorithm for Interference Alignment and Cancellation in Wireless Networks](https://reader036.fdocuments.us/reader036/viewer/2022081603/56815c94550346895dcaa1f9/html5/thumbnails/26.jpg)
2626
Q and A
Questions?
![Page 27: A General Algorithm for Interference Alignment and Cancellation in Wireless Networks](https://reader036.fdocuments.us/reader036/viewer/2022081603/56815c94550346895dcaa1f9/html5/thumbnails/27.jpg)
27
MatrixNet Architecture
MatrixNet Architecture
Local Interference
Graph
Local Channel Information Base
EstimatedLocal Node-pair
Channels
RoutingInformation
Base
Routing/flow Information Base
LocalFlows
FairnessPolicy
Management Information BasePower
ManagementPolicy
…
Forwarding Queue
Overheard Queue
MatrixNet Routing
MatrixNet MAC
Concurrency Selection
MatrixNetEncoding/Decoding
CoordinationVectors
MatrixNet Frame Queue
![Page 28: A General Algorithm for Interference Alignment and Cancellation in Wireless Networks](https://reader036.fdocuments.us/reader036/viewer/2022081603/56815c94550346895dcaa1f9/html5/thumbnails/28.jpg)
28
Estimated local node-pair Channels
(disseminate)
Local Interference
Graph
MatrixNet Architecture
Overheard packet cache
Concurrency Algorithm & Scheduler
Inferred local flows
Pending packet queue
Encoding & decoding vectors
(disseminate)
Coordinated transmission
Routing