Một token bucket đƣợc sử dụng nhƣ một cụng cụ đo lƣu lƣợng. Hỡnh 2-2 minh họa chức năng của token bucket trong CAR.
Kớch thƣớc của token bucket (Số lƣợng tối đa cỏc token mà buket cú thể giữ) bằng với burstburst phự hợp (Bc). Đối với mỗi gúi tin ỏp dụng giới hạn CAR, cỏc token bị loại bỏ khỏi bucket đú tuỳ theo kớch thƣớc byte của gúi đú. Khi tập hợp đủ lƣợng token để phục vụ gúi, gúi đú đƣợc phỏt đi. Nếu một gúi đi tới và số token cú sẵn trong bucket ớt hơn kớch thƣớc byte của gúi, thỡburstbursts mở rộng (BE) cú hiệu lực. Xột hai trƣờng hợp sau:
Một token bucket chuẩn khụng cú khả năng burst mở rộng, và burst mở rộng của nú bằng với mức Bc. Trong trƣờng hợp này, ta cú thể cho loại bỏ gúi tin khi khụng cũn token.
Hỡnh 2-2 Token bucket chuẩn cho CAR.
Thẻ bài T Bc: Kích th-ớc Bursts phù hợp T: Tốc độ đến của thẻ bài Bc Những thẻ bài tràn Những gói đến Những gói đến Những gói phù hợp Những gói v-ợt quá
Token bucket vơi burst mở rộng, Be > Bc.
Một token bucket với khả năng bursts mở rộng cho phộp một dũng (stream) cú thể mƣợn nhiều token hơn, khụng giống nhƣ nguyờn lý token bucket chuẩn. Cú hai thuật ngữ liờn quan dến việc cho mƣợn, nợ, đú là nợ thực tế (Da) và nợ kết hợp (Dc). Chỳng đƣợc dựng vào việc giải thớch hoạt động của token bucket cú khả năng bursts mở rộng.
DA là số lƣợng token mà dũng hiện tại mƣợn. Số lƣợng này giảm theo từng khoảng thời gian đều đặn, đƣợc xỏc định bởi tốc độ cam kết đƣợc thiết lập bởi sự tớch luỹ cỏc token. Vớ dụ, ta mƣợn 100 token cho mỗi gúi trong tổng số 3 gúi ta đó gửi kể từ lần loại bỏ gúi cuối cựng.. DA lỳc đú theo thứ tự là 100, 200 và 300 sau khi gúi đầu tiờn, thứ hai, và thứ ba đƣợc gửi.
Dc là tổng của DA của tất cả gúi tin đó đƣợc gửi kể từ lần cuối một gúi bị loại bỏ. Trong khi DA là số lƣợng thực tế cỏc token đó mƣợn từ lần loại bỏ gúi cuối cựng, thỡ Dc là tổng những mún nợ thực đối với tất cả cỏc gúi đó mƣợn những token kể từ lần loại bỏ gúi CAR cuối cựng. Nhƣ trong vớ dụ trƣớc, ta mƣợn 100 token cho mỗi một trong 3 gúi đó gửi kể từ lần cuối một gúi bị loại bỏ. Dc bằng 100,300 (= 100 + 200), và 600 (=100 + 200 +300) sau khi gúi thứ nhất, thứ hai, và thứ ba lần lƣợt đƣợc gửi. Chỳ ý rằng, đối với gúi đầu tiờn cần mƣợn token sau khi một gúi tin rớt, Dc = DA.
Giỏ trị Dc đƣợc thiết lập về 0 sau khi cú gúi bị loại bỏ, và gúi tin tiếp theo cần mƣợn cú một giỏ trị Dc mới đƣợc tớnh toỏn. Nú bằng với DA. Theo vớ dụ trờn, nếu gúi thứ tƣ bị loại bỏ, gúi tiếp theo cần mƣợn token (vớ dụ 100), cú giỏ trị Dc= DA =400 (= 300+100). Chỳ ý rằng khụng giống nhƣ Dc, DA khụng thể xoỏ đi sau khi gúi bị loại. Nếu DA, lớn hơn giới hạn mở rộng, tất cả gúi tin bị loại bỏ cho tới khi DA đƣợc giảm qua sự tớch lũy cỏc token.
Nhờ token bucket với khả năng bursts mở rộng, cỏc gúi trỏnh đƣợc việc rơi vào tỡnh huống loại bỏ cuối hàng (tail-drop) ngay lập tức nhƣ đối với token bucket tiờu chuẩn. Thay vào đú, cỏc gúi chỉ cú thể bị loại bỏ từ từ, giống nhƣ kiểu Phỏt hiện sớm ngẫu nhiờn (RED). Nếu một gúi đến và cần mƣợn vài token, một phộp so sỏnh đƣợc thiết lập giữa BE và Dc. Nếu Dc> BE, gúi bị loại bỏ và Dc thiết lập mức 0. Ngƣợc lại, gúi đƣợc gửi đi, và DA tăng lờn một lƣợng bằng số token đƣợc mƣợn và Dc đƣợc tớnh toỏn lại với giỏ trị từ DA đú.
Chỳ ý rằng nếu một gúi bị loại bỏ vỡ số token cú đƣợc vƣợt quỏ kớch thƣớc gúi tin (Byte), thỡ những token sẽ khụng bị loại khỏi bucket (vớ dụ, những gúi rớt khụng vào bất cứ tốc độ hay giới hạn bursts nào).
CIR là tốc độ đƣợc tớnh bằng Byte/s. Cỏc bursts đƣợc tớnh bằng đơn vị Byte. Một bộ đếm burst đếm kớch thƣớcburst hiện tại. Bộ đếm burst cú thể hoặc lớn hơn hay bộ hơn Bc. Khi bộ đếm burst vƣợt quỏ Bc, bộ đếm đú sẽ bằng Bc +
Hỡnh 2-3 Những hành động dựa vào giỏ trị bộ đếm burst.
Bộ đếm bursts
Bc Be
Hành động phự
hợp Hành động vượt quỏ
tỷ với giỏ trị bursts
Hành động vƣợt quỏ
Bc: Burst phự hợp Be: Burst mở rộng
Trong cỏc trƣờng hợp khi giỏ trị bộ đếm burst ở trong khoảng Bc và BE, cú thể tớnh xấp xỉ xỏc xuất vƣợt quỏ nhƣ sau:
(Bộ đếm burst – Bc) / (BE – Bc).
Dựa vào mức xấp xỉ này, xỏc suất loại bỏ gúi CAR đƣợc chỉ ra trong Hỡnh 2-4. Khỏi niệm về xỏc suất loại bỏ gúi trong trƣờng hợp vƣợt quỏ giữa mức burst cho phộp và mức burst vƣợt quỏ tƣơng tự nhƣ xỏc suất loại bỏ gúi RED giữa ngƣỡng tối thiểu và ngƣỡng tối đa.
Hỡnh 2-4 Xỏc suất loại bỏ gúi tin CAR.
Loại gúi %
100
Burst phự hợp Burst mở rộng
Bộ đếm burst
Chỳ ý: Ở đõy ta giả sử sự truyền gúi và loại bỏ gúi tƣơng ứng là cỏc hành động phự hợp và vƣợt quỏ cho đơn giản. Trong thực tế, cú nhiều cỏch khỏc nhau để định nghĩa cỏc hành động phự hợp và vƣợt quỏ.