DSP Resource Allocation in Voice Gateways
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing voice gateway systems face challenges in efficiently assigning tasks to resources, particularly in balancing the load across Digital Signal Processors (DSPs) due to varying resource requirements of different codecs, which affects performance under high and low load conditions.
Innovation Solution
The system employs two resource pools: a Load Balancing pool and a Best Fit pool to dynamically allocate DSP resources. The Load Balancing pool distributes tasks based on available capacity, while the Best Fit pool groups codecs by resource requirements and first channel penalties, ensuring optimal resource utilization by matching tasks with suitable DSPs.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If resources are assigned on a best fit basis, then resource utilization efficiency is improved, but system complexity increases due to tracking available capacity and searching data structures
Solution Approach 1:
The resource pool is segmented into multiple data structures organized by resource capacity levels. Each data structure represents a specific capacity tier, allowing the system to quickly identify suitable resources without searching the entire pool. This segmentation reduces the complexity of resource search while maintaining efficient utilization.
Solution Approach 2:
Resources are pre-categorized into different capacity groups before task assignment occurs. By organizing resources into data structures based on their available capacity in advance, the system eliminates the need for complex real-time searches when tasks arrive, reducing operational complexity while preserving assignment efficiency.
2Stability of the object's composition
If load balancing is used to distribute tasks evenly, then system stability is improved, but resource utilization efficiency deteriorates due to suboptimal matching
Solution Approach 1:
The system applies different assignment strategies to different resource groups based on their local characteristics. Resources with similar capacity levels are grouped together, and tasks are assigned to appropriate groups based on their requirements. This local optimization ensures both stable load distribution and efficient resource matching by considering the specific properties of each resource group.
Solution Approach 2:
The system dynamically adjusts the assignment strategy based on current system conditions. When resources are abundant, best-fit assignment optimizes utilization. When resources are constrained, load balancing maintains stability. The data structure organization enables flexible switching between strategies without requiring complete reorganization, maintaining both efficiency and stability adaptively.
3Device complexity
If a single resource pool is used, then system complexity is reduced, but the ability to handle varying task requirements deteriorates
Solution Approach 1:
The organized resource pool serves multiple functions: it enables both best-fit assignment and load balancing strategies, supports various task types with different resource requirements, and provides scalable organization as the system grows. The data structure design is universal enough to handle diverse task requirements while maintaining a unified resource management interface, achieving versatility without proportionally increasing complexity.
Data Source
AI summary
A method and system of assigning DSP resources in a voice gateway which first seeks to assign the calls to DSPs on a best fit basis using information in a best fit (BF) pool. If a call can not be assigned on a BF basis, the call is assigned to a DSP based on information in a load balancing (LB) pool. The BF pool indicates which DSPs will be completely loaded by calls using various codecs and which DSPs have calls that have a first channel penalty (FCP). The LB pool indicates the number of calls each DSP is handling.


