Patents by Inventor Trevor J. Vossberg

Trevor J. Vossberg 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: 10133631
    Abstract: A method includes identifying an encoded slice for rebuilding. The method further includes determining whether the set of encoded slices is stored in an encrypted section of a vault or within an unencrypted section of the vault. The method further includes, when the set of encoded slices is stored in the unencrypted section of the vault, determining whether the set of storage units have viewing rights. The method further includes, when the set of storage units does not have the viewing rights, enabling a restricted rebuilding process to rebuild the encoded slice. The method further includes, when the set or storage units does have the viewing rights, enable an unrestricted rebuilding process to rebuild the encoded slice.
    Type: Grant
    Filed: September 13, 2016
    Date of Patent: November 20, 2018
    Assignee: International Business Machines Corporation
    Inventors: Greg R. Dhuse, Wesley B. Leggette, Jason K. Resch, Trevor J. Vossberg
  • Patent number: 10095441
    Abstract: A method includes a first computing device retrieving a decode threshold number of encrypted encoded data slices. The method further includes the first computing device generating a decoding matrix based on pillar numbers of the decode threshold number of encrypted encoded data slices and an encoding matrix. The method further includes the first computing device dispersed storage error decoding the decode threshold number of encrypted encoded data slices based on the decoding matrix to produce an encrypted data segment. The method further includes the first computing device sending the encrypted data segment and the pillar numbers to a second computing device. The method further includes the second computing device identifying a particular subset of encryption keys of the set of encryption keys based on the pillar numbers. The method further includes the second computing device decrypting the encrypted data segment based on the particular subset of encryption keys.
    Type: Grant
    Filed: August 16, 2016
    Date of Patent: October 9, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Greg R. Dhuse, Jason K. Resch, Trevor J. Vossberg
  • Patent number: 10095582
    Abstract: Methods for use in a dispersed storage network (DSN) to rebuild data. In various examples, at least one data segment of a data object is dispersed storage error encoded to produce a set of encoded data slices that includes an information dispersal algorithm (IDA) width number of encoded data slices, wherein the IDA width number is at least twice the number of storage units of a set of storage units utilized to store the data object. At least two encoded data slices are stored in each of the storage units. In response to detecting a storage error indicating an error slice, a partial threshold number of partial encoded data slices (generated by performing a partial encoding function on stored encoded data slices) are generated. The partial threshold number of partial encoded data slice responses are combined to produce a rebuilt encoded data slice corresponding to the error slice.
    Type: Grant
    Filed: December 19, 2017
    Date of Patent: October 9, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Greg R. Dhuse, Trevor J. Vossberg, Jason K. Resch
  • Publication number: 20180260130
    Abstract: A computing device includes an interface configured to interface and communicate with a dispersed storage network (DSN), a memory that stores operational instructions, and a processing module operably coupled to the interface and memory such that the processing module, when operable within the computing device based on the operational instructions, is configured to perform various operations. The computing device receives a data access request for a data object and determines a first revision number of a corresponding set of EDSs stored among first SU(s) and a second revision number of a corresponding trimmed copy of the set of EDSs stored among second SU(s). When the second revision number compares favorably to the first revision number, the computing device issues the data access request to the first SU(s) and/or the second SU(s) and issues the data access request for the data object to only the first SU(s) when it doesn't.
    Type: Application
    Filed: May 10, 2018
    Publication date: September 13, 2018
    Inventors: Andrew D. Baptist, Greg R. Dhuse, Scott M. Horan, Ravi V. Khadiwala, Wesley B. Leggette, Manish Motwani, Jason K. Resch, Praveen Viraraghavan, Ilya Volvovski, Trevor J. Vossberg, Ethan S. Wozniak
  • Patent number: 10048897
    Abstract: A computing device includes an interface configured to interface and communicate with a dispersed storage network (DSN), a memory that stores operational instructions, and a processing module operably coupled to the interface and memory such that the processing module, when operable within the computing device based on the operational instructions, is configured to perform various operations. The computing device receives a data access request for a data object and determines a first revision number of a corresponding set of EDSs stored among first SU(s) and a second revision number of a corresponding trimmed copy of the set of EDSs stored among second SU(s). When the second revision number compares favorably to the first revision number, the computing device issues the data access request to the first SU(s) and/or the second SU(s) and issues the data access request for the data object to only the first SU(s) when it doesn't.
    Type: Grant
    Filed: November 29, 2016
    Date of Patent: August 14, 2018
    Assignee: International Business Machines Corporation
    Inventors: Andrew D. Baptist, Greg R. Dhuse, Scott M. Horan, Ravi V. Khadiwala, Wesley B. Leggette, Manish Motwani, Jason K. Resch, Praveen Viraraghavan, Ilya Volvovski, Trevor J. Vossberg, Ethan S. Wozniak
  • Patent number: 10031700
    Abstract: A method for use in a dispersed storage network operates to determine first information dispersal algorithm (IDA) parameters; determine second IDA parameters; divide data for storage to produce a plurality of first segments in accordance with the first IDA parameters and a plurality of second segments in accordance with the second IDA parameters; dispersed storage error encode the plurality of first segments utilizing the first IDA parameters to produce sets of first encoded data slices; dispersed storage error encode the plurality of second segments utilizing the second IDA parameters to produce sets of second encoded data slices; and facilitate storage of the sets of first encoded data slices and the sets of second encoded data slices in a plurality of storage units.
    Type: Grant
    Filed: October 26, 2016
    Date of Patent: July 24, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Andrew D. Baptist, Greg R. Dhuse, Scott M. Horan, Ravi V. Khadiwala, Wesley B. Leggette, Manish Motwani, Jason K. Resch, Praveen Viraraghavan, Ilya Volvovski, Trevor J. Vossberg, Ethan S. Wozniak
  • Publication number: 20180121284
    Abstract: A method includes determining a desired retrieval resolution of a data segment. A first sub-set of encoded data slices corresponds to a first resolution of the data segment, a second sub-set of encoded data slices corresponds to a second resolution, and a third sub-set of encoded data slices corresponds to redundancy encoded data slices. The method further includes, when the desired retrieval resolution is the first resolution, sending first requests to storage units regarding the first sub-set of encoded data slices, and dispersed storage error decoding the first sub-set of encoded data slices to recover the data segment at the first resolution. The method further includes, when the desired retrieval resolution is the second resolution, sending second requests to storage units regarding the second sub-set of encoded data slices, and dispersed storage error decoding the second sub-set of encoded data slices to recover the data segment at the second resolution.
    Type: Application
    Filed: October 27, 2016
    Publication date: May 3, 2018
    Inventor: Trevor J. Vossberg
  • Publication number: 20180107543
    Abstract: A method begins by sending a set of read requests to a set of storage units of a dispersed storage network regarding a set of encoded data slices (EDSs). The method continues by receiving read responses from at least some storage units of the set of storage units, where at least one read response includes two EDSs. As read responses are being received and prior to receiving the read responses completely, the method continues by determining whether a decode threshold number of read responses have been received. When the threshold number of read responses have been received, the method continues by determining whether a first EDS position of each of the decode threshold number of read responses includes EDSs having different pillar numbers. When the read responses include the EDSs having different pillar numbers, the method continues by decoding the EDSs to recapture a data segment of a data object.
    Type: Application
    Filed: December 15, 2017
    Publication date: April 19, 2018
    Inventors: Andrew D. Baptist, Greg R. Dhuse, Ravi V. Khadiwala, Jason K. Resch, Wesley B. Leggette, Trevor J. Vossberg, S. Christopher Gladwin
  • Publication number: 20180107416
    Abstract: A method begins by sending a set of read requests to a first set of storage units of the DSN. The method continues by sending a set of read foreign requests to a second set of storage units of the DSN. The method continues by receiving favorable responses to the set of read requests. When a favorable response is received regarding the read foreign request, the method continues by determining whether an encoded data slice (EDS) contained in the favorable response is needed to obtain a decode threshold number of EDSs. When the EDS is needed, the method continues by including the EDSs contained in the favorable response regarding the read foreign request with other EDSs received in the favorable responses to the set of read requests to produce the decode threshold number of EDSs. The method continues by decoding the threshold number of EDSs to recover the data segment.
    Type: Application
    Filed: December 18, 2017
    Publication date: April 19, 2018
    Inventors: Andrew D. Baptist, Greg R. Dhuse, Ravi V. Khadiwala, Jason K. Resch, Wesley B. Leggette, Trevor J. Vossberg, S. Christopher Gladwin
  • Publication number: 20180107554
    Abstract: Methods for use in a dispersed storage network (DSN) to rebuild data. In various examples, at least one data segment of a data object is dispersed storage error encoded to produce a set of encoded data slices that includes an information dispersal algorithm (IDA) width number of encoded data slices, wherein the IDA width number is at least twice the number of storage units of a set of storage units utilized to store the data object. At least two encoded data slices are stored in each of the storage units. In response to detecting a storage error indicating an error slice, a partial threshold number of partial encoded data slices (generated by performing a partial encoding function on stored encoded data slices) are generated. The partial threshold number of partial encoded data slice responses are combined to produce a rebuilt encoded data slice corresponding to the error slice.
    Type: Application
    Filed: December 19, 2017
    Publication date: April 19, 2018
    Inventors: Greg R. Dhuse, Trevor J. Vossberg, Jason K. Resch
  • Publication number: 20180103103
    Abstract: A distributed storage network (DSN) employs one or more distributed storage task execution (DST EX) units for dispersed storage of encoded data slices. A delete-slice request associated with a first encoded data slice is received at a DST EX unit, the encoded data slice is packed into a common file with other encoded data slices, and the common file is stored in a distributed storage (DS) memory included in the DST EX unit. Each encoded data slice packed into the common file is associated with a file offset within the common file. The DST EX unit identifies a file offset of the first encoded data slice within the common file. The DST EX unit releases the portion of the DS memory associated with the particular file offset within the common file to a file system maintained by the DST EX unit.
    Type: Application
    Filed: December 12, 2017
    Publication date: April 12, 2018
    Inventors: Greg R. Dhuse, Ilya Volvovski, Joseph M. Kaczmarek, Trevor J. Vossberg
  • Publication number: 20180101436
    Abstract: A method for execution by a dispersed storage network (DSN). The method begins by disperse storage error encoding a data object for storage in a set of storage units with mapping to a unique storage unit. The method continues by selecting a storage unit for temporary exclusion, producing a bundled encoded data slice, updating the slice mapping, selecting a subset of storage units of the set of storage units for storage of the plurality of bundled encoded data slices in accordance with the updated slice mapping and issuing a write slice request that includes a group of encoded data slices in accordance with the updated slice mapping. The method continues by determining to conclude the temporary exclusion of the selected storage unit and facilitating migration of the plurality of bundled encoded data slices from the subset of storage units to the selected storage unit.
    Type: Application
    Filed: December 12, 2017
    Publication date: April 12, 2018
    Inventors: Andrew D. Baptist, Greg R. Dhuse, Ravi V. Khadiwala, Jason K. Resch, Wesley B. Leggette, Trevor J. Vossberg
  • Publication number: 20180095827
    Abstract: A method for execution by processing modules of one or more computing devices of a dispersed storage network (DSN), the method begins by identifying a stored data object (using bundled writes) for retrieval from a dispersed storage network (DSN), determining a DSN address that corresponds to the store data object, generating a read source request based on the DSN address, identifying a set of storage units of the DSN, where one or more of the storage units of the set of storage units are associated with storage of the stored data object, sending the read source request to the identified set of storage units, receiving retrieved encoded data slices from at least some of the storage units of the identified set of storage units and dispersed storage error decoding, for each set of encoded data slices, a decode threshold of received encoded data slices to produce a recovered data object.
    Type: Application
    Filed: December 6, 2017
    Publication date: April 5, 2018
    Inventors: Andrew D. Baptist, Greg R. Dhuse, Ravi V. Khadiwala, Jason K. Resch, Wesley B. Leggette, Trevor J. Vossberg
  • Publication number: 20170286015
    Abstract: A method includes receiving a data access request for a set of encoded data slices. The data access request identifies a new vault in the dispersed storage network (DSN), where the new vault is a logical storage container supported by storage units of the DSN, and where the new vault is defined by vault parameters that include new vault identifier, new vault storage capabilities, access privileges, and authorized users. The method further includes sending an inquiry to the storage units regarding status of the new vault. When a threshold number of storage units provide a status response of active, a computing device sends a set of access requests regarding the data access request to the storage units. When the threshold number of storage units do not provide the status response of active, the computing device facilitates activation of the new vault in at least the threshold number of storage units.
    Type: Application
    Filed: January 4, 2017
    Publication date: October 5, 2017
    Inventors: Franco V. Borich, Adam M. Gray, Scott M. Horan, Ravi V. Khadiwala, Mingyu Li, Manish Motwani, Jason K. Resch, Trevor J. Vossberg
  • Publication number: 20170153947
    Abstract: A method for use in a dispersed storage network operates to select a recovery of selected ones of one or more first sets of encoded data slices in response to detecting a storage error associated with the selected ones of the one or more first sets of encoded data slices; issue requests for a second decode threshold number of encoded data slices of selected ones of one or more second sets of encoded data slices corresponding to the selected ones of the one or more first sets of encoded data slices; decode the second decode threshold number of encoded data slices to produce recovered data in response to receiving the second decode threshold number of encoded data slices; encode the recovered data utilizing first IDA parameters associated with the first IDA to produce one or more rebuilt encoded data slices corresponding to the selected ones of the one or more first sets of encoded data slices; and facilitate storage of the one or more rebuilt encoded data slices.
    Type: Application
    Filed: October 26, 2016
    Publication date: June 1, 2017
    Inventors: Andrew D. Baptist, Greg R. Dhuse, Scott M. Horan, Ravi V. Khadiwala, Wesley B. Leggette, Manish Motwani, Jason K. Resch, Praveen Viraraghavan, Ilya Volvovski, Trevor J. Vossberg, Ethan S. Wozniak
  • Publication number: 20170153941
    Abstract: A method for use in a dispersed storage network operates to determine first information dispersal algorithm (IDA) parameters; determine second IDA parameters; divide data for storage to produce a plurality of first segments in accordance with the first IDA parameters and a plurality of second segments in accordance with the second IDA parameters; dispersed storage error encode the plurality of first segments utilizing the first IDA parameters to produce sets of first encoded data slices; dispersed storage error encode the plurality of second segments utilizing the second IDA parameters to produce sets of second encoded data slices; and facilitate storage of the sets of first encoded data slices and the sets of second encoded data slices in a plurality of storage units.
    Type: Application
    Filed: October 26, 2016
    Publication date: June 1, 2017
    Inventors: Andrew D. Baptist, Greg R. Dhuse, Scott M. Horan, Ravi V. Khadiwala, Wesley B. Leggette, Manish Motwani, Jason K. Resch, Praveen Viraraghavan, Ilya Volvovski, Trevor J. Vossberg, Ethan S. Wozniak
  • Publication number: 20170153944
    Abstract: A computing device includes an interface configured to interface and communicate with a dispersed storage network (DSN), a memory that stores operational instructions, and a processing module operably coupled to the interface and memory such that the processing module, when operable within the computing device based on the operational instructions, is configured to perform various operations. The computing device receives a data access request for a data object and determines a first revision number of a corresponding set of EDSs stored among first SU(s) and a second revision number of a corresponding trimmed copy of the set of EDSs stored among second SU(s). When the second revision number compares favorably to the first revision number, the computing device issues the data access request to the first SU(s) and/or the second SU(s) and issues the data access request for the data object to only the first SU(s) when it doesn't.
    Type: Application
    Filed: November 29, 2016
    Publication date: June 1, 2017
    Inventors: Andrew D. Baptist, Greg R. Dhuse, Scott M. Horan, Ravi V. Khadiwala, Wesley B. Leggette, Manish Motwani, Jason K. Resch, Praveen Viraraghavan, Ilya Volvovski, Trevor J. Vossberg, Ethan S. Wozniak
  • Publication number: 20170123907
    Abstract: A method includes a first computing device generating a set of encryption keys and encrypting a data matrix based on the set of encryption keys to produce an encrypted data matrix. The method further includes the first computing device sending the encrypted data matrix to a second computing device. The method further includes the second computing device dispersed storage error encoding the data matrix to produce a set of encrypted encoded data slices. The method further includes the second computing device sending the set of encrypted encoded data slices to a set of storage units of the DSN for storage therein.
    Type: Application
    Filed: August 16, 2016
    Publication date: May 4, 2017
    Inventors: Greg R. Dhuse, Jason K. Resch, Trevor J. Vossberg
  • Publication number: 20170123916
    Abstract: A method includes identifying an encoded slice for rebuilding. The method further includes determining whether the set of encoded slices is stored in an encrypted section of a vault or within an unencrypted section of the vault. The method further includes, when the set of encoded slices is stored in the unencrypted section of the vault, determining whether the set of storage units have viewing rights. The method further includes, when the set of storage units does not have the viewing rights, enabling a restricted rebuilding process to rebuild the encoded slice. The method further includes, when the set or storage units does have the viewing rights, enable an unrestricted rebuilding process to rebuild the encoded slice.
    Type: Application
    Filed: September 13, 2016
    Publication date: May 4, 2017
    Inventors: Greg R. Dhuse, Wesley B. Leggette, Jason K. Resch, Trevor J. Vossberg
  • Publication number: 20170091031
    Abstract: A method includes a first computing device retrieving a decode threshold number of encrypted encoded data slices. The method further includes the first computing device generating a decoding matrix based on pillar numbers of the decode threshold number of encrypted encoded data slices and an encoding matrix. The method further includes the first computing device dispersed storage error decoding the decode threshold number of encrypted encoded data slices based on the decoding matrix to produce an encrypted data segment. The method further includes the first computing device sending the encrypted data segment and the pillar numbers to a second computing device. The method further includes the second computing device identifying a particular subset of encryption keys of the set of encryption keys based on the pillar numbers. The method further includes the second computing device decrypting the encrypted data segment based on the particular subset of encryption keys.
    Type: Application
    Filed: August 16, 2016
    Publication date: March 30, 2017
    Inventors: Greg R. Dhuse, Jason K. Resch, Trevor J. Vossberg