Patents by Inventor Bart Cilfone

Bart Cilfone has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 8595435
    Abstract: A dispersed storage (DS) method begins by issuing a plurality of write commands to a plurality of DS storage units. The method continues by receiving a write acknowledgement from one of the plurality of DS storage units to produce a received write acknowledgement. The method continues by issuing a plurality of commit commands to the plurality of DS storage units when a write threshold number of the received write acknowledgements have been received. The method continues by receiving a commit acknowledgement from a DS storage unit of the plurality of DS storage units to produce a received commit acknowledgement. The method continues by issuing a plurality of finalize commands to the plurality of DS storage units when a write threshold number of the received commit acknowledgements have been received.
    Type: Grant
    Filed: June 9, 2010
    Date of Patent: November 26, 2013
    Assignee: Cleversafe, Inc.
    Inventors: Bart Cilfone, Andrew Baptist, Greg Dhuse, Ilya Volvovski, Jason K. Resch
  • Publication number: 20130311851
    Abstract: A method begins with a processing module determining that storage of data requires updating, wherein the data is stored as a plurality of sets of encoded data slices in DSN memory. For a first type of updating, the processing module increases the total number while maintaining the decode threshold number. The processing module then, for each set of encoded data slices, creates another encoded data slice in accordance with the dispersed storage error encoding function and the increased total number and sends the new encoded data slices to the DSN memory. For a second type of updating, the processing module increases the total number and the decode threshold number. The processing module then recovers the data and encodes it in accordance with the dispersed storage error encoding function using the increased total number and the increased decode threshold number to produce an updated plurality of sets of encoded data slices.
    Type: Application
    Filed: July 19, 2013
    Publication date: November 21, 2013
    Applicant: CLEVERSAFE, INC.
    Inventors: Bart Cilfone, Jason K. Resch, S. Christopher Gladwin
  • Publication number: 20130290809
    Abstract: A distributed storage network generates a plurality of data segments from a data object and stores each of the plurality of data segments as a plurality of encoded data slices generated from an error encoding dispersal function. When the distributed storage network receives a modification request for the data object, it determines a size of the plurality of data segments of the data object from a segment size field and identifies one of the plurality of data segments requiring modification. The identified data segment is reconstructed from the plurality of encoded data slices and modified in accordance with the modification request.
    Type: Application
    Filed: July 1, 2013
    Publication date: October 31, 2013
    Inventors: Jason K. Resch, Bart Cilfone
  • Patent number: 8495466
    Abstract: A method begins by a processing module determining a performance based indication regarding storage of a data segment as a set of encoded data slices and comparing the performance based indication with a performance threshold. When the performance based indication compares unfavorably with the performance threshold, the method continues with the processing module decoding the set of encoded data slices to reproduce the data segment, adjusting error coding dispersal storage function parameters based on the unfavorable comparison of the performance based indication with the performance threshold to produce performance adjusted error coding dispersal storage function parameters, encoding the reproduced data segment in accordance with the performance adjusted error coding dispersal storage function parameters to produce a second set of encoded data slices, and selecting a storage set of encoded data slices from the set of encoded data slices and the second set of encoded data slices.
    Type: Grant
    Filed: December 31, 2010
    Date of Patent: July 23, 2013
    Assignee: Cleversafe, Inc.
    Inventors: Bart Cilfone, Jason K. Resch, S. Christopher Gladwin
  • Patent number: 8479078
    Abstract: A distributed storage network generates a plurality of data segments from a data object and stores each of the plurality of data segments as a plurality of encoded data slices generated from an error encoding dispersal function. When the distributed storage network receives a modification request for the data object, it determines a size of the plurality of data segments of the data object from a segment size field and identifies one of the plurality of data segments requiring modification. The identified data segment is reconstructed from the plurality of encoded data slices and modified in accordance with the modification request.
    Type: Grant
    Filed: July 19, 2010
    Date of Patent: July 2, 2013
    Assignee: Cleversafe, Inc.
    Inventors: Jason K. Resch, Bart Cilfone
  • Patent number: 8468137
    Abstract: A distributed storage network receives a data object and determines a size of the data object. The network then determines whether the data object should be segmented into fixed size segments or variable sizes segments based upon some variable-length algorithm. If the fixed approach is selected, the data object is segmented into two or more fixed size segments with attached header information and the information is further processed using error coding dispersal storage functions within the network. If the variable approach is selected, the data object is segmented into two or more variable-sized segments with attached header information and the information is further processed using error coding dispersal storage functions within the network. Both the variable and fixed approaches enable storage of error-correctable data slices in a distributed storage manner.
    Type: Grant
    Filed: June 17, 2010
    Date of Patent: June 18, 2013
    Assignee: Cleversafe, Inc.
    Inventors: Andrew Baptist, Srinivas Palthepu, Bart Cilfone, Jason K. Resch, Ilya Volvovski
  • Publication number: 20130117560
    Abstract: A method begins by a processing module receiving a dispersed storage network (DSN) access request that includes a requester identifier (ID), wherein the requester ID is associated with a certificate chain. When the certificate chain is valid, the method continues with the processing module accessing registry information for the DSN. The method continues with the processing module identifying one of a plurality of access control lists based on at least one of information associated with the requester ID and information associated with the certificate chain, identifying one or more entries of the one of the plurality of access control lists based on the information associated with the certificate chain to produce one or more identified entries, and generating, for the DSN access request, permissions from one or more sets of permissions associated with the one or more identified entries.
    Type: Application
    Filed: November 3, 2011
    Publication date: May 9, 2013
    Applicant: CLEVERSAFE, INC.
    Inventors: Jason K. Resch, Wesley Leggette, Bart Cilfone
  • Publication number: 20130086377
    Abstract: A method begins by a requesting device transmitting a certificate signing request to a managing unit, wherein the certificate signing request includes fixed certificate information and suggested certificate information. The method continues with the managing unit forwarding the certificate signing request to a certificate authority and receiving a signed certificate from the certificate authority, wherein the signed certificate includes a certificate and a certification signature and wherein the certificate includes the fixed certificate information and determined certificate information based on the suggested certificate information. The method continues with the managing unit interpreting the fixed certificate information of the signed certificate to identify the requesting device and forwarding the signed certificate to the identified requesting device.
    Type: Application
    Filed: August 17, 2012
    Publication date: April 4, 2013
    Applicant: CLEVERSAFE, INC.
    Inventors: Bart Cilfone, Wesley Leggette, Jason K. Resch, Andrew Baptist
  • Publication number: 20120216035
    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: Application
    Filed: November 3, 2011
    Publication date: August 23, 2012
    Applicant: CLEVERSAFE, INC.
    Inventors: Wesley Leggette, Jason K. Resch, Bart Cilfone
  • Patent number: 8209363
    Abstract: A file system interface to a dispersed data storage network is disclosed. The disclosed interface accepts read and write commands from a file system resident on a user's computer and generates network commands that are forwarded to slice servers that form the storage component of the dispersed data storage network. The slice servers then fulfill the read and write commands.
    Type: Grant
    Filed: July 14, 2008
    Date of Patent: June 26, 2012
    Assignee: Cleversafe, Inc.
    Inventors: Srinivas Palthepu, Greg Dhuse, Vance Thornton, Andrew Baptist, Jason Resch, Ilya Volvovski, John Quigley, Zachary Mark, Bart Cilfone, S. Christopher Gladwin
  • Publication number: 20110231733
    Abstract: A method begins by a processing module determining a performance based indication regarding storage of a data segment as a set of encoded data slices and comparing the performance based indication with a performance threshold. When the performance based indication compares unfavorably with the performance threshold, the method continues with the processing module decoding the set of encoded data slices to reproduce the data segment, adjusting error coding dispersal storage function parameters based on the unfavorable comparison of the performance based indication with the performance threshold to produce performance adjusted error coding dispersal storage function parameters, encoding the reproduced data segment in accordance with the performance adjusted error coding dispersal storage function parameters to produce a second set of encoded data slices, and selecting a storage set of encoded data slices from the set of encoded data slices and the second set of encoded data slices.
    Type: Application
    Filed: December 31, 2010
    Publication date: September 22, 2011
    Applicant: CLEVERSAFE, INC.
    Inventors: Bart Cilfone, Jason K. Resch, S. Christopher Gladwin
  • Publication number: 20110161754
    Abstract: A method begins by a processing module receiving a write request message from a dispersed storage (DS) processing module, wherein the write request message includes a slice name, a DS processing module most-recent slice revision, a new slice revision, and an encoded directory slice of directory information regarding storage of data. The method continues with the processing module obtaining, from local memory, a DS unit most-recent slice revision based on the slice name. The method continues with the processing module storing the new slice revision as the DS unit most-recent slice revision and storing the encoded directory slice when the DS unit most-recent slice revision compares favorably to the DS processing module most-recent slice revision.
    Type: Application
    Filed: October 13, 2010
    Publication date: June 30, 2011
    Applicant: CLEVERSAFE, INC.
    Inventors: ANDREW BAPTIST, WESLEY LEGGETTE, ILYA VOLVOVSKI, JASON K. RESCH, GREG DHUSE, BART CILFONE
  • Publication number: 20110161681
    Abstract: A method begins by a processing module dispersed storage error encoding data to produce a set of encoded data slices and generating a transaction identifier regarding storage of the set of encoded data slices. The method continues with the processing module outputting a plurality of write request messages to a plurality of dispersed storage (DS) units, wherein each of the plurality of write request messages includes the transaction identifier and a corresponding one of the set of encoded data slices. The method continues with the processing module receiving write response messages from at least some of the DS units, wherein each of the write response messages includes a reference to the transaction identifier. The method continues with the processing module updating directory information regarding storage of the data to produce updated directory information when at least a write threshold number of the write response messages have been received.
    Type: Application
    Filed: October 13, 2010
    Publication date: June 30, 2011
    Applicant: CLEVERSAFE, INC.
    Inventors: GREG DHUSE, ANDREW BAPTIST, WESLEY LEGGETTE, ILYA VOLVOVSKI, JASON K. RESCH, BART CILFONE
  • Publication number: 20110125999
    Abstract: A method begins with a processing module selecting one of a plurality of dispersed storage (DS) processing modules for facilitating access to a dispersed storage network (DSN) memory. The method continues with the processing module sending a DSN memory access request to the one of the plurality of DS processing modules. The method continues with the processing module selecting another one of the plurality of DS processing modules when no response is received within a given time frame or when the response to the access request does not include an access indication. The method continues with the processing module sending the DSN memory access request to the another one of the plurality of DS processing modules.
    Type: Application
    Filed: September 20, 2010
    Publication date: May 26, 2011
    Applicant: CLEVERSAFE, INC.
    Inventors: BART CILFONE, JASON K. RESCH
  • Publication number: 20110107165
    Abstract: A distributed storage network generates a plurality of data segments from a data object and stores each of the plurality of data segments as a plurality of encoded data slices generated from an error encoding dispersal function. When the distributed storage network receives a modification request for the data object, it determines a size of the plurality of data segments of the data object from a segment size field and identifies one of the plurality of data segments requiring modification. The identified data segment is reconstructed from the plurality of encoded data slices and modified in accordance with the modification request.
    Type: Application
    Filed: July 19, 2010
    Publication date: May 5, 2011
    Applicant: CLEVERSAFE, INC.
    Inventors: Jason K. Resch, Bart Cilfone
  • Publication number: 20110106769
    Abstract: A distributed storage network receives a data object and determines a size of the data object. The network then determines whether the data object should be segmented into fixed size segments or variable sizes segments based upon some variable-length algorithm. If the fixed approach is selected, the data object is segmented into two or more fixed size segments with attached header information and the information is further processed using error coding dispersal storage functions within the network. If the variable approach is selected, the data object is segmented into two or more variable-sized segments with attached header information and the information is further processed using error coding dispersal storage functions within the network. Both the variable and fixed approaches enable storage of error-correctable data slices in a distributed storage manner.
    Type: Application
    Filed: June 17, 2010
    Publication date: May 5, 2011
    Applicant: CLEVERSAFE, INC.
    Inventors: ANDREW BAPTIST, SRINIVAS PALTHEPU, BART CILFONE, JASON K. RESCH, ILYA VOLVOVSKI
  • Publication number: 20110029731
    Abstract: A dispersed storage (DS) method begins by issuing a plurality of write commands to a plurality of DS storage units. The method continues by receiving a write acknowledgement from one of the plurality of DS storage units to produce a received write acknowledgement. The method continues by issuing a plurality of commit commands to the plurality of DS storage units when a write threshold number of the received write acknowledgements have been received. The method continues by receiving a commit acknowledgement from a DS storage unit of the plurality of DS storage units to produce a received commit acknowledgement. The method continues by issuing a plurality of finalize commands to the plurality of DS storage units when a write threshold number of the received commit acknowledgements have been received.
    Type: Application
    Filed: June 9, 2010
    Publication date: February 3, 2011
    Applicant: CLEVERSAFE, INC.
    Inventors: Bart Cilfone, Andrew Baptist, Greg Dhuse, Ilya Volvovski, Jason K. Resch
  • Publication number: 20110026842
    Abstract: A method begins by a processing module receiving data for dispersed storage, wherein the data has an associated user identification (ID), and obtaining a codec flag based on the associated user ID. The codec flag may indicate one or more codec types and a codec execution order. The codec types may include two or more of: a null data manipulation, one or more versions of a data integrity function, one or more versions of a compression function, and/or one or more versions of an encryption function. The method continues with the processing module manipulating the data to produce manipulated data utilizing the one or more codec types in the codec execution order, encoding the manipulated data using an error coding dispersal storage function to produce a plurality of encoded data slices, and sending the slices and codec flag to a plurality of DS storage units for storage.
    Type: Application
    Filed: May 7, 2010
    Publication date: February 3, 2011
    Applicant: CLEVERSAFE, INC.
    Inventors: BART CILFONE, WESLEY LEGGETTE, JASON K. RESCH
  • Publication number: 20100266131
    Abstract: A method of managing devices in a dispersed data storage network is disclosed. A device list is maintained including entries for every device in the dispersed data storage network. Each entry lists a public key, a network address, and hardware identifier for the corresponding device. On startup each device sends a request to join the network. The request includes the device's public key, network address, and hardware identifier. The request is compared with the device list, and, based on the comparison, and, in some cases, administrator action, the request is granted or denied.
    Type: Application
    Filed: April 20, 2009
    Publication date: October 21, 2010
    Inventors: Bart Cilfone, Sanjaya Kumar, Steve Hoffman
  • Publication number: 20100268806
    Abstract: A method of upgrading software components within a dispersed data storage network is disclosed. A list of identifiers corresponding to devices within the dispersed data storage network is assembled. Each member of the list is assigned to an upgrade set based on the devices that are reachable by the vaults associated with the device.
    Type: Application
    Filed: April 20, 2009
    Publication date: October 21, 2010
    Inventors: Sanjaya Kumar, Steve Hoffman, Dusty Hendrickson, Bart Cilfone