Token bucket

El algoritmo token bucket se basa en una analogía de un cubo de capacidad fija en el que los tokens, normalmente representando una unidad de bytes o un único paquete de tamaño predeterminado, son añadidos a un ritmo fijo.

Cuando se debe verificar que un paquete se ajusta (es conforme) a los límites definidos, se inspecciona el cubo para ver si contiene suficientes tokens en ese momento.

Si es así, el número apropiado de tokens, por ejemplo equivalente a la longitud del paquete en bytes, se eliminan ("se consumen"), y el paquete se pasa, por ejemplo, para su transmisión.

Los paquetes no conformes se pueden tratar de varias maneras: Por lo tanto, un flujo conforme puede contener tráfico con un ritmo promedio hasta el ritmo al que se añaden tokens al cubo, y tiene una ráfaga determinada por la profundidad del cubo.

El algoritmo token bucket se puede entender conceptualmente de la siguiente manera: