polytope codes in networks storage and multiple
play

Polytope Codes in Networks, Storage, and Multiple Descriptions - PowerPoint PPT Presentation

Polytope Codes in Networks, Storage, and Multiple Descriptions Oliver Kosut Joint work with Lang Tong, David Tse, Aaron Wagner, and Xiaoqing Fan April 1, 2015 Networks with Active Adversaries Distributed system in the presence of active


  1. Main property x N     1   x N    2  Given some subset of packets y N = = Am   . .   .     x N   p Form Σ y = ( y N ) ( y N ) T

  2. Main property x N     1   x N    2  Given some subset of packets y N = = Am   . .   .     x N   p Form Σ y = ( y N ) ( y N ) T Without corruption, Σ y = A Σ ⋆ A T

  3. Main property x N     1   x N    2  Given some subset of packets y N = = Am   . .   .     x N   p Form Σ y = ( y N ) ( y N ) T Without corruption, Σ y = A Σ ⋆ A T If Σ � A T Σ ⋆ A , then corrupted packets may be localized

  4. Main property x N     1   x N    2  Given some subset of packets y N = = Am   . .   .     x N   p Form Σ y = ( y N ) ( y N ) T Without corruption, Σ y = A Σ ⋆ A T If Σ � A T Σ ⋆ A , then corrupted packets may be localized If Σ = A T Σ ⋆ A , then all quadratic functions are uncorrupted: For C satisfying CA = 0 , � Cy N � 2 = 0 , so Cy N = 0 , i.e. all linear constraints match

  5. Outline Polytope codes in general Polytope codes in network coding Polytope codes in distributed storage systems Polytope codes in multiple descriptions

  6. Network Error Correction Directed graph of rate-limited noise-free channels Omniscient adversary can control some subset of the network Possible adversary control models: Any z edges Any z nodes Any z edges/nodes from a specific area

  7. Network Error Correction Directed graph of rate-limited noise-free channels Omniscient adversary can control some subset of the network Possible adversary control models: Any z edges Any z nodes Any z edges/nodes from a specific area

  8. Theorem (Cai-Yeung (2006)) For a single multicast, and an adversary that controls any z unit-capacity edges: C = min-cut − 2 z

  9. Theorem (Cai-Yeung (2006)) For a single multicast, and an adversary that controls any z unit-capacity edges: C = min-cut − 2 z Converse via network version of the Singleton bound Achievability via network version of (linear) MDS codes

  10. Theorem (Cai-Yeung (2006)) For a single multicast, and an adversary that controls any z unit-capacity edges: C = min-cut − 2 z Converse via network version of the Singleton bound Achievability via network version of (linear) MDS codes Can be viewed as a separation theorem: Source: Network: Destination: Add redundancy Linear Coding Error Correction

  11. Theorem (Cai-Yeung (2006)) For a single multicast, and an adversary that controls any z unit-capacity edges: C = min-cut − 2 z Converse via network version of the Singleton bound Achievability via network version of (linear) MDS codes Can be viewed as a separation theorem: Source: Network: Destination: Add redundancy Linear Coding Error Correction Polytope codes allow error detection/correction inside the network

  12. The Caterpillar Network 1 2 5 S D 3 6 4 Single unicast from S to D All links have unit capacity Adversary may control any one of the red edges Simple upper bound: C ≤ 2

  13. Polytope Code Achievability Let message m = ( x N , y N ) , where x N , y N ∈ { 1 ,. . . , 2 k } N 1 2 5 S D 3 6 4

  14. Polytope Code Achievability Let message m = ( x N , y N ) , where x N , y N ∈ { 1 ,. . . , 2 k } N 1 z N = x N + y N w N = x N + 2 y N 2 5 Σ ⋆ = mm T S D 3 6 4

  15. Polytope Code Achievability Let message m = ( x N , y N ) , where x N , y N ∈ { 1 ,. . . , 2 k } N 1 z N = x N + y N w N = x N + 2 y N 2 5 Σ ⋆ = mm T S D ( x N , y N , z N , w N ) form a 3 6 ( 4 , 2 ) MDS polytope code 4

  16. Polytope Code Achievability Let message m = ( x N , y N ) , where x N , y N ∈ { 1 ,. . . , 2 k } N 1 z N = x N + y N w N = x N + 2 y N 2 5 Σ ⋆ = mm T S D ( x N , y N , z N , w N ) form a 3 6 ( 4 , 2 ) MDS polytope code 4

  17. Polytope Code Achievability Let message m = ( x N , y N ) , where x N , y N ∈ { 1 ,. . . , 2 k } N 1 z N = x N + y N w N = x N + 2 y N 2 5 Σ ⋆ = mm T S D ( x N , y N , z N , w N ) form a 3 6 ( 4 , 2 ) MDS polytope code 4 At node 5, determine one uncorrupted packet

  18. Polytope Code Achievability Let message m = ( x N , y N ) , where x N , y N ∈ { 1 ,. . . , 2 k } N 1 z N = x N + y N w N = x N + 2 y N 2 5 Σ ⋆ = mm T S D ( x N , y N , z N , w N ) form a 3 6 ( 4 , 2 ) MDS polytope code 4 At node 5, determine one uncorrupted packet At node 6, decode the message and transmit a different uncorrupted packet

  19. Polytope Code Achievability Let message m = ( x N , y N ) , where x N , y N ∈ { 1 ,. . . , 2 k } N 1 z N = x N + y N w N = x N + 2 y N 2 5 Σ ⋆ = mm T S D ( x N , y N , z N , w N ) form a 3 6 ( 4 , 2 ) MDS polytope code 4 At node 5, determine one uncorrupted packet At node 6, decode the message and transmit a different uncorrupted packet No finite field linear code achieves this rate

  20. Cockroach Network 1 4 S 2 D 5 3 One node is controlled by the adversary — controls all outgoing messages

  21. Cockroach Network 1 4 S 2 D 5 3 One node is controlled by the adversary — controls all outgoing messages Let ( x N , y N , z N , w N , v N , u N ) be a ( 6 , 2 ) MDS polytope code

  22. Cockroach Network 1 4 S 2 D 5 3 One node is controlled by the adversary — controls all outgoing messages Let ( x N , y N , z N , w N , v N , u N ) be a ( 6 , 2 ) MDS polytope code Σ ⋆ included in all packets

  23. Cockroach Network 1 4 S 2 D 5 3 One node is controlled by the adversary — controls all outgoing messages Let ( x N , y N , z N , w N , v N , u N ) be a ( 6 , 2 ) MDS polytope code Σ ⋆ included in all packets Nodes 4 and 5 compare covariance of incoming pair of packets — transmit outcome of comparison

  24. A Class of Networks Solved by Polytope Codes Theorem (Kosut-Tong-Tse (2014)) Polytope codes achieve the cut-set bound if Network is planar 1 adversary node No node has more than 2 unit-capacity output edges No node has more outputs than inputs

  25. A Class of Networks Solved by Polytope Codes Theorem (Kosut-Tong-Tse (2014)) Polytope codes achieve the cut-set bound if Network is planar 1 adversary node No node has more than 2 unit-capacity output edges No node has more outputs than inputs Examples: 1 4 S 2 D 5 3

  26. Outline Polytope codes in general Polytope codes in network coding Polytope codes in distributed storage systems Polytope codes in multiple descriptions

  27. Distributed Storage Systems

  28. Distributed Storage Systems

  29. Distributed Storage Systems

  30. Distributed Storage Systems

  31. Distributed Storage Systems Single adversarial node may transmit many times

  32. Distributed Storage Systems Single adversarial node may transmit many times Naturally suited to the node-based adversary model

  33. Distributed Storage Systems Single adversarial node may transmit many times Naturally suited to the node-based adversary model Functional repair rather than exact repair

  34. Parameters α : Storage capacity of single node β : Download bandwidth when forming new node n : Number of active storage nodes k : Number of nodes contacted by data collector (DC) to recover file d : Number of nodes contacted to construct new node z : Number of (simultaneous) adversarial nodes

  35. Existing Bounds Pawar-El Rouayheb-Ramchandran (2011): Storage capacity is upper bounded by k − 2 z − 1 � C ≤ min { ( d − 2 z − i ) β , α } i = 0 Identical to bound without adversaries where k → k − 2 z and d → d − 2 z Rashmi et al (2012): The Minimum Storage Regeneration (MSR) and Minimum Bandwidth Regeneration (MBR) points are achievable with exact repair

  36. Existing Bounds, Ctd. Parameters: n = 8 , k = d = 7 , z = 1 8 0 . 3 Outer bound . 3 6 0 MBR point 3 4 0 . Achievable by 2 0 . 3 Rashmi et al 3 0 . Polytope code 8 0 . 2 achievable point 2 6 0 . MSR point 4 0 . 2 . 2 2 0 2 0 . 1 1 5 2 0 . 0 . 0 .

  37. Structure of Polytope Code for DSS Initial file to store m ∈ { 1 , 2 ,. . . , 2 k } R × N

  38. Structure of Polytope Code for DSS Initial file to store m ∈ { 1 , 2 ,. . . , 2 k } R × N Covariance Σ ⋆ = mm T

  39. Structure of Polytope Code for DSS Initial file to store m ∈ { 1 , 2 ,. . . , 2 k } R × N Covariance Σ ⋆ = mm T All packets are of the form (Σ ⋆ , A , x N ) where initially x N = Am

  40. Structure of Polytope Code for DSS Initial file to store m ∈ { 1 , 2 ,. . . , 2 k } R × N Covariance Σ ⋆ = mm T All packets are of the form (Σ ⋆ , A , x N ) where initially x N = Am For storage packet x N ∈ { 1 , 2 ,. . . , 2 k } α × N For transmission packet x N ∈ { 1 , 2 ,. . . , 2 k } β × N

  41. Messages for new node Choose linear transformation B ∈ Z β × α

  42. New Node Construction Given (Σ ⋆ , A i , y N i ) for i = 1 , 2 ,. . . , d

  43. New Node Construction Given (Σ ⋆ , A i , y N i ) for i = 1 , 2 ,. . . , d Recover Σ ⋆ using majority rule

  44. New Node Construction Given (Σ ⋆ , A i , y N i ) for i = 1 , 2 ,. . . , d Recover Σ ⋆ using majority rule    y N  A 1     1     y N  A 2        2 and y N = Form A =  .   .  . .     . .         y N A d     d

  45. New Node Construction Given (Σ ⋆ , A i , y N i ) for i = 1 , 2 ,. . . , d Recover Σ ⋆ using majority rule    y N  A 1     1     y N  A 2        2 and y N = Form A =  .   .  . .     . .         y N A d     d Compare A Σ ⋆ A T to Σ y = ( y N ) ( y N ) T

  46. New Node Construction Given (Σ ⋆ , A i , y N i ) for i = 1 , 2 ,. . . , d Recover Σ ⋆ using majority rule    y N  A 1     1     y N  A 2        2 and y N = Form A =  .   .  . .     . .         y N A d     d Compare A Σ ⋆ A T to Σ y = ( y N ) ( y N ) T Form syndrome graph on the vertex set { 1 , 2 ,. . . , d } with edge ( i , j ) if � A i � A i � y N � � y N � T � T � Σ ⋆ i i = y N y N A j A j j j

  47. New Node Construction Given (Σ ⋆ , A i , y N i ) for i = 1 , 2 ,. . . , d Recover Σ ⋆ using majority rule    y N  A 1     1     y N  A 2        2 and y N = Form A =  .   .  . .     . .         y N A d     d Compare A Σ ⋆ A T to Σ y = ( y N ) ( y N ) T Form syndrome graph on the vertex set { 1 , 2 ,. . . , d } with edge ( i , j ) if � A i � A i � y N � � y N � T � T � Σ ⋆ i i = y N y N A j A j j j Goal: Find trustworthy packets from which to form stored data

  48. Syndrome Graphs The honest nodes form a clique of size d − z

  49. Syndrome Graphs The honest nodes form a clique of size d − z Example: d = 4 and z = 1 : 1 1 2 3 4

  50. Syndrome Graphs The honest nodes form a clique of size d − z Example: d = 4 and z = 1 : 1 1 2 3 4 Use packets 1 and 2 to form stored data This is the typical case where d − 2 z trustworthy packets can be identified

  51. Syndrome Graphs The honest nodes form a clique of size d − z Example: d = 4 and z = 1 : 1 1 2 3 4

  52. Syndrome Graphs The honest nodes form a clique of size d − z Example: d = 4 and z = 1 : 1 1 2 3 4 Use all packets to form stored data Linear constraints (because covariances match) mean the adversary data is uncorrupted

Recommend


More recommend