Analyzing Data About the Bandwidth Throttler

The Bandwidth Throttler determines whether to accept or reject a request based on the periodic samples of the rate at which bytes are sent on the server.

If the bandwidth used (as indicated by the sample) approaches the maximum set by the user, the Bandwidth Throttler blocks read requests but allows write requests and transmission requests. Read requests are blocked first because they are likely to result in further requests.

If the bandwidth used exceeds the maximum set by the user, the Bandwidth Throttler rejects read requests, blocks large write requests and transmission requests, and allows small write requests and transmission requests.

To determine how many requests are being blocked and rejected, monitor the Async I/O counters. These counters display cumulative totals, so it's best to use PerfLog to log the counter values. Alternatively, you can use a spreadsheet to calculate the rate over time. You can also set a Performance Monitor alert to notify administrators when the number of blocked or rejected requests exceeds a threshold.

No rule exists that sets a threshold or appropriate number of blocked and rejected requests. Tolerance for client delays and rejections is a business rule, not a performance measure. However, you can use the Async I/O counters to enforce your business's standards.