Refresh mechanism for a token bucket
AssigneeBroadcom Corporation
InventorTHOMAS MICHAEL ESPOSITO
Life of this patent
Estimating the term…
Abstract
Embodiments of the present disclosure provide apparatuses, systems, and methods for accounting for tokens in one or more token buckets. One such embodiment includes memory; and a token bucket administration apparatus configured to iterate through a plurality of token buckets assigned to specific positions within a calendar segment and process each token bucket in sequence by reading a biased token count value from the memory for a token bucket, adjusting the biased token bucket value, and writing the adjusted token bucket value back to the memory.
Claims20
A network processing system comprising:
- memory;
- and
- a token bucket administration apparatus configured to iterate through a plurality of token buckets assigned to specific positions within a calendar segment and process each token bucket in sequence by reading a current token bucket status from the memory for the token bucket, updating the token bucket status, and writing the updated token bucket status back to the memory.
A method of allocating tokens for a token bucket comprising:
- receiving indication of an arrival of a packet of length L at time t, where 0≦t≦T−1;
- retrieving a biased token count value from memory for the token bucket, wherein the biased token count value incorporates a token count value of the token bucket and a token bias value at time of last update of the token bucket;
- determining an updated token count value for the token bucket by adding the token bias value to the retrieved biased token count value, wherein the token bias value represents a number of tokens that are accumulated at the token bucket over time from 0 to time t;
- further updating the token count value of the token bucket to account for transmission of the packet if the packet is authorized to be transmitted;
- updating the biased token count value by subtracting the token bias value from a last updated token count value;
- and
- storing the updated biased token count value for the token bucket.
A non-transitory computer readable medium having processor instructions for allocating tokens for a token bucket, that when executed by a hardware processor, causes the processor to:
- receive indication of an arrival of a packet of length L at time t, where 0≦t≦T−1;
- retrieve a biased token count value from memory for the token bucket, wherein the biased token count value incorporates a token count value of the token bucket and a token bias value at time of last update of the token bucket;
- determine an updated token count value for the token bucket by adding the token bias value to the retrieved biased token count value, wherein the token bias value represents a number of tokens that are accumulated at the token bucket over time from 0 to time t;
- further update the token count value of the token bucket to account for transmission of the packet if the packet is authorized to be transmitted;
- update the biased token count value by subtracting the token bias value from a last updated token count value;
- and
- store the updated biased token count value for the token bucket.
Dependencies are inferred from the claim text.