CONDITIONAL PROTOCOL CONTROL
First Claim
1. A method for managing delivery of content in a system comprising a server and an end user computer, comprising:
- establishing a first connection at the server for communicating with the end user computer;
receiving a request for content from the end user computer over the first connection;
determining one or more parameters relating to the performance of the first connection using information from the request;
modifying the first connection at the transport layer based on the one or more parameters; and
sending the requested content from the server to the end user computer such that the transport layer manages delivery of the content in accordance with the modified parameters.
3 Assignments
0 Petitions
Accused Products
Abstract
Techniques for modifying the performance of a transport layer protocol in response to a request for content are disclosed. A connection can be established between a content distribution server and an end user computer according to preconfigured parameters. When a request for content is received over the connection, the content distribution server can determine one or more parameters relating to the performance of the connection using information from the request. The content distribution server can modify the connection at the transport layer according to the one or more parameters. Thereafter, the transport layer can manage delivery of the requested content to the end user computer in accordance with the modified parameters. In various embodiments, the content distribution server includes a modified TCP protocol stack which adjusts timing, pacing, and buffer allocation associated with a connection in response to requests from an application-layer data source.
60 Citations
25 Claims
-
1. A method for managing delivery of content in a system comprising a server and an end user computer, comprising:
-
establishing a first connection at the server for communicating with the end user computer; receiving a request for content from the end user computer over the first connection; determining one or more parameters relating to the performance of the first connection using information from the request; modifying the first connection at the transport layer based on the one or more parameters; and sending the requested content from the server to the end user computer such that the transport layer manages delivery of the content in accordance with the modified parameters. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A content distribution server, comprising:
-
a network interface having a plurality of ports configured to send and receive data over a connecting network; a processor coupled to the network interface and configured to manage a plurality of connections to end user computers; a protocol handler configured to establish the plurality of connections with the end user computers according to predetermined transport layer parameters of the content distribution server and to manage data transmission over the plurality of connections, and a data source configured to supply requested content to the end user computers over the plurality of connections, wherein the data source is configured to monitor a first connection for a request, to determine one or more transport layer parameters for the first connection based on the request, and to direct the protocol handler to modify the first connection based on the one or more transport layer parameters independently of other connections of the content distribution server. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22, 23)
-
-
24. A computer program product comprising a computer-readable medium encoded with one or more sequences of one or more instructions which, when executed by a processor, cause a computer to:
-
establish a first connection for communicating with an end user computer; receive a request for content from the end user computer over the first connection; determine one or more parameters relating to the performance of the first connection based on information from the request; modify the first connection at the transport layer using the one or more parameters; and send the requested content to the end user computer such that the transport layer manages delivery of the content in accordance with the modified parameters.
-
-
25. A content distribution server, comprising:
-
means for sending and receiving data over a connecting network; means for managing a plurality of connections to end user computers; means for establishing a connection with each end user computer according to predetermined transport layer parameters of the content distribution server; means for managing data transmission over the plurality of connections; means for modifying a connection based on one or more transport layer performance parameters; and means for supplying the requested content to the end user computers over the plurality of connections, comprising; means for monitoring a first connection for a request, means for determining the one or more transport layer performance parameters for the first connection based on the request, and means for causing the modifying means to modify the first connection independently of other connections of the content distribution server based on the one or more transport layer performance parameters.
-
Specification