Correlative anticipatory deltacasting
First Claim
1. A method for multicasting over a communications system having a server side and a plurality of clients in communication over a shared communications infrastructure, the method comprising:
- intercepting a data block at the server side, the data block being communicated from a content source in response to a content request from a requesting client of the communications system;
first determining, by the server side, whether a previously seen data model indicates that at least one instance of the data block was previously intercepted by the server side, the previously seen data model comprising indications of data blocks previously intercepted in relation to previous content requests;
second determining, by the server side, whether a trigger event has occurred with respect to the data block when the previously seen data model indicates that the at least one instance of the data block was previously intercepted according to the first determining; and
multicasting the data block to the requesting client and a set of non-requesting clients over the shared communications infrastructure when the trigger event has occurred according to the second determination.
5 Assignments
0 Petitions
Accused Products
Abstract
Methods, apparatuses, and systems for improving utilization of a communications system (e.g., a satellite communications system) are provided through techniques referred to herein as “deltacasting.” Some embodiments use a server-side optimizer to intercept and create fingerprints of byte-level content data traversing links of the communications system. The content fingerprints are used to transparently identify communications patterns (e.g., repetitious downloads of the same content, correlations between users, etc.), which may then be used in exploiting multicasting and/or other opportunities for increased utilization of the communication links.
140 Citations
19 Claims
-
1. A method for multicasting over a communications system having a server side and a plurality of clients in communication over a shared communications infrastructure, the method comprising:
-
intercepting a data block at the server side, the data block being communicated from a content source in response to a content request from a requesting client of the communications system; first determining, by the server side, whether a previously seen data model indicates that at least one instance of the data block was previously intercepted by the server side, the previously seen data model comprising indications of data blocks previously intercepted in relation to previous content requests; second determining, by the server side, whether a trigger event has occurred with respect to the data block when the previously seen data model indicates that the at least one instance of the data block was previously intercepted according to the first determining; and multicasting the data block to the requesting client and a set of non-requesting clients over the shared communications infrastructure when the trigger event has occurred according to the second determination. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A server system for communicating with a plurality of clients in a communications system over a shared communications infrastructure, the system comprising:
-
an optimizer module that; intercepts a data block being communicated from a content source in response to a content request from a requesting client of the communications system; first determines whether a previously seen data model indicates that at least one instance of the data block was previously intercepted by the server side, the previously seen data model comprising indications of data blocks previously intercepted in relation to previous content requests; and second determines whether a trigger event has occurred with respect to the data block when the previously seen data model indicates that the at least one instance of the data block was previously intercepted according to the first determining; and a multicaster module that is communicatively coupled with the optimizer module and multicasts the data block to the requesting client and a set of non-requesting clients over the shared communications infrastructure when the trigger event has occurred according to the second determination. - View Dependent Claims (14, 15, 16, 17, 18, 19)
-
Specification