IP Library Granted Patent US 9,049,198
Granted Patent B2
US 9,049,198 · App. 12/579,954 · Granted Jun 2, 2015

Methods and systems for distributing pull protocol requests via a relay server

Inventors: Gal Zuckerman (Petah-Tikva, IL); Gil Thieberger (Kiryat Tivon, IL)
Assignee: ASTER RISK MANAGEMENT LLC
H04L67/1008H04L67/1097G06F17/30781G06F17/30206H04L67/1091H03M13/3761H03M13/37H04L67/101H04L67/1021H04L67/1002H04L67/1012H04L67/1023
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 9,049,198
App. No.
12/579,954
Granted
Jun 2, 2015
Kind
B2
Abstract

Distributing pull protocol requests via a relay server and thereby reducing the number of outgoing packets used by a fragment pull protocol, including the steps of aggregating, by an assembling device, a plurality of fragment pull protocol requests into an aggregated message; transmitting the aggregated message to a relay server, whereby the relay server distributes the requests to at least two fractional-storage servers; and receiving, by the assembling device from the at least two fractional-storage servers, a plurality of fragments in response to the aggregated message.

Claims (33)

1. A method for reducing number of outgoing packets used by a fragment pull protocol, comprising:

aggregating a plurality of fragment pull protocol requests into an aggregated message;

transmitting the aggregated message to a relay server, wherein the relay server distributes the requests to at least two fractional-storage servers; and

receiving, by an assembling device from the at least two fractional-storage servers, a plurality of fragments in response to the aggregated message, via physical communication transport paths that do not comprise the relay server;

wherein size of the fragments received in response to the aggregated message is significantly greater than size of the aggregated message, the relay server distributes a large amount of requests to the at least two fractional-storage servers, and the relay server is operative to have significantly less bandwidth than the bandwidth required to transmit all the fragments received in response to the requests distributed by the relay server to the at least two fractional-storage servers as a result of the receiving the fragments via the physical communication transport paths that do not comprise the relay server.

2. The method of claim 1 , wherein the aggregating the fragment pull protocol requests is performed by the assembling device, the fragments are erasure-coded fragments associated with substantially sequential segments of streaming content, and

further comprising transmitting the aggregated messages, by the assembling device, substantially according to sequential order of the segments with which the requested fragments are associated.

3. The method of claim 2 , wherein the assembling device transmits the aggregated messages via a wireless communication medium, wherein the aggregating the requests reduces number of times the assembling device needs to gain access to the wireless communication medium.

4. The method of claim 1 , wherein the fragments are erasure-coded fragments associated with substantially sequential segments of streaming content, and further comprising regularly aggregating and transmitting new aggregated messages for future segments while retrieving the fragments in response to aggregated message for prior segments.

5. The method of claim 1 , wherein the assembling device is located at a user premises, the at least two fractional-storage servers are fractional-storage CDN servers, and the fragments are erasure-coded fragments.

6. A system comprising:

assembling devices, a relay server, and fractional-storage servers;

wherein the assembling devices are configured to transmit to the relay server messages comprising data describing fragment pull protocol requests, and to receive from the fractional-storage servers, a plurality of fragments in response to the messages via physical communication transport paths that do not comprise the relay server;

wherein size of the fragments received in response to the messages is significantly greater than size of the messages; and

wherein the relay server is configured to distribute the fragment pull protocol requests to the fractional-storage servers, and the relay server is operative to have significantly less bandwidth than the bandwidth required to transmit all the fragments received in response to the messages as a result of the receiving the fragments via the physical communication transport paths that do not comprise the relay server.

7. The system of claim 6 , wherein the assembling device communicates via a wireless communication medium, and the fragments are erasure-coded fragments.

8. The system of claim 7 , wherein the assembling device is located at a user premises, and the fractional-storage servers are fractional-storage CDN servers.

9. The system of claim 7 , wherein the relay server is located at the edge of the Internet, and the fractional-storage servers are fractional-storage CDN servers located close to or on the Internet backbone.

10. The system of claim 6 , wherein the fragments are erasure-coded fragments associated with substantially sequential segments of streaming content, and the assembling device is further configured to transmit many messages at a rate that substantially enables real-time reconstruction and presentation of the streaming content.

11. The system of claim 10 , wherein at least one of the messages comprises requests for fragments associated with a first segment and requests for fragments associated with a second segment.

12. The system of claim 6 , wherein the fragments are rateless-coded fragments, the fractional-storage servers are fractional-storage CDN servers, and the relay server is one of the fractional-storage CDN servers.

13. An apparatus comprising:

an assembling device configured to:

transmit to a relay server messages comprising requests for erasure-coded fragments associated with segments; and

receive, from a plurality of fractional-storage servers, a plurality of fragments in response to the messages, via physical communication transport paths that do not comprise the relay server;

wherein the relay server is configured to distribute the requests received from the assembling device and similar requests received from many other similar assembling devices to the plurality of the fractional-storage servers, and the relay server is operative to have significantly less bandwidth than the bandwidth required to transmit all the fragments received in response to the messages as a result of the receiving the fragments via the physical communication transport paths that do not comprise the relay server.

14. The apparatus of claim 13 , wherein the segments are substantially sequential segments of streaming content, and the assembling device is further configured to transmit the messages at a rate that substantially enables real-time reconstruction and presentation of the streaming content.

15. The apparatus of claim 13 , wherein the erasure-coding is rateless-coding, and the messages comprise fragment pull protocol requests.

16. The apparatus of claim 13 , wherein the assembling device is located at a user premises and communicates via a wireless communication medium.

17. The apparatus of claim 13 , wherein the assembling device is located at a user premises, and the plurality of the fractional-storage servers are fractional-storage CDN servers accessed via public Internet.

18. The apparatus of claim 17 , wherein the relay server is one of the fractional-storage CDN servers.

19. The apparatus of claim 17 , wherein at least one of the messages comprises requests for fragments associated with a first segment and requests for fragments associated with a second segment.

20. The apparatus of claim 13 , wherein the relay server is located at edge of the Internet, the plurality of the fractional-storage servers are fractional-storage CDN servers located close to or on the Internet backbone, and the erasure-coding is rateless-coding.

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 61105683 · Oct 15, 2008
Provisional Application 61251437 · Oct 14, 2009
Related Publication 20100095014A1 · Apr 15, 2010