Peer to peer code generator and decoder for digital systems and cluster storage system
First Claim
Patent Images
1. A method for operating a cluster of peer systems supporting a filesystem common to all of the peers in the cluster, the filesystem including a plurality of files each divided into codewords striped across at least a subset of the peer systems, comprising the steps of:
- each of the peers across which codewords of a particular one of the files are striped having a respective local copy of file metadata indicating both the identity of all the peers across which the codewords of the particular file are striped, and which portions of each of the codewords are assigned to which of the peers, the particular file being striped across more than one peer;
each given available one of the peers across which codewords of the particular file are striped, in response to receiving from a content requestor a first multicast request message which includes a request to read data from the particular file, the first request message identifying both the particular file and the range of data requested, determining in dependence upon both the file metadata copy local to the given peer and the file and data range identified in the first request message, which respective portion of the requested data (if any) is the responsibility of each of the available peers to provide and which respective portion of the requested data is the responsibility of each unavailable peer (if any) to provide; and
each of the given available peers multicasting, toward at least the content requestor and all of the available ones of the peers across which codewords of the particular file are striped, the data which is the responsibility of given peer to provide; and
each of the given peers including in conjunction with its multicast data an identification of both the particular file and the range of data requested by the first request message.
1 Assignment
0 Petitions
Accused Products
Abstract
A highly resilient, scalable, high-performance data storage system that stripes its content across a cluster of peer computers. Multiple peers can fail (up to the FEC level configured in the cluster) without disrupting the clients. Peer failures are detected by the cluster and all missing data is seamlessly generated so all I/O operations complete successfully.
67 Citations
13 Claims
-
1. A method for operating a cluster of peer systems supporting a filesystem common to all of the peers in the cluster, the filesystem including a plurality of files each divided into codewords striped across at least a subset of the peer systems, comprising the steps of:
-
each of the peers across which codewords of a particular one of the files are striped having a respective local copy of file metadata indicating both the identity of all the peers across which the codewords of the particular file are striped, and which portions of each of the codewords are assigned to which of the peers, the particular file being striped across more than one peer; each given available one of the peers across which codewords of the particular file are striped, in response to receiving from a content requestor a first multicast request message which includes a request to read data from the particular file, the first request message identifying both the particular file and the range of data requested, determining in dependence upon both the file metadata copy local to the given peer and the file and data range identified in the first request message, which respective portion of the requested data (if any) is the responsibility of each of the available peers to provide and which respective portion of the requested data is the responsibility of each unavailable peer (if any) to provide; and each of the given available peers multicasting, toward at least the content requestor and all of the available ones of the peers across which codewords of the particular file are striped, the data which is the responsibility of given peer to provide; and each of the given peers including in conjunction with its multicast data an identification of both the particular file and the range of data requested by the first request message. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
Specification