. This information can be updated by FPL function calls invoked by the FPP and sent over the FBI bus. The code can run ALU operations to modify or compare values in the database and the ASI can return values to the FPL code. The ASI also maintains a second database that contains information used to determine compli- ance with the imposed traffic control constraints. In its several variations, the dual leaky bucket (DLB) algorithm (whose one subset is the ATM- standard specified GCRA) is implemented on a programmable compute engine. When the FPP makes the appropriate function call to the ASI regarding a specific PDU, the ASI starts running the corre- sponding policing algorithm. When the algorithm execution is finished, the ASI flags the PDU (frame or cell) as compliant or not by returning a pass/fail value to the FPP. In the case of a DLB implemen- tation, it will also stipulate from which bucket it identified the PDU's nonconformance. It is important to realize that when we say that the ASI performs its policing by checking the conformance for up to 64K connections, flows, or aggregates at up to OC-48 rates, it does not mean Downloaded from Digital Engineering Library @ McGraw-Hill (www.digitalengineeringlibrary.com) Copyright © 2004 The McGraw-Hill Companies. All rights reserved. Any use is subject to the Terms of Use as given at the website. 114 NETWORK PROCESSORS that it schedules or shapes any traffic. It just identifies the cells or frames that do not comply. Also, when the LB algorithm is applied, numerous options in the GCRA parameters are chosen for each connection. The only constraint is that each PDU's arrival time must be measured with the same degree of granularity across the board. For instance, if ATM and frame-relay connections will be policed at the same time, the timeout counter must be set up to measure the smaller between the ATM cell rate and the byte time of the frame relay connection. THE DLB ALGORITHM In Chapter 14, "Switch Fabrics," and Chapter 15, "Traffic Managers," we cover issues rela