摘要 |
Port cards in an ATM switch store parameters for virtual channel connections (VCCs) and virtual path connections (VPCs) in separate areas of a virtual connection parameter table (VCPT), the areas being defined by a VCC pointer and a VPC pointer. Also, a number of "free lists" are used to identify unused single locations (for VPCs) or chunks of locations (for sets of VCCs) that are available for re-allocation. Different free lists are used for different-sized sets of VCCs, i.e., sets configured to use different maximum numbers of VCI bits. When a new VPC is created, a VCPT location identified by an entry in the VPC free list is allocated, if such an entry exists. Otherwise a VCPT location is allocated by advancing the VPC pointer. De-allocation of a VPC entry proceeds in reverse order, i.e., the VPC area is shrunk by backing up the VPC pointer if possible, and if not the de-allocated entry is placed on the VPC free list. Similar allocation and de-allocation processes are used for newly-created VCCs, using the VCC free list appropriate based on the maximum number of VCCs that may be in the set of VCCs. A consolidation technique further backs up the VCC pointer when possible to maximize space available for allocation, and also combines entries from the free lists to create larger-sized chunks. Such combined chunks may be allocated in whole or split into smaller chunks as needed for subsequent allocations.
|