A load balancing dynamic allocation method for dual-mode communication
By constructing a baseline region and calculating higher-order statistics in dual-mode communication, decomposing them into micro-tokens and allocating them according to their scores, the problems of frequent switching and resource fragmentation are solved, thereby improving stability and resource utilization and reducing misscheduling and retransmission overhead.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2026-01-30
- Publication Date
- 2026-04-14
AI Technical Summary
Existing technologies in dual-mode communication suffer from frequent mode switching, resource fragmentation, and erroneous redistribution. In particular, they are difficult to effectively utilize resources in scenarios with control plane delays, transient interference, and small amounts of remaining capacity for multiple users. Furthermore, they lack sensitivity detection of higher-order statistics, making it difficult for the system to distinguish between sudden noise bursts and continuous quality degradation.
By collecting preset master indicators of two communication modes, a baseline area is constructed, and the mean, variance and kurtosis are calculated within a short sliding window. The micro-tokens are decomposed, assigned lifetime and timestamp, sorted by score and allocated according to user needs. The switching conditions are determined by control surface delay and historical variance, so as to achieve atomic replacement of tokens and delayed activation.
It effectively suppresses mode jitter caused by control delay and short-term noise, improves handover stability and resource utilization, reduces misscheduling and retransmission overhead, and enhances sensitivity to transient bursts and the accuracy of resource allocation.
Smart Images

