{'fraction_non_alphanumeric': 0.02377521613832853, 'fraction_numerical': 0.016570605187319884, 'mean_word_length': 4.935897435897436, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Design, implementation and evaluation of an explicit rate allocation algorithm in an ATM switch

We discuss a hardware implementation of an explicit rate allocation algorithm for support of available bit rate (ABR) service in ATM switches. We then demonstrate the effectiveness of the algorithm at the network-level through measurements on the actual implementation in a network testbed. The rate allocation algorithm has several desirable properties, such as exact computation of the max-min rates, O(1) computations per resource management (RM) cell received, and the ability to provide minimum cell rate (MCR) guarantees. We show that the algorithm can be implemented with a modest amount of hardware (64,000 gates in an Altera 10K100 programmable logic device and 16 bytes of SRAM storage per VC), and that even a slow FPGA-based implementation with a 20 MHz internal clock rate can process RM cells within one cell time at an OC-3 port. We also outline the design for supporting OC-12 and OC-48 links. We present results from measurements of ABR traffic in network configurations with up to four bottlenecks and 100 connections. The results show that the algorithm is able to converge to the exact max-min fair allocations with no oscillations after convergence, maintains minimum rate guarantees, and is also able to maintain high link utilization in the presence of on-off traffic.