Verifying slice migration in a storage network
A storage network operates by: sending a slice verification request to a destination storage unit, wherein the slice verification request includes a nonce and one or more of: a slice identifier, the slice, a revision indicator, or a verification method indicator; receiving an integrity value from the destination storage unit; determining when the integrity value is verified by determining one of: when a hash of the slice and the nonce matches the integrity value; when a decrypted signature of the integrity value matches a hash of the slice and the nonce; or when the decrypted signature of the integrity value matches the slice and the nonce; and when the integrity value is verified, updating a slice assignment corresponding to the slice, wherein updating the slice assignment associates the destination storage unit with the slice and disassociates the source storage unit from the slice.
1 . A method for execution by a a storage network that includes a processor, the method comprises:
facilitating migration of a slice from a source storage unit of the storage network located in a first location to a destination storage unit of the storage network located in a second location;
storing, via the destination storage unit, the slice in memory of the destination storage unit based on migration of the slice from the source storage unit to the destination storage unit;
sending, via the source storage unit, a slice verification request to the destination storage unit, wherein the slice verification request corresponds to a migration of the slice from the source storage unit to the destination storage unit, wherein the slice verification request includes a nonce and one or more of: a slice identifier, the slice, a revision indicator, or a verification method indicator;
sending, via the destination storage unit, an integrity value to the source storage unit based on the slice verification request;
receiving, via the source storage unit, the integrity value from the destination storage unit;
determining, via the source storage unit, when the integrity value is verified by determining one of:
when a hash of the slice and the nonce matches the integrity value;
when a decrypted signature of the integrity value matches a hash of the slice and the nonce; or
when the decrypted signature of the integrity value matches the slice and the nonce; and
when the integrity value is verified, updating, via the source storage unit, a slice assignment corresponding to the slice, wherein updating the slice assignment associates the destination storage unit with the slice and disassociates the source storage unit from the slice.
2 . The method of claim 1 , wherein the slice to migrate is identified based on receiving a request.
3 . The method of claim 1 , wherein the slice to migrate is identified based on receiving an error message.
4 . The method of claim 1 , wherein the slice to migrate is identified based on detecting an unfavorable memory condition.
5 . The method of claim 1 , wherein the slice to migrate is identified based on performing a lookup.
6 . The method of claim 1 , wherein the slice to migrate is identified based on receiving a memory test result.
7 . The method of claim 1 , wherein sending the slice to migrate includes sending a slice identifier to the destination storage unit.
8 . The method of claim 1 , wherein the integrity value includes at least one of: a hashing function hash result, or a signed package, wherein the signed package includes the slice and the nonce.
9 . The method of claim 1 , further comprising:
deleting the slice from the source storage unit.
10 . The method of claim 9 , wherein deleting the slice from the source storage unit is based on the slice identifier.
11 . A storage network comprises:
a source storage unit located in a first location comprising:
at least one first processor; and
at least one first memory section that stores first operational instructions; and
a destination storage unit located in a second location comprising:
at least one second processor; and
at least one second memory section that stores second operational instructions that, when executed by the at least one second processor, cause a second processing system of the destination storage unit to:
store a slice in memory of the destination storage unit based on migration of the slice from the source storage unit to the destination storage unit;
wherein the first operational instructions, when executed by the at least one first processor, cause a first processing system of the source storage unit to:
send a slice verification request to the destination storage unit, wherein the slice verification request corresponds to a migration of the slice from the source storage unit to the destination storage unit, wherein the slice verification request includes a nonce and one or more of: a slice identifier, the slice, a revision indicator, or a verification method indicator;
wherein the second operational instructions, when executed by the at least one second processor, further cause the second processing system of the destination storage unit to:
send an integrity value to the source storage unit based on the slice verification request;
wherein the first operational instructions, when executed by the at least one first processor, further cause the first processing system of the source storage unit to:
receive the integrity value from the destination storage unit;
determine when the integrity value is verified by determining one of:
when a hash of the slice and the nonce matches the integrity value;
when a decrypted signature of the integrity value matches a hash of the slice and the nonce; or
when the decrypted signature of the integrity value matches the slice and the nonce; and
when the integrity value is verified, updating a slice assignment corresponding to the slice, wherein updating the slice assignment associates the destination storage unit with the slice and disassociates the source storage unit from the slice.
12 . The storage network of claim 11 , wherein the slice to migrate is identified based on receiving a request.
13 . The storage network of claim 11 , wherein the slice to migrate is identified based on receiving an error message.
14 . The storage network of claim 11 , wherein the slice to migrate is identified based on detecting an unfavorable memory condition.
15 . The storage network of claim 11 , wherein the slice to migrate is identified based on performing a lookup.
16 . The storage network of claim 11 , wherein the slice to migrate is identified based on receiving a memory test result.
17 . The storage network of claim 11 , wherein sending the slice to migrate includes sending a slice identifier to the destination storage unit.
18 . The storage network of claim 11 , wherein the integrity value includes at least one of: a hashing function hash result, or a signed package, wherein the signed package includes the slice and the nonce.
19 . The storage network of claim 11 , further comprising:
deleting the slice from the source storage unit.
20 . The storage network of claim 19 , wherein deleting the slice from the source storage unit is based on the slice identifier.