Overcoming bottlenecks in zero information gain (ZIG) rebuild operations
First Claim
1. A storage unit (SU) comprising:
- an interface configured to interface and communicate with a dispersed or distributed storage network (DSN);
memory that stores operational instructions; and
processing circuitry operably coupled to the interface and to the memory, wherein the processing circuitry is configured to execute the operational instructions to;
determine to rebuild an encoded data slice (EDS) of a set of encoded data slices (EDSs) based on a storage error of the EDS, wherein a data object is segmented into a plurality of data segments, wherein a data segment of the plurality of data segments is dispersed error encoded in accordance with dispersed error encoding parameters to produce the set of EDSs, wherein a decode threshold number of EDSs of the set of EDSs are needed to recover the data segment;
select combining units based on a number of combining units to perform receiving of encrypted slice representations to enable rebuilding of the EDS;
select participating storage units (SUs) within the DSN that store at least the decode threshold number of EDSs of the set of EDSs;
facilitate establishing pairwise encryption keys between each of the participating SUs within the DSN and also between the SU and the each of the participating SUs;
facilitate receiving, by the combining units and by the SU, encrypted representations of the decode threshold number of EDSs of the set of EDSs;
receive, from a combining unit of the combining units, an encrypted combined partial slice that is generated by the combining unit of the combining units based on at least some of the encrypted representations of the decode threshold number of EDSs of the set of EDSs received by the combining unit of the combining units from at least some of the participating SUs within the DSN;
combine the encrypted combined partial slice and any additional encrypted representation of the decode threshold number of EDSs of the set of EDSs to generate an encrypted rebuilt EDS; and
decrypt the encrypted rebuilt EDS to generate a rebuilt EDS.
3 Assignments
0 Petitions
Accused Products
Abstract
A storage unit (SU) includes an interface configured to interface and communicate with a dispersed storage network (DSN), a memory that stores operational instructions, and processing circuitry operably coupled to the interface and to the memory. The SU determines to rebuild an encoded data slice (EDS) of a set of EDSs based on a storage error of the EDS and selects combining units to enable rebuilding of the EDS. The SU also selects participating storage units (SUs) that store at least the decode threshold number of EDSs and facilitates establishing pairwise encryption keys between appropriate components. The SU facilitates the combining units and the SU receiving encrypted representations of the decode threshold number of EDSs of the set of EDSs. The SU combines an encrypted combined partial slice and any additional encrypted representation to generate an encrypted rebuilt EDS and decrypts the encrypted rebuilt EDS to generate a rebuilt EDS.
-
Citations
20 Claims
-
1. A storage unit (SU) comprising:
-
an interface configured to interface and communicate with a dispersed or distributed storage network (DSN); memory that stores operational instructions; and processing circuitry operably coupled to the interface and to the memory, wherein the processing circuitry is configured to execute the operational instructions to; determine to rebuild an encoded data slice (EDS) of a set of encoded data slices (EDSs) based on a storage error of the EDS, wherein a data object is segmented into a plurality of data segments, wherein a data segment of the plurality of data segments is dispersed error encoded in accordance with dispersed error encoding parameters to produce the set of EDSs, wherein a decode threshold number of EDSs of the set of EDSs are needed to recover the data segment; select combining units based on a number of combining units to perform receiving of encrypted slice representations to enable rebuilding of the EDS; select participating storage units (SUs) within the DSN that store at least the decode threshold number of EDSs of the set of EDSs; facilitate establishing pairwise encryption keys between each of the participating SUs within the DSN and also between the SU and the each of the participating SUs; facilitate receiving, by the combining units and by the SU, encrypted representations of the decode threshold number of EDSs of the set of EDSs; receive, from a combining unit of the combining units, an encrypted combined partial slice that is generated by the combining unit of the combining units based on at least some of the encrypted representations of the decode threshold number of EDSs of the set of EDSs received by the combining unit of the combining units from at least some of the participating SUs within the DSN; combine the encrypted combined partial slice and any additional encrypted representation of the decode threshold number of EDSs of the set of EDSs to generate an encrypted rebuilt EDS; and decrypt the encrypted rebuilt EDS to generate a rebuilt EDS. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A storage unit (SU) comprising:
-
an interface configured to interface and communicate with a dispersed or distributed storage network (DSN); memory that stores operational instructions; and processing circuitry operably coupled to the interface and to the memory, wherein the processing circuitry is configured to execute the operational instructions to; determine to rebuild an encoded data slice (EDS) of a set of encoded data slices (EDSs) based on a storage error of the EDS, wherein a data object is segmented into a plurality of data segments, wherein a data segment of the plurality of data segments is dispersed error encoded in accordance with dispersed error encoding parameters to produce the set of EDSs, wherein a decode threshold number of EDSs of the set of EDSs are needed to recover the data segment; select combining units based on a number of combining units to perform receiving of encrypted slice representations to enable rebuilding of the EDS and also based on at least one of storage unit (SU) availability, local network available capacity, wide area network (WAN) available capacity, or system configuration of the DSN; select participating storage units (SUs) within the DSN that store at least the decode threshold number of EDSs of the set of EDSs; facilitate establishing pairwise encryption keys between each of the participating SUs within the DSN and also between the SU and the each of the participating SUs; facilitate receiving, by the combining units and by the SU, the encrypted representations of the decode threshold number of EDSs of the set of EDSs, wherein an encrypted representation of an EDS of the decode threshold number of EDSs of the set of EDSs includes the EDS of the set of EDSs or a corresponding encrypted partially decoded EDS based on the EDS of the set of EDSs based on the storage error of the EDS; receive, from a combining unit of the combining units, an encrypted combined partial slice that is generated by the combining unit of the combining units based on at least some of the encrypted representations of the decode threshold number of EDSs of the set of EDSs received by the combining unit of the combining units from at least some of the participating SUs within the DSN; combine the encrypted combined partial slice and any additional encrypted representation of the decode threshold number of EDSs of the set of EDSs to generate an encrypted rebuilt EDS; and decrypt the encrypted rebuilt EDS to generate a rebuilt EDS. - View Dependent Claims (10, 11, 12, 13)
-
-
14. A method for execution by a storage unit (SU), the method comprising:
-
determining to rebuild an encoded data slice (EDS) of a set of encoded data slices (EDSs) based on a storage error of the EDS, wherein a data object is segmented into a plurality of data segments, wherein a data segment of the plurality of data segments is dispersed error encoded in accordance with dispersed error encoding parameters to produce the set of EDSs, wherein a decode threshold number of EDSs of the set of EDSs are needed to recover the data segment; selecting combining units based on a number of combining units to perform receiving of encrypted slice representations to enable rebuilding of the EDS; selecting participating storage units (SUs) within a dispersed or distributed storage network (DSN) that store at least the decode threshold number of EDSs of the set of EDSs; facilitating establishing pairwise encryption keys between each of the participating SUs within the DSN and also between the SU and the each of the participating SUs; facilitating receiving, via an interface of the SU that is configured to interface and communicate with the DSN and by the combining units and by the SU, encrypted representations of the decode threshold number of EDSs of the set of EDSs; receiving, via the interface and from a combining unit of the combining units, an encrypted combined partial slice that is generated by the combining unit of the combining units based on at least some of the encrypted representations of the decode threshold number of EDSs of the set of EDSs received by the combining unit of the combining units from at least some of the participating SUs within the DSN; combining the encrypted combined partial slice and any additional encrypted representation of the decode threshold number of EDSs of the set of EDSs to generate an encrypted rebuilt EDS; and decrypting the encrypted rebuilt EDS to generate a rebuilt EDS. - View Dependent Claims (15, 16, 17, 18, 19, 20)
-
Specification