Dynamic server flow control in a hybrid peer-to-peer network
AssigneeMicrosoft Corporation
InventorsGraham Baker, Leon James Alexandrou
Life of this patent
Estimating the term…
Abstract
Technologies are described herein for providing dynamic flow control of requests to a server in a hybrid peer-to-peer network. The server collects a number of metrics related to its current stability and the throughput of requests from peer-to-peer devices. These metrics, along with associated trend data, are used by the server to calculate a current stability rating and a current throughput rating. The server then imposes flow control on a proportional number of the peer-to-peer devices based upon the current ratings. This operation is run periodically, with ratings re-calculated from current metrics, and new flow control measures imposed in each cycle.
Claims20
A method for providing dynamic flow control of requests from a plurality of client computers to a server computer, the method comprising:
- collecting throughput metrics indicating a current number and size of the requests;
- collecting a stability metric indicating a current processing load of the server;
- calculating a throughput rating indicating a current throughput of the requests from the plurality of client computers from the throughput metric;
- calculating a stability rating indicating the current processing load of the server from the stability metric;
- and
- imposing flow control on a subset of the plurality of client computers based upon the throughput rating and the stability rating.
A computer storage medium having computer executable instructions stored thereon, which, when executed by a computer, will cause the computer to:
- collect a plurality of metrics indicating a current processing load of the computer;
- calculate trend data for the plurality of metrics;
- calculate a rating from the plurality of metrics and the trend data;
- determine if the rating is greater than or equal to a maximum threshold value;
- if the rating is greater than or equal to the maximum threshold value, impose flow control on a plurality of client computers;
- if the rating is not greater than or equal to the maximum threshold value, determine if the rating is greater than or equal to a nominal threshold value;
- and
- if the rating is greater than or equal to the nominal threshold value, impose flow control on a subset of the plurality of client computers comprising a first percentage of the client computers having a largest throughput of requests.
A method for providing dynamic server flow control in a hybrid peer-to-peer network, the method comprising:
- collecting a plurality of metrics indicating a current load upon a server connected to a plurality of peer-to-peer devices;
- calculating trend data for each of the plurality of metrics;
- calculating a current load rating from the plurality of metrics and the trend data;
- and
- imposing flow control on a subset of the plurality of peer-to-peer devices based upon the current load rating.
Dependencies are inferred from the claim text.