500 likes | 664 Views
Network Coding: Mixin’ it up. Sidharth Jaggi Michelle Effros Michael Langberg Tracey Ho. Muriel Médard. Peter Sanders. Philip Chou Kamal Jain. Ludo Tolhuizen Sebastian Egner. Network Coding. R. Ahlswede, N. Cai, S.-Y. R. Li and R. W. Yeung,
E N D
Network Coding: Mixin’ it up Sidharth Jaggi Michelle Effros Michael Langberg Tracey Ho Muriel Médard Peter Sanders Philip Chou Kamal Jain Ludo Tolhuizen Sebastian Egner
Network Coding R. Ahlswede, N. Cai, S.-Y. R. Li and R. W. Yeung, "Network information flow," IEEE Trans. on Information Theory, vol. 46, pp. 1204-1216, 2000. • http://tesla.csl.uiuc.edu/~koetter/NWC/Bibliography.html 131 papers as of last night(≈2 years) • NetCod Workshop, DIMACS working group, ISIT 2005 - 4+ sessions • Several patents, theses
But . . . what is it? “The core notion of network coding is to allow and encourage mixing of data at intermediate network nodes. “ (Network Coding homepage)
Point-to-point flows Min-cut Max-flow (Menger’s) Theorem [M27] Ford-Fulkerson Algorithm [FF62] C t s
Multicasting Webcasting t1 t2 s1 Network P2P networks s|S| t|T| Sensor networks
Justifications revisited - I s Throughput b1 b2 b1 b2 b1 b1+b2 b1 ? b2 b1 b1 b1+b2 b1+b2 t1 t2 [ACLY00] (b1,b2) b1 (b1,b2)
Gap Without Coding s Example due to Sanders et al. (collaborators) . . . . . . Coding capacity = h Routing capacity≤2
Multicasting Upper bound for multicast capacity C, C ≤ min{Ci} t1 [ACLY00] - achievable! C1 [LYC02] - linear codes suffice!! C2 t2 [KM01] - “finite field” linear codes suffice!!! s Network C|T| t|T|
Multicasting F(2m)-linear network [KM01] b1 b2 bm Source:- Group together `m’ bits, Every node:- Perform linear combinations over finite field F(2m) β1 β2 βk
Multicasting Upper bound for multicast capacity C, C ≤ min{Ci} t1 [ACLY00] - achievable! C1 [LYC02] - linear codes suffice!! C2 t2 [KM01] - “finite field” linear codes suffice!!! s Network [JCJ03],[SET03] - polynomial time code design!!!! C|T| t|T|
Thms: Deterministic Codes For m ≥ log(|T|), exists an F(2m)-linear network which can be designed in O(|E||T|C(C+|T|)) time. [JCJ03],[SET03] [JCJ03],[LL03] Exist networks for which minimum m≈0.5(log(|T|))
Justifications revisited - II s Robustness/Distributed design One link breaks t1 t2
Justifications revisited - II s Robustness/Distributed design b1 b2 b1 b2 b1+b2 b1+2b2 b1 b2 (Finite field arithmetic) b1+b2 b1+b2 b1+2b2 t1 t2 (b1,b2) (b1,b2)
Thm: Random Robust Codes t1 C1 C = min{Ci} C2 t2 Original Network s C|T| t|T|
Thm: Random Robust Codes t1 C1' C' = min{Ci'} C2' t2 Faulty Network s If value of C' known to s, same code can achieve C' rate! (interior nodes oblivious) C|T|' t|T|
Thm: Random Robust Codes m sufficiently large, rate R<C Choose random [ß] at each node b1 b2 bm ’ b’1 b’2 b’m Probability over [ß] that code works >1-|E||T|2-m(C-R)+|V| ’’ [JCJ03] [HKMKE03] (different notions of linearity) b’’1 b’’2 b’’m Much “sparser” linear operations (O(m) instead of O(m2)) [JCE06?] Decentralized design Vs. prob of error - necessary evil?
Zero-error Decentralized Codes No a priori network topological information available - information can only be percolated down links Desired - zero-error code design One additional resource - each node vi has a unique ID number i (GPS coordinates/IP address/…) Need to use yet other types of linear codes [JHE06?]
Inter-relationships between notions of linearity M Multicast G General Global Local I/O ≠ Local I/O = a Acyclic A Algebraic B Block C Convolutional Does not exist Є epsilon rate loss [JEHM04] B G G G Є G M a G M M a a G ? M a A C M a M a G
Justifications revisited - III s Security Evil adversary hiding in network eavesdropping, injecting false information [JLHE05] t1 t2
Greater throughput Robust against random errors . . . Aha! Network Coding!!!
? ? ?
? ? ? Xavier Yvonne Zorba
Unicast Eureka • Code (X,Y,Z) • Message (X,Z) • Bad links (Z) • Coin (X) • Transmission (Y,Z) • Decode correctly (Y)
Unicast |E| directed unit-capacity links ? ? ? Xavier Yvonne Zorba Zorba (hidden to Xavier/Yvonne) controls |Z| links Z. p = |Z|/|E| Xavier and Yvonne share no resources (private key, randomness) Zorba computationally unbounded; Xavier and Yvonne can only perform “simple” computations. Zorba knows protocols and already knows almost all of Xavier’s message (except Xavier’s private coin tosses) Goal: Transmit at “high” rate and w.h.p. decode correctly
Background • Noisy channel models (Shannon,…) • Binary Symmetric Channel 1 C (Capacity) H(p) 0 1 0 0.5 1 p (“Noise parameter”)
Background • Noisy channel models (Shannon,…) • Binary Symmetric Channel • Binary Erasure Channel 1 C (Capacity) 1-p 0 E 0 0.5 1 p (“Noise parameter”)
Background • Adversarial channel models • “Limited-flip” adversary (Hamming,Gilbert-Varshanov,McEliece et al…) • Shared randomness, private key, computationally bounded adversary… 1 C (Capacity) 0 1 0 0.5 1 p (“Noise parameter”)
Unicast - Results 1 C (Capacity) 0.5 0 1 0.5 p (“Noise parameter”) 1-p
Unicast - Results 1 ? C (Capacity) ? ? 0.5 0 1 0.5 p (“Noise parameter”) 0
Unicast - Results 1 C (Capacity) (Just for this talk, Zorba is causal) 0.5 0 1 0.5 p (“Noise parameter”)
General Multicast Networks 1 C (Normalized by h) R1 0.5 Z S h 0 1 0.5 R|T| p = |Z|/h Slightly more intricate proof
Unicast - Encoding |E|-|Z| |E| |E|-|Z|
Unicast - Encoding |E| |E|-|Z| MDS Code Block-length n over finite field Fq T1 x1 Vandermonde matrix . . . |E| |E|-|Z| … X|E|-|Z| T|E| n(1-ε) n Symbol from Fq n(1-ε) n nε “Easy to use consistency information” Rate fudge-factor
Unicast - Encoding … T1 r D1…D|E| Di=Ti(1).1+Ti(2).r+…+Ti(n(1- ε)).rn(1- ε) . . . r Di … T|E| r D1…D|E| Ti i nε
Unicast - Transmission … T1 r D1…D|E| … T1’ r’ D1’…D|E|’ . . . . . . … T|E| r D1…D|E| … T|E|’ r’ D1’…D|E|’
Unicast - Quick Decoding … T1’ r D1…D|E| . . . Choose majority (r,D1,…,D|E|) … T|E|’ r’ D1’…D|E|’ Di=Ti(1)’.1+Ti(2)’.r+…+Ti(n(1- ε))’.rn(1- ε) ? If so, accept Ti, else reject Ti Use accepted Tis to decode ∑k(Ti(k)-Ti(k)’).rk=0 Polynomial in rof degree n over Fq, value of r unknown to Zorba Probability of error < n/q<<1
General Multicast Networks Observation: Can treat adversaries as new sources 1 C (Normalized by h) R1 S’1 0.5 S S’2 0 1 0.5 R|T| p = |Z|/h S’|Z|
General Multicast Networks yi=Tix R1 S’1 y1 S S’2 x R|T| S’|Z|
General Multicast Networks yi=Tix yi’=Tix+Ti’ai (x(1),x(2),…,x(n)) form a R-dimensional subspace X R1 S’1 a1 (ai(1),ai(2),…,ai(n)) form a |Z|-dimensional subspace Ai y1’ w.h.p. over network code design, TX and TAi do not intersect (robust codes…). S S’2 x w.h.p. over x(i),(y(1),y(2),…y(R+|Z|)) forms a basis for TXTAi R|T| But already know basis for TX, therefore can obtain basis for TAi S’|Z|
Variations - Feedback 1 C 0 1 p
Variations – Know thy enemy 1 1 C C 0 0 1 1 p p
Variations – Omniscient but not Omnipresent 1 C Achievability: Gilbert-Varshamov, Algebraic Geometry Codes Converse: Generalized MRRW bound 0 1 0.5 p
Variations – Random Noise S E P A R A T I O N CN C 0 1 p
Ignorant Zorba - Results 1 Xp+Xs C (Capacity) 0.5 Xs 0 1 1 0.5 p (“Noise parameter”) 1-2p
Ignorant Zorba - Results 1 Xp+Xs MDS code C (Capacity) a+b+c 0.5 a+2b+4c Xs a+3b+9c 0 1 1 0.5 p (“Noise parameter”) 1-2p
Overview of results • Centralized design • Deterministic • Decentralized design • Randomized • Deterministic • Complexity • Lower bounds • Sparse codes • Types of linearity - interrelationships • Adversaries
T H E E N D