Connection Admission Control ATM Traffic Management: Traffic Enforcement and Traffic

by Abhijit S. Pandya; Ercan Sen CRC Press, CRC Press LLC ISBN: 0849331390 Pub Date: 110198 Previous Table of Contents Next The GCRA is a virtual scheduling algorithm or a continuous-state Leaky Bucket Algorithm as defined by the flowchart in Figure 8-9. The GCRA is used to define, in an operational manner, the relationship between the following set of parameters: 1 the peak cell rate PCR and the cell delay variation tolerance, 2 the sustainable cell rate SCR and the Burst Tolerance BT. In addition, the GCRA is used to specify the conformance of the declared values of the above two tolerances, as well as declared values of the traffic parameters PCR and SCR and maximum burst size MBS. The GCRA is used to specify the conformance, at either the public or private UNI for details see ATM Forum: Traffic Management Specification, Section 4.4.3.2 and Annex C.4, respectively. Figure 8-9 Algorithms for implementing the control functions. As illustrated in Figure 8-9 the GCRA is defined with two parameters: 1 Increment I: the increment parameter corresponds to the inverse of the compliant rate, i.e., the fill rate of the bucket. 2 Limit L: the limit parameter corresponds to the number of cells that can burst at a higher rate, i.e., the size of the bucket. Note: I and L are not restricted to integer values. Thus, the notation “GCRAI, L” means the Generic Cell Rate Algorithm with the value of the increment parameter set equal to I and the value of the limit parameter set equal to L. The GCRA is formally defined in Figure 8-9, which is a generic version of the GCRA algorithm defined in The virtual scheduling algorithm updates a Theoretical Arrival Time TAT, which is the “nominal” arrival time of the cell assuming that the active source sends equally spaced cells. If the actual arrival time of a cell is not “too” early relative to the TAT; in particular, if the actual arrival time is after TAT - L, then the cell is conforming; otherwise the cell is nonconforming. The continuous-state leaky bucket algorithm can be viewed as a finite-capacity bucket whose real-valued content drains out at a continuous rate of I unit of content per time-unit and whose content is increased by the increment I for each conforming cell. Equivalently, it can be viewed as the work load in a finite- capacity queue or as a real-valued counter. If, at a cell arrival, the content of the bucket is less than or equal to the limit value, L, then the cell is conforming; otherwise the cell is nonconforming. The capacity of the bucket the upper bound on the counter is L + 1. When more than one traffic descriptor is used for example, PCR and SCR for a connection, multiple leaky buckets are cascaded, with the highest rate being policed first. For example, ATM connections carrying frame relay service may actually define three traffic descriptors and thus require three leaky buckets: PCR0, PCR1 and SCR0. Figure 8-10 illustrates an example of traffic policing with two leaky buckets. Figure 8-10 Implementation of traffic control using two leaky buckets. The two algorithms in Figure 8-9 are equivalent in the sense that for any sequence of cell arrival times, the two algorithms determine the same cells to be conforming and thus the same cells to be nonconforming. The two algorithms are easily compared by noticing that at each arrival epoch, tak, and after the algorithms have been executed, as in Figure 8-9, TAT = X + LCT. Tracing the steps of the virtual scheduling algorithm in Figure 8-9, at the arrival time of the first cell tal, the theoretical arrival time TAT is initialized to the current time, tal. For subsequent cells, if the arrival time of the kth cell, tak, is actually after the current value of the TAT, then the cell is conforming and TAT is updated to the current time tak, plus the increment 1.