Patents Assigned to Cleversafe, Inc.
  • Publication number: 20150067421
    Abstract: A dispersed storage processing unit selects a slice length for a data segment to be stored in a dispersed storage network (DSN). The data segment is encoded using a dispersed storage error coding function to produce a set of data slices in accordance with the slice length. A storage file is selected based on the slice length. A storage file identifier (ID) is generated that indicates the storage file. A set of DSN addresses are generated corresponding to the set of data slices, wherein the set of DSN addresses each include the storage file ID and a corresponding one of a plurality of offset identifiers (IDs). The set of data slices are written in accordance with the set of DSN addresses. A directory is updated to associate the set of DSN addresses with an identifier of the data segment.
    Type: Application
    Filed: June 26, 2014
    Publication date: March 5, 2015
    Applicant: CLEVERSAFE, INC.
    Inventors: Andrew Baptist, Ilya Volvovski, Wesley Leggette, Greg Dhuse, Jason K. Resch
  • Publication number: 20150067164
    Abstract: A dispersed storage and task (DST) processing unit receives an access request. An estimated processing load, associated with the access request, is determined. A processing resource is selected based on the estimated processing load. A coordinated execution schedule is determined for a plurality of DST execution units. The access request is assigned to the processing resource in accordance with the coordinated execution schedule.
    Type: Application
    Filed: June 26, 2014
    Publication date: March 5, 2015
    Applicant: CLEVERSAFE, INC.
    Inventors: Asimuddin Kazi, Jason K. Resch
  • Publication number: 20150067100
    Abstract: A dispersed storage and task (DST) processing unit receives a data access request corresponding to a data segment. Range availability information is obtained for a plurality of DST execution units of the DST network. A subset of the plurality of DST execution units is selected based on the range availability information and a threshold number corresponding to the data access request. Execution unit access requests are generated and sent to the subset of the plurality of DST execution units corresponding to a plurality of slices of the data segment, wherein the execution unit access requests include address information that is based on the range availability information.
    Type: Application
    Filed: June 26, 2014
    Publication date: March 5, 2015
    Applicant: CLEVERSAFE, INC.
    Inventors: Andrew George Peake, Jason K. Resch
  • Patent number: 8972774
    Abstract: A computing core includes a processing module, main memory, and a memory controller. The memory controller receives a request to fetch an instruction from the processing module and determines whether the instruction is currently stored in the main memory. When the instruction is not currently stored in the main memory, the memory controller determines whether the instruction is stored in a distributed storage network (DSN) memory as one or more sets of encoded instruction slices; and, when it is, the memory controller addresses the DSN memory to retrieve the one or more sets of encoded instruction slices. When at least a threshold number of encoded instruction slices are retrieved for each of the one or more sets of encoded instruction slices, the one or more sets of encoded instruction slices are decoded using a dispersed storage error coding function to reconstruct the instruction, which is provided to the processing module.
    Type: Grant
    Filed: December 30, 2013
    Date of Patent: March 3, 2015
    Assignee: Cleversafe, Inc.
    Inventors: Gary W. Grube, Timothy W. Markison
  • Patent number: 8972692
    Abstract: A dispersed storage network utilizes a virtual address space to store data. The dispersed storage network includes a dispersed storage device for receiving a request relating to a data object stored in the dispersed storage network and determining a virtual memory address assigned to the data object. The virtual memory address is within a virtual memory address range of the virtual address space that is allocated to a vault associated with a user of the data object. The virtual memory address is further assigned to a data slice of a plurality of data slices of the data object. The dispersed storage device uses the virtual memory address to determine an identifier of a storage unit within the dispersed storage network that has the data slice stored therein.
    Type: Grant
    Filed: September 13, 2013
    Date of Patent: March 3, 2015
    Assignee: Cleversafe, Inc.
    Inventors: Wesley Leggette, Greg Dhuse, Andrew Baptist, S. Christopher Gladwin
  • Patent number: 8972684
    Abstract: A dispersed storage device manages deletion of data objects stored within a dispersed storage network by receiving a data delete request to delete a data object stored throughout a set of dispersed storage units within a dispersed network memory of the dispersed storage network, determining a deletion policy for the data object and selectively generating and transmitting, based on the deletion policy, a delete command to the set of dispersed storage units.
    Type: Grant
    Filed: September 12, 2013
    Date of Patent: March 3, 2015
    Assignee: Cleversafe, Inc.
    Inventors: Jason K. Resch, S. Christopher Gladwin, Andrew Baptist
  • Patent number: 8966311
    Abstract: A method begins by a processing module determining failure mode information for a plurality of storage modules of a maintenance-free storage container. The method continues with the processing module managing storage mapping information of data content within the plurality of storage modules based on the failure mode information and receiving a data access request. The method continues with the processing module interpreting the data access request based on the storage mapping information to identify one or more of the plurality of storage modules to produce one or more identified storage modules and generating an in-container data access request based on the data access request and the one or more identified storage modules. The method continues with the processing module sending the in-container data access request to the one or more identified storage modules.
    Type: Grant
    Filed: June 20, 2012
    Date of Patent: February 24, 2015
    Assignee: Cleversafe, Inc.
    Inventors: S. Christopher Gladwin, Jason K. Resch, Gary W. Grube, Timothy W. Markison
  • Patent number: 8966341
    Abstract: A method includes a DSN access token module retrieving one or more sets of at least a threshold number of dispersed storage (DS) error coding function slices from the DSN memory via the computing device. The method continues with the computing device and/or the DSN access token module decoding the one or more sets of the at least a threshold number of DS error coding function slices using a default DS error coding function to recapture a DS error coding function. The method continues with the computing device and/or the DSN access token module generating a plurality of sets of data access requests in accordance with the DS error coding function. The method continues with the computing device sending the plurality of sets of data access requests to the DSN memory.
    Type: Grant
    Filed: May 13, 2014
    Date of Patent: February 24, 2015
    Assignee: Cleversafe, Inc.
    Inventors: Gary W. Grube, Timothy W. Markison, Greg Dhuse, Jason K. Resch, Ilya Volvovski, Wesley Leggette
  • Patent number: 8965956
    Abstract: An integrated client computer for accessing a dispersed data storage network is disclosed. A client program operating on the client computer accepts commands from a user and in response, issues network messages to a plurality of slice servers implementing a dispersed data storage network. Data slices can be read, written or modified using the disclosed integrated client computer.
    Type: Grant
    Filed: December 29, 2009
    Date of Patent: February 24, 2015
    Assignee: Cleversafe, Inc.
    Inventors: Srinivas Palthepu, Vance T. Thornton, Jesse Louis Young, John Quigley, Andrew Baptist, Greg Dhuse
  • Patent number: 8966009
    Abstract: A method begins by a router receiving a data packet and determining a destination of the data packet. The method continues with the router determining whether the router has an affiliation with the destination. The method continues with the router determining whether to temporarily locally store the data packet when the router has the affiliation with the destination. The method continues with the router locally storing the data packet and forwarding the data packet to the destination in accordance with a transfer protocol when the determination to temporarily locally store the data packet is favorable.
    Type: Grant
    Filed: October 25, 2013
    Date of Patent: February 24, 2015
    Assignee: Cleversafe, Inc.
    Inventors: Gary W. Grube, Timothy W. Markison
  • Patent number: 8965939
    Abstract: A method begins, in accordance with a segmentation approach, dividing large data to be stored into regions and dividing a region into segments. The method continues by generating preliminary DSN storage information for one or more regions. The method continues by identifying other large data stored in the DSN that has a relationship with the large data to be stored in the DSN and retrieving DSN storage information for the other large data. The method continues by comparing, at a region level, the preliminary DSN storage information with the retrieved DSN storage information. When a region of the large data to be stored has substantially similar DSN storage information as a region of the other large data, the method continues by utilizing the DSN storage information for the region of the other large data for the DSN storage information of the region of the large data.
    Type: Grant
    Filed: February 18, 2014
    Date of Patent: February 24, 2015
    Assignee: Cleversafe, Inc.
    Inventors: Wesley Leggette, Jason K. Resch
  • Patent number: 8966194
    Abstract: A method begins by a processing module receiving a write request regarding an encoded data slice and determining whether the write request pertains to deleting the encoded data slice from a memory space. The method continues with the processing module storing a deletion marker regarding the encoded data slice when the write request pertains to deleting the encoded data slice. The method continues with the processing module determining when to delete the encoded data slice based on the deletion marker and in accordance with the deletion scheme.
    Type: Grant
    Filed: July 12, 2011
    Date of Patent: February 24, 2015
    Assignee: Cleversafe, Inc.
    Inventors: Jason K. Resch, Wesley Leggette, Greg Dhuse
  • Publication number: 20150052388
    Abstract: A method begins by a dispersed storage (DS) processing module encrypting a plurality of data segments of the data using a plurality of encryption keys to produce a plurality of encrypted data segments and generating a plurality of deterministic values from the plurality of encrypted data segments. The method continues with the DS processing module establishing a data intermingling pattern and generating a plurality of masked keys by selecting one or more of the plurality of deterministic values in accordance with the data intermingling pattern and performing a masking function on the plurality of encryption keys and the selected one or more of the plurality of deterministic values. The method continues with the DS processing module appending the plurality of masked keys to the plurality of encrypted data segments to produce a plurality of secure data packages and outputting the plurality of secure data packages.
    Type: Application
    Filed: September 29, 2014
    Publication date: February 19, 2015
    Applicant: CLEVERSAFE, INC.
    Inventors: Gary W. Grube, Timothy W. Markison
  • Patent number: 8959597
    Abstract: A method begins by a processing module outputting a registration request message that includes requesting access to a local dispersed storage network (DSN) and requesting access to a global DSN. The method continues with the processing module receiving a registration response message that includes a global universal unique identifier (UUID) and a local UUID. The method continues with the processing module generating a global public-private key pair and a local public-private key pair and generating a global certificate signing request (CSR) based on the global UUID and a private key of the global public-private key pair. The method continues with the processing module generating a local CSR based on the local UUID and a private key of the local public-private key pair, sending the global and local CSRs to a certificate authority (CA), and receiving a signed global certificate and a signed local certificate.
    Type: Grant
    Filed: May 11, 2011
    Date of Patent: February 17, 2015
    Assignee: Cleversafe, Inc.
    Inventors: Jason K. Resch, Gary W. Grube, Timothy W. Markison
  • Patent number: 8959366
    Abstract: A method begins by a processing module obtaining at least an ordering threshold number of encoded data slices to produce obtained encoded data slices. The method continues with the processing module ordering the obtained encoded data slices based on a pseudo-random de-sequencing order to produce a plurality of sets of encoded data slices. The method continues with the processing module dispersed storage error decoding the plurality of sets of encoded data slices to produce a plurality of encrypted data segments. The method continues with the processing module decrypting the plurality of encrypted data segments to produce a plurality of data segments. The method continues with the processing module aggregating the plurality of data segments to produce a data stream.
    Type: Grant
    Filed: November 28, 2010
    Date of Patent: February 17, 2015
    Assignee: Cleversafe, Inc.
    Inventors: Gary W. Grube, Timothy W. Markison
  • Publication number: 20150043732
    Abstract: A method begins by a processing module applying a share encoding function on data to produce a plurality of encoded shares and generating a corresponding plurality of random numbers for the plurality of encoded shares. The method continues with the processing module generating an encryption key based on a common password and a corresponding one of the corresponding plurality of random numbers and encrypting the encoded share utilizing the encryption key to produce an encrypted share for each encoded share of the plurality of encoded shares. The method continues with the processing module facilitating storage of the corresponding plurality of random numbers and each of the encrypted shares.
    Type: Application
    Filed: September 9, 2014
    Publication date: February 12, 2015
    Applicant: CLEVERSAFE, INC.
    Inventors: Jason K. Resch, Greg Dhuse, Wesley Leggette, Andrew Baptist
  • Publication number: 20150046769
    Abstract: A method begins by a processing module receiving a data segment retrieval request regarding a data segment, which is stored in a dispersed storage network (DSN) memory. The method continues with the processing module processing the data segment retrieval request, determining pre-fetch segment buffering information, and when the pre-fetch segment buffering information indicates pre-fetching one or more other data segments, generating one or more pre-fetch segment retrieval requests for the one or more other data segments, receiving, one or more sets of at least a decode threshold number of encoded data slices, decoding, in accordance with a dispersed storage error coding function, the one or more sets of at least a decode threshold number of encoded data slices to reproduce the one or more other data segments, and updating a pre-fetch segment buffer with the one or more other data segments.
    Type: Application
    Filed: October 27, 2014
    Publication date: February 12, 2015
    Applicant: CLEVERSAFE, INC.
    Inventors: Wesley Leggette, Ilya Volvovski, Andrew Baptist, Jason K. Resch
  • Patent number: 8954787
    Abstract: A maintenance free storage container includes a plurality of storage servers, wherein the maintenance free storage container allows for multiple storage servers of the plurality of storage servers to be in a failure mode without replacement. The maintenance free storage container further includes a container controller operable to manage failure mode information of the plurality of storage servers, manage mapping of a plurality of virtual storage servers to at least some of the plurality of storage servers based on the failure mode information, communicate storage server access requests with a device external to the maintenance free storage container using addressing of the plurality of virtual storage servers, and communicate the storage server access requests within the maintenance free storage container using addressing of the plurality of storage servers.
    Type: Grant
    Filed: April 18, 2012
    Date of Patent: February 10, 2015
    Assignee: Cleversafe, Inc.
    Inventors: S. Christopher Gladwin, Jason K. Resch, Gary W. Grube, Timothy W. Markison
  • Patent number: 8954667
    Abstract: A method begins by processing module determining data to migrate, wherein the data is stored as a plurality of sets of encoded data slices in a first set of dispersed storage (DS) units. The method continues with the processing module retrieving at least a read threshold number of encoded data slices for each set of the plurality of sets of encoded data slices and dispersed storage error decoding the at least the read threshold number of encoded data slices in accordance with error coding dispersal storage function parameters to reproduce the data. The method continues with the processing module dispersed storage error encoding the data in accordance with second error coding dispersal storage function parameters to produce a plurality of sets of second encoded data slices and sending at least a write threshold number of second encoded data slices to a second set of DS units for storage therein.
    Type: Grant
    Filed: November 10, 2010
    Date of Patent: February 10, 2015
    Assignee: Cleversafe, Inc.
    Inventors: Greg Dhuse, Andrew Baptist, Wesley Leggette, Ilya Volvovski, Jason K. Resch
  • Publication number: 20150039666
    Abstract: A method includes identifying a plurality of DST client modules affiliated with data for storage in the DST network. A corresponding subset of a plurality of DST execution units are identified for each of the plurality of DST client modules. The data is encoded into a plurality of slices based on at least one dispersal parameter, the number of the plurality of slices corresponding to a number of the plurality of DST execution units included in a superset formed from the union of each subset of a plurality of DST execution units corresponding to each of the plurality of DST client modules. The plurality of slices are sent for storage in the superset formed from the union of each subset of a plurality of DST execution units.
    Type: Application
    Filed: May 27, 2014
    Publication date: February 5, 2015
    Applicant: CLEVERSAFE, INC.
    Inventors: Niall John McShane, Asimuddin Kazi, S. Christopher Gladwin