+ All Categories
Home > Documents > Array BP-XOR Codes for Reliable Cloud Storage Systems

Array BP-XOR Codes for Reliable Cloud Storage Systems

Date post: 24-Feb-2016
Category:
Upload: ayla
View: 62 times
Download: 0 times
Share this document with a friend
Description:
Array BP-XOR Codes for Reliable Cloud Storage Systems. Yongge Wang UNC Charlotte, USA IEEE ISIT(International Symposium on Information Theory) 2013. Outlines. Introduction Edge-colored graphs Array BP-XOR codes Flat non-MDS BP-XOR codes Conclusion. - PowerPoint PPT Presentation
45
Array BP-XOR Codes for Reliable Cloud Storage Systems Yongge Wang UNC Charlotte, USA IEEE ISIT(International Symposium on Information Theory) 2013 1
Transcript
Page 1: Array BP-XOR Codes for Reliable Cloud Storage Systems

1

Array BP-XOR Codes for Reliable Cloud Storage Systems

Yongge Wang

UNC Charlotte, USA

IEEE ISIT(International Symposium on Information Theory) 2013

Page 2: Array BP-XOR Codes for Reliable Cloud Storage Systems

2

Outlines

• Introduction• Edge-colored graphs• Array BP-XOR codes• Flat non-MDS BP-XOR codes• Conclusion

Page 3: Array BP-XOR Codes for Reliable Cloud Storage Systems

3

EaaS and Remote Computation on Data

• IaaS, PaaS, SaaS, NaaS, EaaS, etc.• data (services) are stored at remote client• we may need the remote cloud server to

process some query (processing) on these data instead of downloading the data to local computer and process the data

Page 4: Array BP-XOR Codes for Reliable Cloud Storage Systems

4

Where is the privacy?

• Data is stored on the remote server in clear?• we do not trust the remote server• what is the solution?• encrypt the data and store the cipher text?• how can do “computation on the data

remotely”?

Page 5: Array BP-XOR Codes for Reliable Cloud Storage Systems

5

Examples

• many choices for personal cloud data storage• Dropbox, SkyDrive, Google Drive, Amazon

Cloud drive, Apple iCloud, Ubuntu One, etc.• do you trust any one of these server and put

your data (your memory) there?• reliability? privacy?

Page 6: Array BP-XOR Codes for Reliable Cloud Storage Systems

6

Our Solution

• XOR-MDS codes are converted to XOR-based Secret Sharing Schemes

• 2-out-of-6 SSS(secret sharing scheme)• Register accounts at: Dropbox, SkyDrive, Google

Drive, Amazon Cloud drive, Apple iCloud, Ubuntu One, etc.

• data from any two servers are sufficient, but each single server learns zero information about data

Page 7: Array BP-XOR Codes for Reliable Cloud Storage Systems

7

Array Codes

• Mainly used for data storage system• example array codes– Blaum, et al: EVENODD (2 disk faults)– Blaum, et al: extended EVENODD (3 disk faults).– [2k, k, d] chain code– Simple Product Code (SPC)– Row-Diagonal Parity (RDP)– Blaum RDP(p, i) for i 8≦

[1] M. Blaum, J. Brady, J. Bruck, and J. Menon. EVENODD: An efficient scheme for tolerating double disk failures in raid architectures. IEEE Trans. Computers, 44(2):192–202, 1995.

Page 8: Array BP-XOR Codes for Reliable Cloud Storage Systems

8

Sample EVENODD code

Page 9: Array BP-XOR Codes for Reliable Cloud Storage Systems

9

Array Code Definition• Message set: M = {0, 1} and fixed n, k, t, and b• Information variables: let v1,… , vbk

• A t-erasure tolerating [n, k] array code is a b x n matrixC = [αi,j ]1≤i≤b,1≤j≤n

• Each αi,j {0, 1} is XOR of information symbols• v1,… , vbk recovered from any n - t columns of the matrix• For , call vij a neighbor of αi,j and σ the

degree of αi,j .• A t-erasure tolerating [n,k] b x n array code C is said to be

Maximum Distance Separable (MDS) if k = n - t

Page 10: Array BP-XOR Codes for Reliable Cloud Storage Systems

10

Array BP-XOR Code

• [Definition] A t-erasure tolerating [n, k] array code C = [αi,j ]1≤i≤b,1≤j≤n is called an [n, k] array BP-XOR code if all information symbols v1,… , vbk can be recovered from any n − t columns of encoding symbols using the BP-decoding process.

Page 11: Array BP-XOR Codes for Reliable Cloud Storage Systems

11

Degree 2 Array BP-XOR Code

• [Theorem] If each encoding symbol in C = [αi,j ]1≤i≤b,1≤j≤n has degree at most 2, then the restricted array BP-XOR codes are equivalent to edge-colored graphs introduced by Wang and Desmedt for tolerating network homogeneous faults.

