Patents Assigned to Cleversafe, Inc.
  • Patent number: 9063658
    Abstract: In a dispersed storage network, data objects are dispersed storage error encoded into pluralities of sets of encoded data slices that are stored in a set of storage units. To recover a data object, a read threshold number of encoded data slices from each set of encoded data slices of a corresponding set of the plurality of sets of encoded data slices are required. Upon determining that an update is available for the set of storage units, a dispersed storage managing unit takes a first subset of storage units off line to perform the update. During the update, a remaining number of storage units of the set of storage units remain on line such that at least the read threshold number of encoded data slices are available for each set of the pluralities of sets of encoded data slices.
    Type: Grant
    Filed: May 28, 2014
    Date of Patent: June 23, 2015
    Assignee: Cleversafe, Inc.
    Inventor: Jason K. Resch
  • Patent number: 9065820
    Abstract: A method begins by a processing module receiving a certificate chain and determining whether at least one of one or more signed certificates of the chain has a valid signature. When the at least one of the one or more signed certificates has a valid signature, the method continues with the processing module identifying one or more certificate authorities (CA) to produce identified CAs, accessing registry information that includes one or more realm identifiers (IDs) and a plurality of trusted CA IDs, determining whether one or more of the identified CAs is a trusted CA, and when the one or more of the identified CAs is a trusted CA, indicating that the certificate chain is valid, identifying a realm ID based on a trusted CA ID, and generating certificate chain validation information to include the realm ID, trusted CAs, and the indication of the validity of the certificate chain.
    Type: Grant
    Filed: September 18, 2013
    Date of Patent: June 23, 2015
    Assignee: Cleversafe, Inc.
    Inventors: Wesley Leggette, Jason K. Resch, Bart Cilfone
  • Publication number: 20150172386
    Abstract: A method with a computer generating a first set of access requests regarding a first set of encoded data slices and storage units of a dispersed storage network. A first data segment is encoded into the first set of encoded data slices. The method continues with the computer generating a second set of access requests regarding a second set of encoded data slices and the storage units. A second data segment is encoded into the second set of encoded data slices. The method continues with the computer grouping the first set of access requests and the second set of access requests to produce a set of combined requests. The method continues with the computer sending the set of combined requests to the storage units.
    Type: Application
    Filed: February 23, 2015
    Publication date: June 18, 2015
    Applicant: CLEVERSAFE, INC.
    Inventors: Srinivas Palthepu, Vance T. Thornton, Jesse L. Young, John Quigley, Andrew Baptist, Greg Dhuse
  • Publication number: 20150169897
    Abstract: A method of securely storing data to a dispersed data storage system is disclosed. A data segment is arranged along the columns or rows of an appropriately sized matrix. Data slices are then created based on either the columns or the rows so that no consecutive data is stored in a data slice. Each data slice is then stored in a separate storage node.
    Type: Application
    Filed: February 27, 2015
    Publication date: June 18, 2015
    Applicant: CLEVERSAFE, INC.
    Inventors: Wesley Leggette, Jason K. Resch
  • Publication number: 20150156204
    Abstract: A method begins with a group of storage units of a dispersed storage network (DSN) receiving a common access request. The method continues with each storage unit of the group of storage units interpreting the access request to determine whether the storage unit is an intended recipient of the access request, where storage units of a sub-set of storage units of the group of storage units are intended recipients. The method continues with each storage unit of the sub-set of storage units determining a type of the access request and a level of the access request. When the access request is a read request, the method continues with each storage unit of the sub-set of storage units retrieving each encoded data slice having an identifier of its slice address substantially matching the a given identifier of the level to produce a retrieved set of encoded data slices.
    Type: Application
    Filed: September 30, 2014
    Publication date: June 4, 2015
    Applicant: CLEVERSAFE, INC.
    Inventors: Jason K. Resch, Ravi Khadiwala, Greg Dhuse
  • Publication number: 20150155969
    Abstract: A method begins by a first computing device generating an initial routing plan that identifies network paths for transmitting encoded data slices of an encoded data segment from the first computing device to a second computing device. The method continues with the first computing device sending a plurality of subsets of encoded data slices to network paths. Within a network path, the method continues by a relay unit determining whether the network path defined by the initial routing plan requires adjusting. When the network path requires adjusting, the method continues with the relay unit establishing an adjusted network path by at least one of adding a relay unit and deleting a relay unit. The method continues with the relay unit sending, via the adjusted network path, the corresponding subset of encoded data slices to the second computing device.
    Type: Application
    Filed: February 6, 2015
    Publication date: June 4, 2015
    Applicant: CLEVERSAFE, INC.
    Inventors: Ilya Volvovski, Andrew Baptist, Gary W. Grube, Timothy W. Markison, S. Christopher Gladwin, Greg Dhuse, Jason K. Resch
  • Publication number: 20150154074
    Abstract: A method begins by a dispersed storage (DS) processing module selecting a data segment and verifying integrity values of encoded data slices generated by encoding the data segment. When integrity values of a decode threshold number of encoded data slices are affirmatively verified, the method continues with the DS processing module verifying an integrity value of the data segment. When the integrity value of the data segment is affirmatively verified, the method continues with the DS processing module generating a new set of encoded data slices. The method continues with the DS processing module verifying concurrency of the set of encoded data slices with the new set of encoded data slices and for each encoded data slice having a negative concurrency verification, flagging the encoded data slice as being potentially compromised.
    Type: Application
    Filed: February 6, 2015
    Publication date: June 4, 2015
    Applicant: CLEVERSAFE, INC.
    Inventors: Jason K. Resch, Wesley Leggette, Manish Motwani
  • Publication number: 20150155968
    Abstract: A method begins by a first computing device determining a routing plan to route a set of encoded data slices from the first computing device to a second computing device via a plurality of network paths of a communications network. The method continues with the second computing device receiving encoded data slices via one or more network paths. When the second computing device receives a decode threshold number of encoded data slices, the method continues with the second computing device sending a message to the communications network indicating receipt of the decode threshold number of encoded data slices. The method continues with a relay unit determining whether the relay unit is in possession of a not-yet delivered encoded data slice. When the relay unit is in possession of the not-yet delivered encoded data slice, the method continues with the relay unit ceasing forwarding of the not-yet delivered encoded data slice.
    Type: Application
    Filed: February 6, 2015
    Publication date: June 4, 2015
    Applicant: CLEVERSAFE, INC.
    Inventors: Gary W. Grube, Timothy W. Markison, S. Christopher Gladwin, Greg Dhuse, Andrew Baptist, Ilya Volvovski, Jason K. Resch
  • Patent number: 9047242
    Abstract: A method begins by a processing module generating a payload section of a dispersed storage network (DSN) frame regarding a read request operation by generating one or more slice name fields of the payload section to include one or more slice names corresponding to one or more encoded data slices and generating a transaction number field of the payload section to include a transaction number corresponding to the read request operation. The method continues with the processing module generating a protocol header of the DSN frame by generating a payload length field of the protocol header to include a payload length that represents a length of the payload section and generating remaining fields of the protocol header.
    Type: Grant
    Filed: April 5, 2011
    Date of Patent: June 2, 2015
    Assignee: Cleversafe, Inc.
    Inventors: Andrew Baptist, Wesley Leggette, Jason K. Resch, Manish Motwani
  • Patent number: 9047218
    Abstract: A method begins by a processing module dispersed storage error encoding data to produce a plurality of sets of encoded data slices in accordance with dispersed storage error coding parameters. The method continues with the processing module determining a plurality of sets of slice names corresponding to the plurality of sets of encoded data slices. The method continues with the processing module determining integrity information for the plurality of sets of slice names and sending the plurality of sets of encoded data slices, the plurality of sets of slice names, and the integrity information to a dispersed storage network memory for storage therein.
    Type: Grant
    Filed: February 4, 2011
    Date of Patent: June 2, 2015
    Assignee: Cleversafe, Inc.
    Inventors: Jason K. Resch, John Quigley, Wesley Leggette
  • Patent number: 9047217
    Abstract: A method for execution by a DS storage unit begins with the DS storage unit receiving an encoded slice of a plurality of encoded slices, wherein the plurality of encoded slices was generated from a data segment using an error encoding function. The method continues with the DS storage unit determining whether the encoded slice is to be sub-sliced using a sub-slicing encoding function. The method continues with the DS storage unit generating a plurality of encoded sub-slices from the encoded slices using the encoded sub-slicing encoding function when the encoded slice is to be sub-sliced. The method continues with the DS storage unit outputting the plurality of encoded sub-slices to a plurality of DS storage units.
    Type: Grant
    Filed: February 25, 2010
    Date of Patent: June 2, 2015
    Assignee: Cleversafe, Inc.
    Inventors: Gary W. Grube, Timothy W. Markison
  • Publication number: 20150150082
    Abstract: A method begins with a managing unit establishing an access policy that designates, for a first group of user devices, a first read time window and a first write time window. The method continues with a storage unit receiving an access request from a user device. The method continues with the storage unit determine whether the access request is received within the first read time window or whether the access request is received within the first write time window. The method continues with the storage unit generating a read response that includes encoded data slices when the access request is a read request and is received within the first read time window. The method continues with the storage unit processing the write request to store encoded data slices when the access request is the write request and is received within the first write time window.
    Type: Application
    Filed: February 3, 2015
    Publication date: May 28, 2015
    Applicant: CLEVERSAFE, INC.
    Inventors: Gary W. Grube, Timothy W. Markison
  • Publication number: 20150149861
    Abstract: A method begins by a DS processing module generating a plurality of encoded slices from a data segment using an error encoding function. The method continues with the DS processing module identifying a plurality of DS storage units for storing the plurality of encoded slices. The method continues with the DS processing module selecting an encoded slice of the plurality of encoded slices for sub-slicing using a sub-slicing encoding function to produce a selected encoded slice. The method continues with the DS processing module outputting the plurality of encoded slices to the plurality of DS storage units. The method continues with the DS processing module outputting a command to a DS storage unit of the plurality of DS storage units corresponding to the selected encoded slice, wherein the command includes an instruction to sub-slice the selected encoded slice.
    Type: Application
    Filed: February 2, 2015
    Publication date: May 28, 2015
    Applicant: CLEVERSAFE, INC.
    Inventors: Gary W. Grube, Timothy W. Markison
  • Patent number: 9043548
    Abstract: A computing system includes a plurality of dispersed storage (DS) processing units operable to receive a continuous data stream, simultaneously disperse storage error encode the continuous data stream to produce a plurality of encoded data slices and store the plurality of encoded data slices in a DS memory.
    Type: Grant
    Filed: August 1, 2014
    Date of Patent: May 26, 2015
    Assignee: Cleversafe, Inc.
    Inventors: Gary W. Grube, Timothy W. Markison, Jason K. Resch
  • Patent number: 9043489
    Abstract: A method begins by a router receiving data for storage and interpreting the data to determine whether the data is to be forwarded or error encoded. The method continues with the router obtaining a routing table when the data is to be error encoded. Next, the method continues with the router selecting a routing option from the plurality of routing options and determining error coding dispersal storage function parameters based on the routing option. Next, the method continues with the router encoding the data based on the error coding dispersal storage function parameters to produce a plurality of sets of encoded data slices. Next, the method continues with the router outputting at least some of the encoded data slices of a set of the plurality of sets of encoded data slices to an entry point of the routing option.
    Type: Grant
    Filed: August 4, 2010
    Date of Patent: May 26, 2015
    Assignee: Cleversafe, Inc.
    Inventors: Gary W. Grube, Timothy W. Markison
  • Patent number: 9043689
    Abstract: A method begins by a processing module obtaining common storage name information regarding data that is stored in storage units of a distributed storage network (DSN) as a set of data slices. Each data slice of the set of data slices has a unique storage name, where each of the unique storage names for the set of data slices has common naming information regarding the data. The method continues where the processing module interprets the common storage name information to determine whether a difference exists between the common naming information of a data slice of the set of data slices and the common naming information of other data slices of the set of data slices. When the difference exists, the method continues where the processing module indicates a potential storage error of the data slice and implements a storage error process regarding the potential storage error of the data slice.
    Type: Grant
    Filed: June 30, 2014
    Date of Patent: May 26, 2015
    Assignee: Cleversafe, Inc.
    Inventors: Jason K. Resch, John Quigley, Wesley Leggette, Andrew Baptist
  • Patent number: 9043616
    Abstract: A method begins with a processing module obtaining data to store and determining whether substantially similar data to the data is stored. When the substantially similar data is not stored, the method continues with the processing module generating a first encryption key based on the data, encoding the first encryption key into encoded data slices in accordance with an error coding dispersal storage function, and storing the encoded data slices in a dispersed storage network (DSN) memory. The method continues with the processing module encrypting the data using an encryption key of the substantially similar data in accordance with an encryption function to produce encrypted data, compressing the encrypted data in accordance with a compression function to produce compressed data, storing the compressed data when the substantially similar data is stored.
    Type: Grant
    Filed: July 21, 2014
    Date of Patent: May 26, 2015
    Assignee: Cleversafe, Inc.
    Inventors: Gary W. Grube, Timothy W. Markison, S. Christopher Gladwin, Kumar Abhijeet, Greg Dhuse, Jason K. Resch
  • Patent number: 9043574
    Abstract: A dispersed storage (DS) unit for use within a dispersed storage network is capable of self-configuring using registry information provided to the DS unit. The registry information includes a slice name assignment indicating a range of slice names corresponding to a plurality of potential data slices of potential data objects to be stored in the DS unit. Based on the registry information, the DS unit allocates a portion of physical memory to store the potential data slices.
    Type: Grant
    Filed: December 28, 2012
    Date of Patent: May 26, 2015
    Assignee: Cleversafe, Inc.
    Inventors: Manish Motwani, Wesley Leggette
  • Patent number: 9043499
    Abstract: A dispersed storage network memory includes a pool of storage nodes, where the pool of storage nodes stores a multitude of encoded data files. A storage node obtains and analyzes data access response performance data for each of the storage nodes to produce a modified data access response plan that includes identity of an undesired performing storage node and an alternative data access response for the undesired performing storage node. The storage nodes receive corresponding portions of a data access request for at least a portion of one of the multitude of encoded data files. The undesired performing storage node or another storage node processes one of the corresponding portions of the data access request in accordance with the alternative data access response.
    Type: Grant
    Filed: December 11, 2013
    Date of Patent: May 26, 2015
    Assignee: Cleversafe, Inc.
    Inventors: Michael Colin Storm, Jason K. Resch
  • Patent number: 9037937
    Abstract: A method begins by a first device determining an error coding distributed routing protocol and transmitting a set of encoded data slices, identity of a second device, and the error coding distributed routing protocol to a network, wherein the set of encoded data slices represents data that has been dispersed storage error encoded. The method continues with the network routing a plurality of sub-sets of the set of encoded data slices via an initial plurality of routing paths towards the second, comparing anticipated routing performance with a desired routing performance, and altering the routing path to obtain a favorable comparison. The method continues with the second device receiving at least some of the set of encoded data slices from the network and decoding at least a threshold number of encoded data slices to reproduce the data when at least the threshold number of encoded data slices have been received.
    Type: Grant
    Filed: October 3, 2011
    Date of Patent: May 19, 2015
    Assignee: Cleversafe, Inc.
    Inventors: Andrew Baptist, Ilya Volvovski, Gary W. Grube, Timothy W. Markison, S. Christopher Gladwin, Greg Dhuse, Jason K. Resch