US 11,943,385 B1
Dynamic cross-service usage enforcement for usage measured across multiple different network-based services
Ankit Kumar, Bellevue, WA (US); Iulian Catalin Stafie, Seattle, WA (US); Lisa A Winn, Seattle, WA (US); Marius Popa, Kirkland, WA (US); Jamie Layne White, Seattle, WA (US); and Dennis Ono Tjandra, Seattle, WA (US)
Assigned to Amazon Technologies, Inc., Seattle, WA (US)
Filed by Amazon Technologies, Inc., Seattle, WA (US)
Filed on Jun. 30, 2020, as Appl. No. 16/917,587.
Int. Cl. H04M 15/00 (2006.01)
CPC H04M 15/50 (2013.01) [H04M 15/58 (2013.01); H04M 15/60 (2013.01); H04M 15/8214 (2013.01); H04M 15/886 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A system, comprising:
a plurality of compute nodes, respectively comprising at least one processor and a memory;
a first one or more of the plurality of compute nodes, configured to implement a control plane for a cross-service usage control system, the control plane configured to:
receive a request to specify a usage quota for a tenant for an interface of a multi-tenant network-based service of a plurality of different multi-tenant network-based services;
generate a rule to enforce the usage quota at a plurality of request handling nodes for the multi-tenant network-based service;
send the rule to the plurality of request handling nodes for the multi-tenant network-based service;
a second one or more of the plurality of compute nodes, configured to implement a usage log analyzer for the cross-service usage control system, the usage log analyzer configured to:
receive log records from the plurality of different multi-tenant services that describe usage measurements for requests from tenants of the different multi-tenant network-based services, wherein the usage measurements correspond to different types of resources hosted at the plurality of multi-tenant network-based services utilized by the requests;
evaluate one or more of the log records for one or more requests received from one or more clients associated with the tenant via the interface, wherein the evaluation:
determines an update to the usage quota for the tenant, based at least in part on one of the usage measurements in the one or more log records associated with a different tenant;
determines different ones of the plurality of multi-tenant services that are included in a dependency detected between the multi-tenant network-based service and one or more other multi-tenant network-based services of the plurality of multi-tenant network-based service according to the one or more log records; and
selects an action point for enforcing the usage quota for the tenant from a plurality of different action points corresponding to the determined different ones of the plurality of multi-tenant network-based services; and
wherein the one or more log records are received from at least one of the plurality of request handling nodes for the multi-tenant network-based service; and
wherein the control plane is further configured to:
send an updated rule to the plurality of request handling nodes to enforce the updated usage quota for the tenant for the interface at the action point determined by the usage log analyzer.