Improving Wireless Mesh Network Throughput with Superposition

advertisement
A 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)
1
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
2
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( n) 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
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
2  for α in [2,3) and random placement

n
and Tse, IEEE Trans. Info. Theory’07]

Optimal scaling requires cooperative transmission when
node placements are “less regular” [Niesen, Gupta and Shah’08]
[Ozgur, Leveque
4
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
5
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

Ri
hij
Sj
A snapshot of a local neighborhood
Y = HX+N; X: input, Y: output, N: noise
6
GIAC Problem Formulation (cont’d)

How to enable simultaneous transmissions?
Sender precoding
Receiver
interference
cancellation
Y  H Φ1 X  Φ2 X  N
Goal:
H   Φ2  
where is a diagonal matrix
Thus, yi=λixi+Ni
7
GIAC Problem Formulation (cont’d)

Example:

u1 has required channel state information

u1 can trigger S1 and S2 to transmit simultaneously
S1
u1
R1
S2
u2
R2
t=0
8
GIAC Problem Formulation (cont’d)

Example:

u1 has required channel state information

u1 can trigger S1 and S2 to transmit simultaneously
S1
u1
R1
S2
u2
R2
t=1
9
GIAC Problem Formulation (cont’d)

Example:

u1 has required channel state information

u1 can trigger S1 and S2 to transmit simultaneously
S1
u1
R1
S2
u2
R2
t=2
10
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
11
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
Ri
Sj
Rj
12
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
Ri
Sj
Rj
13
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
14
GIAC: Optimal Algorithm for a Special
Case (cont’d)

Example
S4
S1
pkt1,pkt2, pkt3:
R1
n1, n2, n3: 2
n3<|{pkt1, pkt2 , pkt3}|
S2
S3
R2
|{pkt1 , pkt2}| = min{n1 , n2}
2
1
{pkt1, pkt2}
Stop!
R3
15
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.
W  [  ,,  ]  Max (W  R)  
W
[ρ, …, ρ]
R
R
16
GIAC Algorithm for One-Hop
Opportunities (cont’d)

Convex programming to compute feasibility
K
m in im ize f ([ w1 , w2 ,  , wk ])   wi 
i 1
s.t .
K
w
i
i 1
1
wi  0
| hii' |2
f ([ w1 , w2 ,  , wk ])  max wi B log2 (1 
)
N
i 1
i
s.t.
'
H  H
k
Notation:
H: channel matrix
m: number of senders
k: number of receivers
Ф: coding coefficient matrix
P: max power
Ni: noise at receiver Ri
i  j , 1  i, j  k : hij'  0
k
1  i  m :  | ij |2  P
j 1
17
GIAC Algorithm for One-Hop
Opportunities (cont’d)
1.
2.
3.
Let PKT be the set of packets to be
transmitted
For each pkti, Let ni be the number of
senders
 PKT}
While |PKT|> min{ni | pkti
4.
Let pkt be the one with minimal ni
5.
PKT = PKT-{pkt}
6.
done
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
Generalize the special case's optimal algorithm
18
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 |
19
GIAC Algorithm for One-Hop
Opportunities (cont’d)

Example
S1
R1
R1
Max matching
of pkt1
S1
|M1|=2
S2
S2
R2
R2
Receivers not interfered by pkt1:
{R3}
|L1|=1
S3
n1 = |M1|+ |L1|=3
R3
Similarly, n2= |M2|+ |L2|=1+2=3;
n3= |M3|+ |L3|=2+1=3
20
GIAC Algorithm for One-Hop
Opportunities (cont’d)

Example 2
S3
S1
S2
R1
R2
Create pseudo
senders
S1
S2
R1
R2
S4
21
GIAC Implementation in GNU Radio

Time synchronization

Only need to synchronize within
cyclic prefix

Sampling rate 500KHz
Drift
within
0.75
Drift within 0.75 samples/s
samples/sec
ec
22
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
23
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]
24
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?
25
Q and A
Questions?
26
MatrixNet Architecture
MatrixNet
Architecture
Management Information Base
Fairness
Policy
…
Power
Management
Policy
Routing/flow Information Base
Routing
Information
Base
MatrixNet
Encoding/Decoding
Concurrency
Selection
MatrixNet
MAC
Local
Flows
Local Channel Information
Base
Local
Interference
Graph
MatrixNet
Routing
Coordination
Vectors
Overheard
Queue
Forwarding
Queue
MatrixNet Frame
Queue
Estimated
Local Node-pair
Channels
27
Routing
Local
Interference
Graph
Estimated local
node-pair
Channels
(disseminate)
Overheard
packet
cache
Inferred local
flows
Concurrency
Algorithm &
Scheduler
Pending
packet
queue
Encoding &
decoding
vectors
(disseminate)
Coordinated
transmission
MatrixNet
Architecture
28
Download