network(coding:(theory(and( applicaonskom.aau.dk/~del/analognc.pdf ·...
TRANSCRIPT
![Page 1: Network(Coding:(Theory(and( Applicaonskom.aau.dk/~del/AnalogNC.pdf · Network(Coding(for(Wireless(Networks(Conven7onal(relaying(4(7me(slots(3sinks Use(of(network(coding((3(7me(slots(3sinks](https://reader033.vdocuments.mx/reader033/viewer/2022060304/5f0915367e708231d425264c/html5/thumbnails/1.jpg)
Network Coding: Theory and Applica7ons
PhD Course Part V
Wednesday 9.15 -‐10.30 19.06.2013
Muriel Médard (MIT), Frank H. P. Fitzek (AAU), Daniel E. Lucani (AAU), Morten V. Pedersen (AAU)
![Page 2: Network(Coding:(Theory(and( Applicaonskom.aau.dk/~del/AnalogNC.pdf · Network(Coding(for(Wireless(Networks(Conven7onal(relaying(4(7me(slots(3sinks Use(of(network(coding((3(7me(slots(3sinks](https://reader033.vdocuments.mx/reader033/viewer/2022060304/5f0915367e708231d425264c/html5/thumbnails/2.jpg)
Plan Hello World!
Inter flow network coding
Intra flow
network coding
KODO +
Simulator
Intra flow
Complexity Overhead Energy
KODO +
Exercises
Theory
Mul7cast and Co
Analog
Core
Project Ass.
Group Work
Group Work
Group Work
Wash Up
Distributed Storage
![Page 3: Network(Coding:(Theory(and( Applicaonskom.aau.dk/~del/AnalogNC.pdf · Network(Coding(for(Wireless(Networks(Conven7onal(relaying(4(7me(slots(3sinks Use(of(network(coding((3(7me(slots(3sinks](https://reader033.vdocuments.mx/reader033/viewer/2022060304/5f0915367e708231d425264c/html5/thumbnails/3.jpg)
Network Coding for Wireless Networks
Conven7onal relaying
4 7me slots 3 sinks
Use of network coding
3 7me slots 3 sinks
Use of analog network coding 2 7me slots 2 sinks
![Page 4: Network(Coding:(Theory(and( Applicaonskom.aau.dk/~del/AnalogNC.pdf · Network(Coding(for(Wireless(Networks(Conven7onal(relaying(4(7me(slots(3sinks Use(of(network(coding((3(7me(slots(3sinks](https://reader033.vdocuments.mx/reader033/viewer/2022060304/5f0915367e708231d425264c/html5/thumbnails/4.jpg)
Physical Layer Network Coding
• Presented by [Zhang et al 2006]
• First, simple example: no fading
• Let us look at bandpass signals
• How to generate s3(t) ?
s1(t) s2(t)
€
r3(t) = s1(t) + s2(t) + n(t)= [a1 cos(ωt) + b1 sin(ωt)]+ [a2 cos(ωt) + b2 sin(ωt)]+ n(t)= (a1 + a2)cos(ωt) + (b1 + b2)sin(ωt) + n(t)
s3(t)
![Page 5: Network(Coding:(Theory(and( Applicaonskom.aau.dk/~del/AnalogNC.pdf · Network(Coding(for(Wireless(Networks(Conven7onal(relaying(4(7me(slots(3sinks Use(of(network(coding((3(7me(slots(3sinks](https://reader033.vdocuments.mx/reader033/viewer/2022060304/5f0915367e708231d425264c/html5/thumbnails/5.jpg)
Physical Layer Network Coding How to generate s3(t) ?
• Amplify and forward? • Decode and forward? Ini7al approach: decode and forward
Example with BPSK: say
Note that there are 3 possible values of : • ”-‐2” and ”2” correspond to • ”0” corresponds to
s1(t) s2(t)
€
r3(t) = s1(t) + s2(t) + n(t) = (a1 + a2)cos(ωt) + n(t)
s3(t)
€
bi = 0, ai ∈ −1,1{ } i =1,2,3
€
a1 + a2
€
a1 = a2
€
a1 = −a2
![Page 6: Network(Coding:(Theory(and( Applicaonskom.aau.dk/~del/AnalogNC.pdf · Network(Coding(for(Wireless(Networks(Conven7onal(relaying(4(7me(slots(3sinks Use(of(network(coding((3(7me(slots(3sinks](https://reader033.vdocuments.mx/reader033/viewer/2022060304/5f0915367e708231d425264c/html5/thumbnails/6.jpg)
Physical Layer Network Coding Example with BPSK:
Let us generate s3(t) (hint: XOR-‐like opera7on)
If , then If , then
Alice and Bob receive as standard BPSK modula7on Then, XOR bit by bit with the sent packet
s1(t) s2(t)
s3(t)
€
a1 = a2
€
a1 = −a2
€
a3 =1 (logical "0")
€
a3 = −1 (logical "1")
![Page 7: Network(Coding:(Theory(and( Applicaonskom.aau.dk/~del/AnalogNC.pdf · Network(Coding(for(Wireless(Networks(Conven7onal(relaying(4(7me(slots(3sinks Use(of(network(coding((3(7me(slots(3sinks](https://reader033.vdocuments.mx/reader033/viewer/2022060304/5f0915367e708231d425264c/html5/thumbnails/7.jpg)
Analog Network Coding
Alice Bob Relay
1st step – coding in the air
BPSK Example
What if we A&F?
![Page 8: Network(Coding:(Theory(and( Applicaonskom.aau.dk/~del/AnalogNC.pdf · Network(Coding(for(Wireless(Networks(Conven7onal(relaying(4(7me(slots(3sinks Use(of(network(coding((3(7me(slots(3sinks](https://reader033.vdocuments.mx/reader033/viewer/2022060304/5f0915367e708231d425264c/html5/thumbnails/8.jpg)
Analog Network Coding
Alice Bob Relay
1st step – coding in the air – e.g. 1/1
BPSK Example
![Page 9: Network(Coding:(Theory(and( Applicaonskom.aau.dk/~del/AnalogNC.pdf · Network(Coding(for(Wireless(Networks(Conven7onal(relaying(4(7me(slots(3sinks Use(of(network(coding((3(7me(slots(3sinks](https://reader033.vdocuments.mx/reader033/viewer/2022060304/5f0915367e708231d425264c/html5/thumbnails/9.jpg)
Analog Network Coding
Alice Bob Relay
1st step – coding in the air – e.g. 0/0
BPSK Example
![Page 10: Network(Coding:(Theory(and( Applicaonskom.aau.dk/~del/AnalogNC.pdf · Network(Coding(for(Wireless(Networks(Conven7onal(relaying(4(7me(slots(3sinks Use(of(network(coding((3(7me(slots(3sinks](https://reader033.vdocuments.mx/reader033/viewer/2022060304/5f0915367e708231d425264c/html5/thumbnails/10.jpg)
Analog Network Coding
Alice Bob Relay
1st step – coding in the air – e.g. 1/0
BPSK Example
![Page 11: Network(Coding:(Theory(and( Applicaonskom.aau.dk/~del/AnalogNC.pdf · Network(Coding(for(Wireless(Networks(Conven7onal(relaying(4(7me(slots(3sinks Use(of(network(coding((3(7me(slots(3sinks](https://reader033.vdocuments.mx/reader033/viewer/2022060304/5f0915367e708231d425264c/html5/thumbnails/11.jpg)
Analog Network Coding
Alice Bob Relay
1st step – coding in the air – e.g. 0/1
BPSK Example
![Page 12: Network(Coding:(Theory(and( Applicaonskom.aau.dk/~del/AnalogNC.pdf · Network(Coding(for(Wireless(Networks(Conven7onal(relaying(4(7me(slots(3sinks Use(of(network(coding((3(7me(slots(3sinks](https://reader033.vdocuments.mx/reader033/viewer/2022060304/5f0915367e708231d425264c/html5/thumbnails/12.jpg)
Analog Network Coding
Alice Bob Relay
2nd step -‐relay
BPSK Example
![Page 13: Network(Coding:(Theory(and( Applicaonskom.aau.dk/~del/AnalogNC.pdf · Network(Coding(for(Wireless(Networks(Conven7onal(relaying(4(7me(slots(3sinks Use(of(network(coding((3(7me(slots(3sinks](https://reader033.vdocuments.mx/reader033/viewer/2022060304/5f0915367e708231d425264c/html5/thumbnails/13.jpg)
Analog Network Coding
Alice Alice Alice
decoding
BPSK Example
Rx‘ed
Sent Sent
Rx‘ed
Rx‘ed
![Page 14: Network(Coding:(Theory(and( Applicaonskom.aau.dk/~del/AnalogNC.pdf · Network(Coding(for(Wireless(Networks(Conven7onal(relaying(4(7me(slots(3sinks Use(of(network(coding((3(7me(slots(3sinks](https://reader033.vdocuments.mx/reader033/viewer/2022060304/5f0915367e708231d425264c/html5/thumbnails/14.jpg)
Analog Network Coding What were our assump7ons so far? • No fading there is amplitude + phase distor7on • Perfect sync • Perfect detec7on of a collision • Perfect knowledge of packet used for decoding at Alice and Bob
• The ”right” packets interfere (MAC / Network impact)
How to make it prac7cal? [Kam et al 2007] Analog network coding [Gollakota et al 2008] ZigZag decoding (different problem, similar intui7on)
![Page 15: Network(Coding:(Theory(and( Applicaonskom.aau.dk/~del/AnalogNC.pdf · Network(Coding(for(Wireless(Networks(Conven7onal(relaying(4(7me(slots(3sinks Use(of(network(coding((3(7me(slots(3sinks](https://reader033.vdocuments.mx/reader033/viewer/2022060304/5f0915367e708231d425264c/html5/thumbnails/15.jpg)
Analog Network Coding Key intui7on: exploit asynchrony [Kam et al 2007]
Alice
Bob
No overlap No overlap
![Page 16: Network(Coding:(Theory(and( Applicaonskom.aau.dk/~del/AnalogNC.pdf · Network(Coding(for(Wireless(Networks(Conven7onal(relaying(4(7me(slots(3sinks Use(of(network(coding((3(7me(slots(3sinks](https://reader033.vdocuments.mx/reader033/viewer/2022060304/5f0915367e708231d425264c/html5/thumbnails/16.jpg)
Analog Network Coding Areas with no overlap allow us to address some of the key challenges
Alice
Bob
No overlap No overlap
![Page 17: Network(Coding:(Theory(and( Applicaonskom.aau.dk/~del/AnalogNC.pdf · Network(Coding(for(Wireless(Networks(Conven7onal(relaying(4(7me(slots(3sinks Use(of(network(coding((3(7me(slots(3sinks](https://reader033.vdocuments.mx/reader033/viewer/2022060304/5f0915367e708231d425264c/html5/thumbnails/17.jpg)
Analog Network Coding
Alice
Bob
Construct „header“ and „footer“ for each packet • Pilot sequence: channel es7ma7on
• ID of sender+des7na7on+sequence number of the packet: ac7ve session and to determine which packet was used
![Page 18: Network(Coding:(Theory(and( Applicaonskom.aau.dk/~del/AnalogNC.pdf · Network(Coding(for(Wireless(Networks(Conven7onal(relaying(4(7me(slots(3sinks Use(of(network(coding((3(7me(slots(3sinks](https://reader033.vdocuments.mx/reader033/viewer/2022060304/5f0915367e708231d425264c/html5/thumbnails/18.jpg)
Analog Network Coding
![Page 19: Network(Coding:(Theory(and( Applicaonskom.aau.dk/~del/AnalogNC.pdf · Network(Coding(for(Wireless(Networks(Conven7onal(relaying(4(7me(slots(3sinks Use(of(network(coding((3(7me(slots(3sinks](https://reader033.vdocuments.mx/reader033/viewer/2022060304/5f0915367e708231d425264c/html5/thumbnails/19.jpg)
ZigZag Decoding • Draws from the same intui7on as the above problem • Difference: • More general semng • A node can use it to recover several interfering signals (no knowledge required on its end)
• We need to receive n collisions of n packets to recover
• Where is it useful? • Hidden terminal problem • In high SNR, to boost overall data rate from mul7ple sources to a single receiver [ParandehGheibi et al 2010]
![Page 20: Network(Coding:(Theory(and( Applicaonskom.aau.dk/~del/AnalogNC.pdf · Network(Coding(for(Wireless(Networks(Conven7onal(relaying(4(7me(slots(3sinks Use(of(network(coding((3(7me(slots(3sinks](https://reader033.vdocuments.mx/reader033/viewer/2022060304/5f0915367e708231d425264c/html5/thumbnails/20.jpg)
ZigZag Decoding: Basic Idea
Again: asynchrony
• Chunk 1 of bits from user A from 1st collision is decoded successfully
• Thus, can subtract it from 2nd collision to decode Chunk 2 of bits of user B
Once Chunk 2 is free, can use to free Chunk 3, and so on
![Page 21: Network(Coding:(Theory(and( Applicaonskom.aau.dk/~del/AnalogNC.pdf · Network(Coding(for(Wireless(Networks(Conven7onal(relaying(4(7me(slots(3sinks Use(of(network(coding((3(7me(slots(3sinks](https://reader033.vdocuments.mx/reader033/viewer/2022060304/5f0915367e708231d425264c/html5/thumbnails/21.jpg)
ZigZag Decoding: Single Hop Analysis Work in [ParandehGheibi et al 2010]
Tx 1
Tx 2
Tx n
x Rx
p
p
p
![Page 22: Network(Coding:(Theory(and( Applicaonskom.aau.dk/~del/AnalogNC.pdf · Network(Coding(for(Wireless(Networks(Conven7onal(relaying(4(7me(slots(3sinks Use(of(network(coding((3(7me(slots(3sinks](https://reader033.vdocuments.mx/reader033/viewer/2022060304/5f0915367e708231d425264c/html5/thumbnails/22.jpg)
ZigZag Decoding: Single Hop Analysis Work in [ParandehGheibi et al 2010]
First result: Mean 7me to deliver one packet each
With zigzag:
Perfect scheduler (no collisions):
Tx 1
Tx 2
Tx n
x Rx
p
p
p
€
n1− pn
≤ E[TD ] ≤1
1− pn− i+1i=1
n
∑
€
E[TD ] =n
1− p
p = ½, n = 3 ZZ: 4+ 10/21 PS: 6
![Page 23: Network(Coding:(Theory(and( Applicaonskom.aau.dk/~del/AnalogNC.pdf · Network(Coding(for(Wireless(Networks(Conven7onal(relaying(4(7me(slots(3sinks Use(of(network(coding((3(7me(slots(3sinks](https://reader033.vdocuments.mx/reader033/viewer/2022060304/5f0915367e708231d425264c/html5/thumbnails/23.jpg)
ZigZag Decoding: Single Hop Analysis Work in [ParandehGheibi et al 2010]
Second result: Stable throughput increases
Tx 1
Tx 2
Tx n
x Rx
p
p
p λn
λ2
λ1
λ2
λ1
1-‐p
1-‐p
λ2
λ1
1-‐p
1-‐p p(1-‐p)
p(1-‐p) Region PS
Region ZZ