Methods and systems for using a distributed storage to its maximum bandwidth
First Claim
1. A method comprising:
- for each group of at least one assembling device, selecting a subgroup of fractional-storage CDN servers according to at least one criterion, whereby a plurality of server subgroups are selected for a plurality of assembling device groups; and
retrieving using a fragment pull protocol, by the assembling devices from the subgroups of servers, erasure-coded fragments associated with segments of contents, until the aggregated bandwidth used for retrieving the fragments from the servers exceeds at least 85% of the total fragment delivery bandwidth of the servers that are included in the subgroups, and as long as the aggregated bandwidth used for delivering each segment does not exceed the aggregated bandwidth of the servers storing the fragments encoded from the segment;
wherein each server configured to store at least one erasure-coded fragment but less than the minimum data required to reconstruct the segments.
4 Assignments
0 Petitions
Accused Products
Abstract
Using a distributed storage to its maximum bandwidth including the following steps: for each group of at least one assembling device, selecting a subgroup of fractional-storage CDN servers according to at least one criterion, whereby a plurality of server subgroups are selected for a plurality of assembling device groups. And retrieving, using a pull protocol, by the assembling devices from the subgroups of servers, erasure-coded fragments associated with multiple segments of contents, until the aggregated bandwidth used for retrieving the fragments approaches the aggregated bandwidth of the servers included in the subgroups, and as long as the aggregated bandwidth used for delivering each segment does not exceed the aggregated bandwidth of the servers storing the fragments generated from the segment.
39 Citations
20 Claims
-
1. A method comprising:
- for each group of at least one assembling device, selecting a subgroup of fractional-storage CDN servers according to at least one criterion, whereby a plurality of server subgroups are selected for a plurality of assembling device groups; and
retrieving using a fragment pull protocol, by the assembling devices from the subgroups of servers, erasure-coded fragments associated with segments of contents, until the aggregated bandwidth used for retrieving the fragments from the servers exceeds at least 85% of the total fragment delivery bandwidth of the servers that are included in the subgroups, and as long as the aggregated bandwidth used for delivering each segment does not exceed the aggregated bandwidth of the servers storing the fragments encoded from the segment;
wherein each server configured to store at least one erasure-coded fragment but less than the minimum data required to reconstruct the segments. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
- for each group of at least one assembling device, selecting a subgroup of fractional-storage CDN servers according to at least one criterion, whereby a plurality of server subgroups are selected for a plurality of assembling device groups; and
-
12. A method comprising:
- obtaining by assembling devices, from subgroups of fractional-storage servers, erasure-coded fragments encoded from segments of at least one content;
each fractional-storage CDN server configured to store at least one erasure-coded fragment but less than the minimum data required to reconstruct the segments; and changing at least one of the servers in the subgroups on-the-fly from time to time utilizing a fragment pull protocol; wherein different mixtures of segments can be simultaneously obtained, until the aggregated bandwidth used for obtaining the segments from the servers exceeds at least 85% of the total fragment delivery bandwidth of the servers, and as long as the aggregated bandwidth used to deliver each segment does not exceed the aggregated bandwidth of the servers storing the fragments associated with the segment. - View Dependent Claims (13, 14, 15, 16, 17)
- obtaining by assembling devices, from subgroups of fractional-storage servers, erasure-coded fragments encoded from segments of at least one content;
-
18. A distributed system comprising:
- fractional-storage CDN servers configured to store together enough erasure-coded fragments to reconstruct segments of streaming content, wherein the number of the servers configured to store fragments associated with each of the segments is greater than the minimal number of fragments needed to reconstruct the segment;
each server configured to store at least one erasure-coded fragment but less than the minimum data required to reconstruct the segments; the distributed system is further configured to provide erasure-coded fragments from the servers to assembling devices at a total throughput exceeding at least 85% of the maximum aggregated fragment delivery bandwidth of the distributed system; wherein one or more of the assembling devices can replace on-the-fly one or more of the servers they retrieve from, with one or more different servers. - View Dependent Claims (19, 20)
- fractional-storage CDN servers configured to store together enough erasure-coded fragments to reconstruct segments of streaming content, wherein the number of the servers configured to store fragments associated with each of the segments is greater than the minimal number of fragments needed to reconstruct the segment;
Specification