Title: A General Algorithm for Interference Alignment and Cancellation in Wireless Networks
1A General Algorithm for Interference Alignment
and Cancellation in Wireless Networks
- Li (Erran) Li
- Bell Labs, Alcatel-Lucent
- Joint work with Richard Alimi (Yale), Dawei Shen
(MIT), Harish Viswanathan (Bell Labs), Richard
Yang (Yale)
2Talk 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
2
3Limitation 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
3
4A 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 a in 2,3) and random placement
Ozgur, Leveque and Tse, IEEE Trans. Info.
Theory07 - Optimal scaling requires cooperative transmission
when node placements are less regular Niesen,
Gupta and Shah08
4
5GIAC 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
5
6GIAC 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 HXN X input, Y output, N noise
Ri
hij
Sj
A snapshot of a local neighborhood
6
7GIAC Problem Formulation (contd)
- How to enable simultaneous transmissions?
Receiver interference cancellation
Sender pre-coding
Goal
where is a diagonal matrix Thus,
yi?ixiNi
7
8GIAC Problem Formulation (contd)
- Example
- u1 has required channel state information
- u1 can trigger S1 and S2 to transmit
simultaneously
S1
u1
R1
R2
S2
u2
t0
8
9GIAC Problem Formulation (contd)
- Example
- u1 has required channel state information
- u1 can trigger S1 and S2 to transmit
simultaneously
S1
u1
R1
R2
S2
u2
t1
9
10GIAC Problem Formulation (contd)
- Example
- u1 has required channel state information
- u1 can trigger S1 and S2 to transmit
simultaneously
S1
u1
R1
R2
S2
u2
t2
10
11Talk 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
11
12GIAC 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
12
13GIAC 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
Ri
Sj
Rj
13
14GIAC 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
- Let PKT be the set of packets to be transmitted
- For each pkti, Let ni be the number of senders
- While PKTgtminni pkti PKT
- Let pkt be the one with minimal ni
- PKT PKT-pkt
- done
14
15GIAC Optimal Algorithm for a Special Case
(contd)
S4
S1
R1
pkt1, pkt2
n3ltpkt1, pkt2 , pkt3
S2
pkt1 , pkt2 minn1 , n2
R2
Stop!
S3
R3
15
16GIAC 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
16
17GIAC Algorithm for One-Hop Opportunities (contd)
- Convex programming to compute feasibility
Notation H channel matrix m number of
senders k number of receivers ? coding
coefficient matrix P max power Ni noise at
receiver Ri
17
18GIAC Algorithm for One-Hop Opportunities (contd)
- Let PKT be the set of packets to be transmitted
- Create pseudo senders for any packet pkt a
receiver has - While NotFeasible(PKT, H, ?)
- ni maxNonIntR(PKT, H, i), i1,2,,PKT
- Let pkt be the one with minimal ni
- PKT PKT-pkt
- done
- Let PKT be the set of packets to be transmitted
- For each pkti, Let ni be the number of senders
- While PKTgt minni pkti PKT
- Let pkt be the one with minimal ni
- PKT PKT-pkt
- done
Generalize the special case's optimal algorithm
18
19GIAC Algorithm for One-Hop Opportunities (contd)
- 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
19
20GIAC Algorithm for One-Hop Opportunities (contd)
R1
M12
S1
S2
Receivers not interfered by pkt1 R3
L11
R2
S3
n1 M1 L13
R3
Similarly, n2 M2 L2123
n3 M3 L3213
20
21GIAC Algorithm for One-Hop Opportunities (contd)
S1
R1
Create pseudo senders
S2
R2
21
22GIAC Implementation in GNU Radio
- Time synchronization
- Only need to synchronize within cyclic prefix
- Sampling rate 500KHz
Drift within 0.75 samples/sec
22
23GIAC Implementation in GNU Radio (contd)
- Channel estimation and feedback
- Need amplitude and phase offset
- Stable phase offset estimate difficult in GNU
radio - Current estimation error 1520Hz
- Feedback delay software processing delay,
hardware--software latency
24Related Work
- Practical interference cancellation techniques
- Networked MIMO Samardzija et al, Bell Labs
Project 2005now - Physical/analog layer network coding Zhang et
al, MOBICOM06, Katti et al, SIGCOMM07 - Interference alignment and cancellation
Gollakota, Perli, Katabi, SIGCOMM09
24
25Conclusion 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?
25
26Q and A
Thank you
Questions?
26
27MatrixNet Architecture
MatrixNet Architecture
MatrixNetEncoding/Decoding
MatrixNet Routing
MatrixNet MAC
Concurrency Selection
CoordinationVectors
28 Routing
Local Interference Graph
Encoding decoding vectors (disseminate)
Concurrency Algorithm Scheduler
Estimated local node-pair Channels (disseminate)
Coordinated transmission
Overheard packet cache
Pending packet queue
Inferred local flows
MatrixNet Architecture