Claims
- 1. A method for servicing a request from a client system for the transfer of a streaming media object which resides in a system that includes at least one stream engine node and at least one stream director node, comprising:
receiving a request for a streaming media object at the stream director node; locating a stream engine node to which or from which the streaming media object is to be transferred; verifying that sufficient system resources are available to service request; preparing a data transfer path between the stream engine node and the client system that made the streaming media request, the stream director node not being included in the data transfer path and the data transfer path including one or more resources along the path; causing resources along the prepared path to be reserved for use by the data transfer; passing the request for the streaming media object from the stream director node to the located stream engine node for servicing; and transferring, over the prepared path, data comprising the streaming media object between the client system that made the request and the located stream engine node.
- 2. A method for servicing a request from a client system for a streaming media object, as recited in claim 1, further comprising, upon completion of the transfer, tearing down the prepared path and de-allocating the allocated resources.
- 3. A method for servicing a request from a client system for a streaming media object, as recited in claim 1, wherein the step of directing the stream engine node to transfer, over the prepared path, the data to or from the client system includes performing the data transfer meeting a Quality of Service constraint.
- 4. A method for servicing a request from a client system for a streaming media object, as recited in claim 3, wherein the Quality of Service constraint includes an upper bound on the response time in servicing the request.
- 5. A method for servicing a request from a client system for a streaming media object, as recited in claim 3, wherein the Quality of Service constraint includes a lower bound on the throughput in servicing the request.
- 6. A method for servicing a request from a client system for a streaming media object, as recited in claim 1, wherein a table is employed at the stream director node to keep track of the streaming data objects residing on the stream engine node.
- 7. A method for servicing a request from a client system for a streaming media object, as recited in claim 1, wherein a table is employed at the stream director node to keep track of the resources that are available in the system for servicing a streaming media request.
- 8. A method for servicing a request from a client system for a streaming media object, as recited in claim 1, wherein there are two stream engine nodes, the method further comprising the steps of:
determining that one of the stream engine nodes is overloaded by request to at least one streaming media object; and copying the at least one streaming media object involved in the overload to the other stream engine node so that the other stream engine node services requests for the copied streaming media object.
- 9. A method for servicing a request from a client system for a streaming media object, as recited in claim 1, wherein the step of receiving a request for a streaming media object at the stream director node includes:
installing a dynamic link library (DLL) containing streaming parameters for a driver on the system; authenticating a streaming application process; associating a pointer to the DLL containing streaming parameters for a disk driver with the authenticated streaming application process; and loading the parameters in the DLL into a device driver for the stream engine node.
- 10. A system for servicing a request from a client system for a streaming media object, comprising:
at least one stream director node that is configured to:
receive a request for a streaming media object at the stream director node; locate a stream engine node to which or from which the streaming media object is to be transferred; verify that sufficient system resources are available to service request; prepare a data transfer path between the stream engine node and the client system that made the streaming media request, the stream director node not being included in the data transfer path and the data transfer path including one or more resources along the path; cause resources along the prepared path to be reserved for use by the data transfer; pass the request for the streaming media object from the stream director node to the located stream engine node for servicing; and transfer, over the prepared path, data comprising the streaming media object between the client system that made the request and the located stream engine node; and at least one stream engine node for storing streaming media objects including the requested streaming media object, the stream engine node being configured to:
receive the request for a streaming media object and transfer, over the prepared path, data comprising the streaming media object between the stream engine node on which the object resides and the client system that made the request.
- 11. A system for servicing a request from a client system for a streaming media object, as recited in claim 10, wherein the stream engine node is further configured to transfer, over the prepared path, the data between the stream director node and the client system while meeting a Quality of Service constraint.
- 12. A method of dynamically configuring a device driver for a computer system, comprising:
sending an authentication request, including a license for reconfiguring the device driver for a particular application, to an authentication server; validating the license at the authentication server; if the license is validated by the authentication server,
obtaining, from the authentication server, a file containing parameters for reconfiguring the device driver for the particular application, installing the file containing the parameters on the computer system, and loading the parameters from the installed file into the device driver to reconfigure the driver for operation with the particular application.
- 13. A method of dynamically configuring a device driver for a computer system as recited in claim 12, wherein the authentication server is a server connected to the Internet.
- 14. A method of dynamically configuring a device driver for a computer system as recited in claim 12,
wherein the particular application is a streaming application; and wherein the file contains parameters for reconfiguring the device driver for the streaming application.
- 15. A method of dynamically configuring a device driver for a computer system as recited in claim 12, wherein the computer system is a client computer system.
- 16. A method of dynamically configuring a device driver for a computer system as recited in claim 12, wherein the computer system is a server computer system.
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] The present invention claims priority from U.S. Provisional Patent Application Serial No. 60/308,918 for “System and Method for Providing Streaming Media Data,” filed Jul. 27, 2001, the disclosure of which is incorporated herein by reference.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60308918 |
Jul 2001 |
US |