US 10,892,998 B2
Adaptive throttling for shared resources
Tate Andrew Certain, Seattle, WA (US); and James R. Hamilton, Seattle, WA (US)
Assigned to Amazon Technologies, Inc., Seattle, WA (US)
Filed by Amazon Technologies, Inc., Reno, NV (US)
Filed on Jul. 23, 2018, as Appl. No. 16/42,277.
Application 16/042,277 is a continuation of application No. 15/454,958, filed on Mar. 9, 2017, granted, now 10,193,819.
Application 15/454,958 is a continuation of application No. 13/429,735, filed on Mar. 26, 2012, granted, now 9,712,453, issued on Jul. 18, 2017.
Prior Publication US 2018/0331971 A1, Nov. 15, 2018
Int. Cl. H04L 12/911 (2013.01); H04L 12/801 (2013.01); H04L 12/24 (2006.01); H04L 12/26 (2006.01); G06F 9/00 (2006.01); G06F 9/50 (2006.01)
CPC H04L 47/70 (2013.01) [G06F 9/00 (2013.01); G06F 9/5061 (2013.01); H04L 41/5009 (2013.01); H04L 43/00 (2013.01); H04L 43/0817 (2013.01); H04L 43/0852 (2013.01); H04L 47/10 (2013.01); G06F 2209/504 (2013.01); H04L 41/5025 (2013.01); H04L 41/5035 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A computer-implemented method, comprising:
allocating use credits to a first user based, at least in part, on a number of input/output (I/O) operations to be performed by the first user;
receiving a request, from the first user, to perform an I/O operation;
determining the number of credits allocated to the first user is sufficient to perform the I/O operation;
determining a first value for a performance parameter of a network resource, the first value being selected from a plurality of monitored metrics, the first value determined at least in part on a highest normalized value of the plurality of monitored metrics;
determining a second value for the second performance parameter of a network resource, the second value being different from the first value and selected from the plurality of monitored metrics:
determining a first adjustment to a credit replenishment rate, based on the first value, is larger than a second adjustment to the credit replenishment rate, based on the second value; and
adjusting the credit replenishment rate for the first user, based at least in part on the second value.