Authorizing distributed task processing in a distributed storage network

US9430286B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9430286-B2
Application numberUS-201313865659-A
CountryUS
Kind codeB2
Filing dateApr 18, 2013
Priority dateDec 12, 2011
Publication dateAug 30, 2016
Grant dateAug 30, 2016

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A method begins by a distributed storage (DS) processing module transmitting a set of requests to a set of DS units regarding a set of data elements and receiving a set of respective requests from the set of DS units. When the set of respective requests is in accordance with a current distributed task/data responsibility allocation period, the method continues with the DS processing module issuing a set of responses to the set of DS units. The method continues with the DS processing module receiving a set of respective responses from the set of DS units. When the set of received respective responses is in accordance with the current distributed task/data responsibility allocation period, the method continues with the DS processing module processing the set of received respective responses in accordance with the current distributed task/data responsibility allocation period to produce one of a set of results.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for execution by a set of distributed storage (DS) units, the method comprises: transmitting, by each DS unit of the set of DS units, a set of requests to other DS units of the set of DS units, wherein a request of the set of requests includes requesting a response regarding a respective data element of a set of data elements from a respective one of the other DS units, and wherein the set of requests are generated in accordance with a current distributed task/data responsibility allocation period, wherein, collectively, the set of DS units contains a plurality of sets of data elements; receiving, by the each DS unit, a respective request from each of the other DS units such that the each DS unit receives a set of respective requests from the other DS units; when each of the set of respective requests is in accordance with the current distributed task/data responsibility allocation period: generating, by the each DS unit, a response to each respective request of the set of respective requests to produce a set of responses; and sending, by the each DS unit, the set of responses to the other DS units; receiving, by the each DS unit, a respective response from each of the sets of responses from the other DS units such that the each DS unit receives a set of respective responses from the other DS units; and when the set of respective responses is in accordance with the current distributed task/data responsibility allocation period, processing, by the each DS unit, the set of respective responses in accordance with the current distributed task/data responsibility allocation period to produce one of a set of results such that the set of DS units produces the set of results regarding the plurality of sets of data elements. 2. The method of claim 1 , wherein the processing the set of respective responses comprises at least one of: performing, by the each DS unit, an integrity check on data elements associated with the set of respective responses to produce the one of the set of results, wherein the set of results provides an integrity indication for the plurality of sets of data elements; verifying, by the each DS unit, a read request based on the data elements associated with the set of respective responses to produce the one of the set of results, wherein the set of results provides a validity indication for a read operation regarding the plurality of sets of data elements; and verifying, by the each DS unit, a write request based on the data elements associated with the set of respective responses to produce the one of the set of results, wherein the set of results provides a validity indication for a write operation regarding the plurality of sets of data elements. 3. The method of claim 1 further comprises: when one of the set of respective requests is not in accordance with the current distributed task/data responsibility allocation period, indicating, by the each DS unit, as potentially compromised, the respective one of the other DS units corresponding to the one of the set of respective requests not in accordance with the current distributed task/data responsibility allocation period. 4. The method of claim 3 further comprises at least one of: determining, by the each DS unit, that the one of the set of respective requests is not in accordance with the current distributed task/data responsibility allocation period when the respective one of the other DS units corresponding to the one of the set of respective requests is not an anticipated requesting DS unit in accordance with the current distributed task/data responsibility allocation period; determining, by the each DS unit, that the one of the set of respective requests is not in accordance with the current distributed task/data responsibility allocation period when the one of the set of respective requests is not an anticipated request in accordance with the current distributed task/data responsibility allocation period; and determining, by the each DS unit, that the one of the set of respective requests is not in accordance with the current distributed task/data responsibility allocation period when the one of the set of respective requests is a second request by the respective one of the other DS units. 5. The method of claim 1 further comprises: when one of the set of respective responses is not in accordance with the current distributed task/data responsibility allocation period, indicating, by the each DS unit, as potentially compromised, the respective one of the other DS units corresponding to the one of the set of respective responses not in accordance with the current distributed task/data responsibility allocation period. 6. The method of claim 5 further comprises at least one of: determining, by the each DS unit, that the one of the set of respective responses is not in accordance with the current distributed task/data responsibility allocation period when the respective one of the other DS units corresponding to the one of the set of respective responses is not an anticipated responding DS unit in accordance with the current distributed task/data responsibility allocation period; determining, by the each DS unit, that the one of the set of respective responses is not in accordance with the current distributed task/data responsibility allocation period when the one of the set of respective responses is not an anticipated response in accordance with the current distributed task/data responsibility allocation period; and determining, by the each DS unit, that the one of the set of respective responses is not in accordance with the current distributed task/data responsibility allocation period when the one of the set of respective responses is a second response by the respective one of the other DS units. 7. The method of claim 1 , wherein the current distributed task/data responsibility allocation period comprises at least one of: a time varying allocation of tasks among the set of DS units; a time varying allocation of data elements to process; a time varying allocation of permissible requests; and a time varying allocation of permissible responses. 8. A distributed storage (DS) module of each DS unit of a set of DS units, the DS module comprises: a first module, when operable within a computing device, causes the computing device to: transmit a set of requests to other DS units of the set of DS units, wherein a request of the set of requests includes requesting a response regarding a respective data element of a set of data elements from a respective one of the other DS units, and wherein the set of requests are generated in accordance with a current distributed task/data responsibility allocation period, wherein, collectively, the set of DS units contains a plurality of sets of data elements; a second module, when operable within the computing device, causes the computing device to: receive a respective request from each of the other DS units to produce a set of respective requests; and when each of the set of respective requests is in accordance with the current distributed task/data responsibility allocation period: generate a response to each respective request of the set of respective requests to produce a set of responses; and send the set of responses to the other DS units; and a third module, when operable within the computing device, causes the computing device to: receive a respective response from each of the sets of responses from the other DS units such that the each DS unit receives a set of respective responses from the other DS units; and when the set of respective responses is in accordance with the current distributed task/data responsibility allocation period, process the set of respective responses i

Assignees

Inventors

Classifications

  • Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit · CPC title

  • Rebuilding, e.g. when physically replacing a failing disk · CPC title

  • Distributed, i.e. distributed RAID systems with parity · CPC title

  • for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS] · CPC title

  • Parity data used in redundant arrays of independent storages, e.g. in RAID systems · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9430286B2 cover?
A method begins by a distributed storage (DS) processing module transmitting a set of requests to a set of DS units regarding a set of data elements and receiving a set of respective requests from the set of DS units. When the set of respective requests is in accordance with a current distributed task/data responsibility allocation period, the method continues with the DS processing module issu…
Who is the assignee on this patent?
Cleversafe Inc, IBM
What technology area does this patent fall under?
Primary CPC classification G06F11/1076. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Aug 30 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).