Rate limiting

While a hardware appliance can limit the rate for a given range of IP-addresses on layer 4, it risks blocking a network with many users which are masked by NAT with a single IP address of an ISP.

Data centers widely use rate limiting to control the share of resources given to different tenants and applications according to their service level agreement.

Two important performance metrics of rate limiters in data centers are resource footprint (memory and CPU usage) which determines scalability, and precision.

There usually exists a trade-off, that is, higher precision can be achieved by dedicating more resources to the rate limiters.

A considerable body of research with focus on improving performance of rate limiting in data centers.