Scheduling scheme for distributed sending of media data
First Claim
1. A system comprising:
- a processor;
a memory coupled to the processor;
a sender associated with at least one media data block, the sender including a block usage counter corresponding to the at least one media data block;
wherein the sender does not swap out the at least one media data block when the corresponding block usage counter indicates that the at least one media data block is locked; and
a scheduler associated with at least one client, the scheduler for scheduling delivery of media data blocks to the at least one client;
wherein the scheduler transmits to the sender a look ahead request identifying the at least one media data block;
wherein the sender increments the block usage counter corresponding to the at least one media data block in response to receiving from the scheduler the look ahead request identifying the at least one media data block.
10 Assignments
0 Petitions
Accused Products
Abstract
Media data is distributed across multiple devices, and the media data is sent therefrom by multiple senders under control of multiple schedulers. For media data blocks in a look-ahead region, schedulers transmit look ahead requests to senders in order to reserve upcoming media data blocks. In a described implementation, a look ahead request identifies a media data block. The receiving sender increments a block usage counter corresponding to the identified media data block responsive to the look ahead request. As part of a look ahead operation, if the media data block is not already in RAM, the sender preloads the media data block into RAM. While the block usage counter indicates that the corresponding media data block is locked, the sender maintains the media data block in RAM. A look ahead cancel message transmitted from the scheduler to the sender prompts the sender to decrement the block usage counter.
45 Citations
25 Claims
-
1. A system comprising:
-
a processor; a memory coupled to the processor; a sender associated with at least one media data block, the sender including a block usage counter corresponding to the at least one media data block;
wherein the sender does not swap out the at least one media data block when the corresponding block usage counter indicates that the at least one media data block is locked; anda scheduler associated with at least one client, the scheduler for scheduling delivery of media data blocks to the at least one client;
wherein the scheduler transmits to the sender a look ahead request identifying the at least one media data block;wherein the sender increments the block usage counter corresponding to the at least one media data block in response to receiving from the scheduler the look ahead request identifying the at least one media data block. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A method for a scheduling scheme to facilitate the distributed sending of media data, the method implemented on a computing device by a processor configured to execute instructions that, when executed by the processor, direct the computing device to perform acts comprising:
-
dividing, by a scheduler of the computing device, a plurality of media data blocks of a media data stream into three regions comprising a current region, an alternative send request region, and a look-ahead region; reserving, by the scheduler of the computing device, the media data blocks, wherein the reserving comprises looking ahead along the media data stream to reserve the media data blocks for subsequent sending to clients; and sending, by a sender of the computing device, the media data blocks, wherein the sending comprises locking the media data blocks responsive to the reserving until after the locked media data blocks have been sent to the clients. - View Dependent Claims (14, 15, 16, 17, 18, 19)
-
-
20. A system comprising:
-
a processor; a memory coupled to the processor; a media data segment including a plurality of media data blocks; a plurality of senders, each sender of the plurality of senders associated with at least one media data block of the plurality of media data blocks, wherein the sender is for sending the associated at least one media data block to clients; and a scheduler that is associated with a client, wherein the scheduler divides the plurality of media data blocks of the media data segment into three regions comprising a current region, an alternative send request region, and a look-ahead region. - View Dependent Claims (21, 22, 23, 24, 25)
-
Specification