dimacs tutorial network coding an algorithmic perspective
play

DIMACS tutorial Network coding: an Algorithmic Perspective Tracey - PowerPoint PPT Presentation

DIMACS tutorial Network coding: an Algorithmic Perspective Tracey Ho - California Institute of Technology Alex Sprintson Texas A&M University Tutorial outline Part I Introduction and problem description Multicast


  1. DIMACS tutorial Network coding: an Algorithmic Perspective Tracey Ho - California Institute of Technology Alex Sprintson – Texas A&M University

  2. Tutorial outline Part I • Introduction and problem description • Multicast – Algebraic model – Constructing multicast network codes – Network optimization • Non-multicast – Insufficiency of linear codes – Opportunistic wireless network coding – Multiple unicast network coding • Adversarial errors 2

  3. Tutorial outline Part I I • Coding Advantage • Encoding Complexity • Network Erasure Correction • Open problems 3

  4. Part I outline • Introduction and problem description • Multicast – Algebraic model – Constructing multicast network codes – Network optimization • Non-multicast – Insufficiency of linear codes – Opportunistic wireless network coding – Multiple unicast network coding • Adversarial errors 4

  5. Wired multicast s s m 2 m 1 100% 0% utilization utilization m 2 m 1 m 2 m 1 t 2 t 2 1 1 One message per 1.5 messages per 2 messages per time unit time unit time unit R. Ahlswede et al., ``Network information flow,'' IEEE Trans. Inform. Theory , IT- 46: 1204-1216,2000. 5

  6. Wireless multicast • Static wireless model with fixed link rates and a half- duplex constraint • E.g. [SaEp05] Coding Coding rate 4 = 3 Routing rate Routing 6

  7. 7 Sb Ra Wired unicasts B A+B A Sa Rb

  8. Wireless unicasts A A Forwarding 1 2 3 B B A B Network coding 1 2 3 A+B R. W. Yeung and Z. Zhang, ``Distributed source coding for satellite communications,'' IEEE Trans. Inform. Theory , IT-45: 1111-1120, 1999. 8

  9. Problem description [KM01, 02, 03] 9

  10. 10 Problem description

  11. 11 Problem statement

  12. Simplifying assumptions 12

  13. Scalar linear network coding 13

  14. Scalar linear network coding 14

  15. Part I outline • Introduction and problem description • Multicast – Algebraic model – Constructing multicast network codes – Network optimization • Non-multicast – Insufficiency of linear codes – Opportunistic wireless network coding – Multiple unicast network coding • Adversarial errors 15

  16. 16 A simple example

  17. 17 Transfer matrix

  18. Transfer matrix ⎛ β β ⎡ ⎤ ⎡ ⎤ 1 0 0 0 0 0 0 0 ⎜ e e e e ⎢ ⎥ ⎢ 1 3 1 4 ⎥ β ⎜ 0 1 0 0 0 0 0 0 0 ⎢ ⎥ ⎢ ⎥ ⎡ 1 0 0 0 0 ⎤ e e ⎜ 2 5 [ ] ⎢ ⎥ ⎢ ⎥ + β + 0 0 1 0 0 0 0 0 0 ⎢ ⎥ X X ⎜ 1 2 0 1 0 0 0 e e ⎢ ⎥ ⎢ ⎥ ⎣ ⎦ 3 5 ⎜ 0 0 0 1 0 0 0 0 0 0 ⎢ ⎥ ⎢ ⎥ ⎜ ⎢ ⎥ ⎢ ⎥ 0 0 0 0 1 0 0 0 0 0 ⎣ ⎦ ⎣ ⎦ ⎝ β β ⎞ ⎡ ⎤ ⎡ ⎤ 0 0 0 0 0 0 ⎟ e e e e ⎢ 1 3 3 5 ⎥ ⎢ ⎥ 0 0 0 0 0 ⎟ 0 0 ⎢ ⎥ ⎢ ⎥ ⎟ [ ] ⎢ ⎥ ⎢ ⎥ + = 0 0 0 0 0 0 0 Z Z ⎟ 1 2 ⎢ ⎥ ⎢ ⎥ ⎟ 0 0 0 0 0 1 0 ⎢ ⎥ ⎢ ⎥ ⎟ ⎢ ⎥ ⎢ ⎥ 0 0 0 0 0 0 1 ⎣ ⎦ ⎣ ⎦ ⎠ 18

  19. 19 Transfer matrix

  20. Transfer matrix 2 + = + + ( ...) T M A I F F B β β β β ⎡ ⎤ ⎡ ⎤ 1 0 0 0 e e e e e e e e ⎢ 1 3 1 4 1 3 3 5 ⎥ ⎢ ⎥ β 0 1 0 0 0 0 ⎢ ⎥ ⎢ ⎥ ⎡ ⎤ e e 1 0 0 0 0 2 5 [ ] [ ] ⎢ ⎥ ⎢ ⎥ β = 0 0 1 0 0 0 ⎢ ⎥ X X Z Z 1 2 1 2 0 1 0 0 0 e e ⎢ ⎥ ⎢ ⎥ ⎣ ⎦ 3 5 0 0 0 1 0 1 0 ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ 0 0 0 0 1 0 1 ⎣ ⎦ ⎣ ⎦ β β β ⎡ ⎤ [ ] [ ] = e e e e e e ⎢ 1 4 1 3 3 5 ⎥ X X Z Z β 1 2 1 2 0 ⎣ ⎦ e e 2 5 20

  21. 21 Linear network system

  22. 22

  23. An algebraic max flow min cut condition [KM01, 02, 03] 23

  24. 24 Solutions

  25. 25 Multicast

  26. Multicast [ACLY 00, KM01, 02, 03] 26

  27. One source, disjoint multicasts 27

  28. Networks with cycles • Mix messages from different rounds s a b = ⎧ if 1 a i = ⎨ 1 x a b ⊕ otherwise i ⎩ a y − 1 i i x y b a x y = ⎧ if 1 b i = 1 ⎨ y ⊕ otherwise i ⎩ b x x − 1 i i a 1 a 1 t 2 t 1 a 2 a 2 +b 1 a 3 a 3 +b 2 +a 1 i i i-1 i i-1 i-2 i i-1 i-2 i-3 i i-1 i-2 i-3 2 1 … … i i i-1 i i-1 i-2 i i-1 i-2 i-3 i i-1 i-2 i-3 2 1 28

  29. 29 Delays

  30. 30 Delays

  31. 31 Delays

  32. Part I outline • Introduction and problem description • Multicast – Algebraic model – Constructing multicast network codes – Network optimization • Non-multicast – Insufficiency of linear codes – Opportunistic wireless network coding – Multiple unicast network coding • Adversarial errors 32

  33. Centralized multicast code construction • Centralized polynomial-time construction for acyclic graphs – Choose a flow solution for each sink individually – Consider the links in the union of these flow solutions – Set the code coefficients of these links in ancestral order starting from the source, ensuring that at each step the “frontier set” for each sink has linearly independent coefficient vectors S. Jaggi, P. Sanders, P. A. Chou, M. Effros, S. Egner, K. Jain, and L. M. Tolhuizen, “Polynomial time algorithms for multicast network code construction,” IEEE Trans. Inform. Theory , 51(6):1973–1982, 2005 33

  34. 34 ⎞ ⎟ ⎟ ⎟ ⎠ 0 0 1 0 1 0 34 0 0 1 ⎛ ⎜ ⎜ ⎜ ⎝ Example ⎞ ⎟ ⎟ ⎟ ⎠ 0 0 1 0 1 0 0 0 1 ⎛ ⎜ ⎜ ⎜ ⎝

  35. 35 ⎞ ⎟ ⎟ ⎟ ⎠ 0 0 1 0 1 0 35 0 0 1 ⎛ ⎜ ⎜ ⎜ ⎝ Example ⎞ ⎟ ⎟ ⎟ ⎠ 0 0 1 0 1 0 0 0 1 ⎛ ⎜ ⎜ ⎜ ⎝

  36. 36 ⎞ ⎟ ⎟ ⎟ ⎠ 0 0 1 0 1 0 36 0 0 1 ⎛ ⎜ ⎜ ⎜ ⎝ Example ⎞ ⎟ ⎟ ⎟ ⎠ 0 0 1 0 1 0 0 0 1 ⎛ ⎜ ⎜ ⎜ ⎝

  37. 37 ⎞ ⎟ ⎟ ⎟ ⎠ 0 0 1 0 1 0 37 0 0 1 ⎛ ⎜ ⎜ ⎜ ⎝ Example ⎞ ⎟ ⎟ ⎟ ⎠ 0 0 1 0 1 0 0 0 1 ⎛ ⎜ ⎜ ⎜ ⎝

  38. 38 ⎞ ⎟ ⎟ ⎟ ⎠ 0 0 1 0 1 0 38 ? ? ? ⎛ ⎜ ⎜ ⎜ ⎝ Example ⎞ ⎟ ⎟ ⎟ ⎠ 0 0 1 ? ? ? 0 0 1 ⎛ ⎜ ⎜ ⎜ ⎝

  39. 39 ⎞ ⎟ ⎟ ⎟ ⎠ 0 0 1 0 1 0 39 0 1 1 ⎛ ⎜ ⎜ ⎜ ⎝ Example ⎞ ⎟ ⎟ ⎟ ⎠ 0 0 1 1 1 0 0 0 1 ⎛ ⎜ ⎜ ⎜ ⎝

  40. Example ⎛ ⎞ 1 0 0 ⎛ ⎞ 1 1 0 ⎜ ⎟ ⎜ ⎟ 1 1 0 ⎜ ⎟ 0 1 1 ⎜ ⎟ ⎜ ⎟ ⎜ ⎟ 0 1 1 ⎝ ⎠ 0 0 1 ⎝ ⎠ t2 matrix 40 40

  41. Random multicast code construction • The effect of the network Y Y code is that of a transfer Endogenous inputs ij hj matrix from source inputs to receiver outputs • To recover source symbols, receivers need sufficient X degrees of freedom – an j j invertible transfer matrix Exogenous input • The realization of the determinant of the matrix will be non-zero with high probability if the code coefficients are chosen = α + α + α ij hj j Y Y Y X independently and randomly jm jm ij jm hj jm j from a sufficiently large field 41

  42. Distributed random network coding • Random linear coding among k1 A + k2 B packets of a single multicast or unicast session A k3 A + k4 B • Nodes independently choose B random linear mappings from inputs to outputs in some field 1 0 A • Header scheme to communicate 0 1 B transfer matrix to receivers: vector of code coefficients in packet headers, to which same k1 k2 k1 A + k2 B linear mappings are applied k3 k4 k3 A + k4 B T. Ho, R. Koetter, M. Médard, D. R. Karger and M. Effros, ``The Benefits of Coding over Routing in a Randomized Setting'', International Symposium on Information Theory 2003. 42

  43. Distributed random network coding • For any multicast subgraph which k1 A + k2 B satisfies min-cut max-flow bound for each receiver, probability of failure over field F is roughly inversely A k3 A + k4 B Polynomials in field size B • Random network coding can be used to distribute a group of packets from 1 0 A any number of sources 0 1 B • Advantages: decentralized, optimal throughput, robust to link failures / k1 k2 k1 A + k2 B packet losses k3 k4 k3 A + k4 B T. Ho, R. Koetter, M. Médard, D. R. Karger and M. Effros, ``The Benefits of Coding over Routing in a Randomized Setting'', International Symposium on Information Theory 2003. 43

  44. Part I outline • Introduction and problem description • Multicast – Algebraic model – Constructing multicast network codes – Network optimization • Non-multicast – Insufficiency of linear codes – Opportunistic wireless network coding – Multiple unicast network coding • Adversarial errors 44

  45. Minimum cost multicast optimization •Without network coding, minimum cost multicast optimization problem is NP-complete •E.g., in the illustration, integrality constraint arises in time- sharing between the blue and red trees (1,1,0) b 1 b 1 b 1 + b 2 (1,1,1) (1,0,1) b 1 (1,1,0) (1,1,1) b 1 + b 2 (1,0,1) b 2 (1,1,0) (1,1,1) b 1 + b 2 b 2 (1,0,1) b 2 45

Recommend


More recommend