network(coding:(theory(and( applicaonskom.aau.dk/~del/analognc.pdf ·...

23
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)

Upload: others

Post on 19-Jun-2020

5 views

Category:

Documents


1 download

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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