Integrated erasure coding for data storage and transmission
First Claim
1. A network device, comprising:
- a memory comprising a cache and permanent storage; and
one or more processors configured to receive a request for information from a user device, the one or more processors further configured to;
in response to determining that an erasure encoded version of the requested information is stored in the memory of the network device;
in response to determining that a network condition does not satisfy a transmission quality threshold;
in response to determining that the erasure encoded version of the requested information is not stored in the cache of the network device;
in response to determining that a penalty for erasure encoding the requested information exceeds a penalty for retrieving the erasure encoded version of the requested information from the permanent storage of the network device, retrieve from the permanent storage and transmit the erasure encoded version of the requested information to the user device by applying network coding; and
in response to determining that the penalty for erasure encoding the requested information does not exceed the penalty for retrieving the erasure encoded version of the requested information from the permanent storage of the network device, partially retrieve the requested information from the permanent storage, erasure encode the partially retrieved requested information, and transmit the produced erasure encoded version of the requested information to the user device by applying network coding, wherein the partially retrieved requested information is a subset of the requested information needed to reconstruct the requested information at the network device.
5 Assignments
0 Petitions
Accused Products
Abstract
Embodiments of network devices for content distribution are described. In some embodiments, an edge network device integrates network coding for content distribution with erasure coding for data storage. Embodiments of methods of integrating network coding and erasure coding are also disclosed. In some embodiments, an edge network device can determine content distribution and storage for content based on one or more penalty functions that assess storage capacity, computational power, user demand, and/or network bandwidth for optimal resource usage. In some embodiments, an edge network device creates fragments of content and transmits a subset of the fragments for early distribution. In response to a user request for the content, the edge network device can transmit the remaining fragments to the user device for the user device to reconstruct the original content.
21 Citations
19 Claims
-
1. A network device, comprising:
-
a memory comprising a cache and permanent storage; and one or more processors configured to receive a request for information from a user device, the one or more processors further configured to; in response to determining that an erasure encoded version of the requested information is stored in the memory of the network device; in response to determining that a network condition does not satisfy a transmission quality threshold; in response to determining that the erasure encoded version of the requested information is not stored in the cache of the network device; in response to determining that a penalty for erasure encoding the requested information exceeds a penalty for retrieving the erasure encoded version of the requested information from the permanent storage of the network device, retrieve from the permanent storage and transmit the erasure encoded version of the requested information to the user device by applying network coding; and in response to determining that the penalty for erasure encoding the requested information does not exceed the penalty for retrieving the erasure encoded version of the requested information from the permanent storage of the network device, partially retrieve the requested information from the permanent storage, erasure encode the partially retrieved requested information, and transmit the produced erasure encoded version of the requested information to the user device by applying network coding, wherein the partially retrieved requested information is a subset of the requested information needed to reconstruct the requested information at the network device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method of transmitting data comprising:
in response to determining that an erasure encoded version of the requested information is stored in a storage external to a network device; in response to determining that a network condition does not satisfy a transmission quality threshold; in response to determining that an erasure encoded version of requested information is not stored in a cache of the network device; in response to determining that a penalty for erasure encoding the requested information exceeds a penalty for retrieving the erasure encoded version of the requested information from the storage external to the network device, retrieving from the storage external to the network device and transmitting the erasure encoded version of the requested information by applying network coding; and in response to determining that the penalty for erasure encoding the requested information does not exceed the penalty for retrieving the erasure encoded version of the requested information from the storage external to the network device, partially retrieving the requested information from the storage external to the network device, erasure encoding the partially retrieved requested information, and transmitting the produced erasure encoded version of the requested information by applying network coding, wherein the partially retrieved requested information is a subset of the requested information needed to reconstruct the requested information at the network device. - View Dependent Claims (11, 12, 13, 14)
-
15. A network device, comprising:
-
a memory comprising a cache and permanent storage; and one or more processors configured to receive a request for information from a user device, the one or more processors further configured to; in response to determining that an erasure encoded version of the requested information is stored in the memory of the network device; in response to determining that a penalty for erasure encoding the requested information exceeds a penalty for retrieving the erasure encoded version of the requested information from the permanent storage of the network device, retrieve from the permanent storage and transmit the erasure encoded version of the requested information to the user device by applying network coding; and in response to determining that the penalty for erasure encoding the requested information does not exceed the penalty for retrieving the erasure encoded version of the requested information from the permanent storage of the network device; partially retrieve the requested information from the permanent storage, erasure encode the partially retrieved requested information, and transmit the produced erasure encoded version of the requested information to the user device by applying network coding, wherein the partially retrieved requested information is a subset of the requested information needed to reconstruct the requested information at the network device. - View Dependent Claims (16, 17, 18, 19)
-
Specification