Method and System for Caching Streaming Multimedia on the Internet
First Claim
Patent Images
1. A method for servicing a client request for a streaming media (SM) object in a network having a content server which hosts SM objects for distribution over the network through a plurality of HSs to a plurality of clients, the SM object being comprised of a plurality of successive time-ordered chunks, the method comprising:
- receiving a request for at least a portion of an SM object at a local HS, the request including a playback starting time;
determining whether a chunk having a starting time equal to the requested playback starting time resides on a disk associated with the local HS;
delivering to one of the plurality of clients the one or more chunks having an associated starting time equal to the requested playback starting time from the local HS and updating the playback starting time;
identifying a server in the network storing at least M chunks which have a starting time equal to the updated playback starting time and which satisfies a minimum cost criterion, if it is determined that the updated playback starting time is not equal to an end-time of the SM object; and
receiving the at least M chunks from the identified server at the local HS until it is determined that a next chunk to be retrieved is stored at the local HS.
7 Assignments
0 Petitions
Accused Products
Abstract
An apparatus and method to enhance existing caches in a network to better support streaming media storage and distribution. Helper machines are used inside the network to implement several methods which support streaming media including segmentation of streaming media objects into smaller units, cooperation of Helper machines, and novel placement and replacement policies for segments of media objects.
-
Citations
20 Claims
-
1. A method for servicing a client request for a streaming media (SM) object in a network having a content server which hosts SM objects for distribution over the network through a plurality of HSs to a plurality of clients, the SM object being comprised of a plurality of successive time-ordered chunks, the method comprising:
-
receiving a request for at least a portion of an SM object at a local HS, the request including a playback starting time;
determining whether a chunk having a starting time equal to the requested playback starting time resides on a disk associated with the local HS;
delivering to one of the plurality of clients the one or more chunks having an associated starting time equal to the requested playback starting time from the local HS and updating the playback starting time;
identifying a server in the network storing at least M chunks which have a starting time equal to the updated playback starting time and which satisfies a minimum cost criterion, if it is determined that the updated playback starting time is not equal to an end-time of the SM object; and
receiving the at least M chunks from the identified server at the local HS until it is determined that a next chunk to be retrieved is stored at the local HS.
-
-
2. A method for servicing a client request for a streaming media (SM) object in a network having a content server which hosts SM objects for distribution over the network through a plurality of HSs to a plurality of clients, the SM object being comprised of a plurality of successive time-ordered chunks, the method comprising:
-
receiving a request for at least a portion of an SM object at a local HS, the request including a playback starting time;
determining whether a chunk having a starting time equal to the requested playback starting time resides on a disk associated with the local HS;
if the chunk having a starting time equal to the requested playback starting time resides on a disk associated with the local HS, delivering at least that chunk to the one of the plurality of clients; and
if the chunk having a starting time equal to the requested playback starting time does not reside on a disk associated with the local HS, identifying a server in the network storing at least that chunk and receiving at least that chunk from the identified server at the local HS until it is determined that a next chunk to be retrieved is stored at the local HS. - View Dependent Claims (3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A method for determining an optimal sequence of cache accesses to service a request for a streaming media (SM) object in a network including a content server which hosts SM objects for distribution over the network through a plurality of helper servers (HSs) to a plurality of clients, the SM objects being comprised of a plurality of successive time-ordered chunks, the method comprising the steps of:
-
(i) receiving a request at a local HS for an SM object, the request including a requested playback starting time;
(ii) determining whether a chunk of an SM object having a starting time equal to the requested playback starting time is stored at the local HS;
(iii) retrieving the one or more chunks of the SM object when step (ii) is satisfied and updating the requested playback starting time;
(iv) identifying a minimum cost server in the network which stores at least M chunks of the SM object having a starting time equal to the updated playback starting time;
(v) retrieving the at least M chunks on a chunk by chunk basis from the identified minimum cost server and the local HS;
(vi) retrieving the next chunk from the local HS and updating the requested playback starting time; and
(vii) repeating step (ii) through step (vi) until the entire streaming media object has been retrieved. - View Dependent Claims (18, 19, 20)
-
Specification