Methods and systems for requesting fragments without specifying the source address
First Claim
1. A method for generating fragment requests on behalf of an assembling device, comprising:
- receiving, by a relay server from the assembling device, a requirement to receive a certain set of erasure-coded fragments;
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 having minimum size not smaller than the size of the segment;
selecting, by the relay server, fractional-storage servers that together meet the requirement;
wherein 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
transmitting, by the relay server to the selected servers, on behalf of the assembling device, a plurality of requests for the required fragments, wherein the required fragments are to be delivered from the fractional-storage servers to the assembling device not via the relay server.
4 Assignments
0 Petitions
Accused Products
Abstract
A content delivery system which supports fragment requests without specifying the source address, including an assembling device, a relay server, and fractional-storage servers. The assembling device issues a client-request to receive enough erasure-coded fragments to reconstruct a portion of streaming content. The relay server receives the client-request, selects a plurality of fractional-storage servers that together store enough fragments to reconstruct the portion, and transmits, to the fractional-storage servers, fragment pull protocol requests for these sufficient fragments, on behalf of the assembling device. And the fractional-storage servers transmit the requested fragments to the assembling device in response to the fragment requests.
-
Citations
20 Claims
-
1. A method for generating fragment requests on behalf of an assembling device, comprising:
-
receiving, by a relay server from the assembling device, a requirement to receive a certain set of erasure-coded fragments;
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 having minimum size not smaller than the size of the segment;selecting, by the relay server, fractional-storage servers that together meet the requirement;
wherein 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; andtransmitting, by the relay server to the selected servers, on behalf of the assembling device, a plurality of requests for the required fragments, wherein the required fragments are to be delivered from the fractional-storage servers to the assembling device not via the relay server. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method for generating fragment-requests according to a client-request, comprising:
-
receiving, by a relay server from an assembling device, a client-request to receive erasure-coded fragments usable for reconstructing a portion of streaming content, the portion encompasses significantly less than the entire content, and 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 having minimum size not smaller than the size of the segment; selecting, by the relay server, a plurality of fractional-storage servers that together store at least a certain amount of erasure-coded fragments usable to reconstruct the portion, wherein 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 transmitting, by the relay server to the fractional-storage servers, on behalf of the assembling device, fragment-requests for the certain amount of fragments, wherein the certain amount of fragments is to be delivered from the fractional-storage servers to the assembling device not via the relay server. - View Dependent Claims (10, 11, 12, 13, 14)
-
-
15. A content delivery system comprising:
-
an assembling device, a relay server, and fractional-storage servers; the assembling device configured to issue a client-request to receive a certain amount of erasure-coded fragments usable to reconstruct a portion of streaming content comprising a plurality of segments, the portion encompasses significantly less than all segments; 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 having minimum size not smaller than the size of the segment; the relay server configured to receive the client-request, and transmit to a plurality of fractional-storage servers that together store at least the certain amount of erasure-coded fragments, fragment pull protocol requests for the certain amount of fragments, on behalf of the assembling device;
each fragment pull request associated with a specific segment, and 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; andthe fractional-storage servers are further configured to transmit the requested fragments to the assembling device, not via the relay server, in response to the fragment requests. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification