Router-based dispersed storage network method and apparatus
First Claim
1. A method comprises:
- disperse storage error encoding, by a processing module, a data segment of data to produce a set of encoded data slices;
determining, by the processing module, a storage location for each encoded data slice of the set of encoded data slices to be within one of a router of a routing storage layer and a storage unit of a distributed storage network (DSN) memory;
generating, by the processing module, a DSN address for each encoded data slice of the set of encoded data slices based on the determined storage location;
sending, by the processing module, the set of encoded data slices and the corresponding set of DSN addresses to at least one entry point router of the routing storage layer;
on an encoded data slice by encoded data slice basis;
determining, by the at least one entry point router, whether an encoded data slice of the set of encoded data slices is to be stored in the routing storage layer or in the DSN memory based on the DSN address of the encoded data slice;
when the encoded data slice is to be stored in the routing storage layer;
determining, by the at least one entry point router, whether the encoded data slice is to be locally stored or forwarded within the routing storage layer;
when the encoded data slice is to be forwarded, forwarding, by the at least one entry point router, the encoded data slice to another router of the routing storage layer in accordance with a routing table; and
when the encoded data slice is to be stored in the DSN memory;
determining, by the at least one entry point router, a routing path within the routing storage layer based on the routing table; and
sending, by the at least one entry point router, the encoded data slice to a first router of the routing path for routing to the DSN memory via the routing path.
4 Assignments
0 Petitions
Accused Products
Abstract
A method begins by a router receiving data for storage and interpreting the data to determine whether the data is to be forwarded or error encoded. The method continues with the router obtaining a routing table when the data is to be error encoded. Next, the method continues with the router selecting a routing option from the plurality of routing options and determining error coding dispersal storage function parameters based on the routing option. Next, the method continues with the router encoding the data based on the error coding dispersal storage function parameters to produce a plurality of sets of encoded data slices. Next, the method continues with the router outputting at least some of the encoded data slices of a set of the plurality of sets of encoded data slices to an entry point of the routing option.
-
Citations
12 Claims
-
1. A method comprises:
-
disperse storage error encoding, by a processing module, a data segment of data to produce a set of encoded data slices; determining, by the processing module, a storage location for each encoded data slice of the set of encoded data slices to be within one of a router of a routing storage layer and a storage unit of a distributed storage network (DSN) memory; generating, by the processing module, a DSN address for each encoded data slice of the set of encoded data slices based on the determined storage location; sending, by the processing module, the set of encoded data slices and the corresponding set of DSN addresses to at least one entry point router of the routing storage layer; on an encoded data slice by encoded data slice basis; determining, by the at least one entry point router, whether an encoded data slice of the set of encoded data slices is to be stored in the routing storage layer or in the DSN memory based on the DSN address of the encoded data slice; when the encoded data slice is to be stored in the routing storage layer; determining, by the at least one entry point router, whether the encoded data slice is to be locally stored or forwarded within the routing storage layer; when the encoded data slice is to be forwarded, forwarding, by the at least one entry point router, the encoded data slice to another router of the routing storage layer in accordance with a routing table; and when the encoded data slice is to be stored in the DSN memory; determining, by the at least one entry point router, a routing path within the routing storage layer based on the routing table; and sending, by the at least one entry point router, the encoded data slice to a first router of the routing path for routing to the DSN memory via the routing path. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A router for use in a routing storage network comprises:
-
an interface; memory; and a processing module operable to; receive, via the interface and when operable in an entry point router mode, at least some encoded data slices of a set of encoded data slices, wherein a data segment of data was disperse storage error encoded to produce the set of encoded data slices, wherein each of the at least some of the encoded data slices has a corresponding distributed storage network (DSN) address that includes whether the encoded data slice is to be stored in a storage unit of DSN memory or in a router of a routing storage layer; and on an encoded data slice by encoded data slice basis; determine whether an encoded data slice of the at least some of the set of encoded data slices is to be stored in the routing storage layer or in the DSN memory based on the DSN address of the encoded data slice; when the encoded data slice is to be stored in the routing storage layer; determine whether the encoded data slice is to be locally stored or forwarded within the routing storage layer; when the encoded data slice is to be forwarded, forward the encoded data slice to another router of the routing storage layer in accordance with a routing table; and when the encoded data slice is to be stored in the DSN memory; determine a routing path within the routing storage layer based on the routing table; and send, via the interface, the encoded data slice to a first router of the routing path for routing to the DSN memory via the routing path. - View Dependent Claims (8, 9, 10, 11, 12)
-
Specification