1 / 21

# CS 4594 Broadband - PowerPoint PPT Presentation

CS 4594 Broadband. ATM GCRA and Leaky Bucket. From the ATM Forum. The GCRA is used to define conformance to the traffic contract. For each cell that arrives at the specified point, the GCRA determines whether the cell conforms to the traffic contract of its connection.

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

ATM GCRA and Leaky Bucket

From the ATM Forum
• The GCRA is used to define conformance to the traffic contract. For each cell that arrives at the specified point, the GCRA determines whether the cell conforms to the traffic contract of its connection.
Generic Cell Rate Algorithm
• GCRA = Generic Cell Rate Algorithm
• Defined by two equivalent methods
• Virtual Scheduling
• Leaky Bucket

Initially:

TAT=ta(1)

GCRA – Virtual Scheduling

Arrival of cell k at t =ta(k)

k=k+1

TAT<ta(k)

Yes

TAT=ta(k)

No

TAT>ta(k)+L

Yes

No

TAT=TAT+I

Accept conforming cell

GCRA - Virtual Scheduling

CGRA(I,L)

k=k+1

Arrival of cell k at t =ta(k)

(slow)

too fast

fast

slow

TAT<ta(k)

Yes

TAT=ta(k)

TAT-L

TAT

No

(fast)

TAT>ta(k)+L

Yes

(too fast)

No

(not too fast)

TAT=TAT+I

Accept conforming cell

TAT = Theoretical Arrival Time

I

I

I

I

TAT-L

TAT

TAT-L

TAT

time

slow

fast

too fast

GCRA(T, τ)

N = maximum number of contiguous conforming cells

T = targeted average time in GCRA

τ = limit tolerance in GCRA

δ = actual average arrival time

Burst Size
Leaky Bucket
• Smoothes traffic
• Regulates traffic
• Overflow = nonconforming
• Nonconforming can be tagged or discarded
GCRA – Leaky Bucket (Equiv to Virtual Scheduling)

Initially:

X=0

LCT = ta(1)

Arrival of cell k at t =ta(k)

k=k+1

X’=X-(ta(k)-LCT)

Yes

X’<0

X’=0

Meanings:

X = Value of counter

X’ auxiliary variable

LCT = Last Conformance Time

L = bucket size

(slow)

No

(fast)

Yes

(too fast)

X’>L

No

(not too fast)

X=X’+I

LCT=ta(k)

Accept conforming cell

Explanation
• X is value of the counter.
• When a cell arrives at time ta(k), X’ is set to the value of what the counter would be: X’ = X – (ta(k) – LCT) (This is the value of previous counter X minus the amount would have leaked.
• If X’ is negative (bucket would be empty), the cell is compliant, X’ is set to 0, X is set equal to X’ + I, and LCT = ta(k).
• If X’ is nonnegative, check if bucket is full. If not full, cell is compliant and do as above.
• If bucket is full, the cell is not compliant, and nothing is updated.
Leaky (token) bucket as a gate

Cell goes through

if bucket has

enough tokens

ir

Tokens enter at given rate

• ir = information rate
• bs = burst size

bs

Let token escape as cell goes by

yes

?

input

output

no

Double Leaky Bucket

Input

Overflow

Overflow

output

Double Leaky Bucket(another arrangement)

Input

Overflow

Overflow

output

Double leaky buckets as a pair of gates

pir

• pir = peak information rate
• pbs = peak burst size
• cir = committed information rate
• cbr = Committed burst size

cir

pbs

cbs

yes

yes

no

no

LBP schemes
• LBP=Leaky Bucket Policy
LBP Scheme type 1
• Arriving cells are dropped when no token is present in the token pool

arriving cells

departing cells

server

dropped

cells

Token pool

LBP Scheme type 2

tagged cells

• Arriving cells are tagged if not complient.

departing cells

arriving cells

server

Token pool

LBP Scheme type 3
• Arriving cells are placed in the queue if no token is present in the token pool

departing cells

arriving cells

buffer

server

dropped

cells

Token pool

LBP Scheme type 4

tagged cells

• Arriving cells are placed in the queue if no token is present in the token pool. Nonconforming cells are tagged.

arriving cells

departing cells

buffer

server

Token pool

GCRA and ATM Services
• GCRA is used to define usage parameters
• CBR (Class A) (one GCRA)
• GCRA(1/PCR, CDVT)
• rt-VBR (Class B) (two GCRAs)
• GCRA(1/PCR, CDVT)
• GCRA(1/SCR, CDVT+BT)
• ATM Forum defines 3 variations based on how the CLP bit is used.
• ABR
• uses GCRA with changing values for parameters.
ATM Conformance Definitions
• VBR.1 – Leaky bucket 1 sends CLP(0+1) compliant cells to leaky bucket 2 and discards the noncompliant cells. Leaky bucket 2 sends CLP(0+1) compliant cells to the network and discards noncompliant cells.
• VBR.2 – Leaky bucket 1 sends CLP(1) compliant cells to the network, sends CLP(0) compliant cells to leaky bucket 2, and discards CLP(0+1) noncompliant cells. Leaky bucket 2 sends CLP(0) compliant cells to the network and discards noncompliant cells.
• VBR.3 – Leaky bucket 1 sends CLP(1) compliant cells to the network, sends CLP(0) compliant cells to leaky bucket 2, and discards CLP(0+1) noncompliant cells. Leaky bucket 2 sends CLP(0) compliant cells to the network and tags noncompliant cells and sends them to the network.