Page 12: Array BP-XOR Codes for Reliable Cloud Storage Systems

12

Edge-colored Graph Definition• Definition : (Wang and Desmedt [15]) An edge-colored graph is

a tuple G = (V, E,C, f), with V the node set, E the edge set, C the color set, and f a map from E onto C. The structureZC,t = {Z : Z ⊆ E and |f(Z)| ≤ t}.is called a t-color adversary structure.

• Let A,B ∈ V be distinct nodes of G. • A and B are called (t+1)-color connected for t ≥ 1 if for any

color set Ct ⊆ C of size t, there is a path p from A to B in G such that the edges on p do not contain any color in Ct.

• An edge-colored graph G is (t+1)-color connected if and only if for any two nodes A and B in G, they are (t+1)-color connected.[15] Yongge Wang and Yvo Desmedt. Edge-colored graphs with applications to homogeneous faults. Inf. Process. Lett., 111(13):634–641, 2011.

Page 13: Array BP-XOR Codes for Reliable Cloud Storage Systems

13

3-color connected graph G4,2 with 7 nodes, 12 edges, and 4 colors.Removal of any two colors in the graph will not disconnect the graph.

Page 14: Array BP-XOR Codes for Reliable Cloud Storage Systems

14

Definition

• Let Kn = (V,E) be the complete graph with n nodes.

• For an even n, a one-factor of Kn is a spanning 1-regular subgraph (or a perfect matching) of Kn.

• A one-factorization of Kn (n is even) is a set of one-factors that partition the set of edges E.

• A one-factorization is called perfect (or P1F) if the union of every two distinct one-factors is a Hamiltonian circuit.

Page 15: Array BP-XOR Codes for Reliable Cloud Storage Systems

15

P1F

• Perfect one-factorizations for Kp+1, K2p, and certain K2n do exist, where p is a prime number. It is conjectured that P1F exist for all K2n.

Page 16: Array BP-XOR Codes for Reliable Cloud Storage Systems

16

Page 17: Array BP-XOR Codes for Reliable Cloud Storage Systems

17

P1F Example

Page 18: Array BP-XOR Codes for Reliable Cloud Storage Systems

18

P1F of K8

Page 19: Array BP-XOR Codes for Reliable Cloud Storage Systems

19

Edge-colored graphs from P1F

Page 20: Array BP-XOR Codes for Reliable Cloud Storage Systems

20

Edge-colored graphs from P1F: Proof

• Proof. Let v1, . . . , vn+1 be a list of nodes for Kn+1 and V = {v1, …, vn}. Let F’i = Fi \ {<vn+1, vj> : j = 1, …, n}, E = F’1 ∪ ・ ・ ・ ∪ F’t+2, and color all edges in F’i with the color ci for i ≤ t + 2. Then it is straightforward to check that the edge-colored graph (V,E) is (t+1)-color connected, |V| = n, and |E| = (t + 2)(n − 1)/2.

Page 21: Array BP-XOR Codes for Reliable Cloud Storage Systems

21

Choose a fixed node v7 and remove all occurrences of v7 to get the [4,2] 3 x 4 array BP-XOR code:

Page 22: Array BP-XOR Codes for Reliable Cloud Storage Systems

22

Edge-colored graphs from array BP-XOR code

• G = (V, E,C, f) be a (t + 1)-color connected edge-colored graph with V = {v1, … , vbk, vbk+1} and C = {c1, c2, …, cn} and b = maxc C∈ {|Z| : Z ⊆ E, f(Z) = c}. – 1) For 1 ≤ i ≤ n, let βi be defined as

– 2) If | βi | is smaller than b, duplicate elements in βi to make it a b-element set.

– 3) The array BP-XOR code is specified by the b × n matrix

Page 23: Array BP-XOR Codes for Reliable Cloud Storage Systems

23

Array BP-XOR codes from edge-colored graphs

• Theorem : Let C be an b × n array BP-XOR code with the following properties: 1) C is t-erasure tolerating,2) C contains bk information symbols; and3) C contains only degree one and two encoding symbols.

Then there exists a (t+1)-color connected edge-colored graph G = (V, E,C, f) with|V|=bk+1, |E|=bn, and |C|=n.

Page 24: Array BP-XOR Codes for Reliable Cloud Storage Systems

24

MDS [n,2] array BP-XOR codes

• First find the smallest p (or 2p) such that n ≤ p (or n ≤ 2p-1), where p is an odd prime. Using P1F of Kp+1 to construct the edge-colored graphs and then design the following array BP-XOR code

Page 25: Array BP-XOR Codes for Reliable Cloud Storage Systems

25

Efficient XOR-based secret sharing scheme

• As an example, design SSS based on the previous codes

• Let secret data file

• Now assume that the first bit of F is flipped. This is equivalent to flipping the first bit of vp-1. Thus the data owner only needs to inform each server to flip one bit at certain location without leaking any other information.

