Patent ID: 9319321
Filing Date: 2016-04-19
CPC Classification: H04L

Claim Text:
1. A computer-implemented method of responding to a request to stream data from a server to a client, based on constraints specified by the client and based further on network congestion, the computer-implemented method comprising: receiving, from the client, one or more requests for a first plurality of data blocks encoded at a first bit rate, wherein the one or more requests comprise one or more client-specified constraints for streaming the requested data blocks to the client, including a timing constraint specifying an expiration time associated with the first plurality of data blocks; subsequent to receiving the one or more requests, detecting an increase in network congestion, wherein the server is configured to temporarily reduce, responsive to the increase in network congestion and by a predefined amount, bandwidth for sending data to the client; in response to detecting an increase in network congestion, servicing the one or more requests by streaming a second plurality of data blocks encoded at a second bit rate to the client rather than streaming the first plurality of data blocks to the client, wherein the second bit rate is less than the first bit rate; determining that the one or more client-specified constraints cannot be satisfied in servicing the one or more requests using the reduced bandwidth and streaming the second plurality of data blocks; and in response, temporarily reducing the bandwidth by a lesser amount than the predefined amount, to provide bandwidth sufficient to satisfy the one or more client-specified constraints when servicing the one or more requests.