Methods and systems for broadcast-like effect using fractional-storage servers
First Claim
Patent Images
1. A method for broadcast-like content streaming, comprising:
- encoding essentially sequential segments of content into erasure-coded fragments after the segments are made available by a streaming source;
wherein erasure-coding denotes a process in which a sequence of erasure-coded fragments are generated from a segment such that the segment can be reconstructed from essentially any subset of the erasure-coded fragments of size not smaller than the size of the segment;
thereafter, distributing the fragments for storage on a plurality of fractional-storage servers, each configured to store at least one erasure-coded fragment but less than the minimum amount of fragments or data required to reconstruct the segments; and
thereafter, obtaining a set of the fragments usable for reconstructing the segments from at least two of the fractional-storage servers by an assembling device using a fragment pull protocol, each fragment pull request associated with a specific segment, and the erasure-coded fragments obtained by the assembling device from the at least two fractional-storage servers are of essentially the same erasure-coding and therefore the erasure-coded fragments can be decoded together;
wherein obtaining the fragments occurs on-the-fly and before fragments associated with at least one following segment of the content are being distributed.
4 Assignments
0 Petitions
Accused Products
Abstract
Methods and systems for broadcast-like effect using fractional-storage servers that receive and store erasure-coded fragments, which are generated on-the-fly from segments of streaming content arriving in real-time. Shortly thereafter, assembling devices obtain the fragments and reconstruct the segments at a rate that allows approximately real-time presentation of the streaming content including the segments.
40 Citations
20 Claims
-
1. A method for broadcast-like content streaming, comprising:
-
encoding essentially sequential segments of content into erasure-coded fragments after the segments are made available by a streaming source;
wherein erasure-coding denotes a process in which a sequence of erasure-coded fragments are generated from a segment such that the segment can be reconstructed from essentially any subset of the erasure-coded fragments of size not smaller than the size of the segment;thereafter, distributing the fragments for storage on a plurality of fractional-storage servers, each configured to store at least one erasure-coded fragment but less than the minimum amount of fragments or data required to reconstruct the segments; and thereafter, obtaining a set of the fragments usable for reconstructing the segments from at least two of the fractional-storage servers by an assembling device using a fragment pull protocol, each fragment pull request associated with a specific segment, and the erasure-coded fragments obtained by the assembling device from the at least two fractional-storage servers are of essentially the same erasure-coding and therefore the erasure-coded fragments can be decoded together; wherein obtaining the fragments occurs on-the-fly and before fragments associated with at least one following segment of the content are being distributed. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method for creating a broadcast-like effect, comprising:
-
generating erasure-coded fragments on-the-fly from segments of streaming content;
wherein erasure-coding denotes a process in which a sequence of erasure-coded fragments are generated from a segment such that the segment can be reconstructed from essentially any subset of the erasure-coded fragments of size not smaller than the size of the segment;distributing the fragments in real-time to a plurality of fractional-storage servers, each configured to store at least one erasure-coded fragment but less than the minimum amount of fragments or data required to reconstruct the segments; and obtaining on-the-fly and in real-time, by assembling devices from at least two of the servers, fragments associated with beginning of the content, wherein the erasure-coded fragments obtained by the assembling devices from the at least two servers are of essentially the same erasure-coding and therefore the erasure-coded fragments can be decoded together;
the fragments associated with the beginning of the content are obtained before fragments associated with ending of the content are generated. - View Dependent Claims (8, 9, 10, 11, 12, 13)
-
-
14. A system comprising:
- fractional-storage servers configured to receive and store erasure-coded fragments, which are generated on-the-fly from segments of streaming content arriving in real-time;
wherein erasure-coding denotes a process in which a sequence of erasure-coded fragments are generated from a segment such that the segment can be reconstructed from essentially any subset of the erasure-coded fragments of size not smaller than the size of the segment; each fractional-storage server configured to store at least one erasure-coded fragment but less than the minimum amount of fragments or data required to reconstruct the segments; and assembling devices configured to obtain the fragments usable to reconstruct the segments from at least two of the fractional-storage servers on-the-fly wherein the erasure-coded fragments obtained by the assembling devices from the at least two fractional-storage servers are of essentially the same erasure-coding and therefore the erasure-coded fragments can be decoded together; the assembling devices are further configured to reconstruct the segments after the fragments are received by the fractional-storage servers, at a rate that allows essentially a real-time presentation of the streaming content comprising the segments; the assembling devices further configured to obtain from the fractional-storage servers fragments associated with beginning of the streaming content before fragments associated with ending of the streaming content are received by the fractional-storage servers. - View Dependent Claims (15, 16, 17, 18, 19, 20)
- fractional-storage servers configured to receive and store erasure-coded fragments, which are generated on-the-fly from segments of streaming content arriving in real-time;
Specification