• Other remote computation is possible also (e.g., remote search or database query)

Page 26: Array BP-XOR Codes for Reliable Cloud Storage Systems

26

Flat BP-XOR codes

• A b x n array BP-XOR code is called a flat BP-XOR code if b = 1. Furthermore, a 1 x n BP-XOR code with k information symbols and distance d is called an [n, k, d] BP-XOR code.

• Fact : Let n ≥ k + 2, k ≥ 2, and d = n − k + 1. Then there is no flat [n, k, d] BP-XOR code.

Page 27: Array BP-XOR Codes for Reliable Cloud Storage Systems

27

Tolerating one erasure fault

Page 28: Array BP-XOR Codes for Reliable Cloud Storage Systems

28

Tolerating two erasure faults

• Fact 4.1 shows that two parity check symbols are not sufficient for tolerating two erasure faults for flat BP-XOR codes. In order to tolerate two erasure, we have to consider codes with n ≥ k + 3.

Theorem : For n ≥ k + 3 and k ≥ 3, there exists a flat [n, k, 3] BP-XOR code if and only if k ≤ 2n−k −(n−k)−1.

Proof. The truncated version (or non-truncated version if k = 2n-k-(n-k)-1 ) of the Hamming code could be used to prove the theorem.

Page 29: Array BP-XOR Codes for Reliable Cloud Storage Systems

29

Tolerating two erasure faults

• Flat [5, 2, 3],[6, 3, 3], and [7, 4, 3] BP-XOR codes for tolerating two erasure faults.

• The above three codes are the only flat [k+3, k, 3] BP-XOR codes tolerating two erasure faults with three redundancy columns.

Page 30: Array BP-XOR Codes for Reliable Cloud Storage Systems

30

Tolerating two erasure faults

Page 31: Array BP-XOR Codes for Reliable Cloud Storage Systems

31

Tolerating three erasure faults

Page 32: Array BP-XOR Codes for Reliable Cloud Storage Systems

32

Tolerating three erasure faults

βi are distinct elements from X.

Page 33: Array BP-XOR Codes for Reliable Cloud Storage Systems

33

Tolerating three erasure faults

• Let n = 7, k = 3, d = 4, and β1 = (1, 1, 1, 0), β2 = (0, 1, 1, 1), and β3 = (1, 0, 1, 1). Then the corresponding code has the following generator matrix:

Page 34: Array BP-XOR Codes for Reliable Cloud Storage Systems

34

Tolerating three erasure faults

Page 35: Array BP-XOR Codes for Reliable Cloud Storage Systems

35

Tolerating four or more erasure faults

Page 36: Array BP-XOR Codes for Reliable Cloud Storage Systems

36

Page 37: Array BP-XOR Codes for Reliable Cloud Storage Systems

37

Conclusion

• We used edge-colored graphs to design degree one-and-two encoding symbol based array BP-XOR codes.

• Degree one and two encoding symbols could be used to design MDS array BP-XOR codes with t = 2 or k = 2.

Page 38: Array BP-XOR Codes for Reliable Cloud Storage Systems

38

References• [1] M. Blaum, J. Brady, J. Bruck, and J. Menon. EVENODD: An efficient scheme for

tolerating double disk failures in raid architectures. IEEE Trans. Computers, 44(2):192–202, 1995.

• [2] M. Blaum, J. Bruck, and E. Vardy. MDS array codes with independent parity symbols. IEEE Trans. on Information Theory, 42:529–542, 1996.

• [3] M. Blaum and R. M. Roth. On lowest-density MDS codes. IEEE Trans. on Information Theory, 45:46–59, 1999.

• [7] N. Cao, S. Yu, Z. Yang, W. Lou, and T. Hou. Lt codes-based secure and reliable cloud storage service. In Proceedings of INFOCOM, 2012.

• [8] C. Huang and L. Xu. STAR: an efficient coding scheme for correcting triple storage node failures. In FAST, pages 197–210, 2005.

• [13] M. Paterson, D. Stinson, and Yongge Wang. On encoding symbol degrees of array bp-xor codes. Submitted for publication, 2013.

• [15] Yongge Wang and Yvo Desmedt. Edge-colored graphs with applications to homogeneous faults. Inf. Process. Lett., 111(13):634–641, 2011.

Page 39: Array BP-XOR Codes for Reliable Cloud Storage Systems

39

Page 40: Array BP-XOR Codes for Reliable Cloud Storage Systems

40

Page 41: Array BP-XOR Codes for Reliable Cloud Storage Systems

41

Page 42: Array BP-XOR Codes for Reliable Cloud Storage Systems

42

Page 43: Array BP-XOR Codes for Reliable Cloud Storage Systems

43

Page 44: Array BP-XOR Codes for Reliable Cloud Storage Systems

44

Page 45: Array BP-XOR Codes for Reliable Cloud Storage Systems

45


Recommended