A method and system for communicating a call from a subscriber of a program-controlled exchange
By monitoring and dynamically adjusting the routing priority of the digital signal processor in real time, the problems of uneven resource allocation and fluctuating call quality in high-concurrency scenarios of the program-controlled exchange system are solved, thereby improving call connection efficiency and user experience.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- EXCELLTEL TECH CO LTD
- Filing Date
- 2025-12-31
- Publication Date
- 2026-07-24
AI Technical Summary
In high-concurrency call scenarios, PBX systems face problems such as uneven allocation of internal processing resources, increased call connection delays, and fluctuating call quality. In particular, when the performance of the digital signal processor is degraded due to overheat protection mechanisms, the system fails to effectively identify and adjust the routing strategy, resulting in a decline in user experience and difficulty in fault location.
By monitoring the actual processing time interval of the digital signal processor in real time, calculating the processing deviation, determining its performance degradation mode, and dynamically adjusting the routing priority, the system avoids allocating call requests to processors with degraded performance. A modular design is adopted to achieve automated monitoring and optimization of call allocation.
It significantly improves call setup efficiency and call quality, enhances the overall performance and reliability of the PBX system, and solves the problem that traditional static routing strategies cannot adapt to dynamic changes in processor performance.
Smart Images

Figure CN121509307B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of communication technology, and more specifically, to a method and system for user call communication in a program-controlled exchange. Background Technology
[0002] In modern communication networks, PBX systems play a core role in user call setup. With the explosive growth in user demand for communication services, telecommunications operators typically perform periodic network expansion and upgrades of their PBX systems. However, in daily operations, especially under high-concurrency call scenarios, these systems generally face a series of inherent performance challenges, specifically manifested in uneven allocation of internal processing resources, increased perceived latency during call setup, and fluctuations in voice quality during calls. Traditional call routing strategies, usually configured based on pre-set static rules and long-term call data, often fail to demonstrate sufficient adaptability to rapidly changing communication demands, thus exacerbating the aforementioned performance problems.
[0003] Furthermore, the call quality assessment thresholds within a PBX system primarily focus on macroscopic, easily quantifiable indicators, such as high packet loss rates, persistent high latency, or call interruptions. However, existing assessment models and algorithms often struggle to accurately identify non-continuous random latency jitter caused by chip thermal throttling, which is scattered across different calls, let alone attribute it to specific hardware performance degradation.
[0004] Given the complex context and information blind spots described above, as new call requests continue to flood in, these new calls may still be allocated to affected resources because the system fails to accurately identify and isolate trunk lines or digital signal processor chips whose performance has been degraded due to thermal throttling. This results in users experiencing longer wait times than usual during call setup. Once a call is connected, call quality may also exhibit intermittent, difficult-to-locate fluctuations, manifesting as random delays and jitter. This situation not only further exacerbates the problems of call setup delays and call quality fluctuations in high-concurrency scenarios, but also, because its root cause lies in the system's deficiency in identifying specific performance degradation patterns, makes fault location and troubleshooting through conventional methods extremely difficult, thus forming a persistent and intractable service quality problem. Summary of the Invention
[0005] To address the shortcomings of existing technologies, this invention discloses a user call communication method and system for a program-controlled exchange, aiming to solve problems such as uneven allocation of internal processing resources, increased call connection delays, and fluctuating call quality in existing program-controlled exchange systems when facing high-concurrency call scenarios. In particular, it addresses the dilemma that when the performance of the digital signal processor is degraded due to overheat protection mechanisms, the system fails to effectively identify and adjust the routing strategy, resulting in a decline in user experience and difficulty in locating the fault.
[0006] The technical solution of the present invention is as follows: In a first aspect, the present invention discloses a user call communication method for a program-controlled exchange, comprising: Obtain the actual processing time interval of voice data packets by the digital signal processor inside the program-controlled exchange, and determine the processing deviation of the digital signal processor based on the actual processing time interval; Analyze the processing deviations to determine if the digital signal processor is in a performance degradation mode. If it is determined that the digital signal processor is in a performance degradation mode, adjust the routing priority of the digital signal processor. Upon receiving a new call request, a digital signal processor is assigned to the new call request based on the real-time routing priority of the digital signal processor.
[0007] Through this technical solution, the present invention can monitor the performance status of the digital signal processor in real time and dynamically adjust the routing priority according to its processing deviation, thereby effectively avoiding the allocation of new call requests to processors with degraded performance. This solves the problem that traditional static routing strategies cannot adapt to dynamic changes in processor performance and significantly improves call connection efficiency and call quality.
[0008] Furthermore, the steps for obtaining the actual processing time interval of voice data packets by the internal digital signal processor of the PBX include: When a digital signal processor processes voice data packets, it records the entry timestamp of the voice data packet entering the processing queue and the exit timestamp of the voice data packet leaving the processing queue. Calculate the actual processing time interval between adjacent voice data packets within the digital signal processor based on the entry and exit timestamps.
[0009] Based on this, the steps to determine the processing deviation of the digital signal processor according to the actual processing time interval include: The difference between the actual processing time interval and the preset expected processing time interval is calculated as the processing deviation. The preset expected processing time interval is set in advance based on the speech coding standard and the nominal processing capability of the digital signal processor.
[0010] Furthermore, the steps for analyzing processing deviations and determining the performance degradation mode of the digital signal processor include: Calculate the fluctuation intensity index of the processing deviation within a preset time window; If the fluctuation intensity index exceeds the first preset threshold within the predicted monitoring time and the number of times the over-limit duration is less than the second preset threshold exceeds the third preset threshold, then the digital signal processor is determined to be in an overheating performance degradation mode.
[0011] More specifically, the fluctuation intensity index is the average absolute deviation value of the processing deviation within a preset time window.
[0012] Based on the above, if it is determined that the digital signal processor is in a performance degradation mode, the steps to adjust the routing priority of the digital signal processor include: If the digital signal processor is determined to be in a performance degradation mode, then the operating status score of the digital signal processor is updated based on the performance degradation mode. If the operating status score of the digital signal processor is lower than the preset warning threshold, the routing cost value of the digital signal processor is increased. The higher the routing cost value, the lower its routing priority.
[0013] Furthermore, the steps of receiving a new call request and assigning a digital signal processor to the new call request based on the real-time routing priority of the digital signal processor include: Upon receiving a new call request, obtain the real-time routing cost values of all digital signal processors; The digital signal processor with the lowest routing cost value is selected to handle new call requests. If there are multiple digital signal processors with the same lowest routing cost value, they are assigned using a round-robin or random selection method.
[0014] As a technological improvement, the method also includes: Periodically assign small numbers of new call requests or test calls to digital signal processors whose routing priority has been reduced; The routing priority of the digital signal processor is updated based on the processing deviations detected for new call requests or test calls.
[0015] Furthermore, the step of updating the routing priority of the digital signal processor based on processing deviations detected for new call requests or test calls includes: Analyze the processing deviations detected for new call requests or test calls. If it is determined that the digital signal processor is still in a performance degradation mode, further reduce its routing priority or remove it from the list of available resources.
[0016] Secondly, the present invention also discloses a user call communication system for a program-controlled exchange, comprising: The deviation determination module is used to obtain the actual processing time interval of voice data packets by the digital signal processor inside the program-controlled exchange, and to determine the processing deviation of the digital signal processor based on the actual processing time interval. The priority adjustment module is used to analyze processing deviations and determine whether the digital signal processor is in a performance degradation mode. If the digital signal processor is determined to be in a performance degradation mode, the routing priority of the digital signal processor is adjusted. The allocation module is used to receive new call requests and allocate digital signal processors to the new call requests based on the real-time routing priority of the digital signal processors.
[0017] Through this technical solution, the present invention provides a system capable of implementing the above-mentioned method. Through modular design, functional responsibilities are clearly defined, enabling the system to efficiently and automatically monitor the performance of digital signal processors, adjust routing priorities, and allocate calls, thereby improving the overall performance and reliability of the program-controlled exchange system.
[0018] In summary, the present invention provides a method and system for user call communication in a program-controlled exchange. The method acquires the actual processing time interval of voice data packets by the digital signal processor (DSP) within the program-controlled exchange in real time and determines the processing deviation based on this, accurately reflecting the real-time performance of the DSP. Furthermore, the system performs in-depth analysis of the processing deviation to determine whether the DSP is in a performance degradation mode, particularly identifying performance degradation caused by factors such as overheating. Once it is confirmed that the DSP is in a performance degradation mode, the method dynamically adjusts the routing priority of the DSP, reducing its weight in call allocation. When a new call request is received, the system intelligently allocates a higher-performance DSP to the new call request based on the DSP's real-time routing priority. Attached Figure Description
[0019] Figure 1 This is a flowchart illustrating a user call communication method for a program-controlled exchange, as provided in an embodiment of the present invention.
[0020] Figure 2 This is a schematic diagram of the structure of a user call communication system for a program-controlled exchange, provided as an embodiment of the present invention.
[0021] Labeling explanation: 210, Deviation determination module; 220, Priority adjustment module; 230, Allocation module. Detailed Implementation
[0022] The technical solutions of this invention will now be clearly and completely described with reference to the accompanying drawings. Obviously, the described embodiments are merely some, not all, of the embodiments of this invention. The components of this invention described and shown in the accompanying drawings can generally be arranged and designed in various different configurations. Therefore, the following detailed description of the embodiments of the invention provided in the drawings is not intended to limit the scope of the claimed invention, but merely to illustrate selected embodiments of the invention. All other embodiments obtained by those skilled in the art based on the embodiments of this invention without inventive effort are within the scope of protection of this invention.
[0023] It should be noted that similar reference numerals and letters in the following figures indicate similar items; therefore, once an item is defined in one figure, it does not need to be further defined and explained in subsequent figures. Furthermore, in the description of this invention, terms such as "first," "second," etc., are used only to distinguish descriptions and should not be construed as indicating or implying relative importance.
[0024] In modern communication networks, PBX systems face challenges such as uneven allocation of internal processing resources, increased call latency, and fluctuating call quality when handling user call connections. Traditional call routing strategies based on static rules struggle to adapt to rapidly changing communication demands, especially in high-concurrency call scenarios. When a specific digital signal processor (DSP) triggers protection mechanisms like thermal throttling due to prolonged high-load operation, its processing performance significantly degrades, leading to increased uncertainty in voice data packet processing time and impacting user experience. However, existing systems often fail to accurately identify this non-persistent random latency jitter caused by chip thermal throttling. This results in degraded resources not being isolated in a timely manner, and new calls may still be assigned to these affected resources, further exacerbating service quality issues.
[0025] Firstly, please see Figure 1 This invention proposes a user call communication method for a program-controlled exchange, comprising: S1. Obtain the actual processing time interval of voice data packets by the digital signal processor inside the program-controlled exchange, and determine the processing deviation of the digital signal processor based on the actual processing time interval. S2. Analyze the processing deviation to determine if the digital signal processor is in a performance degradation mode. If it is determined that the digital signal processor is in a performance degradation mode, adjust the routing priority of the digital signal processor. S3. Receive a new call request and assign a digital signal processor to the new call request based on the real-time routing priority of the digital signal processor.
[0026] The method proposed in this invention can be implemented in a control unit or a dedicated performance monitoring module within a program-controlled exchange system. This control unit or module can acquire real-time operating data from the digital signal processor and perform analysis and decision-making based on a preset algorithm.
[0027] First, regarding the technical feature of "obtaining the actual processing time interval of voice data packets by the internal digital signal processor of the program-controlled exchange, and determining the processing deviation of the digital signal processor based on the actual processing time interval," its implementation methods may include: One approach is to integrate a dedicated hardware timer within the digital signal processor. This timer records a timestamp when a voice data packet enters the processing queue and another timestamp when it leaves the queue after processing. The actual processing time interval is then calculated by determining the difference between these two timestamps. This method provides highly accurate time measurement.
[0028] Another approach is to intercept voice data packet processing events at the driver or operating system level of the digital signal processor and use the system-provided clock function to record the arrival and departure times of data packets, thereby calculating the actual processing time interval.
[0029] After obtaining the actual processing time interval, the processing deviation can be calculated by comparing it with a preset expected processing time interval. For example, the processing deviation can be obtained by directly subtracting the expected processing time interval from the actual processing time interval.
[0030] Secondly, regarding the technical feature of "analyzing processing deviations to determine whether the digital signal processor is in a performance degradation mode, and adjusting the routing priority of the digital signal processor if it is determined to be in a performance degradation mode," its implementation may include: One approach is to set a fixed processing deviation threshold. If the processing deviation of the digital signal processor (DSP) consistently exceeds this threshold for a period of time, it is directly determined to be in a performance degradation mode. For example, if the processing deviation is greater than 5 milliseconds for 10 consecutive seconds, the DSP's performance is considered to have degraded.
[0031] Another approach is to process historical deviation data through statistical analysis, calculate its mean and standard deviation, and set a dynamic threshold based on statistical principles. When the real-time processing deviation exceeds the dynamic threshold, the digital signal processor is determined to be in a performance degradation mode.
[0032] Once a digital signal processor (DSP) is determined to be in a performance degradation mode, its routing priority needs to be adjusted. For example, the DSP's routing priority can be reduced by a fixed level, or it can be removed from the high-priority queue.
[0033] Finally, regarding the technical feature of "receiving new call requests and assigning digital signal processors to the new call requests based on the real-time routing priority of the digital signal processors," its implementation may include: One approach is for the PBX system to maintain a routing priority list of all digital signal processors. When a new call request arrives, the system iterates through this list and selects the digital signal processor with the highest current priority to handle the call.
[0034] Another approach is for the system to assign a routing cost value to each digital signal processor (DSP) based on its routing priority; lower priority means higher cost. When a new call request arrives, the system selects the DSP with the lowest routing cost value for allocation. If multiple DSPs have the same lowest routing cost value, they can be allocated sequentially using a round-robin method, or one can be randomly selected.
[0035] The user call communication method for a program-controlled exchange proposed in this invention works by real-time monitoring of the performance of the digital signal processor (DSP) and dynamically adjusting its routing priority based on the monitoring results, thereby optimizing the allocation of call requests. Specifically, when the DSP inside the program-controlled exchange processes voice data packets, the system continuously acquires the actual processing time interval for each data packet. These actual processing time intervals are used to calculate the processing deviation of the DSP, which directly reflects the processor's current load and performance status. Subsequently, the system performs in-depth analysis of these processing deviations to determine whether the DSP has entered a performance degradation mode, such as triggering thermal throttling due to overheating. Once a DSP is identified as being in a performance degradation mode, the system immediately adjusts its routing priority, typically by lowering its priority to reduce the probability of it being selected in subsequent call allocations. When a new user call request arrives, the program-controlled exchange system intelligently allocates the new call request to the DSP with the best current performance and highest routing priority based on the real-time routing priority information of all DSPs. In this way, the present invention can effectively avoid assigning new call requests to digital signal processors whose performance has degraded, thereby ensuring that calls can be processed efficiently and stably, significantly improving the call connection efficiency and call quality for users.
[0036] Compared to traditional call routing strategies in PBX (Private Branch Exchange) systems, the method proposed in this invention offers significant advantages and innovation. Traditional methods typically rely on preset static rules and long-term call data for call allocation, lacking the ability to perceive the real-time performance of the digital signal processor (DSP). When the DSP experiences performance degradation due to high load, traditional systems cannot promptly identify and adjust routing, resulting in new calls potentially being allocated to these affected resources, thus exacerbating call delays and call quality issues.
[0037] The core innovation of this invention lies in the introduction of a real-time monitoring and processing deviation analysis mechanism for the actual processing time interval of digital signal processors (DSPs). By dynamically acquiring and analyzing the performance data of DSPs, this invention can accurately determine whether they are in a performance degradation mode and dynamically adjust their routing priority accordingly. This routing adjustment strategy based on real-time performance feedback enables the PBX system to allocate call requests more intelligently and adaptively. For example, when a DSP overheats and triggers thermal throttling due to handling a large number of concurrent calls, this invention can promptly identify its performance degradation and lower its routing priority, thereby guiding subsequent call requests to other DSPs with normal performance. This not only effectively avoids allocating new calls to performance bottleneck resources, significantly reducing the risk of call setup delays and call quality fluctuations, but also improves the resource utilization efficiency and robustness of the entire PBX system. Therefore, this invention demonstrates significant progress and practical value in addressing the performance challenges of PBXs in high-concurrency scenarios.
[0038] In some embodiments of the present invention described above, a scheme for obtaining the actual processing time interval of voice data packets by the internal digital signal processor of a PBX is proposed. Specifically, the steps for obtaining the actual processing time interval of voice data packets by the internal digital signal processor of a PBX may include the following:
[0039] When a digital signal processor processes voice data packets, it records the entry timestamp of the voice data packet entering the processing queue and the exit timestamp of the voice data packet leaving the processing queue. Based on the entry timestamp and exit timestamp, it calculates the actual processing time interval between adjacent voice data packets in the digital signal processor.
[0040] The entry timestamp refers to the precise moment when a voice data packet is received and queued for processing by the digital signal processor (DSP), while the exit timestamp refers to the precise moment when the voice data packet completes processing by the DSP and leaves the processing queue. These timestamps can be recorded by the DSP's internal clock module or an external high-precision timer to ensure accurate time measurement. The processing queue can be understood as a buffer within the DSP used to cache voice data packets awaiting processing, designed to smooth the data flow and handle instantaneous processing load fluctuations. The calculation of the actual processing time interval specifically refers to evaluating the actual time consumed by the DSP to process a single or group of voice data packets by comparing the exit timestamps with the entry timestamps of consecutive or adjacent voice data packets. For example, the exit timestamp of a voice data packet can be subtracted from its entry timestamp to obtain the total time the packet spends in the queue. Combined with the processing status of adjacent data packets, the actual time the DSP spends processing that data packet can be estimated.
[0041] The present invention records precise timestamps at key nodes in the digital signal processor's (DSP) processing of voice data packets (i.e., entering and leaving the processing queue), directly and objectively reflecting the actual processing time of each voice data packet. By calculating these timestamps, the actual processing time interval between adjacent voice data packets within the DSP can be obtained, thus providing a direct and quantitative data basis for subsequent evaluation of the DSP's real-time performance. This timestamp-based measurement method effectively avoids estimation errors that may exist in traditional methods, making the monitoring of DSP performance more accurate.
[0042] In some embodiments of the present invention described above, a method is proposed to obtain the actual processing time interval of voice data packets by the digital signal processor inside a program-controlled exchange, and to determine the processing deviation of the digital signal processor based on this actual processing time interval. Specifically, the step of determining the processing deviation of the digital signal processor based on the actual processing time interval includes: The difference between the actual processing time interval and the preset expected processing time interval is calculated as the processing deviation. The preset expected processing time interval is set in advance based on the speech coding standard and the nominal processing capability of the digital signal processor.
[0043] Specifically, processing deviation refers to the difference between the actual performance and expected performance of a digital signal processor (DSP) when processing voice data packets. This difference is quantified by comparing the actual processing time interval with the preset expected processing time interval. The actual processing time interval is derived from the timestamps of voice data packets entering and leaving the processing queue, as well as the calculation results of adjacent voice data packets, reflecting the true processing efficiency of the DSP under a specific load. The preset expected processing time interval serves as a benchmark value, which comprehensively considers the voice coding standard (e.g., G.711, G.729, etc., different coding standards have different requirements for processing latency) and the DSP's own nominal processing capability (i.e., the maximum processing speed and efficiency under ideal or normal operating conditions). By pre-setting this expected value, an objective reference standard can be provided for subsequent performance evaluation.
[0044] The present invention precisely quantifies the processing deviation of a digital signal processor (DSP) by comparing the actual monitored processing time interval with a pre-set expected processing time interval based on objective standards (speech coding standards and the nominal processing capability of the DSP). This calculation method gives the determination of processing deviation clear physical meaning and technical basis, and can directly reflect whether the DSP deviates from its design performance or industry standards in actual operation. Therefore, it provides a quantitative and reliable input parameter for subsequent judgment of whether the DSP is in a performance degradation mode.
[0045] In some embodiments of the present invention described above, a method is proposed to determine whether a digital signal processor (DSP) is in a performance degradation mode by analyzing its processing deviations. However, in practical applications, DSP performance degradation can be caused by various factors, such as overload, overheating, or hardware failure, and its manifestations can be complex and varied. Relying solely on simple processing deviation judgments may make it difficult to accurately distinguish different types of performance degradation modes, especially when facing instantaneous fluctuations and persistent, specific modes of performance degradation (such as overheating). There may be a risk of misjudgment or omission, thereby affecting the accuracy and timeliness of routing priority adjustment.
[0046] To address this, the present invention further proposes a step for analyzing the aforementioned processing deviations and determining whether the digital signal processor is in a performance degradation mode, including: Calculate the fluctuation intensity index of the processing deviation within a preset time window; If the fluctuation intensity index exceeds the first preset threshold within the predicted monitoring time and the number of times the over-limit duration is less than the second preset threshold exceeds the third preset threshold, then the digital signal processor is determined to be in an overheating performance degradation mode.
[0047] Specifically, processing deviation refers to the difference between the actual processing time interval of a digital signal processor (DSP) for processing voice data packets and the preset expected processing time interval. To more accurately assess the operational stability of the DSP, this invention introduces a fluctuation intensity index. This index quantifies the degree of drastic change in processing deviation over a period of time. For example, the fluctuation intensity index can be defined as the average absolute deviation, variance, or standard deviation of the processing deviation within a preset time window. Its purpose is to filter out instantaneous noise and reflect the overall fluctuation trend of the processing deviation. The preset time window refers to a continuous period of time used to calculate the fluctuation intensity index; its length can be configured according to the actual system response speed and monitoring requirements, for example, set to several seconds to tens of seconds.
[0048] Furthermore, to identify specific "overheating performance degradation modes," this invention employs a multi-dimensional threshold judgment mechanism. The predicted monitoring time refers to a relatively long period used to observe the cumulative performance of the fluctuation intensity index, for example, it can be set to several minutes. During this predicted monitoring time, the system continuously monitors whether the fluctuation intensity index exceeds a first preset threshold. The first preset threshold is used to define the abnormal level of the fluctuation intensity index; that is, when the fluctuation intensity index exceeds this threshold, it indicates that the fluctuation of the processing deviation has reached a certain degree of abnormality. Simultaneously, the system also records the duration of each time the fluctuation intensity index exceeds the first preset threshold. An over-limit duration less than a second preset threshold aims to exclude abnormal fluctuations with excessively long durations that may indicate more serious faults than simple overheating, or fluctuations with excessively short durations that may be occasional interference. Finally, if, within the predicted monitoring time, the number of events satisfying "the fluctuation intensity index exceeds the first preset threshold and the over-limit duration is less than the second preset threshold" exceeds a third preset threshold, then the digital signal processor is comprehensively judged to be in an overheating performance degradation mode. The third preset threshold is used to determine whether the frequency of abnormal fluctuations within a certain time period reaches the characteristics of overheating.
[0049] This invention, by introducing a fluctuation intensity index and a multiple threshold judgment mechanism, can more precisely identify the overheating performance degradation patterns of digital signal processors. Traditionally, performance degradation is judged solely by the instantaneous value or simple average of the processing deviation, which is easily affected by occasional load fluctuations or brief interferences, leading to misjudgments. This invention, however, effectively smooths instantaneous fluctuations by calculating the fluctuation intensity index of the processing deviation within a preset time window, focusing on the persistent or periodic changes in the processing deviation. Overheating typically causes instability in the internal clock frequency of a digital signal processor, resulting in frequent and drastic fluctuations in the processing time interval. However, this fluctuation may not be a persistent high deviation, but rather manifest as high-frequency, short-term anomalies.
[0050] Specifically, when a digital signal processor (DSP) experiences performance degradation due to overheating, the stability of its voice data packet processing is affected, leading to increased volatility in processing time intervals. This volatility is quantified by a volatility intensity index. By setting a first preset threshold, events with abnormally high volatility levels can be filtered out. Simultaneously, by combining this with the condition that the duration of the out-of-limit event is less than a second preset threshold, events with prolonged high deviations (potentially indicating more serious faults) or brief atypical fluctuations can be excluded, thus focusing more precisely on the characteristic of overheating: frequent, short-term fluctuations. Finally, by statistically analyzing whether the number of times the above conditions are met within the predicted monitoring time exceeds a third preset threshold, this solution can identify whether the DSP is in a state of continuous, high-frequency abnormal fluctuations, which is a typical manifestation of overheating-induced performance degradation. Therefore, this solution can effectively distinguish performance degradation caused by overheating from other types of performance problems, providing a more accurate basis for subsequent routing priority adjustments.
[0051] Specifically, the aforementioned fluctuation intensity index can be understood as the average absolute deviation value of the processing deviation within a preset time window.
[0052] The fluctuation intensity index is the average absolute deviation of the processing deviation within a preset time window. Specifically, the average absolute deviation refers to the average of the absolute values of the differences between each data point and the average of the data set. In this invention, it is used to quantify the dispersion or fluctuation amplitude of the processing deviation within a specific time period. By calculating the average absolute deviation of the processing deviation within the preset time window, the severity of the performance fluctuation of the digital signal processor can be effectively reflected, rather than just its average level. For example, within the preset time window, a series of processing deviation values can be collected, the arithmetic mean of these deviation values can be calculated, the absolute value of the difference between each deviation value and the mean can be calculated, and finally, these absolute values can be summed and divided by the number of data points to obtain the average absolute deviation. This calculation method provides an intuitive and robust index for evaluating the stability of digital signal processor performance.
[0053] The present invention provides an effective means of quantifying the performance fluctuation of a digital signal processor (DSP) by specifically defining the fluctuation intensity index as the average absolute deviation value of the processing deviation. The average absolute deviation value is insensitive to outliers, more accurately reflecting the actual fluctuation of the processing deviation and avoiding misjudgments caused by individual extreme values. Therefore, it is possible to more reliably assess whether a DSP is in a performance degradation mode, especially an overheating performance degradation mode, thus providing an accurate basis for subsequent routing priority adjustments. When a DSP's performance becomes unstable due to overheating or other reasons, the volatility of its processing deviation increases. The average absolute deviation value can sensitively capture this fluctuation, thereby triggering the corresponding performance degradation mode judgment.
[0054] In some embodiments of the present invention described above, when a digital signal processor (DSP) is determined to be in a performance degradation mode, its routing priority is adjusted. However, in actual implementation, simply adjusting the routing priority may not adequately reflect the degree of performance degradation of the DSP, nor can it achieve fine-grained resource scheduling. If the routing priority adjustment mechanism is too simplistic, it may lead to excessive resource restriction in cases of minor performance degradation, or failure to effectively isolate problematic processors in cases of severe performance degradation, thereby affecting the overall system stability and user experience.
[0055] In response, this invention further proposes a step of adjusting the routing priority of a digital signal processor (DSP) if it is determined that the DSP is in a performance degradation mode, including: If the digital signal processor is determined to be in a performance degradation mode, then the operating status score of the digital signal processor is updated based on the performance degradation mode. If the operating status score of the digital signal processor is lower than the preset warning threshold, the routing cost value of the digital signal processor is increased. The higher the routing cost value, the lower its routing priority.
[0056] Specifically, when a digital signal processor (DSP) is determined to be in a performance degradation mode, its operational status score is updated. The operational status score can be understood as a quantitative assessment of the DSP's current health and processing capabilities. This score update is based on the identified performance degradation mode; for example, different performance degradation modes (such as overheating or overload) may correspond to different score adjustment strategies or magnitudes. For instance, if the DSP is in a mild performance degradation mode, its operational status score may only decrease slightly; if it is in a severe performance degradation mode, the score may decrease significantly. The purpose is to provide a quantitative basis for subsequent routing priority adjustments.
[0057] The warning threshold is a pre-defined scoring limit. When the operating status score of the digital signal processor (DSP) falls below this threshold, it indicates that its performance has degraded to the point where more aggressive measures are needed. In practical applications, this warning threshold can be set based on factors such as the system's tolerance for performance degradation, the importance of the DSP, and historical data analysis.
[0058] Furthermore, if the operating status score of a digital signal processor (DSP) falls below a preset warning threshold, its routing cost value will be increased. The routing cost value is a metric used to measure the "cost" or "difficulty" of allocating a call request to a specific DSP. A higher routing cost value means a lower priority for allocating calls to that DSP, and the system will tend to select other DSPs with lower routing cost values. For example, the routing cost value can be a positive integer; initially, all DSPs may have the same routing cost value, but as performance degrades, their routing cost values will increase. The purpose is to indirectly and dynamically adjust the routing priority of DSPs by adjusting their routing cost values, thereby achieving flow control for DSPs with degraded performance.
[0059] This invention achieves refined and dynamic adjustment of digital signal processor (DSP) routing priorities by introducing an operational status score and a routing cost value. When a DSP is determined to be in a performance degradation mode, its operational status score is updated according to the degree of performance degradation. Because this score quantifies the health status of the DSP, the system can determine whether further intervention is needed based on the actual situation. When the operational status score falls below a preset warning threshold, it indicates that the DSP's performance degradation has reached a point where its ability to handle new calls needs to be limited. At this time, by increasing its routing cost value, its priority in call allocation can be effectively reduced. This mechanism allows the system to avoid allocating new call requests to DSPs whose performance has been compromised, thereby reducing their load, preventing further performance deterioration, and ensuring that new calls are allocated to DSPs with good performance. This solves the problem that routing priority adjustment in the basic scheme may not be refined or dynamic enough.
[0060] In some embodiments of the present invention described above, the user call communication method of a program-controlled exchange includes receiving a new call request and allocating a digital signal processor (DSP) to the new call request based on the real-time routing priority of the DSP. Specifically, the step of allocating the DSP can be further refined.
[0061] The steps described above for receiving a new call request and assigning a digital signal processor (DSP) to the new call request based on the real-time routing priority of the DSP include: Upon receiving a new call request, obtain the real-time routing cost values of all digital signal processors; The digital signal processor with the lowest routing cost value is selected to handle new call requests. If there are multiple digital signal processors with the same lowest routing cost value, they are assigned using a round-robin or random selection method.
[0062] Specifically, "obtaining the real-time routing cost values of all digital signal processors" means that when a new call request is received, the system queries all currently available digital signal processors and obtains their latest routing cost values. These routing cost values are dynamically adjusted based on the operating status scores of the digital signal processors, reflecting the current performance and load status of each digital signal processor.
[0063] "Selecting the digital signal processor with the lowest routing cost to handle new call requests" means that after obtaining the routing cost values of all digital signal processors, the system will compare them and prioritize the digital signal processor with the lowest routing cost value. The lower the routing cost value, the higher the routing priority of the digital signal processor, the better its performance or the lighter its load, and therefore the more suitable it is to handle new call requests.
[0064] "If there are multiple digital signal processors with the lowest and same routing cost value, then a round-robin or random selection method is used for allocation" means that in order to avoid overloading a single digital signal processor, when multiple digital signal processors have the same lowest routing cost value, the system will not choose one in a fixed manner, but will use a round-robin (assigning to each lowest cost processor in turn) or random selection method to evenly distribute new call requests to these digital signal processors with similar performance in order to achieve load balancing.
[0065] The present invention dynamically acquires and compares the real-time routing cost values of all digital signal processors (DSPs) upon receiving a new call request, thereby accurately identifying the DSP with the best performance and lightest load. The routing cost value, as a quantitative indicator of routing priority, directly reflects the operating status of the DSP. By selecting the DSP with the lowest routing cost value, it ensures that new call requests are allocated to the most suitable resources, thus avoiding assigning calls to DSPs in a performance degradation mode, effectively improving call processing efficiency and stability. Furthermore, when multiple equally preferred DSPs exist, allocation using round-robin or random selection further balances the system load, prevents local overload, and improves the resource utilization and robustness of the entire PBX system.
[0066] In some embodiments of the present invention described above, when a digital signal processor (DSP) within a program-controlled exchange is determined to be in a performance degradation mode, its routing priority is adjusted, typically by lowering it, to avoid allocating new call requests to a poorly performing processor, thereby ensuring communication quality. However, this one-way priority adjustment mechanism may have limitations. Once the routing priority of a DSP is lowered, even if its performance recovers in subsequent operation, the system cannot promptly detect and re-upgrade its priority, potentially leading to the DSP remaining in a state of low utilization for an extended period, resulting in resource waste.
[0067] In response, this invention further proposes a user call communication method for a program-controlled exchange, which also includes: Periodically assign small numbers of new call requests or test calls to digital signal processors whose routing priority has been reduced; The routing priority of the digital signal processor is updated based on the processing deviations detected for new call requests or test calls.
[0068] Specifically, "periodically allocating a small number of new call requests or test calls to digital signal processors whose routing priority has been reduced" means that the system will proactively route a small subset of new call requests or specially designed test calls to digital signal processors whose routing priority has been reduced due to performance degradation at preset time intervals. The term "small number" aims to avoid overloading or further degrading the performance of a digital signal processor by allocating too many calls before it has fully recovered. "Test calls" can be understood as simulated calls that do not carry actual user communication and are used to probe the performance of the digital signal processor. Their purpose is to evaluate the current state of the digital signal processor without affecting the actual user experience.
[0069] "Updating the routing priority of the digital signal processor based on the processing deviations detected for new call requests or test calls" means that after these assigned calls have been processed, the system will monitor the processing deviations of these calls again. By analyzing this new processing deviation data, the system can assess the current actual performance of the digital signal processor. Based on this assessment result, the routing priority of the digital signal processor will be dynamically updated to reflect its latest performance.
[0070] This invention addresses the static nature of digital signal processor (DSP) priority adjustment in the aforementioned basic scheme by introducing a dynamic feedback and re-evaluation mechanism. When a DSP's routing priority is reduced, the system does not permanently exclude it from the main service queue, but rather periodically allocates a small number of calls for "probing" monitoring. This proactive monitoring allows the system to obtain the latest performance data of the DSP under actual load in real time, thereby determining whether its performance has recovered or further deteriorated. By analyzing these detected processing deviations, the system can make more accurate priority adjustment decisions, ensuring that the DSP's routing priority remains consistent with its true performance state.
[0071] In some embodiments of the present invention described above, a method is proposed to periodically allocate a small number of new call requests or test calls to digital signal processors whose routing priorities have been reduced, and to update their routing priorities based on monitored processing deviations. However, in its implementation, if a digital signal processor continues to exhibit performance degradation after retesting, the basic solution does not explicitly indicate what further measures should be taken to effectively manage such persistent problems, which may lead to inefficient resource allocation or failure to fundamentally improve service quality. Therefore, the present invention further proposes a more decisive management strategy for digital signal processors that are continuously in a performance degradation mode when updating their routing priorities.
[0072] The steps described above for updating the routing priority of a digital signal processor based on processing deviations detected for new call requests or test calls include: analyzing the processing deviations detected for new call requests or test calls, and if it is determined that the digital signal processor is still in a performance degradation mode, further reducing its routing priority or removing it from the list of available resources.
[0073] Specifically, analyzing the processing deviations detected for new call requests or test calls means that after periodically assigning a small number of new call requests or test calls to a digital signal processor (DSP) whose routing priority has been reduced, the system re-obtains the actual processing time interval of these calls within the DSP and calculates a new processing deviation based on this. The purpose of this step is to reassess the current performance status of the DSP. If it is determined that the DSP is still in a performance degradation mode, this can be understood as analyzing the re-monitored processing deviations, such as recalculating the fluctuation intensity index and comparing it with a preset threshold, or comparing it with historical performance data, to confirm that the DSP has failed to recover from its previous performance degradation state, or that its performance degradation trend is still continuing. In practical applications, further reducing its routing priority means that when a DSP is determined to be in a continuous performance degradation mode, its routing cost value will be increased again, thereby further reducing the likelihood of it being selected in subsequent call allocations. The aim is to reduce reliance on the poorly performing DSP and avoid its negative impact on the overall communication service quality. As a specific implementation method, or removal from the list of available resources, refers to the temporary or permanent removal of a digital signal processor (DSP) from the list of DSPs available to handle new call requests when its performance degradation is severe and persistent, or when its routing priority has been reduced to a certain level without improvement. The purpose is to completely isolate faulty or severely degraded DSPs, ensuring system stability and quality of service.
[0074] This invention addresses the lack of a clear management strategy for processors experiencing persistent performance degradation in the basic solution by introducing a mechanism for identifying and handling persistent performance degradation patterns during the reassessment of digital signal processor (DSP) performance. By analyzing the re-monitored processing deviations and determining whether the DSP is still in a performance degradation mode, the system can identify processors that have failed to recover. Based on this, by further reducing their routing priority or removing them from the list of available resources, the system can effectively avoid assigning new call requests to DSPs with persistent performance problems, thereby preventing further deterioration of service quality. This mechanism ensures that the system can dynamically and adaptively manage its resources and respond promptly to and handle potential performance bottlenecks.
[0075] In modern communication networks, PBX systems face challenges such as uneven allocation of internal processing resources, increased call latency, and fluctuating call quality when handling user call connections. Traditional call routing strategies based on static rules struggle to adapt to rapidly changing communication demands, especially in high-concurrency call scenarios. When a specific digital signal processor triggers protection mechanisms such as thermal throttling due to prolonged high-load operation, its processing performance significantly degrades, leading to increased uncertainty in voice data packet processing time and consequently impacting user experience. However, existing systems often fail to accurately identify this non-persistent random latency jitter caused by chip thermal throttling. This results in degraded resources not being isolated in a timely manner, and new calls may still be assigned to these affected resources, further exacerbating service quality issues.
[0076] Secondly, see Figure 2 The present invention also discloses a user call communication system for a program-controlled exchange, the system comprising: The deviation determination module 210 is used to obtain the actual processing time interval of the voice data packets by the digital signal processor inside the program-controlled exchange, and to determine the processing deviation of the digital signal processor based on the actual processing time interval. The priority adjustment module 220 is used to analyze the processing deviation and determine whether the digital signal processor is in a performance degradation mode. If it is determined that the digital signal processor is in a performance degradation mode, the routing priority of the digital signal processor is adjusted. The allocation module 230 is used to receive new call requests and allocate digital signal processors to the new call requests according to the real-time routing priority of the digital signal processors.
[0077] The user call communication system for a program-controlled exchange proposed in this invention aims to achieve real-time monitoring, intelligent analysis, and dynamic routing adjustment of the performance of the digital signal processor (DSP) within the program-controlled exchange through a modular design. This system effectively solves the problems of increased call latency and fluctuating call quality caused by the degradation of DSP performance when handling high-concurrency calls in traditional program-controlled exchanges. Through a deviation determination module 210 that perceives processor performance in real time, a priority adjustment module 220 that intelligently makes decisions and adjusts routing strategies, and an allocation module 230 that optimizes call allocation based on real-time priorities, this system ensures that new call requests are allocated to the DSP with the best performance, thereby significantly improving the efficiency of user call connection and the overall quality of communication service.
[0078] Compared to traditional program-controlled exchange (PBX) call routing systems, the PBX user call communication system proposed in this invention has significant advantages and innovations. Traditional systems typically rely on preset static routing rules and long-term call data for call allocation, lacking the ability to perceive the real-time performance of the digital signal processor (DSP). When the DSP experiences performance degradation due to high load operation, traditional systems cannot promptly identify and adjust routing, resulting in new calls potentially being allocated to these affected resources, thus exacerbating call delays and call quality issues.
[0079] The core innovation of this invention lies in constructing an intelligent system capable of real-time sensing of digital signal processor (DSP) performance and dynamic adjustment of routing strategies by introducing a deviation determination module 210, a priority adjustment module 220, and an allocation module 230. The deviation determination module 210 can acquire and analyze the actual processing time interval of the DSP in real time, thereby accurately reflecting its current performance status. The priority adjustment module 220 intelligently determines whether the processor is in a performance degradation mode based on this performance data and adjusts its routing priority in a timely manner. The allocation module 230 utilizes this real-time priority information to ensure that new call requests are allocated to the DSP with the best current performance. This system-level routing adjustment mechanism based on real-time performance feedback effectively avoids allocating new calls to performance bottleneck resources, significantly reduces the risk of call setup delays and call quality fluctuations, and improves the resource utilization efficiency and robustness of the entire PBX system. Therefore, this invention demonstrates significant progress and practical value in addressing the performance challenges of PBXs in high-concurrency scenarios.
[0080] The above description is merely an embodiment of the present invention and is not intended to limit the scope of protection of the present invention. For those skilled in the art, the present invention can have various modifications and variations. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the scope of protection of the present invention.
Claims
1. A user call communication method for a program-controlled exchange, characterized in that, include: The actual processing time interval of voice data packets by the internal digital signal processor of the program-controlled exchange is obtained, and the processing deviation of the digital signal processor is determined based on the actual processing time interval. The processing deviation is analyzed to determine whether the digital signal processor is in a performance degradation mode. If the digital signal processor is determined to be in the performance degradation mode, the routing priority of the digital signal processor is adjusted. Upon receiving a new call request, the digital signal processor is assigned to the new call request based on the real-time routing priority of the digital signal processor; The step of analyzing the processing deviation and determining the performance degradation mode of the digital signal processor includes: Calculate the fluctuation intensity index of the processing deviation within a preset time window; If the fluctuation intensity index exceeds the first preset threshold within the predicted monitoring time and the number of times the over-limit duration is less than the second preset threshold exceeds the third preset threshold, then the digital signal processor is determined to be in an overheating performance degradation mode.
2. The user call communication method of a program-controlled exchange according to claim 1, characterized in that, The step of obtaining the actual processing time interval of voice data packets by the internal digital signal processor of the program-controlled exchange includes: When the digital signal processor processes the voice data packet, it records the entry timestamp of the voice data packet entering the processing queue and the exit timestamp of the voice data packet leaving the processing queue, respectively. Based on the entry timestamp and the exit timestamp, the actual processing time interval of adjacent voice data packets within the digital signal processor is calculated.
3. The user call communication method of a program-controlled exchange according to claim 2, characterized in that, The step of determining the processing deviation of the digital signal processor based on the actual processing time interval includes: The difference between the actual processing time interval and the preset expected processing time interval is calculated as the processing deviation, wherein the preset expected processing time interval is preset according to the speech coding standard and the nominal processing capability of the digital signal processor.
4. The user call communication method of a program-controlled exchange according to claim 1, characterized in that, The fluctuation intensity index is the average absolute deviation value of the processing deviation within the preset time window.
5. A user call communication method for a program-controlled exchange according to claim 1, characterized in that, The step of adjusting the routing priority of the digital signal processor if it is determined that the digital signal processor is in the performance degradation mode includes: If it is determined that the digital signal processor is in the performance degradation mode, then the operating status score of the digital signal processor is updated based on the performance degradation mode; If the operating status score of the digital signal processor is lower than a preset warning threshold, the routing cost value of the digital signal processor is increased. The higher the routing cost value, the lower its routing priority.
6. A user call communication method for a program-controlled exchange according to claim 5, characterized in that, The step of receiving a new call request and assigning a digital signal processor to the new call request based on the real-time routing priority of the digital signal processor includes: Upon receiving a new call request, obtain the real-time routing cost values of all the digital signal processors; The digital signal processor with the lowest routing cost value is selected to handle the new call request. If there are multiple digital signal processors with the same lowest routing cost value, they are assigned using a round-robin or random selection method.
7. The user call communication method of a program-controlled exchange according to claim 1, characterized in that, The method further includes: Periodically assign a small number of the new call requests or test calls to the digital signal processor whose routing priority has been reduced; The routing priority of the digital signal processor is updated based on the processing deviations detected for the new call request or test call.
8. A user call communication method for a program-controlled exchange according to claim 7, characterized in that, The step of updating the routing priority of the digital signal processor based on the processing deviations detected for the new call request or test call includes: If the processing deviations detected in response to the new call request or test call are analyzed, and it is determined that the digital signal processor is still in a performance degradation mode, its routing priority is further reduced, or it is removed from the list of available resources.
9. A user call communication system for a program-controlled exchange, used to perform the method as described in any one of claims 1 to 8, characterized in that, The system includes: The deviation determination module is used to obtain the actual processing time interval of the voice data packets by the digital signal processor inside the program-controlled exchange, and determine the processing deviation of the digital signal processor based on the actual processing time interval. The priority adjustment module is used to analyze the processing deviation and determine whether the digital signal processor is in a performance degradation mode. If the digital signal processor is determined to be in the performance degradation mode, the routing priority of the digital signal processor is adjusted. The allocation module is used to receive new call requests and allocate the digital signal processor to the new call request according to the real-time routing priority of the digital signal processor.