Wireless network coding
with partial overhearing information
Georgios S. Paschos
Massachusetts Institute of Technology (MIT)
Joint work with:
C. Fragkiadakis – University of Thessaly, Greece
L. Georgiadis – Aristotle University of Thessaloniki, Greece L. Tassiulas – University of Thessaly, Greece
Wireless network coding
•
…
use
intersession network coding
to exploit the wireless
broadcast
[Katti et al. – Sigcomm ’06 (COPE)]
•
Benefits:
•
reduces the required transmissions more
throughput
, less
power
consumption
•
The benefits apply to more scenarios using overhearing
(side information)
•
Issue:
Reporting overhearing might not be desirable
•
In this talk:
•
How to control the system without these reports
•
Transmitting XORs blindly and using feedback is very efficient
)
Overhearing example
relay
source
source
Overhearing example
overhearing
relay
source
source
Overhearing example
relay
source
source
Overhearing example
overhearing
relay
source
source
Overhearing example
relay
source
source
Overhearing example
+
+
Observations
1.
Both receivers can
decode
2.
3 txs instead of 4
(4/3 gain)
3.
Overhearing
erasures:
How does
the relay know if
packets were
overheard?
relay
source
source
Learning Side information: Two cases
ACK
•
Nodes report each overhearing
(send ACK)
•
Relay learns which packets were
overheard
ACK
•
No ACKs
•
Relay XORs blindly
•
If there is
a decoding failure
the receiver sends NACK
NACK!
NACK
+
The model
•
Focus on downlink
•
Study relay transmissions
•
Downlink channel model
•
Destination 1 receives
perfectly if at most
packets
are transmitted (similar for dest. 2)
•
…
for both receivers to receive use
•
Random arrival of packets
•
Packets arrive at the relay and with a probability
at the pairing receiver (
overhearing
)
•
Stability at the relay: the backlogs don’t grow unbounded
•
The problem:
•
Find the stability regions of ACK and NACK systems
•
Provide efficient transmission policies that use XOR
•
Compare the number of feedback reports in the two approaches
p
1
p
2
r
2
r
1
r
1
min
{
r
1, r
2}
1
2
relay
2-user Throughput regions
1
ACK: outer bound (using arbitrary coding)
ACK: region of a XOR policy
NACK: outer bound (using XORs)
NACK: region of a XOR policy
without knowledge about the channel
ACK: = , capacity region and
simple policy
NACK: = , code-constrained
region and simple policy
We will show:
- Determine the loss
- Show cases where all
four are the same!
ACK
•
Separate packets into
good
(overheard),
bad
•
Assume we are given packets- (study
policies that evacuate these)
•
Transmissions can be: {
g
1,
g
2,
b
1,
b
2,
g
1+
g
2,
…
}
•
Proposed Policy
:
•
Transmit
g
1+
g
2until one type is not available (empty queue)
•
Then use {
g
1,
g
2,
b
1,
b
2}
•
Lower Bound on evacuation time:
•
We establish a matching bound (assuming general coding func.)
•
Use “stability via evacuation” tool [Georgiadis et al. – ITW 12’]
•
Capacity region of ACK (achieved with XORs)
ACK
g
b
buffers
input queues
k
1
, k
2
1r
1+
2r
2min
{
p
1 1, p
2 2}
max
{
r
1, r
2}
1
NACK - scheme
•
Each packet is initially
unknown
.
•
Add
u
queue
•
All packets arrive in this queue
•
Stationary decision:
to XOR or not to XOR?
•
After a XOR decoding failure a packet can
either be
bad
or
good
•
good
if one packet is NACKed
•
bad
if both packets are NACKed
•
The policies choose actions from the set:
{u
1,u
2,
b
1,
b
2,
g
1,
g
2, u
1+u
2, u
1+
g
2,
g
1+u
2,
g
1+
g
2, ...}
•
We establish a lower bound (on evacuation
time) assuming XORs
buffers
input queues
NACK – policy
Proposed policy:
•
If
•
Then send u
1, u
2(no coding)
•
else
1.
u
1+
g
2or
g
1+u
22.
u
1+u
23.
b
1or
b
2or other singletons
•
Result:
•
This policy matches in evacuation performance the XOR bound
•
Code-constrained stability region
erasure prob. of (fast) flow
buffers
input queues
Stat. condition
f
2
arg max
i=1,2r
iplugin
or
r
1=
r
2p
f= 1
1.
u
1+
g
2or
g
1+u
22.
u
1+u
23.
b
1or
b
2or other singletons
Rules
Time:
7
6
5
4
3
2
1
The ACK policy needs 7 slots, too!
1.
u
1+u
22.
u
1+u
23.
u
1+u
24.
u
1+
g
25.
u
1+u
26.
u
1+u
27.
b
1Transmissions
`
•
Consider packets of equal length
•
Different rates:
red
is fast,
blue
is slow
•
Plain forwarding of 2 packet takes:
•
NACK: Blind XORs – 4 cases
1.
Both packets overheard –
performance gain
2.
The
red
/fast packet overheard –
no harm
3.
The
blue
/slow packet overheard –
harming
4.
Both packets not overheard –
harming
+
+
+
+
NACK – policy operation – different rates
reception time
Throughput: ACK beats NACK
1
=
2r
2= 3
p
2= 0
.
9
Parameters:
Throughput ratio NACK/ACK
Overhead: NACK beats ACK
W: rate of feedback messages
W
NACKTake home messages
•
We give a characterization of the tradeoff of ACK/NACK
schemes
•
ACK Capacity region and NACK code-constrained region
•
Simple stabilizing policies that use XORs
•
Loss of throughput as function of (
p
,
r
,
λ
)
•
XORing blindly and NACKing is a good alternative to
ACKs (when probabilities are high)
•
Much less control messages
Previous results
•
For the ACK (deterministic) case
•
Same rates:
index coding
•
Same rates:
linear coding
[C.-C. Wang]
•
Different rates:
Backpressure-type policy,
XOR
constraint region
[1]
•
For the NACK (stochastic) case
•
Undecoded packets are dropped: [1]
•
2-users?
•
In practice, many user coding opportunity rarely arise
(geometrical bounds, physical model bounds,
experiments)
•
Choosing combinations from larger sets is complex
ACK
NACK!
+
Learning side-information
•
Explicit ACKs [COPE]
•
Each node announces each overhearing
•
A great number of control messages
•
Piggybacking not possible if no reverse flow (
added delay
,
lost
throughput
)
•
Feedback via NACKs [COPE, NCRAWL-Broustis et al.]
•
Router XORs blindly, and feedback messages are used only for
retransmissions
•
How efficient can this be?
•
Optimal control the system under this scheme?
•
Use intrasession network coding [I
2
NC-Seferoglou et al.,
CORE-Krigslund et al.]
•
Immediate decodability
ACK & NACK capacity region
r
1
=
r
2
p
1
= 0
.
7
p
2
= 0
.
8
ACK & NACK capacity
[1]
•
System B:
•
At time 0, packets at the input – no further arrivals
•
: is the
minimum evacuation time
•
Consider the quantity for large
•
System A is stable iff
≤
1
•
An (asymptotically) minimum evacuation policy in B can be mapped
to a throughput optimal policy in A
Methodology – evacuation times
k
T
⇤
(
k
)
T
⇤(
t
)
t
k
t
•
Strategy for both ACK, NACK:
•
Study system B
•
Find lower bounds on the evacuation time of any policy
•
Propose an evacuation policy: compare the asymptotic performance
•
If they match, we have:
•
The proposed policy is an asymptotically minimum evacuation policy on B
•
System A stability region
•
A throughput optimal policy on A (that is based on the decisions of evacuation
policy on B)
Methodology – evacuation times (cntd)
k
T
⇤
(
k
)
k
•
Example with deterministic service rate
A simple example
40
10
k
T
(k) =
⇠
k
4
⇡
)
T
ˆ
( ) = lim
t
!1
⌃
t
4
⌥
t
=
4
Thm
:
4pkt/slot
)
4