IP Library Granted Patent US 7,822,856
Granted Patent B2
US 7,822,856 · App. 12/579,724 · Granted Oct 26, 2010

Obtaining erasure-coded fragments using push and pull protocols

Assignee: PatentVC Ltd.
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,822,856
App. No.
12/579,724
Granted
Oct 26, 2010
Kind
B2
Abstract

Obtaining erasure-coded fragments using push and pull protocols, including the steps of receiving a first set of erasure-coded fragments associated with segments via a transmission using push protocol, whereby the first set is not sufficient for reconstructing some of the segments; and retrieving a second set of erasure-coded fragments using a fragment pull protocol, wherein the first and the second sets together are sufficient for reconstructing the segments.

Claims (22)

1. A method comprising: receiving, by an assembling device, a first set of erasure-coded fragments associated with segments via a transmission using push protocol, whereby the first set is not sufficient for reconstructing some of the 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 of minimum size not smaller than the size of the segment; and

pulling on-the-fly, by the assembling device, a second set of erasure-coded fragments usable to decode the segments, each fragment pull request associated with a specific segment; wherein the first and the second sets together are sufficient for reconstructing the segments, wherein the received erasure-coded fragments and the additional pulled erasure-coded fragments are of essentially the same erasure-coding and therefore the received erasure-coded fragments and the additional pulled erasure-coded fragments can be decoded together.

2. The method of claim 1 , wherein the transmission is a broadcast transmission.

3. The method of claim 1 , wherein the second set of fragments is retrieved from at least one fractional-storage Content Delivery Network (CDN) server configured to store at least one erasure-coded fragment but less than the minimum data required to reconstruct the segments.

4. The method of claim 3 , wherein the first set of fragments is received from at least two fractional-storage CDN servers, wherein 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.

5. The method of claim 3 , wherein the first set of fragments is received from at least one streaming server using an HTTP or an RTP session.

6. The method of claim 3 , wherein at least a portion of the first set and at least a portion of the second set are obtained from the same server.

7. The method of claim 3 , further comprising determining the magnitude of the second set based on the fragment loss associated with the transmission.

8. The method of claim 1 , further comprising reconstructing the segments from the received and retrieved fragments, and starting to present the reconstructed segments while fragments are still being received and retrieved.

9. The method of claim 1 , wherein the erasure-coded fragments are rateless-coded fragments associated with segments of streaming content, and the first set of rateless-coded fragments is transmitted according to the sequential order of the segments.

10. The method of claim 9 , wherein the push protocol does not require a feedback channel from the receiver.

11. An apparatus comprising: an assembling device configured to receive a first set of erasure-coded fragments associated with segments from at least one server using a push protocol, wherein from time to time the first set is insufficient to decode the received fragments, 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 of size not smaller than the size of the segment;

the assembling device is further configured to pull on-the-fly a second set of erasure-coded fragments usable to decode the segments associated with the first set of erasure-coded fragments, wherein each fragment pull request associated with a specific segment, and the first and second sets together comprise enough fragments to decode the fragments, wherein the received erasure-coded fragments and the additional pulled erasure-coded fragments are of essentially the same erasure-coding and therefore the received erasure-coded fragments and the additional pulled erasure-coded fragments can be decoded together.

12. The apparatus of claim 11 , wherein the erasure-coded fragments are associated with segments of streaming content, the fragments of the first set are transmitted essentially according to the sequential order of their associated segments, and the assembling device retrieves the second set of fragments from the at least one server.

13. The apparatus of claim 12 , wherein the magnitude of the second set is based on the fragment loss associated with the transmission of the first set.

14. The apparatus of claim 11 , wherein the fragments are associated with segments of streaming content, the fragments of the first set are transmitted essentially according to the sequential order of their associated segments, and the assembling device retrieves the second set of fragments from a fractional-storage server configured to store at least one erasure-coded fragment but less than the minimum data required to reconstruct the segments.

15. The apparatus of claim 14 , wherein the fractional-storage server is a fractional-storage Content Delivery Network (CDN) server, and the erasure-coding is rateless-coding.

16. The apparatus of claim 14 , wherein the first set is received via a broadcast or a multicast transmission.

17. The apparatus of claim 14 , wherein the push protocol does not require a feedback channel from the receiver.

18. The apparatus of claim 14 , wherein the first set is transmitted using a TCP/IP session or an RTP stream.

19. The apparatus of claim 14 , wherein the first set is transmitted using at least one sub-transmission.

20. The apparatus of claim 14 , wherein the magnitude of the second set is based on the fragment loss associated with the transmission of the first set.

Assignments (4)
MERGER Recorded Jan 20, 2016
From: ASTER RISK MANAGEMENT LLC
To: XENOGENIC DEVELOPMENT LIMITED LIABILITY COMPANY
Reel/Frame 037535/0705 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 8, 2012
From: PATENTVC LTD.
To: IDESSENCE AG
Reel/Frame 028170/0589 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 8, 2012
From: IDESSENCE AG
To: ASTER RISK MANAGEMENT LLC
Reel/Frame 028174/0246 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 26, 2012
From: ZUCKERMAN, GAL; THIEBERGER, GIL
To: PATENTVC LTD.
Reel/Frame 027763/0456 →
Continuity (3)
Provisional Application 6110568300 · Oct 15, 2008
Provisional Application 6125143700 · Oct 14, 2009
Related Publication 20100095184A1 · Apr 15, 2010