Token buckets are used in a computer or communications system for
controlling rates at which corresponding items are processed. The number
of tokens in a token bucket identifies the amount of processing that is
available for the corresponding item. Instead of storing the value of a
token bucket as a single value in a single memory location as
traditionally done, the value of a token bucket is stored across multiple
storage locations, such as in on-chip storage and in off-chip storage
(e.g., in a memory device). An indication (e.g., one or more bits) can
also be stored on chip to identify whether or not the off-chip stored
value is zero and/or of at least of a certain magnitude such that it may
be readily determined whether there are sufficient tokens to process an
item without accessing the off-chip storage.