Methods and apparatus for supporting transmission of streaming data
First Claim
1. A method to support transmission of streaming data from a content engine coupled to a network, the method comprising:
- from a requesting source communicating over the network, receiving a request message including a request for particular data from he content engine, the content engine including at least two different types of servers to service the request for particular data;
identifying client type properties associated with the received request message;
depending on the identified client type properties associated with the received request message, forwarding the request for particular data to one of the at least two different types of servers of the content engine to stream the particular data to the requesting source;
determining that the particular data associated with the received request message is stored in a local storage device associated with the content engine; and
from the server of the content engine to which the received request message is forwarded, transmitting the particular data associated with the request message to the requesting source by bypassing a software communication port on which the request message was originally received;
wherein bypassing the software communication port includes spoofing a corresponding server, to which the request is forwarded, into believing that the request for the particular data was received directly from a corresponding requesting source instead of being forwarded from a gateway application in the content engine that forwards the request to the corresponding server; and
wherein forwarding the request for particular data is supported at least in part by;
establishing a communication session between the gateway application and the corresponding server, the communication session including a software communication port associated with the gateway application through which the request message is forwarded to the corresponding server, andmaintaining an alias associated with the software communication port of the gateway application such that, when the corresponding server inquires as to an address of the gateway application forwarding the request to the corresponding server, a source other than the gateway application supplying the alias to the corresponding server to spoof the corresponding computer that the forwarded request was received directly from the requesting source instead of the gateway application.
1 Assignment
0 Petitions
Accused Products
Abstract
A gateway application in a content engine multiplexes requests for real-time content to servers that, in turn, service the requests by streaming appropriate real-time content to requesting users. A software communication port of the content engine may be reserved to receive request messages from multiple client computers, at least two of which request streaming of real-time content according to different selected formats. After identifying client properties (e.g., a format for which to receive streaming real-time content) associated with the requests for real-time content, the gateway application identifies corresponding servers of the content engine to serve the real-time content according to the different selected formats. The gateway application forwards the requests for streaming of real-time content associated with the request messages to the corresponding servers which, in turn, satisfy the requests by streaming the requested real-time content to the client computers.
277 Citations
30 Claims
-
1. A method to support transmission of streaming data from a content engine coupled to a network, the method comprising:
-
from a requesting source communicating over the network, receiving a request message including a request for particular data from he content engine, the content engine including at least two different types of servers to service the request for particular data; identifying client type properties associated with the received request message; depending on the identified client type properties associated with the received request message, forwarding the request for particular data to one of the at least two different types of servers of the content engine to stream the particular data to the requesting source; determining that the particular data associated with the received request message is stored in a local storage device associated with the content engine; and from the server of the content engine to which the received request message is forwarded, transmitting the particular data associated with the request message to the requesting source by bypassing a software communication port on which the request message was originally received; wherein bypassing the software communication port includes spoofing a corresponding server, to which the request is forwarded, into believing that the request for the particular data was received directly from a corresponding requesting source instead of being forwarded from a gateway application in the content engine that forwards the request to the corresponding server; and wherein forwarding the request for particular data is supported at least in part by; establishing a communication session between the gateway application and the corresponding server, the communication session including a software communication port associated with the gateway application through which the request message is forwarded to the corresponding server, and maintaining an alias associated with the software communication port of the gateway application such that, when the corresponding server inquires as to an address of the gateway application forwarding the request to the corresponding server, a source other than the gateway application supplying the alias to the corresponding server to spoof the corresponding computer that the forwarded request was received directly from the requesting source instead of the gateway application. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A computer system coupled to a network that supports transmission of streaming data, the computer system including:
-
a processor; a memory unit that stores instructions associated with an application executed by the processor; a communication interface that supports communication with other nodes of the physical network; and an interconnect coupling the processor, the memory unit, and the communication interface, enabling the computer system to execute the application and perform operations of; from a requesting source communicating over the network, receiving a request message including a request for particular data from the content engine, the content engine including at least two different types of servers to service the request for particular data; identifying client type properties associated with the received request message; depending on the identified client type properties associated with the received request message, forwarding the request for particular data to one of the at least two different types of servers of the content engine to stream the particular data to the requesting source; determining that the particular data associated with the received request message is stored in a local storage device associated with the content engine; and from the server of the content engine to which the received request message is forwarded, transmitting the particular data associated with the request message to the requesting source by bypassing a software communication port on which the request message was originally received; wherein bypassing the software communication port includes spoofing a corresponding server, to which the request is forwarded, into believing that the request for the particular data was received directly from a corresponding requesting source instead of being forwarded from a gateway application in the content engine that forwards the request to the corresponding server; and wherein forwarding the request for particular data is supported at least in part by; establishing a communication session between the gateway application and the corresponding server, the communication session including a software communication port associated with the gateway application through which the request message is forwarded to the corresponding server, and maintaining an alias associated with the software communication port of the gateway application such that, when the corresponding server inquires as to an address of the gateway application forwarding the request to the corresponding server, an operating system maintaining the alias supplies the alias to the corresponding server to spoof the corresponding computer that the forwarded request was received directly from the requesting source instead of the gateway application. - View Dependent Claims (15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26)
-
-
27. A method for supporting transmission of streaming data from a content engine coupled to a network, the method comprising:
-
from multiple requesting sources communicating over the network, receiving request messages including corresponding requests for particular data from the content engine, the content engine including at least two different types of servers to service the requests for the particular data according to corresponding at least two different types of streaming formats; executing a gateway application in the content engine to identify client type properties associated with each of the request messages; depending on the identified client type properties associated with each of the request messages as identified by the gateway application, selectively forwarding the requests associated with each of the request messages to one of the at least two different types of servers to stream the particular data from the content engine to the requesting sources, the content engine being coupled to a storage device that stores at least one file of raw data content capable of being served according to the at least two different types of streaming formats; determining that the particular data associated with each of the received request messages is stored in a local storage device associated with the content engine; and from the server of the content engine to which each of the received request messages is forwarded, transmitting the particular data associated with each of the request messages to the requesting source by bypassing a software communication port on which each of the request messages was originally received; wherein bypassing the software communication port includes spoofing a corresponding server, to which each of the requests is forwarded, into believing that each of the requests for the particular data was received directly from a corresponding requesting source instead of being forwarded from a gateway application in the content engine that forwards each of the requests to the corresponding server; and wherein forwarding the request for particular data is supported at least in part by; establishing a communication session between the gateway application and the corresponding server, the communication session including a software communication port associated with the gateway application through which each of the request messages is forwarded to the corresponding server, and maintaining an alias associated with the software communication port of the gateway application such that, when the corresponding server inquires as to an address of the gateway application forwarding each of the requests to the corresponding server, a source other than the gateway application supplying the alias to the corresponding server to spoof the corresponding computer that the each of forwarded requests was received directly from the requesting source instead of the gateway application.
-
-
28. A computer system that supports transmission of streaming data from a content engine coupled to a network, the computer system including:
-
means for receiving a request message including a request for particular data from the content engine from a requesting source communicating over the network, the content engine including at least two different types of servers to service the request for particular data; processing means for identifying client type properties associated with the received request message; means for forwarding the request for particular data to one of the at least two different types of servers of the content engine to stream the particular data to the requesting source depending on the identified client type properties associated with the received request message; means for determining that the particular data associated with the received request message is stored in a local storage device associated with the content engine; and from the server of the content engine to which the received request message is forwarded, means for transmitting the particular data associated with the request message to the requesting source by bypassing a software communication port on which the request message was originally received; wherein bypassing the software communication port includes spoofing a corresponding server, to which the request is forwarded, into believing that the request for the particular data was received directly from a corresponding requesting source instead of being forwarded from a gateway application in the content engine that forwards the request to the corresponding server; and wherein means for forwarding the request for particular data is supported at least in part by; means for establishing a communication session between the gateway application and the corresponding server, the communication session including a software communication port associated with the gateway application through which the request message is forwarded to the corresponding server, and means for maintaining an alias associated with the software communication port of the gateway application such that, when the corresponding server inquires as to an address of the gateway application forwarding the request to the corresponding server, an operating system maintaining the alias supplies the alias to the corresponding server to spoof the corresponding computer that the forwarded request was received directly from the requesting source instead of the gateway application.
-
-
29. A computer program product including a computer-readable medium having instructions stored thereon for processing data information, such that the instructions, when carried out by a processing device, enable the processing device to perform the steps of:
-
from a requesting source communicating over the network, receiving a request message including a request for particular data from the content engine, the content engine including at least two different types of servers to service the request for particular data; identifying client type properties associated with the received request message; depending on the identified client type properties associated with the received request message, forwarding the request for particular data to one of the at least two different types of servers of the content engine to stream the particular data to the requesting source; determining that the particular data associated with the received request message is stored in a local storage device associated with the content engine; and from the server of the content engine to which the received request message is forwarded, transmitting the particular data associated with the request message to the requesting source by bypassing a software communication port on which the request message was originally received; wherein bypassing the software communication port includes spoofing a corresponding server, to which the request is forwarded, into believing that the request for the particular data was received directly from a corresponding requesting source instead of being forwarded from a gateway application in the content engine that forwards the request to the corresponding server; and wherein forwarding the request for particular data is supported at least in part by; establishing a communication session between the gateway application and the corresponding server, the communication session including a software communication port associated with the gateway application through which the request message is forwarded to the corresponding server, and maintaining an alias associated with the software communication port of the gateway application such that, when the corresponding server inquires as to an address of the gateway application forwarding the request to the corresponding server, a source other than the gateway application supplying the alias to the corresponding server to spoof the corresponding computer that the forwarded request was received directly from the requesting source instead of the gateway application.
-
-
30. A method to support transmission of streaming data, the method comprising:
-
from a requesting source communicating over a network, receiving a request message at a gateway application of a first content engine, the request message including a request for particular data, the first content engine including at least two different types of servers to service the request for particular data; identifying properties associated with the received request message; depending on the identified properties associated with the received request message, forwarding the request for particular data to a server of a second content engine, the second content engine including at least two different types of servers to stream data; establishing a link between the gateway application of the first content engine and the server of the second content engine on which the request message is forwarded, the gateway application including a software communication port on which to forward the request message on the link; and maintaining an alias associated with the software communication port of the gateway application such that, when the corresponding server at the second content engine inquires as to an address of the software communication port of the gateway application, an operating system maintaining the alias supplies the alias to the corresponding server to spoof the corresponding server at the second content engine that the forwarded request was received directly from the requesting source instead of the gateway application at the first content engine.
-
Specification