Usage consciousness in HTTP/HTML for reducing unused data flow across a network
First Claim
1. A method for controlling data flow across a computer network having a data transmission device and a data receiving device, said method comprising:
- determining a current usage level for data received at the data receiving device; and
periodically issuing a query from the data transmission device across the network to the data receiving device, said query requesting a response from the data receiving device indicating the current usage level;
receiving the response from the data receiving device;
comparing the current usage level against one or more pre-established thresholds to determine whether the current usage level indicated within the response falls below the pre-established threshold for sustaining a current transmission level;
throttling the flow of data across said network to said data receiving device based on the current usage level, wherein the flow of data is reduced or stopped when the current usage is below the pre-established threshold and wherein the flow of data is increased when the current usage is above the pre-established threshold and the flow is not at a maximum available flow;
wherein said throttling includes;
determining a time period during which said current usage level is below the pre-established threshold;
stopping said flow of data when the time period is greater than a pre-established maximum period during which the flow of data may continue while the usage level is below the pre-established threshold; and
when a flow of data has been throttled/suspended/stopped, restoring the level of flow of data to the data receiving device when a subsequent usage level indicated within a subsequent response is above the pre-established threshold.
1 Assignment
0 Petitions
Accused Products
Abstract
HTTP/HTML is enhanced to provide information to a server about the current usage level of the continuous data that is being sent to the client. With this information, the server is able to tailor the data being sent to the client based on the current usage level. If the usage level changes in the client system, the server receives information about the changed level and the amount of data being sent is adjusted (up or down) accordingly. The client (browser) is enhanced to determine and send the current usage status and the server is enhanced with the intelligence to tailor the data it sends based on the current usage status received from the client.
14 Citations
13 Claims
-
1. A method for controlling data flow across a computer network having a data transmission device and a data receiving device, said method comprising:
-
determining a current usage level for data received at the data receiving device; and periodically issuing a query from the data transmission device across the network to the data receiving device, said query requesting a response from the data receiving device indicating the current usage level; receiving the response from the data receiving device; comparing the current usage level against one or more pre-established thresholds to determine whether the current usage level indicated within the response falls below the pre-established threshold for sustaining a current transmission level; throttling the flow of data across said network to said data receiving device based on the current usage level, wherein the flow of data is reduced or stopped when the current usage is below the pre-established threshold and wherein the flow of data is increased when the current usage is above the pre-established threshold and the flow is not at a maximum available flow; wherein said throttling includes; determining a time period during which said current usage level is below the pre-established threshold; stopping said flow of data when the time period is greater than a pre-established maximum period during which the flow of data may continue while the usage level is below the pre-established threshold; and when a flow of data has been throttled/suspended/stopped, restoring the level of flow of data to the data receiving device when a subsequent usage level indicated within a subsequent response is above the pre-established threshold. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A computer program product comprising:
-
a computer readable storage medium; and program code on said computer readable storage medium for; determining a current usage level for data received at the data receiving device by periodically issuing a query from a data server across a network to a data receiving device, said query requesting a response indicating the current usage level of data being transmitted to the data receiving device; responding to the current usage level being below or above one or more pre-established thresholds in one or more of multiple ways, by throttling the flow of data across said network to said data receiving device based on the current usage level, wherein said throttling of the flow of data is based on a determination whether the current usage level falls below or above a pre-established threshold for sustaining a current transmission level, said throttling including; suspending the flow of data to the data receiving device, wherein; when the data flow is a video stream, suspending the transmission of the video stream to the data receiving device; when the data flow is an audio stream, suspending the transmission of the audio stream to the data receiving device; and stopping said flow of data when the elapsed time period during which said current usage level is below the pre-established threshold is greater than a pre-established maximum period during which the flow of data may continue while the usage level is below the pre-established threshold; and when a flow of data has been throttledIsuspended/stopped, restoring the level of flow of data to the data receiving device when a subsequent usage level is above the pre-established threshold. - View Dependent Claims (8, 9)
-
-
10. A network comprising:
-
a server that provides data that is continuously updated and that includes a usage response utility that responds to receipt of usage level information for clients receiving the data by throttling the flow of data when the usage level information indicates that a client is not currently using the data being provided, wherein said usage response utility comprises means for; periodically issuing a query from the server across the network to the data receiving device for a response indicating the current usage level; receiving the response from the data receiving device; performing said throttling of the flow of data based on a determination that the current usage level falls below a pre-established threshold for sustaining a current transmission level; responding to the current usage level being below a pre-established threshold in one or more of multiple ways, including; suspending the flow of data to the data receiving device, wherein; when the data flow is a video stream, suspending the transmission of the video stream to the data receiving device; when the data flow is an audio steam, suspending the transmission of the audio stream to the data receiving device; and stopping said flow of data when an elapsed time period during which said current usage level is below the pre-established threshold is greater than a pre-established maximum period during which the flow of data may continue while the usage level is below the pre-established threshold; and when a flow of data has been throttle/suspended/stopped, restoring the level of flow of data to the data receiving device when a subsequent usage level is above the pre-established threshold; and a client that receives said data via a network connection and that includes a usage tracking utility executing therein, which enables the client to track the current usage level for the data being received from the server and inform the server of the current usage level, wherein said usage tracking utility of said client comprises means for; responsive to receipt of a request for usage level data; initiating said determining of the usage level at the client; and sending out an internal query for usage level information within the client, wherein said internal request includes a status check for current status information from the operating system; and compiling the current status information received in response to the status check into a usage level packet; and transmitting the usage level packet to the server. - View Dependent Claims (11)
-
-
12. A network server comprising:
-
a web page for displaying continuously updated content;
means for transmitting the continuously updated content to a client via the web page; anda software utility that enables a current usage level of the content at the client to be determined and responds to the current usage level by controlling the amount of content being transmitted to the client, wherein said software utility includes means for generating and transmitting to the client a query requesting the current usage level; wherein said query is transmitted within the web page, which has meta tags associated therewith for triggering a check at the client of the current usage level for the content being transmitted to the client; wherein said software utility controls the amount of content by; allowing transmission of full content when the current usage level is above a pre-established threshold; throttling the amount of content provided when the usage level falls below a first threshold; and stopping the transmission of all content when the usage level falls below the first threshold for greater than a pre-set amount of time; and when a transmission of data has been throttle/suspended/stopped, restoring the level of transmission of data to the client when a subsequent usage level is above the pre-established threshold. - View Dependent Claims (13)
-
Specification