Figure CN121619287B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of network resource scheduling technology, specifically to a dynamic load balancing allocation method for dual-mode communication. Background Technology
[0002] For network scenarios that support multiple access or dual-mode terminals, existing technologies typically adopt proportional allocation or handover decisions based on single channel quality indicators. When control plane delay, transient interference, or multiple users with small remaining capacity coexist, traditional methods are prone to frequent mode switching, erroneous redistribution, or capacity fragmentation. These uncommon events are often ignored under the assumptions of existing models.
[0003] In scenarios involving narrowband hotspots, narrowband devices, or low-volume clusters, a mismatch between the smallest allocatable unit and the granularity of actual user needs can lead to a large amount of surplus resources going unused, resulting in resource fragmentation. Furthermore, the asynchronous execution of scheduling commands caused by control plane round-trip delays is particularly critical in dual-mode switching decisions. If the scheduling strategy lacks an embedded control delay awareness mechanism, rollbacks or repeated switching can easily occur between command issuance and activation. Moreover, most existing methods tend to rely on mean and variance criteria for burst event detection, failing to fully utilize the sensitivity of higher-order statistics to peaked or heavy-tailed distributions. In network environments with short-term strong interference, this oversight makes it difficult for the system to reliably distinguish between burst noise and persistent quality degradation through single-step discrimination.
[0004] Therefore, for dual-mode load balancing scenarios that require high real-time performance, low jitter, and fine-grained allocation, existing technologies have several shortcomings, and there is an urgent need for a resource expression and allocation mechanism based on real-time statistical derivation. Summary of the Invention
[0005] This invention provides a dynamic load balancing allocation method for dual-mode communication, which helps to solve the problems mentioned in the background art.
[0006] This invention provides the following technical solution: a dynamic load balancing allocation method for dual-mode communication, comprising:
[0007] Preset key indicators for two communication modes are collected separately, and a baseline area is constructed simultaneously;
[0008] Calculate the mean, variance, and kurtosis of the index series within a short sliding window;
[0009] Based on the statistics, the short-term allocatable capacity of each mode is estimated and decomposed into several micro tokens according to the smallest resource unit.
[0010] Assign a lifetime and timestamp to each microtoken, and determine lifetime reduction based on a kurtosis mapping function;
[0011] Calculate a priority score for each micro-token and sort them in descending order of score;
[0012] Micro tokens are distributed to each session based on the user’s immediate needs, while age penalties and delays based on control plane latency are applied to new tokens.
[0013] At execution time, allocation changes are implemented in a token-by-token atomic replacement manner, and mode switching is only performed when the allocation change exceeds a threshold calculated from the historical variance;
[0014] Based on baseline statistics, the kurtosis threshold, volatility penalty factor, and execution threshold are calculated and updated at fixed intervals.
[0015] Optionally, the step of collecting preset samples from two communication modes respectively, and simultaneously constructing a baseline region and baseline statistics, includes:
[0016] The instantaneous effective throughput of each communication mode is collected at a preset sampling interval, and the timestamp of each sample and the round-trip delay of the control plane are recorded.
[0017] Baseline data collection continues during system startup or reset until a preset number of samples is reached.
[0018] The obtained baseline sequence is divided into several non-overlapping equal-length blocks, and the mean, standard deviation and kurtosis of each block are calculated.
[0019] The mean of the baseline kurtosis and the sample standard deviation of kurtosis are calculated based on the kurtosis of all blocks.
[0020] Calculate the average control plane delay during the baseline period;
[0021] Output the instantaneous throughput and baseline statistics for each sampling point.
[0022] Optionally, the calculation of the mean, variance, and kurtosis of the indicator series within a short-time sliding window includes:
[0023] After the baseline area, the original measurement sequence is acquired using a short sliding window;
[0024] Calculate the short-term mean and short-term standard deviation within each window;
[0025] Short-term kurtosis is calculated within each window, and the kurtosis is obtained as the ratio of the centralized fourth moment within the window to the square of the variance within the window;
[0026] The obtained short-term mean, short-term standard deviation, and short-term kurtosis are used for subsequent discrimination and token generation.
[0027] Optionally, the step of estimating the short-term allocatable capacity of each mode based on the statistics and decomposing it into several micro-tokens according to the smallest resource unit includes:
[0028] Using the short-term mean as the capacity baseline, the corresponding penalty amount is subtracted from the baseline by multiplying the short-term standard deviation by the volatility penalty factor to obtain the short-term allocable capacity estimate.
[0029] The estimated capacity is broken down into integer microtokens according to the preset microtoken capacity unit.
[0030] The volatility penalty factor is determined by the volatility confidence calculation rules described later.
[0031] Optionally, assigning a lifetime and timestamp to each micro-token and determining lifetime reduction based on a kurtosis mapping function includes:
[0032] Determine the kurtosis threshold based on baseline statistics;
[0033] When the short-term kurtosis is not lower than the threshold, the initial lifetime of the new micro token is set as the product of the base lifetime and the reduction factor obtained by the deterministic mapping function of the kurtosis, and the larger value is taken from the lower lifetime limit.
[0034] When the short-term kurtosis is below this threshold, the initial lifetime of the new micro token is set to the base lifetime.
[0035] The kurtosis mapping function is a monotonically decreasing deterministic function that maps larger kurtosis to smaller lifetime reduction factors.
[0036] Optionally, calculating a priority score for each micro-token and sorting them in descending order of score includes:
[0037] For each microtoken, a quality score is calculated, which is the product of the ratio of the current short-term mean to the short-term standard deviation and the microtoken age factor, which is the number of complete scheduling cycles elapsed since its generation.
[0038] Sort the micro-token set in descending order of the quality score;
[0039] In the implementation, a small constant is added to the denominator terms involving division to ensure numerical stability.
[0040] Optionally, the method of allocating micro-tokens to each session according to the user's immediate needs, while applying age penalties and control plane delays to new tokens, includes:
[0041] Obtain the real-time demand of each user at the current scheduling moment;
[0042] The micro-token set is traversed from high to low according to the quality score of the micro-token, and each micro-token is assigned to the user with the largest unmet demand, until all demands are met or the micro-tokens are exhausted.
[0043] The allocation of each micro token is equal to the preset micro token capacity unit, forming an allocation mapping between users and patterns;
[0044] For newly generated microtokens with an age of zero, a default delay window is set, which is obtained by rounding up the ratio of the average control plane delay during the baseline period to the scheduling slot length.
[0045] The age penalty is reflected in the calculation of the microtoken quality score and affects the microtoken ranking.
[0046] Optionally, the step of implementing allocation changes in a token-by-token atomic replacement manner during execution, and performing mode switching only when the allocation change exceeds a threshold calculated from historical variance, includes:
[0047] Obtain the actual effective allocation sequence for each user in the most recent several executed scheduling cycles from the execution records;
[0048] Based on this sequence, calculate the historical average distribution, historical variance, and the resulting historical standard deviation;
[0049] Calculate the change in allocation between the planned allocation and the currently executed allocation;
[0050] The execution threshold is set as the product of the execution threshold coefficient and the historical allocation standard deviation, wherein the execution threshold coefficient is not less than one and is explicitly determined according to the ratio of the historical average to the historical standard deviation.
[0051] The allocation switch is performed by the execution layer with atomic add and revoke operations per token if and only if the allocation change is not less than the execution threshold and the age of the relevant microtoken is not less than the delayed effective window.
[0052] For new tokens that do not meet the conditions, mark them as pending activation and re-evaluate them in the next cycle.
[0053] Optionally, the step of calculating the kurtosis threshold, volatility penalty factor, and execution threshold based on baseline statistics and updating them at a fixed period includes:
[0054] The kurtosis threshold is obtained by linearly combining the mean of the baseline kurtosis and the sample standard deviation of the baseline kurtosis with the normal quantile corresponding to the preset kurtosis burst probability.
[0055] The volatility penalty factor is obtained by multiplying the normal quantile corresponding to the preset tolerance volatility risk by the ratio of the short-term standard deviation to the short-term mean.
[0056] The execution threshold coefficient is determined by the ratio of the historical average distribution to the standard deviation of the historical distribution, with a value not less than one.
[0057] The aforementioned kurtosis threshold, volatility penalty factor, and execution threshold are periodically recalculated according to a fixed large cycle to form a closed-loop adjustment.
[0058] The present invention has the following beneficial effects:
[0059] 1. In dual-mode access scenarios, three types of problems may arise: frequent handovers due to control plane latency, erroneous reallocation caused by short-term burst interference, and resource fragmentation caused by fine-grained remaining capacity. To address these issues, allocable capacity is refined into identifiable micro-tokens based on real-time short-term statistics. Bursts are identified using higher-order statistics, and token delays are determined based on measured control latency. Deterministic packaging and atomic replacement of tokens are used for allocation, effectively suppressing mode jitter caused by control latency and short-term noise, and improving handover stability. Furthermore, kurtosis awareness is used to avoid erroneous reallocation under transient interference, reducing misscheduling and retransmission overhead. Token merging and atomic management improve fine-grained resource utilization and reduce fragmentation losses.
[0060] 2. By calculating higher-order statistics such as mean, standard deviation, and kurtosis within a short-term sliding window, the system enhances its sensitivity to short-term behavior and transient bursts. Compared to traditional strategies that only use first- or second-order statistics, the addition of higher-order statistics enables the system to distinguish between spike-type disturbances and persistent channel degradation. The short-term mean provides an immediate capacity baseline, the short-term standard deviation measures the fluctuation amplitude, and the kurtosis measure shows high responsiveness to short-term heavy-tailed or spike-type events.
[0061] 3. By decomposing short-term allocable capacity into several manageable micro-tokens using a preset minimum resource unit, granular management of resource representation is achieved, mapping the allocation process from continuous values to operable discrete units. Micro-tokens represent resource quantities with fixed minimum units, facilitating atomic addition and cancellation operations at the execution layer. This design significantly reduces resource loss caused by quantization errors and fragmentation, especially in low-traffic-density or narrowband hotspot scenarios. The fine granularity of micro-tokens ensures that small user needs are precisely met without being swallowed up by coarse-grained allocation. Simultaneously, the number of micro-tokens is derived from real-time statistics, avoiding the need for manually setting too many variable parameters and improving the system's self-adaptability. The micro-token format also facilitates the implementation of deterministic sorting and packaging strategies, thereby ensuring fairness while reducing the reliance of complex schedulers on global optimization solutions. Therefore, capacity decomposition into micro-tokens provides a structured and operable means for solving fine-grained demand matching and fragmentation recycling.
[0062] 4. By assigning a lifetime and timestamp to each micro-token and reducing the lifetime according to the kurtosis mapping function, short-term high-order statistics are directly mapped to the availability control of the token. When the kurtosis indication has short-term spikes or sudden disturbances, the generated token is given a shorter lifetime or its long-term availability is reduced to avoid permanently allocating resources to affected patterns during sudden noise. Conversely, when the kurtosis is low and stable, the token retains its full lifetime to support continuous allocation. This mechanism reduces the risk of making long-term allocations based on instantaneous observations, thereby reducing the probability of erroneous reallocation and the resulting retransmissions or service interruptions. It achieves agile protection against sudden disturbances and orderly management of resource status.
[0063] 5. By calculating a quality score for each micro-token and sorting them in descending order of score, a transparent and comparable metric for allocation priority is provided. The score is composed of the ratio of short-term mean to volatility characteristics and a token age factor, thus comprehensively considering instantaneous capacity, stability, and token timeliness. Sorting by score allows higher-priority tokens to be used first for critical or capacity-sensitive needs, reducing service degradation caused by indiscriminate allocation. The introduction of the age factor avoids the immediate overuse of new tokens, thus working in conjunction with the delayed activation mechanism to suppress jitter.
[0064] 6. By using a deterministic greedy packaging method based on micro-token quality scores and combining it with users' immediate needs for allocation, a non-iterative and predictable resource allocation process is achieved. During resource allocation, tokens are allocated to unmet users with the largest current needs in the order of scores until resources are exhausted or all needs are met, significantly reducing scheduling latency and improving real-time performance. The parallel introduction of age penalties and delayed activation can prevent new tokens from being misused before the control plane delay is synchronized, reducing the probability of command execution conflicts. In low-traffic, high-concurrency environments, this packaging strategy can meet the immediate, small-amount needs of most users while avoiding resource waste caused by blind allocation.
[0065] 7. By directly using control plane delay observations to determine the token delay window and allocation execution conditions, when the control plane round-trip delay is long, the delay window increases, so that new tokens will not be used immediately before the control command arrives and takes effect, avoiding rollback or repeated switching caused by command asynchrony; when the delay is short, the window converges to improve response speed. This adaptation mechanism improves the consistency of allocation commands in actual network execution and reduces jitter and uncertainty caused by the asynchrony of command issuance and effectiveness.
[0066] 8. By implementing allocation changes at the execution layer using atomic add and revoke operations on a token-by-token basis, and using a threshold calculated from historical variance as the switching trigger condition, the execution granularity of allocation changes is controlled to the token level, ensuring the atomicity of resource switching and the consistency of system state. The atomic replacement design of adding first and then revoking avoids instantaneous inconsistencies due to resource shortages or repeated releases during the adjustment process. The threshold determination based on historical variance suppresses frequent switching caused by small fluctuations, thereby reducing the back-and-forth issuance of control plane commands and the corresponding execution overhead. In addition, combined with token age restrictions, the system only performs actual switching when there is sufficient evidence of stability, thus balancing responsiveness and stability requirements. This execution mechanism shows high robustness in dealing with misjudgments caused by control plane delays or transient noise, reducing the cost of jitter and invalid switching.
[0067] 9. By explicitly calculating the kurtosis threshold, volatility penalty factor, and execution threshold based on baseline statistics and periodically updating these parameters, the system parameters can be adaptively adjusted according to environmental changes. The kurtosis threshold is determined by the kurtosis distribution of the baseline and the preset false alarm probability, thus ensuring a controllable false alarm rate for burst detection. The volatility penalty factor is derived based on the ratio of short-term standard deviation to mean, making capacity estimation more conservative when there is large volatility, reducing the risk of over-commitment. The definition of the execution threshold is based on the stability measure of historical allocation, linking the switching decision to the user's historical performance. Regular updates ensure that the parameters do not become invalid in the long term due to environmental evolution, while the time interval setting takes into account both stability and adaptability. Attached Figure Description
[0068] Figure 1 This is a schematic diagram of the basic process of the present invention. Detailed Implementation
[0069] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0070] Example 1, refer to Figure 1 A dynamic load balancing allocation method for dual-mode communication includes:
[0071] Preset key indicators for two communication modes are collected separately, and a baseline area is constructed simultaneously;
[0072] Calculate the mean, variance, and kurtosis of the index series within a short sliding window;
[0073] Based on the statistics, the short-term allocatable capacity of each mode is estimated and decomposed into several micro tokens according to the smallest resource unit.
[0074] Assign a lifetime and timestamp to each microtoken, and determine lifetime reduction based on a kurtosis mapping function;
[0075] Calculate a priority score for each micro-token and sort them in descending order of score;
[0076] Micro tokens are distributed to each session based on the user’s immediate needs, while age penalties and delays based on control plane latency are applied to new tokens.
[0077] At execution time, allocation changes are implemented in a token-by-token atomic replacement manner, and mode switching is only performed when the allocation change exceeds a threshold calculated from the historical variance;
[0078] Based on baseline statistics, the kurtosis threshold, volatility penalty factor, and execution threshold are calculated and updated at fixed intervals.
[0079] The process of collecting preset samples for two different communication modes and simultaneously constructing baseline regions and baseline statistics includes:
[0080] The instantaneous effective throughput of each communication mode is collected at a preset sampling interval, and the timestamp of each sample and the round-trip delay of the control plane are recorded.
[0081] Baseline data collection continues during system startup or reset until a preset number of samples is reached.
[0082] The obtained baseline sequence is divided into several non-overlapping equal-length blocks, and the mean, standard deviation and kurtosis of each block are calculated.
[0083] The mean of the baseline kurtosis and the sample standard deviation of kurtosis are calculated based on the kurtosis of all blocks.
[0084] Calculate the average control plane delay during the baseline period;
[0085] Output the instantaneous throughput and baseline statistics for each sampling point.
[0086] The calculation of the mean, variance, and kurtosis of the indicator series within a short-time sliding window includes:
[0087] After the baseline area, the original measurement sequence is acquired using a short sliding window;
[0088] Calculate the short-term mean and short-term standard deviation within each window;
[0089] Short-term kurtosis is calculated within each window, and the kurtosis is obtained as the ratio of the centralized fourth moment within the window to the square of the variance within the window;
[0090] The obtained short-term mean, short-term standard deviation, and short-term kurtosis are used for subsequent discrimination and token generation.
[0091] The estimation of short-term allocatable capacity for each mode based on the aforementioned statistics, and its decomposition into several micro-tokens according to the smallest resource unit, includes:
[0092] Using the short-term mean as the capacity baseline, the corresponding penalty amount is subtracted from the baseline by multiplying the short-term standard deviation by the volatility penalty factor to obtain the short-term allocable capacity estimate.
[0093] The estimated capacity is broken down into integer microtokens according to the preset microtoken capacity unit.
[0094] The volatility penalty factor is determined by the volatility confidence calculation rules described later.
[0095] The process of assigning a lifetime and timestamp to each micro-token and determining lifetime reduction based on a kurtosis mapping function includes:
[0096] Determine the kurtosis threshold based on baseline statistics;
[0097] When the short-term kurtosis is not lower than the threshold, the initial lifetime of the new micro token is set as the product of the base lifetime and the reduction factor obtained by the deterministic mapping function of the kurtosis, and the larger value is taken from the lower lifetime limit.
[0098] When the short-term kurtosis is below this threshold, the initial lifetime of the new micro token is set to the base lifetime.
[0099] The kurtosis mapping function is a monotonically decreasing deterministic function that maps larger kurtosis to smaller lifetime reduction factors.
[0100] The process of calculating a priority score for each micro-token and sorting them in descending order of score includes:
[0101] For each microtoken, a quality score is calculated, which is the product of the ratio of the current short-term mean to the short-term standard deviation and the microtoken age factor, which is the number of complete scheduling cycles elapsed since its generation.
[0102] Sort the micro-token set in descending order of the quality score;
[0103] In the implementation, a small constant is added to the denominator terms involving division to ensure numerical stability.
[0104] The method of allocating micro-tokens to each session based on the user's immediate needs, while applying age penalties and delays based on control plane latency to new tokens, includes:
[0105] Obtain the real-time demand of each user at the current scheduling moment;
[0106] The micro-token set is traversed from high to low according to the quality score of the micro-token, and each micro-token is assigned to the user with the largest unmet demand, until all demands are met or the micro-tokens are exhausted.
[0107] The allocation of each micro token is equal to the preset micro token capacity unit, forming an allocation mapping between users and patterns;
[0108] For newly generated microtokens with an age of zero, a default delay window is set, which is obtained by rounding up the ratio of the average control plane delay during the baseline period to the scheduling slot length.
[0109] The age penalty is reflected in the calculation of the microtoken quality score and affects the microtoken ranking.
[0110] The provision that allocation changes are implemented on a token-by-token atomic substitution basis during execution, and that mode switching is performed only when the allocation change exceeds a threshold calculated from historical variance, includes:
[0111] Obtain the actual effective allocation sequence for each user in the most recent several executed scheduling cycles from the execution records;
[0112] Based on this sequence, calculate the historical average distribution, historical variance, and the resulting historical standard deviation;
[0113] Calculate the change in allocation between the planned allocation and the currently executed allocation;
[0114] The execution threshold is set as the product of the execution threshold coefficient and the historical allocation standard deviation, wherein the execution threshold coefficient is not less than one and is explicitly determined according to the ratio of the historical average to the historical standard deviation.
[0115] The allocation switch is performed by the execution layer with atomic add and revoke operations per token if and only if the allocation change is not less than the execution threshold and the age of the relevant microtoken is not less than the delayed effective window.
[0116] For new tokens that do not meet the conditions, mark them as pending activation and re-evaluate them in the next cycle.
[0117] The calculation of kurtosis threshold, volatility penalty factor, and execution threshold based on baseline statistics, and its updating at fixed intervals, includes:
[0118] The kurtosis threshold is obtained by linearly combining the mean of the baseline kurtosis and the sample standard deviation of the baseline kurtosis with the normal quantile corresponding to the preset kurtosis burst probability.
[0119] The volatility penalty factor is obtained by multiplying the normal quantile corresponding to the preset tolerance volatility risk by the ratio of the short-term standard deviation to the short-term mean.
[0120] The execution threshold coefficient is determined by the ratio of the historical average distribution to the standard deviation of the historical distribution, with a value not less than one.
[0121] The aforementioned kurtosis threshold, fluctuation penalty factor, and execution threshold are periodically recalculated according to a fixed large cycle to form a closed-loop adjustment. In dual-mode access scenarios, three types of problems may arise: frequent handovers caused by control plane latency, erroneous redistribution caused by short-term burst interference, and resource fragmentation caused by fine-grained remaining capacity. To address these issues, allocable capacity is refined into identifiable micro-tokens based on real-time short-term statistics. Bursts are identified based on higher-order statistics, and token delays are determined based on measured control latency. Deterministic packaging and atomic replacement of tokens are used for allocation, effectively suppressing mode jitter caused by control latency and short-term noise, and improving handover stability. In addition, kurtosis awareness avoids erroneous redistribution under transient interference, reducing misscheduling and retransmission overhead. Token merging and atomic management improve fine-grained resource utilization and reduce fragmentation loss.
[0122] Example 2, a dynamic load balancing allocation method for dual-mode communication, further includes:
[0123] The process of collecting preset samples for two different communication modes and simultaneously constructing baseline regions and baseline statistics includes:
[0124] For two communication modes With a preset sampling interval Collect the instantaneous effective throughput for each mode separately. As a sample, the timestamp of each sampling point is recorded simultaneously. Control plane round-trip delay observation Among them, the sampling interval The value of this parameter should take into account the time scale of the channel / traffic, the scheduling period, and the computational and storage overhead of the system. It should ensure that typical bursts / changes in the channel are captured and that the value is shorter than the scheduling period length. A value of 1ms-100ms is recommended. The smaller the value, the finer the temporal resolution, enabling faster detection of transient bursts, more sensitive kurtosis response, and more refined short-term statistics. However, this results in a larger data volume, increased computation and storage costs, and may amplify noise in low-speed or stable scenarios. The larger the value, the less measurement and processing overhead it can reduce, making it suitable for slow-changing scenarios and providing smoother statistics. However, it may miss short-term bursts and reduce the ability to respond to rapid changes.
[0125] Baseline data collection begins continuously upon system startup or reset until a preset number of samples are collected. 10 samples were used to form a baseline sequence; among which Values , A larger value makes the baseline mean, fluctuation, and kurtosis estimates more robust. With volatility penalty factor More reliable, reducing the probability of sudden false alarms / missed alarms; token generation and lifetime setting are more robust, reducing erroneous decisions in the early stages of operation; however, it will lead to a longer initial waiting time, and a stable strategy cannot be given immediately during system startup or baseline reconstruction. If the environment changes rapidly, an excessively large baseline will cause the initial baseline to become too outdated, requiring more frequent resetting or the adoption of an online baseline update strategy. A smaller value results in faster startup and earlier entry into online control, making it suitable for scenarios with high real-time requirements or systems that can quickly perform continuous baseline rebase re-establishment; however, it also increases baseline statistical noise. and Unstable estimations can lead to sudden judgment errors, which may result in either premature triggering of tokens or missed triggering, thus affecting the robustness of the allocation.
[0126] Baseline sequences are sorted by the number of non-overlapping blocks. Divide into blocks, number of samples per block Among them, take Common values , A larger value yields more block-level kurtosis sample points, allowing for a more accurate estimate of the kurtosis sample standard deviation. Thus It is more sensitive to short-term fluctuations and provides a more nuanced estimate of kurtosis, but this can lead to a smaller sample size per block. Reducing the noise in single-block kurtosis estimation may lead to... Overestimation or instability can affect the reliability of emergency judgments; The smaller the value, the more stable the kurtosis estimation for each block, and the lower the noise within the block; the kurtosis mean is reliable, but the number of kurtosis samples is small, leading to... The confidence level decreases, the sample variance estimation becomes unstable, and it is not sensitive enough to short-term changes in kurtosis, such as sudden short pulses, which may delay or miss sudden bursts.
[0127] Baseline sequence-based calculation mode Baseline mean and standard deviation:
[0128] Calculation mode Baseline mean and standard deviation:
[0129] ; ;
[0130] For each block Calculate intra-block kurtosis:
[0131] ;
[0132] Calculate the baseline kurtosis mean and sample standard deviation:
[0133] ; ;
[0134] Calculate the mean control plane delay during the baseline period: ;
[0135] Output per sample point and baseline statistics , , , and By setting a baseline during system startup and recording several preset samples for each communication mode to construct a baseline region, all subsequent discrimination and threshold calculations are based on real observation data rather than empirical settings. Within the baseline region, the data is divided into non-overlapping blocks, and the statistics for each block are calculated to obtain the distribution characteristics of the baseline, improving the robustness and repeatability of threshold estimation. Furthermore, the baseline method provides a reference for the detection of anomalies in subsequent short-term statistics, enabling clear judgments based on statistical confidence when identifying sudden events and determining whether to enter a protective allocation strategy, reducing unnecessary switching and resource waste caused by misjudgments.
[0136] The calculation of the mean, variance, and kurtosis of the indicator series within a short-time sliding window includes:
[0137] Raw measurement sequences were acquired from two communication modes over a short sliding window following the baseline region, and statistics used for subsequent discrimination and token generation were calculated:
[0138] ;
[0139] ;
[0140] Symbol explanation:
[0141] Communication mode index; At a certain point in time The observed real-time metrics are set as the single-mode instantaneous effective throughput. , ; : Preset short-time window length, specifically the number of samples; recommended value. It balances statistical stability and real-time performance, and users can adjust it according to the actual sampling frequency after implementation; , Short-term mean and standard deviation;
[0142] Calculate kurtosis:
[0143] ;
[0144] Symbol explanation:
[0145] Short-time kurtosis is used to identify peaked or heavy-tailed characteristics in data distribution. By calculating higher-order statistics such as mean, standard deviation, and kurtosis within a short-time sliding window, it enhances the sensitivity to short-term behavior and transient bursts. Compared to traditional strategies that only use first- or second-order statistics, the addition of higher-order statistics enables the system to distinguish between peaked disturbances and persistent channel degradation. The short-time mean provides an immediate capacity baseline, the short-time standard deviation measures the fluctuation amplitude, and the kurtosis measure exhibits high responsiveness to short-time heavy-tailed or peaked events.
[0146] The estimation of short-term allocatable capacity for each mode based on the aforementioned statistics, and its decomposition into several micro-tokens according to the smallest resource unit, includes:
[0147] Calculate the short-term allocatable capacity per mode:
[0148] ;
[0149] Will The total capacity of tokens that can be generated in the current period is set according to a preset micro-unit. break down:
[0150] ;in, The value of should not be less than the minimum resource unit that the system can atomically allocate at the execution layer. If the object is a small hotspot or a narrowband link, the value should be 0. kbps; if it is a broadband base station or high-speed link, take kbps. kbps; if the system has a clearly defined minimum hardware / protocol resource block, let The rate corresponding to the physical unit or an integer multiple thereof; Smaller values allow for more granular allocation, better matching the small-amount needs of multiple users, reducing quantification losses, and minimizing fragmentation. However, this will increase the number of tokens. Increased overhead leads to higher management and sorting costs. If the size is smaller than the physical execution unit, it will result in unmappability. Larger values result in simpler management, fewer tokens, lower scheduling overhead, and easier implementation, but can lead to larger quantification errors, potentially causing inaccurate resource allocation and failure to meet fine-grained requirements, thus wasting small capacity or degrading the user experience.
[0151] Symbol explanation:
[0152] This moment is governed by the pattern. The number of micro tokens generated; Short-term mean and standard deviation; , Factor coefficients, set with the mean as the baseline. With volatility penalty factor set up ; The system employs a pre-defined microtoken capacity unit. By decomposing short-term allocable capacity into manageable microtokens using a pre-defined minimum resource unit, it achieves granular management of resource representation, mapping the allocation process from continuous values to operable discrete units. Microtokens represent resource quantities in a fixed minimum unit, facilitating atomic addition and cancellation operations at the execution layer. This design significantly reduces resource loss due to quantization errors and fragmentation, especially in low-traffic, high-density, or narrowband hotspot scenarios. The fine granularity of microtokens ensures that small user needs are precisely met without being swallowed up by coarse-grained allocation. Furthermore, the number of microtokens is derived from real-time statistics, avoiding the need for manually setting too many variable parameters and enhancing the system's self-adaptability. The microtoken format also facilitates the implementation of deterministic sorting and packaging strategies, thereby ensuring fairness while reducing the reliance of complex schedulers on global optimization solutions. Therefore, capacity decomposition into microtokens provides a structured and operable means for solving fine-grained demand matching and fragmentation recycling.
[0153] The process of assigning a lifetime and timestamp to each micro-token and determining lifetime reduction based on a kurtosis mapping function includes:
[0154] Calculate the kurtosis threshold as follows: ;
[0155] If short-term kurtosis If a sudden event occurs, the initial lifespan of the generated micro-token is assumed to be: ;
[0156] Otherwise, set ;
[0157] Among them, the lifespan reduction factor of micro tokens ;
[0158] Symbol explanation:
[0159] The preset basic lifespan of the micro-token is 8-12 scheduling cycles; The preset minimum lifetime is set to one scheduling cycle; the scheduling cycle is the smallest time granularity at which the system can actually distribute resource allocations. By assigning a lifetime and a timestamp to each micro-token and reducing the lifetime according to the kurtosis mapping function, short-term high-order statistical information is directly mapped to the availability control quantity of the token. When the kurtosis indication has short-term spikes or sudden disturbances, the generated token is given a shorter lifetime or its long-term availability is reduced to avoid permanently allocating resources to the affected mode during sudden noise. Conversely, when the kurtosis is low and stable, the token retains its full lifetime to support continuous allocation. This mechanism reduces the risk of making long-term allocations based on instantaneous observations, thereby reducing the probability of erroneous reallocation and the resulting retransmissions or service interruptions. It achieves agile protection against sudden disturbances and orderly management of resource status.
[0160] The process of calculating a priority score for each micro-token and sorting them in descending order of score includes:
[0161] Define the quality score for each micro token as follows:
[0162] ;
[0163] Symbol explanation:
[0164] Token quality score; The number of existing scheduling cycles for each microtoken is 0 when it is newly generated, and it increases by 1 after each cycle. By calculating a quality score for each microtoken and sorting them in descending order of score, a transparent and comparable metric for allocation priority is provided. The score is composed of the ratio of short-term mean to volatility characteristics and a token age factor, thus comprehensively considering instantaneous capacity, stability, and token timeliness. Sorting by score allows higher-priority tokens to be used for critical or capacity-sensitive needs first, reducing service degradation caused by indiscriminate allocation. The introduction of the age factor avoids the immediate overuse of newly generated tokens, thus working in conjunction with the delayed activation mechanism to suppress jitter.
[0165] The method of allocating micro-tokens to each session based on the user's immediate needs, while applying age penalties and delays based on control plane latency to new tokens, includes:
[0166] Get per user In time Current demand ;
[0167] By micro token quality Traverse the set of microtokens in descending order and allocate each microtoken sequentially. The largest and unsatisfied user, until satisfied or exhausted, where the allocation is... and form an allocation map. ;
[0168] For users In mode The allocated capacity is expressed as: ;
[0169] Symbol explanation:
[0170] Assigned to users In mode The number of tokens; Ultimately assigned to the user In mode The amount allocated;
[0171] Set the age penalty and delayed delivery of newborn tokens as follows:
[0172] The age penalty is reflected in this. ,Depend on Affects the sorting order of micro tokens;
[0173] Delayed delivery is manifested in: The newly generated token takes effect with a default delay of one control window. The delayed activation window is set to ,in This represents the average control plane delay during the baseline period. The scheduling period slot length; new tokens take effect with a default delay of one control delay window. The purpose is to wait for control commands to complete, ensuring that control plane commands are synchronized within the expected delay, preventing tokens from being revoked before the control commands take effect, and avoiding frequent mode switching. By using deterministic greedy packaging based on micro-token quality scores and combining it with users' immediate needs for allocation, a non-iterative and predictable resource allocation process is achieved. During resource allocation, tokens are allocated to unmet users with the largest current needs according to their scores, until resources are exhausted or all needs are met, significantly reducing scheduling latency and improving real-time performance. The parallel introduction of age penalties and delayed activation prevents newly generated tokens from being misused before the control plane delay is synchronized, reducing the probability of command execution conflicts. In low-traffic, high-concurrency environments, this packaging strategy can meet the immediate, small-amount needs of most users while avoiding resource waste caused by blind allocation.
[0174] By directly using control plane delay observations to determine the token delay window and allocation execution conditions, when the control plane round-trip delay is long, the delay window increases, so that new tokens are not used immediately before the control command arrives and takes effect, avoiding rollback or repeated switching caused by command asynchrony; when the delay is short, the window converges to improve response speed. This adaptation mechanism improves the consistency of allocation commands in actual network execution and reduces jitter and uncertainty caused by the asynchrony between command issuance and effectiveness.
[0175] The provision that allocation changes are implemented on a token-by-token atomic substitution basis during execution, and that mode switching is performed only when the allocation change exceeds a threshold calculated from historical variance, includes:
[0176] Acquiring users In recent The allocation sequence within the executed scheduling cycles:
[0177] Each of these items represents a scheduling cycle that has already been executed. The allocations that are actually in effect; among them, Take 5-50 scheduling cycles. The larger the variance, the smoother the variance estimation and the less sensitive it is to short-term fluctuations, thus triggering fewer switches and contributing to a stable user experience; however, it will slow down the response to long-term trends or continuous changes and may delay adjustments after changes in network conditions. The smaller the value, the more sensitive it is to recent allocation changes and the faster it can react to the real trend; however, it will lead to high noise in variance estimation, making it easy to misjudge instability, and may lower the threshold, leading to more switching.
[0178] Historical average: ;
[0179] Calculate historical variance: ;
[0180] in, ; It is the first The actual allocation to users in each scheduling cycle In mode The amount allocated;
[0181] Based on historical scheduling cycles, determine whether to perform a switchover:
[0182] Calculate users Changes in distribution: ;
[0183] Symbol explanation:
[0184] The currently executed allocations are those that were actually issued and are currently in effect during the most recent execution phase, and have been allocated to users. In mode The amount allocated; Not yet distributed, but planned to be allocated to users. In mode The amount allocated;
[0185] A switch shall be performed if and only if: and ;
[0186] Where the threshold ;
[0187] Symbol explanation: : Execution allocation judgment threshold; : The number of complete scheduling cycles that a microtoken has gone through since its generation; Delayed effective window; : Execution threshold coefficient; :user past The variance of the periodic allocation;
[0188] For switching that meets the conditions, the execution layer implements the switch in an atomic replacement manner: first, add the corresponding resource for the new token, then revoke the old token, and change it step by step;
[0189] For new tokens that do not meet the conditions, they are marked as pending activation and re-evaluated in the next cycle. By implementing allocation changes at the execution layer with atomic add and revoke operations on a token-by-token basis, and using a threshold calculated from historical variance as the switching trigger condition, the execution granularity of allocation changes is controlled at the token level, ensuring the atomicity of resource switching and the consistency of system state. The atomic replacement design of adding first and then revoking avoids momentary inconsistencies due to resource shortages or repeated releases during the adjustment process. The threshold determination based on historical variance suppresses frequent switching caused by small fluctuations, thereby reducing the back-and-forth issuance of control plane commands and the corresponding execution overhead. In addition, combined with token age restrictions, the system only performs actual switching when there is sufficient evidence of stability, thus balancing responsiveness and stability requirements. This execution mechanism shows high robustness in dealing with misjudgments caused by control plane delays or transient noise, reducing the cost of jitter and invalid switching.
[0190] The calculation of kurtosis threshold, volatility penalty factor, and execution threshold based on baseline statistics, and its updating at fixed intervals, includes:
[0191] Set kurtosis threshold:
[0192] Based on the baseline kurtosis mean in the baseline statistics Its standard deviation Combined with preset kurtosis burst probability requirements Take the kurtosis threshold: ;
[0193] Symbol explanation:
[0194] The allowable kurtosis false alarm probability is set to 0.01 and can be adjusted by the deployer. Standard normal quantile, when When set to 0.01, ;
[0195] Define the volatility penalty factor: ;
[0196] Symbol explanation:
[0197] The preset tolerance for volatility risk is set to 0.05. : Corresponding to the normal quantile, let When it is 0.05, ; To avoid dividing by zero, set the value of the small constant to zero. ; , Short-term mean and standard deviation;
[0198] Define the execution threshold coefficient:
[0199] ;
[0200] Symbol explanation:
[0201] :user In recent Average allocation within each executed scheduling cycle; :user In recent Historical variance within each executed scheduling cycle; To avoid dividing by zero, set the value of the small constant to zero. ;
[0202] For kurtosis threshold, volatility penalty factor and execution threshold, in each large cycle Recalculate once to form a closed-loop adjustment, including the larger cycle. The scheduling cycle is set to 10-20 cycles. By explicitly calculating the kurtosis threshold, volatility penalty factor, and execution threshold based on baseline statistics and periodically updating these parameters, the system parameters can be adaptively adjusted to environmental changes. The kurtosis threshold is determined by the baseline kurtosis distribution and the preset false alarm probability, thus ensuring a controllable false alarm rate for burst detection. The volatility penalty factor is derived based on the ratio of short-time standard deviation to mean, making capacity estimation more conservative when there is high volatility, reducing the risk of over-commitment. The execution threshold is defined based on the stability measure of historical allocation, linking the handover decision to historical user performance. Regular updates ensure that the parameters do not become invalid over time due to environmental evolution, while the time interval setting balances stability and adaptability.
[0203] It should be noted that, in this document, relational terms such as "first" and "second" are used only to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such process, method, article, or apparatus.
[0204] The above description is only a preferred embodiment of the present invention. It should be noted that for those skilled in the art, several improvements and modifications can be made without departing from the technical principles of the present invention, and these improvements and modifications should also be considered within the scope of protection of the present invention.
Claims
1. A load balancing dynamic allocation method for dual-mode communication, characterized in that, include: Preset key indicators for two communication modes are collected separately, and a baseline area is constructed simultaneously; Calculate the mean, variance, and kurtosis of the index series within a short sliding window; Based on the statistics, the short-term allocatable capacity of each mode is estimated and decomposed into several micro tokens according to the smallest resource unit. Each microtoken is assigned a lifetime and a timestamp, and lifetime reduction is determined based on a kurtosis mapping function. Specifically: a kurtosis threshold is determined based on baseline statistics; when the short-term kurtosis is not lower than this threshold, the initial lifetime of the new microtoken is set as the product of the base lifetime and the reduction factor obtained by the kurtosis through a deterministic mapping function, and the larger value is taken from the lower lifetime limit; when the short-term kurtosis is lower than this threshold, the initial lifetime of the new microtoken is set as the base lifetime; the kurtosis mapping function is a monotonically decreasing deterministic function that maps a larger kurtosis to a smaller lifetime reduction factor. Calculate a priority score for each micro-token and sort them in descending order of score; Micro tokens are distributed to each session based on the user’s immediate needs, while age penalties and delays based on control plane latency are applied to new tokens. During execution, allocation changes are implemented using a token-by-token atomic replacement method, and mode switching is performed only when the allocation change exceeds a threshold calculated from the historical variance. Specifically, this includes: obtaining the actual effective allocation sequence for each user in the most recent several executed scheduling cycles from the execution record; calculating the historical average allocation, historical variance, and the resulting historical standard deviation based on the sequence; calculating the allocation change between the planned allocation and the currently executed allocation; setting the execution threshold as the product of the execution threshold coefficient and the historical allocation standard deviation, wherein the execution threshold coefficient is not less than one and is explicitly determined according to the ratio of the historical average to the historical standard deviation; performing allocation switching by the execution layer using token-by-token atomic add and revoke operations if and only if the allocation change is not less than the execution threshold and the age of the relevant micro-token is not less than the delayed effective window; marking new tokens that do not meet the conditions as pending activation and re-evaluating them in the next cycle. Based on baseline statistics, the kurtosis threshold, volatility penalty factor, and execution threshold are calculated and updated at fixed intervals.
2. The load balancing dynamic allocation method for dual-mode communication according to claim 1, characterized in that, The process of collecting preset samples for two different communication modes and simultaneously constructing baseline regions and baseline statistics includes: The instantaneous effective throughput of each communication mode is collected at a preset sampling interval, and the timestamp of each sample and the round-trip delay of the control plane are recorded. Baseline data collection continues during system startup or reset until a preset number of samples is reached. The obtained baseline sequence is divided into several non-overlapping equal-length blocks, and the mean, standard deviation and kurtosis of each block are calculated. The mean of the baseline kurtosis and the sample standard deviation of kurtosis are calculated based on the kurtosis of all blocks. Calculate the average control plane delay during the baseline period; Output the instantaneous throughput and baseline statistics for each sampling point.
3. The load balancing dynamic allocation method for dual-mode communication according to claim 1, characterized in that, The calculation of the mean, variance, and kurtosis of the indicator series within a short-time sliding window includes: After the baseline area, the original measurement sequence is acquired using a short sliding window; Calculate the short-term mean and short-term standard deviation within each window; Short-term kurtosis is calculated within each window, and the kurtosis is obtained as the ratio of the centralized fourth moment within the window to the square of the variance within the window; The obtained short-term mean, short-term standard deviation, and short-term kurtosis are used for subsequent discrimination and token generation.
4. The load balancing dynamic allocation method for dual-mode communication according to claim 1, characterized in that, The estimation of short-term allocatable capacity for each mode based on the aforementioned statistics, and its decomposition into several micro-tokens according to the smallest resource unit, includes: Using the short-term mean as the capacity baseline, the corresponding penalty amount is subtracted from the baseline by multiplying the short-term standard deviation by the volatility penalty factor to obtain the short-term allocable capacity estimate. The estimated capacity is broken down into integer microtokens according to the preset microtoken capacity unit. The volatility penalty factor is determined by the volatility confidence calculation rules described later.
5. The load balancing dynamic allocation method for dual-mode communication according to claim 1, characterized in that, The process of calculating a priority score for each micro-token and sorting them in descending order of score includes: For each microtoken, a quality score is calculated, which is the product of the ratio of the current short-term mean to the short-term standard deviation and the microtoken age factor, which is the number of complete scheduling cycles elapsed since its generation. Sort the micro-token set in descending order of the quality score; In the implementation, a small constant is added to the denominator terms involving division to ensure numerical stability.
6. The load balancing dynamic allocation method for dual-mode communication according to claim 1, characterized in that, The method of allocating micro-tokens to each session based on the user's immediate needs, while applying age penalties and delays based on control plane latency to new tokens, includes: Obtain the real-time demand of each user at the current scheduling moment; The micro-token set is traversed from high to low according to the quality score of the micro-token, and each micro-token is assigned to the user with the largest unmet demand, until all demands are met or the micro-tokens are exhausted. The allocation of each micro token is equal to the preset micro token capacity unit, forming an allocation mapping between users and patterns; For newly generated microtokens with an age of zero, a default delay window is set, which is obtained by rounding up the ratio of the average control plane delay during the baseline period to the scheduling slot length. The age penalty is reflected in the calculation of the microtoken quality score and affects the microtoken ranking.
7. The load balancing dynamic allocation method for dual-mode communication according to claim 1, characterized in that, The calculation of kurtosis threshold, volatility penalty factor, and execution threshold based on baseline statistics, and its updating at fixed intervals, includes: The kurtosis threshold is obtained by linearly combining the mean of the baseline kurtosis and the sample standard deviation of the baseline kurtosis with the normal quantile corresponding to the preset kurtosis burst probability. The volatility penalty factor is obtained by multiplying the normal quantile corresponding to the preset tolerance volatility risk by the ratio of the short-term standard deviation to the short-term mean. The execution threshold coefficient is determined by the ratio of the historical average distribution to the standard deviation of the historical distribution, with a value not less than one. The aforementioned kurtosis threshold, volatility penalty factor, and execution threshold are periodically recalculated according to a fixed large cycle to form a closed-loop adjustment.
Citation Information
Patent Citations
Data processing method and related device and system
CN111435463A
Minute-level high-frequency data acquisition method based on HPLC
CN113490071A