Symbol Level Network Coding By Sachin Katti, Dina Katabi, Hari Balakrishnan, Muriel Medard

advertisement
Symbol Level Network Coding
By
Sachin Katti, Dina Katabi, Hari Balakrishnan,
Muriel Medard
Sigcomm 2008
Mesh Networks Borrowed the Internet Contract
PHY + LL Deliver correct packets
Network Forward correct packets to destination
Conflicts with wireless mesh characteristics
Current contract builds Spatial diversity more
reliability on a link by
naturally provides reliability
link basis
across multiple links
Wireless Naturally Provides Reliability Across Links
R1
D
S
R2
Even 1 bit in 1000 incorrect  Packet loss of 99%
Wireless Naturally Provides Reliability Across Links
R1
Loss
D
S
Loss
R2
Current contract  Link by link reliability  50 transmissions
Wireless Naturally Provides Reliability Across Links
R1
D
S
R2
Spatial diversity:
Even if no
every bit is likely
Current contract
correct
50 tx packets,
Low throughput
received
correctly at
some
Exploit wireless
characteristics
3
tx node
High throughput
Exploit wireless characteristics 3 transmissions
Useful with High Quality Links?
R1
Sa
Pa
Pa
Loss
Da
R2
Pa
Loss
R3
Pb
Loss
Sb
Pb
R4
Pb
Loss
Db
Useful with High Quality Links?
R1
Sa
Pa
Pa
Da
R2
Pa
R3
Pb
Db
Sb
Current contract  Inhibits concurrency
R4
P
Exploit bwireless characteristics  Enables high concurrency
Pb
Current Contract
PHY + LL Deliver correct packets
Network Forward correct packets to destination
Limits throughput, inhibits concurrency
New Contract Exploiting Wireless Characteristics
PHY + LL Deliver correct symbols to higher layer
Network Forward correct symbols to destination
High throughput, high concurrency
MIXIT
• New contract between layers to harness
wireless characteristics
• Novel symbol-level network code that
scalably routes correct symbols
• High concurrency MAC
How does a Router Identify Correct Symbols?
• PHY already estimates a confidence for every
decoded symbol [JB07]
• PHY + LL delivers high confidence symbols to
network layer
PHY Confidence
Packet
PHY + LL Deliver correct symbols to higher layer
Network Forward correct symbols to destination
What Should Each Router Forward?
S
P1
P2
R1
P1
P2
D
R2
P1
P2
What Should Each Router Forward?
S
P1
P2
R1
D
P1
P2
R2
P1
P2
But overlap in correctly received symbols
Potential solutions
1) Forward everything  Inefficient
2) Coordinate  Unscalable
MIXIT Prevents Duplicates using
Symbol Level Network Coding
S
P1
P2
R1
D
P1
P2
R2
P1
P2
Forward random combinations of correct symbols
MIXIT Prevents Duplicates using
Symbol Level Network Coding
R1
2s1
 7s 2
2
…
7
s1
…
s2
…
D
R2
5s1
 9s 2
…
5
s1
…
9
s2
…
Routers create random combinations of correct symbols
MIXIT Prevents Duplicates using
Symbol Level Network Coding
R1
2s1
 7s 2
…
D
R2
5s1
 9s 2
…
Solve 2
equations
s1, s 2
Randomness
co-ordination
Destination prevents
decodes duplicates
by solving without
linear equations
MIXIT Prevents Duplicates using
Symbol Level Network Coding
R1
2s1
 7s 2
2
…
7
s1
…
s2
…
D
R2
5s1
…
5
s1
…
0
s2
…
Routers create random combinations of correct symbols
MIXIT Prevents Duplicates using
Symbol Level Network Coding
R1
2s1
 7s 2
…
D
R2
5s1
…
Solve 2
equations
Symbol Level Network Coding
s1, s 2
• No duplicates  Efficient
decodes
byScalable
solving linear equations
• Destination
No coordination
Destination needs to know which
combinations it received
5s1  9s2 (if both symbols were correct)
5s1  0s2 (if only s1 was correct)
0s1  9s2 (if only s2 was correct)
Nothing (if neither symbol was correct)
Destination needs to know which
combinations it received
Use run length encoding
5
9
Original Packets
Coded Packet
Destination needs to know which
combinations it received
Use run length encoding
0
9
Original Packets
Coded Packet
Destination needs to know which
combinations it received
Use run length encoding
5
9
Original Packets
Coded Packet
Destination needs to know which
combinations it received
Use run length encoding
5
0
Original Packets
Coded Packet
Destination needs to know which
combinations it received
Use run length encoding
Run length encoding efficiently expresses combinations
Routers May Forward Erroneous Bits
Despite High Confidence
MIXIT has E2E error correction capability
Data
ECC
Symbol-Level
Network Coding
Decode
ECC
Source
Data
Destination
MIXIT’s Error Correcting Code (ECC)
1. Routers are oblivious to ECC
2. Optimal error correction capability
3. Rateless
PHY + LL Deliver correct symbols to higher layer
Network Forward correct symbols to destination
High Concurrency MAC
u
x
w
w & x  NO!
w & u YES!
• Each node maintains a map of conflicting
transmissions
• Map is based on empirical measurements and
built in distributed, online manner
Evaluation
•
•
•
•
Implementation on GNURadio SDR and USRP
Zigbee (IEEE 802.15.4) link layer
25 node indoor testbed, random flows
Compared to:
1.
2.
Shortest path routing based on ETX
MORE: Packet-level opportunistic routing
Throughput Comparison
1
CDF
0.8
0.6
2.1x
3x
0.4
0.2
MIXIT
MORE
Shortest Path
0
0
20
40
60
Throughput (Kbps)
80
100
Throughput increase: 3x over SPR, 2x over MORE
Where do the gains come from?
1
CDF
0.8
0.6
MIXIT
MORE
Shortest Path
0.4
0.2
0
0
20
40
60
Throughput (Kbps)
80
100
Take concurrency away from MIXIT
Where do the gains come from?
1
CDF
0.8
0.6
MIXIT without
concurrency
1.5x
0.4
MORE
Shortest Path
0.2
0
0
20
40
60
Throughput (Kbps)
80
100
Without
Takeconcurrency,
concurrency1.5x
awaygain
from
over
MIXIT
MORE
Where do the gains come from?
1
CDF
0.8
0.6
0.4
0.2
MIXIT
MIXIT without
concurrency
MORE
Shortest Path
0
Gains
0 come20from both
40 moving
60 to the
80 symbol
100
Throughput (Kbps)
level and high concurrency
Where do the gains come from?
Higher Concurrency?
1
0.8
CDF
0.6
MIXIT
1.4x
0.4
MORE with concurrency
0.2
MORE
0
0
20
40
60
Throughput (Kbps)
80
100
MORE, enhanced with higher concurrency
is only 1.4x better
Where do the gains come from?
1
CDF
0.8
1.5x
0.6
2.1x
0.4
MIXIT
MIXIT without concurrency
0.2
MORE
0
0
20
40
60
80
Throughput
(Kbps)
Higher concurrency
MAC
fully exploits
symbol-level diversity
100
Conclusion
MIXIT
• New contract harnesses wireless characteristics
• Symbol-level network coding to scalably route
correct symbols
• High concurrency
• Implementation and evaluation demonstrating
3-4x over shortest path, 2-3x gains over MORE
Related documents
Download