Opportunistic block transmission with time constraints
First Claim
Patent Images
1. A method comprising:
- receiving a request, from a streaming playback device, for a block of a stream-enabled application virtualized at a client device by the streaming playback device;
determining likelihoods of additional blocks of the stream-enabled application being requested based on an identification of the block of the stream-enabled application using probability data;
generating an output buffer that includes the block of the stream-enabled application;
adding at least a portion of the additional bocks of the stream-enabled application to the output buffer based on the likelihoods of the additional blocks of the stream-enabled application being requested and a data window size of the output buffer, the data window size of the output buffer varied based on user responsiveness requirements to control a number of the additional blocks of the stream-enabled application added to the output buffer while still meeting the user responsive requirements in executing the stream-enabled application virtualized at the client device using the block of the stream-enabled application;
providing the output buffer to the streaming playback device.
3 Assignments
0 Petitions
Accused Products
Abstract
A technique for determining a data window size allows a set of predicted blocks to be transmitted along with requested blocks. A stream enabled application executing in a virtual execution environment may use the blocks when needed.
-
Citations
18 Claims
-
1. A method comprising:
-
receiving a request, from a streaming playback device, for a block of a stream-enabled application virtualized at a client device by the streaming playback device; determining likelihoods of additional blocks of the stream-enabled application being requested based on an identification of the block of the stream-enabled application using probability data; generating an output buffer that includes the block of the stream-enabled application; adding at least a portion of the additional bocks of the stream-enabled application to the output buffer based on the likelihoods of the additional blocks of the stream-enabled application being requested and a data window size of the output buffer, the data window size of the output buffer varied based on user responsiveness requirements to control a number of the additional blocks of the stream-enabled application added to the output buffer while still meeting the user responsive requirements in executing the stream-enabled application virtualized at the client device using the block of the stream-enabled application; providing the output buffer to the streaming playback device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A system comprising:
-
an interface configured to receive a request, from a streaming playback device, for a block of a stream-enabled application virtualized at a client device by the streaming playback device; a predictor configured to determine likelihoods of additional blocks of the stream-enabled application being requested based on an identification of the block of the stream-enabled application using probability data; a predicted block aggregation engine configured to; generate an output buffer that includes the block of the stream-enabled application; add at least a portion of the additional bocks of the stream-enabled application to the output buffer based on the likelihoods of the additional blocks of the stream-enabled application being requested and a data window size of the output buffer, the data window size of the output buffer varied based on user responsiveness requirements to control a number of the additional blocks of the stream-enabled application added to the output buffer while still meeting the user responsive requirements in executing the stream-enabled application virtualized at the client device using the block of the stream-enabled application; the interface further configured to provide the output buffer to the streaming playback device. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
Specification