A load balancing method and device for a dual-mode communication system

CN122802445APending Publication Date: 2026-09-22NANJING BEIFENG MICROELECTRONICS TECHNOLOGY CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202611244669.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-08-17
Publication Date
2026-09-22

AI Technical Summary

Technical Problem

[0003]然而,基于现有技术进行链路分配时,对链路拥塞程度的判断存在时延且响应精度受限,难以同时结合队列占用深度、队列深度变化和队列排空能力反映发送端真实压力状态;在链路状态波动、双链路同时处于预设过载区间或调度计算异常的情况下,现有方案也容易出现分流比例振荡幅度超过预设容限值、低优先级业务过度占用传输资源以及异常情况下发送连续性降低的问题,这些问题都会降低双模通信系统的负载均衡度和业务传输可靠性

Benefits of technology

[0041]1、本发明通过在发送端同步采集两条链路的队列占用深度、队列深度变化量和队列排空速率,并基于上述状态数据计算链路压力值,能够以更低的时延和更高的响应精度反映链路真实负载状态与积压趋势,提升对链路拥塞程度判断的全面性和可靠性,通过在分流计算中结合拥塞判断、剩余处理能力估计以及分流比变化幅度限制,既能够在链路状态传输质量下降时快速下调对应链路的分配比例,又能够抑制分流比例因瞬时波动产生超过预设幅度的振荡,从而提高双模通信系统负载均衡的稳定性与平滑性;

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122802445A_ABST
    Figure CN122802445A_ABST
Patent Text Reader

Abstract

The application relates to the technical field of communication network and data transmission control, in particular to a load balancing method and device of a dual-mode communication system. The method is applied to a sending end and comprises the following steps: collecting the queue occupation depth, queue depth variation and queue emptying rate of a first link and a second link; determining a link pressure value based on link state data; performing congestion judgment and shunting calculation according to the link pressure value, and obtaining a shunting ratio after limiting according to a preset maximum allowed absolute variation value; distributing new arrival data received by the system by a scheduler based on the shunting ratio, and adjusting a preset pressure increment weight factor according to dequeued data and the queue depth variation; when the dual-link is under high load, the shunting ratio oscillates or operation is abnormal, stopping low-priority business from being enqueued, locking the shunting ratio or switching to a fixed shunting ratio mode; and the application can relieve queue backlog and adjust dual-link throughput.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of communication network and data transmission control technology, specifically to a load balancing method and apparatus for a dual-mode communication system. Background Technology

[0002] Load balancing in a dual-mode communication system refers to the distribution of newly arriving data between two communication links at the sending end based on the transmission status of different links, in order to improve overall transmission efficiency and alleviate single-link congestion. Current load balancing methods for dual-mode communication systems typically include distribution based on a fixed split ratio, static switching based on link bandwidth or latency parameters, and dynamic scheduling based on link status feedback.

[0003] However, when allocating links based on existing technologies, the judgment of link congestion is delayed and the response accuracy is limited. It is difficult to simultaneously combine queue occupancy depth, queue depth changes, and queue emptying capacity to reflect the true pressure status of the sending end. Under conditions of fluctuating link status, both links being in the preset overload range at the same time, or abnormal scheduling calculations, existing solutions are also prone to problems such as the diversion ratio oscillation amplitude exceeding the preset tolerance value, low-priority services excessively occupying transmission resources, and reduced transmission continuity under abnormal conditions. These problems will reduce the load balancing degree and service transmission reliability of the dual-mode communication system. Summary of the Invention

[0004] The purpose of this invention is to provide a load balancing method and apparatus for a dual-mode communication system, which reduces the latency of existing technologies in judging the degree of link congestion and improves the response accuracy. It can also more comprehensively reflect the real pressure status of the sending end by integrating queue occupancy depth, queue depth change and queue emptying capacity. This reduces problems such as the diversion ratio oscillation amplitude exceeding the preset tolerance value, low priority services excessively occupying transmission resources and reduced transmission continuity when the link status fluctuates, both links are simultaneously in the preset overload range or the scheduling calculation is abnormal. Ultimately, it effectively improves the load balancing degree and service transmission reliability of the dual-mode communication system.

[0005] The objective of this invention can be achieved through the following technical solutions:

[0006] A load balancing method for a dual-mode communication system is applied to the transmitting end of the dual-mode communication system, which receives newly arriving data and includes a first link, a second link and their respective corresponding transmission queues, and a scheduler, comprising:

[0007] The link status data of the first link, the link status data of the second link, and the preset pressure increment weight factor are obtained. The link status data of the first link and the link status data of the second link both include the queue depth change determined based on the queue occupancy depth at adjacent sampling times.

[0008] Based on the link status data of the first link, the link status data of the second link, and the preset pressure increment weighting factor, the link pressure value is determined.

[0009] The target traffic split ratio for each link is determined based on the link pressure value, and the variation range of the target traffic split ratio for each link is limited to obtain the traffic split ratio for each link.

[0010] The scheduler allocates the newly arrived data according to the traffic splitting ratio of each link; obtains the dequeue data of the sending queues corresponding to the first link and the second link respectively, and adjusts the preset pressure increment weight factor based on the dequeue data of each sending queue and the change in queue depth of the corresponding link of the sending queue.

[0011] Preferably, the dual-mode communication system further includes ring storage areas corresponding to the first link and the second link respectively; before determining the link pressure value, the method further includes:

[0012] The queue occupancy depth and queue emptying rate of the first link and the second link at the current sampling time are collected synchronously according to the preset sampling period and written to the ring storage area of ​​the corresponding link respectively.

[0013] The queue occupancy depth, the queue emptying rate, and the corresponding change in queue depth of the link are used as the link status data.

[0014] Preferably, determining the link pressure value includes:

[0015] According to the preset calculation cycle, the queue occupancy depth, the queue depth change, and the queue emptying rate are read from the ring storage area of ​​the corresponding link at the current sampling time.

[0016] The queue back pressure value is determined based on the queue occupancy depth, the queue depth change, the queue emptying rate, the preset queue occupancy depth weight, the preset pressure increment weight factor, and the preset queue emptying rate weight.

[0017] The queue backpressure value is used as the link pressure value of the corresponding link.

[0018] Preferably, the target traffic splitting ratio for each link is determined based on the link pressure value, and the variation range of the target traffic splitting ratio for each link is limited, including:

[0019] When the queue back pressure value of the corresponding link is greater than a preset back pressure threshold and the queue depth change is greater than a preset depth change threshold, it is determined that the corresponding link has entered a congestion state, and the target diversion ratio of the corresponding link is set to a preset minimum diversion ratio.

[0020] For links that have not entered a congestion state, the remaining processing capacity of the links that have not entered a congestion state is estimated based on the queue emptying rate, the preset calculation period, and the queue occupancy depth at the current sampling time. If the remaining processing capacity estimate is greater than zero, the target traffic splitting ratio of the links that have not entered a congestion state is determined based on the remaining processing capacity estimate. If the remaining processing capacity estimate is less than or equal to zero, the target traffic splitting ratio of the links that have not entered a congestion state is set to zero.

[0021] Obtain the split ratio of the corresponding link in the previous calculation cycle, and limit the difference between the target split ratio and the split ratio of the previous calculation cycle according to the preset maximum allowable absolute change value.

[0022] Preferably, when any link enters a congested state and another link meets the availability condition, the newly arrived data is sent via the other link, and the link that has entered the congested state sends the data that has entered its transmission queue according to the preset minimum diversion ratio;

[0023] The availability condition is that the other link is not in a congested state;

[0024] When the queue depth change of the link that has entered the congestion state is less than zero for a first preset number of consecutive periods, the congestion state of the link that has entered the congestion state is lifted.

[0025] Preferably, the scheduler employs a weighted differential round-robin scheduling strategy, adjusting the preset pressure increment weight factor based on the dequeue data of each sending queue and the change in queue depth of the corresponding link of the sending queue, specifically including:

[0026] The scheduler acquires the scheduling difference information generated when allocating the newly arrived data, and feeds back the dequeue data of each scheduling cycle, the queue occupancy depth at the end of the current scheduling cycle, and the scheduling difference information to the ring storage area of ​​the corresponding link; the dual-link throughput ratio is determined based on the dequeue data, and the preset pressure increment weight factor is adjusted according to the deviation between the dual-link throughput ratio and the target split ratio of each link, as well as the change in queue depth of the link corresponding to the sending queue;

[0027] When the deviation between the dual-link throughput ratio and the target split ratio of each link exceeds a preset deviation threshold within multiple consecutive preset calculation cycles, the preset pressure increment weight factor is adjusted according to a preset adjustment step size.

[0028] Preferably, the method further includes:

[0029] When an abnormal link pressure value or an abnormal target traffic split ratio for each link is detected, an operational anomaly is determined to have occurred. When the operational anomaly is detected, the system switches to a fixed traffic split ratio mode and returns to the state of traffic split calculation based on the link pressure value after the operational anomaly is resolved. The fixed traffic split ratio mode is a mode in which the traffic split ratio of each link adopts a preset fixed ratio.

[0030] Preferably, the method further includes:

[0031] Parse the header field of the newly arrived data to determine low-priority service data; when the link pressure values ​​of the first link and the second link are simultaneously greater than a preset pressure threshold and remain so for a first preset duration, restrict the low-priority service data from entering the transmission queue of the corresponding link; after the link pressure value of either the first link or the second link decreases to a preset recovery pressure value and remains so for a second preset duration, restore the low-priority service data to enter the transmission queue of the corresponding link.

[0032] Preferably, the method further includes:

[0033] When it is detected that the number of times the sign of the difference between the traffic split ratios of adjacent periods changes within a consecutive preset second number of periods exceeds a preset threshold, the traffic split ratio of each link is locked to the average value of the traffic split ratio of the most recent preset third number of periods and the lock is maintained for a preset lock period; after the preset lock period ends, the average value is used as the initial traffic split ratio after the preset lock period ends, and the change range of the traffic split ratio of each link is restricted again.

[0034] A load balancing device for a dual-mode communication system is provided to implement the load balancing method of the dual-mode communication system. The dual-mode communication system receives newly arriving data and includes a first link, a second link and their respective corresponding transmission queues, and a scheduler. The device includes:

[0035] The status acquisition module is used to acquire the link status data of the first link, the link status data of the second link, and the preset pressure increment weight factor. The link status data of the first link and the link status data of the second link both include the queue depth change determined based on the queue occupancy depth at adjacent sampling times.

[0036] The pressure calculation module is used to determine the link pressure value based on the link status data of the first link, the link status data of the second link, and the preset pressure increment weighting factor.

[0037] The traffic splitting calculation module is used to determine the target traffic splitting ratio for each link based on the link pressure value, and to limit the variation range of the target traffic splitting ratio for each link, thereby obtaining the traffic splitting ratio for each link.

[0038] The scheduling control module is used to control the scheduler to allocate the newly arrived data according to the traffic splitting ratio of each link;

[0039] The parameter correction module is used to obtain the dequeue data of the sending queues corresponding to the first link and the second link respectively, and adjust the preset pressure increment weight factor based on the dequeue data of each sending queue and the change in queue depth of the corresponding link of the sending queue.

[0040] The beneficial effects of this invention are:

[0041] 1. This invention synchronously collects the queue occupancy depth, queue depth change, and queue emptying rate of two links at the transmitting end, and calculates the link pressure value based on the above status data. It can reflect the real load status and backlog trend of the link with lower latency and higher response accuracy, and improve the comprehensiveness and reliability of the judgment of the link congestion degree. By combining congestion judgment, remaining processing capacity estimation, and limit of the change amplitude of the split ratio in the split calculation, it can quickly reduce the allocation ratio of the corresponding link when the transmission quality of the link status deteriorates, and suppress the oscillation of the split ratio exceeding the preset amplitude due to instantaneous fluctuations, thereby improving the stability and smoothness of the load balancing of the dual-mode communication system.

[0042] 2. This invention employs a weighted differential polling scheduler and combines dequeue data, throughput deviation, and queue depth changes to perform closed-loop correction on the preset pressure increment weight factor. This makes the calculated link pressure value closer to the link's transmission capacity, further improving the accuracy of newly arrived data allocation and overall transmission efficiency. In specific implementation, this invention also sets up a hierarchical protection mechanism that stops low-priority services from queuing when both links are in a preset overload range, locks the split ratio when the split oscillation occurs, and switches to a fixed split ratio mode when there is an operational anomaly. Through clear priority and orthogonal control logic, it achieves coordinated control, effectively avoiding the problems of low-priority services excessively occupying transmission resources, repeated oscillations in the split results, and insufficient transmission stability under abnormal conditions. This enhances the service transmission reliability and continuous working capability of the dual-mode communication system under complex link fluctuation scenarios. Attached Figure Description

[0043] Other features, objects, and advantages of the invention will become more apparent from the following detailed description of non-limiting embodiments with reference to the accompanying drawings:

[0044] Figure 1 A flowchart illustrating a load balancing method for a dual-mode communication system according to an embodiment of the present invention is shown.

[0045] Figure 2 This diagram illustrates a module block diagram of a load balancing device for a dual-mode communication system according to an embodiment of the present invention. Detailed Implementation

[0046] 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.

[0047] Please see Figure 1 A load balancing method for a dual-mode communication system is applied to the transmitting end of the dual-mode communication system. The system receives newly arriving data and includes a first link, a second link and their respective corresponding transmission queues, and a scheduler, comprising:

[0048] The link status data of the first link, the link status data of the second link, and the preset pressure increment weight factor are obtained. The link status data of the first link and the link status data of the second link both include the queue depth change determined based on the queue occupancy depth at adjacent sampling times. The preset pressure increment weight factor adopts the preset initial weight configuration value in the initial state.

[0049] Based on the link status data of the first link, the link status data of the second link, and the preset pressure increment weighting factor, the link pressure value is determined.

[0050] The target traffic split ratio for each link is determined based on the link pressure value, and the variation range of the target traffic split ratio for each link is limited to obtain the traffic split ratio for each link.

[0051] The scheduler allocates newly arrived data received by the system according to the traffic splitting ratio of each link; it obtains the dequeue data of the sending queues corresponding to the first and second links, and adjusts the preset pressure increment weight factor based on the dequeue data of each sending queue and the change in queue depth of the corresponding link.

[0052] As a preferred embodiment, under normal operating conditions, dynamic calculation of traffic splitting based on link pressure values ​​is performed; when an abnormal link pressure value or an abnormal target splitting ratio for each link is determined, an operational abnormality is identified; when an operational abnormality is detected, the system switches to a fixed splitting ratio mode, and after the operational abnormality is resolved, it returns to the state of traffic splitting calculation based on link pressure values.

[0053] In a preferred embodiment, the header field of newly arrived data is parsed to determine low-priority service data; when the link pressure values ​​of the first link and the second link are simultaneously greater than a preset pressure threshold and remain so for a first preset duration, low-priority service data is restricted from entering the transmission queue of the corresponding link; after the link pressure value of either the first link or the second link decreases to a preset recovery pressure value and remains so for a second preset duration, low-priority service data is allowed to enter the transmission queue of the corresponding link.

[0054] In a preferred embodiment, when it is detected that the number of times the sign of the difference between the traffic split ratios of adjacent cycles changes within a consecutive preset second number of cycles exceeds a preset threshold, the traffic split ratio of each link is locked to the average value of the traffic split ratio of the most recent preset third number of cycles.

[0055] In a preferred embodiment, the system further includes ring-shaped storage areas corresponding to the first link and the second link respectively; before determining the link pressure value, the method further includes:

[0056] The queue occupancy depth and queue emptying rate of the first and second links are collected synchronously according to the preset sampling period at the current sampling time, and written to the ring storage area of ​​the corresponding links respectively.

[0057] The queue occupancy depth, queue emptying rate, and corresponding link queue depth changes are used as link status data.

[0058] Determine the link pressure value, including: reading the queue occupancy depth, queue depth change, and queue emptying rate from the ring storage area of ​​the corresponding link at the current sampling time according to the preset calculation cycle;

[0059] The queue back pressure value is determined based on the queue occupancy depth, queue depth change, queue emptying rate, preset queue occupancy depth weight, preset pressure increment weight factor, and preset queue emptying rate weight.

[0060] Use the queue backpressure value as the link pressure value of the corresponding link;

[0061] The target load split ratio for each link is determined based on the link pressure value, and the variation range of the target load split ratio for each link is limited. This includes: when the queue back pressure value of the corresponding link is greater than a preset back pressure threshold and the change in queue depth is greater than a preset depth change threshold, the corresponding link is determined to be in a congested state, and the target load split ratio of the corresponding link is set to a preset minimum load split ratio. In this embodiment, the full load back pressure calculation value refers to the theoretical extreme back pressure value calculated when the queue occupancy depth reaches the queue design capacity and the queue emptying rate is zero.

[0062] For links that have not entered a congestion state, the remaining processing capacity of the links that have not entered a congestion state is estimated based on the queue emptying rate, the preset calculation period, and the queue occupancy depth at the current sampling time. If the remaining processing capacity estimate is greater than zero, the target traffic splitting ratio of the links that have not entered a congestion state is determined based on the remaining processing capacity estimate. If the remaining processing capacity estimate is less than or equal to zero, the target traffic splitting ratio of the links that have not entered a congestion state is set to zero.

[0063] Obtain the split ratio of the corresponding link in the previous calculation cycle, and limit the difference between the target split ratio and the split ratio of the previous calculation cycle according to the preset maximum allowable absolute change value;

[0064] When any link enters a congested state and another link meets the availability conditions, newly arriving data is sent via the other link. The link that has entered a congested state sends the data that has entered its transmission queue according to the preset minimum diversion ratio.

[0065] The condition for availability is that the other link is not in a congested state;

[0066] When the queue depth change of a link that has entered a congested state is less than zero for a first preset number of consecutive periods, the congestion state of the link that has entered a congested state is lifted.

[0067] Based on the dequeue data of each sending queue and the change in queue depth of the corresponding link, the preset pressure increment weighting factor is adjusted, specifically including:

[0068] Obtain the scheduling difference information generated by the scheduler when allocating newly arrived data, and feed back the dequeue data of each scheduling cycle, the queue occupancy depth at the end of the current scheduling cycle, and the scheduling difference information to the ring storage area of ​​the corresponding link;

[0069] The dual-link throughput ratio is determined based on the outgoing data. The preset pressure increment weighting factor is adjusted according to the deviation between the dual-link throughput ratio and the target split ratio of each link, as well as the change in queue depth of the corresponding link in the sending queue.

[0070] When the deviation between the dual-link throughput ratio and the target split ratio of each link exceeds the preset deviation threshold within multiple consecutive preset calculation cycles, the preset pressure increment weight factor is adjusted according to the preset adjustment step size.

[0071] The traffic splitting ratio of each link is locked to the average of the traffic splitting ratio of the most recent three preset periods and the lockout period is maintained for a preset period. After the preset lockout period ends, the average value is used as the initial traffic splitting ratio after the preset lockout period ends, and the change range of the traffic splitting ratio of each link is restricted again.

[0072] The fixed split ratio mode is a mode in which the split ratio of each link adopts a preset fixed ratio.

[0073] This embodiment is applied to the transmitting end of a dual-mode communication system; the transmitting end includes a first link transmission queue, a second link transmission queue, corresponding status registers, corresponding ring storage areas, and a scheduler;

[0074] Queue occupancy depth refers to the amount of data that has not yet been completely transmitted in the transmission queue of a certain link, expressed in bytes, packets, or queue slots.

[0075] The queue depth change refers to the difference in the queue depth occupied within adjacent sampling periods, indicating whether the queue is growing or decreasing; the queue emptying rate refers to the rate at which the link sends out data within the current sampling period, indicating the link's ability to release backlogged data.

[0076] The link pressure value is a calculation result used by the sender to uniformly represent the degree of link congestion; the traffic allocation ratio is the proportion of newly arriving data actually allocated by the scheduler in the current calculation cycle;

[0077] In this embodiment, the status acquisition action is completed by the local hardware counter and status register of the transmitting end; the prerequisite is that both links have established their own independent transmission queues, and the ring storage area can store the status records of at least multiple consecutive sampling periods.

[0078] After entering the sampling period, the sending end synchronously reads the queue occupancy depth and queue emptying rate of the first and second links at the current sampling time, and writes them into the ring storage area of ​​the corresponding links respectively; since the two links use the same sampling time scale, the data at the current sampling time can be directly retrieved for comparison during subsequent readings;

[0079] The sending end calculates the change in queue depth of the corresponding link based on the difference in queue occupancy depth between the current sampling time and the previous sampling time, and writes the change back to the ring storage area of ​​the corresponding link.

[0080] Each state record in the ring storage area contains at least the current queue occupancy depth, the current queue emptying rate, and the change in queue depth obtained from adjacent sampling results;

[0081] During the link stress value calculation phase, the triggering entity is the stress calculation logic within the transmitting end; the prerequisite is that the three status data items at the current sampling time have been written into the ring storage area.

[0082] The pressure calculation logic reads the queue occupancy depth, queue depth change, and queue emptying rate from the first link ring storage area and the second link ring storage area respectively at the current sampling time according to the preset calculation cycle.

[0083] The queue occupancy depth corresponds to a preset queue occupancy depth weight, the queue depth change corresponds to a preset pressure increment weight factor, and the queue emptying rate corresponds to a preset queue emptying rate weight, so that data of different dimensions can participate in the calculation together.

[0084] The aforementioned weights are pre-configured by the sending end control program and can be adjusted based on subsequent statistical analysis results; the pressure calculation logic calculates a queue back pressure value for each link and uses this queue back pressure value as the link pressure value for that link.

[0085] One possible calculation method is to normalize the queue occupancy depth according to the designed capacity of the link queue, normalize the queue depth variation according to the same capacity scale, and then combine this with the queue emptying rate to construct the queue backpressure value. The specific calculation formula is as follows:

[0086]

[0087] in, To normalize the queue depth, the value range is mapped as follows: ; The current queue depth; Design the capacity of the queue;

[0088]

[0089] in, This represents the normalized change in queue depth, with a value range of [value range missing]. ; This represents the change in queue depth within adjacent sampling periods;

[0090]

[0091] in, To normalize the queue emptying rate, the value range is mapped as follows: ; This represents the current queue emptying rate; This represents the theoretical maximum transmission bandwidth of the link.

[0092]

[0093] in, This is the queue backpressure value for this link; The preset queue occupancy depth weight; The preset pressure increment weighting factor; The preset queue emptying rate weight, and Queue occupancy depth mainly reflects the current backlog, queue depth change mainly reflects the direction and speed of backlog change, and queue emptying rate reflects the link's ability to transmit backlogged data.

[0094] When the queue occupancy depth exceeds the preset depth threshold and the change in queue depth continues to increase, the algebraic sum of positive backlog terms increases, leading to a corresponding increase in link pressure. When the queue emptying rate is high and greater than or equal to the growth rate of queue occupancy depth, the effect of negative release terms is enhanced, resulting in a relative decrease in link pressure.

[0095] This calculation method does not require sending additional probe frames. It can reflect the impact of link quality fluctuations on transmission capacity simply by reflecting the objective changes in the local transmission queue and the structured calculation of the weighted difference mentioned above.

[0096] During the traffic splitting calculation phase, the prerequisite is that the link pressure values ​​of the two links have been obtained; the traffic splitting calculation module sequentially performs congestion judgment, target splitting ratio generation, and variation range limitation.

[0097] If the queue back pressure value of a certain link is greater than the preset back pressure threshold, and the change in queue depth of the link is greater than the preset depth change threshold, then the link is determined to be in a congested state.

[0098] The preset back pressure threshold is used to characterize that the queue is approaching the high load range. Its calibration is based on the equivalent back pressure value corresponding to the maximum queuing delay allowed by the system, and 0.8 to 0.85 of the calculated back pressure value under full load is taken as the dividing point. The preset depth change threshold is used to characterize that the queue is still getting deeper. Its calibration is based on the system's tolerance for single-cycle data surges, and is usually set to 5% to 10% of the design capacity of the corresponding link queue. Only when both conditions are met at the same time is the backlog of the link queue considered to be in a state of continuous increase.

[0099] Once congestion occurs, the target split ratio for the link is set to the preset minimum split ratio to ensure that the link retains a minimum transmission ratio to continue transmitting data that has entered the link's queue, rather than completely deactivating it. The preset minimum split ratio is set based on the ratio of the congested link's minimum basic transmission bandwidth to the system's total bandwidth.

[0100] For links that are not in a congested state, the traffic splitting calculation logic determines the target splitting ratio based on the remaining processing capacity of each link;

[0101] The remaining processing capacity is an estimated carrying capacity value obtained based on the current queue emptying rate and queue occupancy depth of the link; if the link emptying rate is greater than the preset emptying rate threshold and the queue occupancy depth is less than the preset depth threshold, the target splitting ratio of the link is increased.

[0102] Conversely, if a link does not meet the congestion determination criteria, but the queue backlog exceeds the preset backlog growth threshold, its target diversion ratio will be reduced accordingly.

[0103] In one optional implementation, the sending end calculates the target traffic splitting ratio for each link based on the link pressure value and according to the principle of reverse pressure allocation. That is, when the sum of P1 and P2 is greater than zero, the target traffic splitting ratio for the first link is P2 / (P1+P2), and the target traffic splitting ratio for the second link is P1 / (P1+P2). If the sum of P1 and P2 is equal to zero, the target traffic splitting ratios for the two links are allocated according to a preset fixed ratio. Here, P1 and P2 are the link pressure values ​​for the first link and the second link, respectively.

[0104] Alternatively, a proportional calculation method based on the percentage of remaining processing capacity can be used. In this method, the sending end calculates the expected number of bytes that can be emptied from the corresponding link in the current calculation period, which is the current queue emptying rate multiplied by the decision period duration, and subtracts the current queue occupancy depth in bytes. If the result is greater than zero, it is used as the estimated value of the remaining processing capacity of the link; if it is less than or equal to zero, it is recorded as zero.

[0105] The total uncongested remaining processing capacity of the system is obtained by summing the estimated remaining processing capacity of each uncongested link. The ratio of the estimated remaining processing capacity of a certain link to this total is the target diversion ratio of that link.

[0106] Regardless of the format used, the output results are the first link target split ratio and the second link target split ratio. If congested links are included, the non-congested links are allocated the remaining proportions excluding the preset minimum split ratio, ensuring that the sum of the two is one.

[0107] Because the link status changes continuously, directly using the target split ratio will cause fluctuations in the scheduler output, so it is necessary to implement a limit on the magnitude of the change;

[0108] Specifically, the traffic splitting calculation logic takes the difference between the current cycle target splitting ratio and the previous preset calculation cycle splitting ratio of the corresponding link, and compares the absolute value of the difference with the preset maximum allowable absolute change value.

[0109] When the absolute value of the difference is less than or equal to the preset maximum allowable absolute change value, the current cycle load sharing ratio is directly taken as the current cycle target load sharing ratio; when the absolute value of the difference is greater than the preset maximum allowable absolute change value, the current cycle load sharing ratio is only allowed to increase or decrease by the preset maximum allowable absolute change value relative to the load sharing ratio of the previous preset calculation cycle; wherein, the preset maximum allowable absolute change value is calibrated based on the upper limit of the maximum data throughput ratio that the scheduler can smoothly adjust within a single calculation cycle;

[0110] This prevents the diversion ratio from jumping due to sudden changes in instantaneous state, and allows the scheduler to change the allocation ratio of newly arriving data at a rate limited by the preset maximum allowable absolute change value, so as to maintain the stability of the queue adjustment process.

[0111] When any link is determined to be congested and another link meets the availability condition, the sender will allocate all newly arriving data to the non-congested link that meets the availability condition; the availability condition is that the other link has not entered a congested state and no link failure, pressure calculation abnormality, or traffic splitting calculation abnormality has been detected.

[0112] When this condition is met, newly arriving data is sent via another link; data that has already entered the transmission queue of a congested link is not moved across links, but is still sent step by step by the congested link according to the preset minimum diversion ratio;

[0113] The congestion state is resolved using a continuous periodic judgment method; the prerequisite is that a certain link has been marked as congested; thereafter, the sending end continues to sample and calculate the change in queue depth of the link in multiple subsequent decision periods;

[0114] If the queue depth change is less than zero for a first number of consecutive preset periods, it means that the queue occupancy depth of the link is continuously decreasing between adjacent sampling times, that is, the link is reducing the amount of backlogged data.

[0115] The preset first quantity can be 3 to 5; once this condition is met, the sending end releases the congestion state of the link, allowing the link to re-enter the normal traffic splitting calculation process; the above mechanism can prevent the queue from recovering a large proportion of traffic splitting when it briefly decreases in a single cycle.

[0116] During the scheduling execution phase, the executing entity is the weighted differential round-robin scheduler; its prerequisite is that the first link split ratio and the second link split ratio have already been output by the split calculation logic.

[0117] The scheduler allocates data only to newly arriving data based on the current period's traffic splitting ratio. For example, if the traffic splitting ratio of the first link is higher than that of the second link in the current period, the scheduler allocates a larger proportion of the data to be sent to the first link during the polling process; conversely, it allocates a larger proportion of the data to the second link.

[0118] Scheduling difference information refers to the difference between the amount of transmission allocated to a certain link by the scheduler and the target amount of transmission that should be achieved according to the diversion ratio within the current statistical period; this difference can be accumulated and recorded by the scheduler during the polling process and written back to the ring storage area of ​​the corresponding link.

[0119] After the scheduler executes, the sending end feeds back the dequeue data for each scheduling cycle, the queue occupancy depth at the end of the current scheduling cycle, and the scheduling difference information to the ring storage area of ​​the corresponding link; this enables subsequent sampling and calculation to obtain the objective state changes of the queue and determine whether the scheduler has achieved the current target allocation ratio at the execution layer.

[0120] The parameter correction logic adjusts the preset pressure increment weighting factor used to calculate the link pressure value based on the deviation between the dual-link throughput ratio and the target split ratio.

[0121] Throughput ratio refers to the ratio of outgoing data from a specified reference link (such as the first link) to the total outgoing data from both links within a statistical period. Its value range is strictly mapped to... ;

[0122] The target allocation ratio refers to the target allocation ratio corresponding to the specified reference link within the same statistical period, and its value range is also [missing information]. By unifying the units and range of values, abnormal deviations caused by algebraically subtracting the absolute numerical ratio from the distribution ratio are avoided.

[0123] If the deviation continues to exceed the preset deviation threshold, for example, the preset deviation threshold can be calibrated based on the maximum allowable steady-state distribution error of the system obtained from the historical statistical analysis of the link. The value range is usually 5% to 10%. This indicates that there is a stable error between the link pressure value calculated by relying solely on the preset pressure increment weight factor and the actual carrying capacity of the link. At this time, the preset pressure increment weight factor is adjusted according to the preset adjustment step size.

[0124] To avoid oscillations in parameter adjustment near extreme values ​​caused by using a fixed constant step size, the adaptive adjustment step size is an adaptive compensation ratio dynamically calculated based on the dimensionless deviation magnitude. The determination method is as follows: the current adjustment step size is equal to the base step size coefficient multiplied by the absolute value of the difference between the throughput ratio and the target split ratio. The base step size coefficient can be obtained through simulation calibration of preset network operating conditions, and the conventional value is 0.01 to 0.05.

[0125] After each adjustment, to ensure that the sum of the above three weights always remains at 1, the parameter correction logic at the sending end adopts a constraint allocation mechanism; when the preset pressure increment weight factor is updated to... When the time comes, update the formula as follows:

[0126] If the previous preset calculation period :

[0127]

[0128]

[0129] If the previous preset calculation period :

[0130]

[0131] in, The updated preset queue occupancy depth weight; The updated preset queue emptying rate weight; The queue occupancy depth weight for the previous preset calculation cycle; The queue emptying rate weight for the previous preset calculation period; the constant 2 in the above formula indicates that when the sum of the two weights in the previous preset calculation period is zero, the remaining weights are divided equally.

[0132] After the adjustment, the new weights will be re-involved in the link pressure value calculation in the next calculation cycle; the system gradually corrects the influence of queue growth trend on link pressure value calculation through the above calculation, and avoids weight values ​​from exceeding the limit;

[0133] In one embodiment, if a link has a throughput ratio lower than the target diversion ratio more than a preset threshold number of times within a preset fourth number of calculation cycles, and the corresponding link's queue depth change is greater than zero more than a preset threshold number of times, it indicates that the link's capacity assessment value for carrying new services is greater than its actual capacity. In this case, it is determined that the preset pressure increment weight factor needs to be increased, that is, the preset pressure increment weight factor is increased by the current adjustment step.

[0134] If the deviation between the throughput ratio and the target diversion ratio of each link changes more than the preset jitter threshold in the number of alternating positive and negative signs within the fourth consecutive preset number of cycles, and the average increment of the queue occupancy depth of the two links in the corresponding cycle is less than the preset backlog threshold, then it is determined that the preset pressure increment weight factor needs to be appropriately reduced; whereby the preset backlog threshold is calibrated based on the average queue depth during the stable period of the system's historical statistics.

[0135] The preset pressure increment weight factor is subtracted from the current adjustment step size; the fourth quantity, preset number threshold, and preset jitter threshold are all positive integers preset by the system; the above preset parameters are specifically calibrated and set according to the queue depth fluctuation frequency and the maximum allowable scheduling error confidence interval of the system in the historical statistical period;

[0136] By adjusting and constraining the parameters based on the outgoing data and changes in queue depth, the link pressure value can be more closely aligned with the link's transmission capacity.

[0137] When both links are under excessive pressure at the same time, the sending end enters service priority control; the prerequisite is that the link pressure values ​​of the first link and the second link are both greater than the preset pressure threshold and continue for a first preset duration.

[0138] The sending end parses the header fields of newly arrived data packets to extract the service type field or traffic level field as a service priority identifier, and compares the value of the identifier with a preset priority threshold. If the identifier value is greater than or equal to the threshold, it is classified as a high-priority service, and if it is less than the threshold, it is classified as a low-priority service.

[0139] Once this condition is met, the sending end stops low-priority service data from entering the queue based on the service priority identifier, and only allows high-priority services to continue to enter the queue and be sent; the above mechanism can prioritize the transmission resources of control or high-level services when both links are overloaded.

[0140] When the link pressure value of any link is lower than the preset recovery pressure value and continues for a second preset time, low-priority service data is restored and entered into the queue. Since the preset recovery pressure value is less than the preset pressure threshold, different thresholds are used for entering and exiting services to avoid frequent opening and closing of service entry when the pressure value fluctuates repeatedly near the boundary.

[0141] When the transmitter detects that the sign of the difference between the current ratios in adjacent cycles changes more than a preset threshold number of times within a preset second number of cycles, it considers that the current ratio has entered a high-frequency oscillation state.

[0142] The difference in the diversion ratio between adjacent cycles is the difference between the current cycle diversion ratio and the diversion ratio of the previous preset calculation cycle. A positive difference indicates that the diversion ratio is changing in the direction of increasing, a negative difference indicates that the diversion ratio is changing in the direction of decreasing, and a difference of zero does not count the number of times the direction of change changes.

[0143] After the above conditions are met, the sending end locks the split ratio of the first link and the second link to the average of the split ratio of the most recent three preset cycles respectively; the preset number threshold is set according to the upper limit of the split oscillation frequency that the system can tolerate; the preset recovery pressure value is the anti-disturbance threshold that is lower than the preset pressure threshold; the first and second preset durations are calibrated according to the communication link status refresh cycle; the preset hardware alarm threshold and capacity alarm threshold are calibrated based on the maximum design capacity percentage of the sending end ingress buffer;

[0144] The second and third quantities are both preset positive integers, for example, the second quantity can be set to 20 and the third quantity to 8; during the locking period, the scheduler performs allocation according to the locked distribution ratio and no longer refreshes the new dynamic distribution ratio;

[0145] After the preset lockout period ends, instead of directly reverting to the immediate calculation result at the end of the lockout period, the lockout value is used as the initial split ratio for the first cycle after unlocking, and the change amplitude limit is re-executed; this allows the split ratio change after unlocking to transition smoothly from the lockout value, reducing the probability of oscillation again;

[0146] The transmitter is equipped with a watchdog timer to monitor the local computing logic status; when an abnormality is detected in the pressure calculation, the shunt calculation, or the watchdog timer times out, the transmitter enters a fixed shunt ratio mode.

[0147] An abnormal stress calculation result may refer to an invalid or continuously missing link stress value calculation result. An abnormal traffic splitting calculation result may refer to a traffic splitting ratio result that exceeds the legal range or the sum of the traffic splitting ratios of two links does not meet the preset configuration rules. A watchdog timeout indicates that the local calculation logic has not completed the new calculation within the specified period.

[0148] When any of the above conditions are met, the sending end skips the dynamic split calculation branch and switches to the hardware-executed fixed split ratio mode. The fixed split ratio can be a register configuration value or a preset value.

[0149] In this mode, the scheduler directly allocates newly arriving data according to a fixed split ratio to ensure that the system still has the most basic transmission capability to work; after the anomaly is resolved and the self-test is passed, it will return to the state of split calculation based on link pressure value.

[0150] The above-mentioned protection actions all have clear execution priorities; the priorities from high to low are: switching to the preset fixed traffic splitting ratio mode, stopping low-priority business data from entering the queue, and locking the traffic splitting ratio;

[0151] Since the above protection actions belong to different physical control links of system data flow, namely, the fixed split ratio and the locked split ratio act on the sending end dequeue scheduling side, while the stop service enqueue acts on the ingress buffer side, when the above priorities are executed, the dequeue scheduling strategy has forced exclusivity, that is, when the highest priority is switched to the preset fixed split ratio mode, the lower priority locked split ratio will be directly suspended.

[0152] However, when a computational anomaly and high load on dual links occur simultaneously, the sending end will not completely shield the ingress queue protection due to the priority rejection of the dequeue. Instead, it adopts independent and parallel control logic: at the dequeue end, it immediately bypasses dynamic diversion and switches to a fixed diversion ratio mode to maintain basic sending capacity, and at the ingress end, it executes the operation of stopping low-priority service data from entering the queue in parallel.

[0153] When an operational anomaly is detected, the system immediately suspends and bypasses the overload judgment logic based on the link pressure value, forcing the dequeue end to switch to the preset fixed split ratio mode;

[0154] At the same time, the enqueue end directly reads the original queue occupancy depth of the physical hardware layer. If the hardware queue occupancy depth exceeds the preset hardware alarm threshold, or the number of bytes occupied by the sender's entry buffer exceeds the preset capacity alarm threshold, then the operation of stopping low-priority business data from entering the queue will be executed in parallel.

[0155] If the system does not experience any operational anomalies, but high load on both links and traffic oscillation occur simultaneously, then low-priority services are stopped from being enqueued at the enqueue end to reduce ingress pressure, while the traffic split ratio is locked at the dequeue end to smooth out scheduling fluctuations.

[0156] The above control logic effectively avoids entry-level queue overflow or serious data loss caused by a single high-priority scheduling strategy monopolizing system control, and ensures conflict-free coordination between different control links.

[0157] In a dual-mode heterogeneous link application scenario, the first link can be a terrestrial cellular link, and the second link can be a satellite link;

[0158] Under normal circumstances, the queue occupancy depth of both links is lower than the preset depth threshold. The sending end allocates newly arriving data between the two links based on the split ratio calculated by the link pressure value.

[0159] When the emptying rate of the second link decreases due to changes in the propagation environment, the amount of untransmitted data in the second link's transmission queue begins to increase, the queue occupancy depth increases, and the change in queue depth is continuously positive.

[0160] In subsequent calculation cycles, the sending end obtains a higher link pressure value for the second link, and then lowers the target traffic split ratio for the second link, resulting in a smaller traffic split ratio for the second link after the change range is limited; the scheduler then reduces the proportion of newly arriving data allocated to the second link accordingly.

[0161] If the second link further meets the congestion determination condition, its target split ratio is compressed to the preset minimum split ratio, and the newly arrived data is sent by the first link, while the second link continues to send the data already in its queue according to the minimum split ratio;

[0162] Once the queue depth change of the second link is less than zero for several consecutive cycles, the system will release its congestion and resume normal traffic splitting. The entire process relies on the objective changes in the local queue at the sending end and the dequeue results, without relying on additional probe traffic, thus reducing the occupation of effective transmission bandwidth.

[0163] Please see Figure 2 A load balancing device for a dual-mode communication system, the dual-mode communication system receiving newly arrived data, including a first link, a second link and their respective corresponding transmission queues, and a scheduler; the device includes:

[0164] The status acquisition module is used to acquire the link status data of the first link, the link status data of the second link, and the preset pressure increment weight factor. The link status data of the first link and the link status data of the second link both include the queue depth change determined based on the queue occupancy depth at adjacent sampling times.

[0165] The stress calculation module is used to determine the link stress value based on the link status data of the first link, the link status data of the second link, and the preset stress increment weighting factor.

[0166] The traffic splitting calculation module is used to determine the target traffic splitting ratio for each link based on the link pressure value, and output the traffic splitting ratio after limiting the change range;

[0167] The scheduling control module is used to control the scheduler to allocate newly arrived data received by the system according to the traffic splitting ratio of each link;

[0168] The parameter correction module is used to obtain the dequeue data of the sending queues corresponding to the first link and the second link, and adjust the preset pressure increment weight factor based on the dequeue data of each sending queue and the change in queue depth of the corresponding link of the sending queue.

[0169] Optionally, the device further includes:

[0170] The anomaly protection module is used to perform one or more of the following operations: when an operational anomaly is detected, switch to fixed split ratio mode; parse the header field of newly arrived data to determine low-priority service data; when the link pressure values ​​of the first link and the second link are simultaneously greater than a preset pressure threshold and remain so for a first preset duration, restrict low-priority service data from entering the transmission queue; after the pressure value of either the first link or the second link decreases to a preset recovery pressure value and remains so for a second preset duration, restore low-priority service data to enter the transmission queue of the corresponding link; when it is detected that the number of times the sign of the split ratio difference between adjacent cycles changes within a consecutive preset second number of cycles exceeds a preset number threshold, lock the split ratio of each link to the average split ratio of the most recent preset third number of cycles.

[0171] This embodiment provides a load balancing device for a dual-mode communication system integrated with the transmitter. The device can be implemented by combining board-level logic, programmable devices and processor programs, or by using a dedicated control unit and a scheduler.

[0172] The device is connected to the scheduler, which is responsible for allocating links for newly arriving data according to the split ratio given by the device.

[0173] The status acquisition module is directly connected to the status registers of the first link transmission queue and the second link transmission queue, and is used to read the queue occupancy depth and queue emptying rate of the two links in each sampling period.

[0174] The status acquisition module also generates a queue depth change based on the queue occupancy depth difference between adjacent sampling periods. In order to ensure that the subsequent modules can compare the pressure difference between the two links at the same state time, the status acquisition module writes the first link status data and the second link status data at the current sampling time into the corresponding ring storage area and outputs the link status data with a unified time scale to the pressure calculation module.

[0175] After the pressure calculation module reads the link status data from the status acquisition module or the ring storage area, it calculates the link pressure value for each link. During the calculation, the queue occupancy depth, the change in queue depth, and the queue emptying rate are included in the calculation according to their respective weights.

[0176] The calculation results are output to the shunt calculation module and the anomaly protection module in the form of a single pressure value. With this setting, each functional branch works based on the same set of pressure values ​​within the same decision cycle, thereby avoiding the use of different judgment criteria for pre- and post-processing.

[0177] After receiving the link pressure values ​​of the first and second links, the traffic splitting calculation module first performs a congestion judgment. If the pressure-related parameters of a link meet the congestion judgment conditions, the traffic splitting calculation module compresses the target traffic splitting ratio of that link to a preset minimum traffic splitting ratio.

[0178] For uncongested links, the target split ratio is determined based on the remaining processing capacity or the inverse relationship of pressure. The split calculation module compares the target split ratio with the split ratio of the corresponding link in the previous preset calculation cycle. If the change exceeds the preset maximum allowable absolute change value, the split ratio is output after correction by a limited step size.

[0179] If the limit is not exceeded, the output is directly output; thus, the load splitting calculation module outputs the load splitting ratio after the limit is applied, for the scheduler to execute.

[0180] The scheduling control module is connected to the scheduler; after receiving the split ratio output by the split calculation module, the scheduling control module writes the scheduling weight corresponding to the current period to the scheduler.

[0181] The scheduler allocates newly arriving data based on these weights, without changing the ownership of old data already in their respective sending queues;

[0182] After scheduling is completed, the scheduler sends the current period's dequeue data, queue update results, and scheduling difference information back to the parameter correction module and the status acquisition module; in this way, the execution results can have a reverse effect on subsequent pressure judgment and parameter correction.

[0183] The parameter correction module receives dequeue data and scheduling difference information from the scheduler, and calculates the deviation between the dual-link throughput ratio and the target split ratio by combining the queue depth change output by the status acquisition module.

[0184] If the deviation continues to exceed the preset deviation threshold, the parameter correction module will correct the preset pressure increment weight factor according to the preset adjustment step size. Specifically, it will use the current preset pressure increment weight factor as a benchmark, add or subtract it according to the calculated current adjustment step size, and based on the difference between the updated weight value and 1, scale the weight factors of other dimensions proportionally according to the original ratio to maintain the sum of the weights of all participating in the pressure calculation as 1.

[0185] The parameter correction module writes the above series of corrected weight results back to the parameter register of the pressure calculation module; then, the pressure calculation module recalculates the link pressure value using the updated weights in the new decision cycle; the device can gradually correct the deviation between the pressure model and the transmission capacity during operation, and ensures the stability of the closed-loop parameter calculation at the hardware level.

[0186] The anomaly protection module continuously receives the operation results from the pressure calculation module and the traffic splitting calculation module; if the pressure values ​​of both links are simultaneously greater than the preset pressure threshold and continue for a first preset duration, the anomaly protection module directly stops low-priority service data from entering the transmission queue according to the service priority identifier.

[0187] If the link pressure value of any subsequent link is lower than the preset recovery pressure value and continues for a second preset duration, the anomaly protection module will restore low-priority service data to the transmission queue.

[0188] If the number of sign changes of the difference between adjacent cycles of each link's split ratio within a consecutive preset second number of cycles exceeds a preset threshold, the anomaly protection module generates a locking command, causing the split calculation module to temporarily stop refreshing the new split ratio and instead use the average value of the most recent preset third number of cycles. Here, the first and second numbers are both preset positive integers.

[0189] If an anomaly is detected in the stress calculation, traffic splitting calculation, or watchdog timeout, the anomaly protection module issues a highest priority switching command to put the system into a preset fixed traffic splitting ratio mode. After the anomaly is resolved, the system exits the fixed traffic splitting ratio mode and resumes the state of traffic splitting calculation based on link stress values.

[0190] Because the anomaly protection module has a clear priority arbitration relationship, when multiple protection conditions are reached at the same time, the device's anomaly protection logic performs independent arbitration: actions belonging to the outgoing control side, namely fixed shunt ratio mode and locked shunt ratio, always take priority to execute the fixed shunt ratio mode and suspend the locking command.

[0191] As for actions on the queuing control side, namely stopping low-priority business data from entering the queue, they are not subject to the full masking of the priority exclusivity on the dequeue side.

[0192] In the event of concurrent operation abnormalities and congestion, the device synchronously and in parallel performs preset fixed split ratio switching and low-priority inlet flow limiting operations.

[0193] Through this orthogonal control link division of labor, the entire device can not only complete routine traffic splitting and adjustment, but also ensure the operational stability of the transmitting end in extreme timing overlap scenarios such as link deterioration, traffic splitting oscillation, or operational anomalies.

[0194] It should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention and are not intended to limit it. Although the present invention has been described in detail with reference to preferred embodiments, those skilled in the art should understand that modifications or equivalent substitutions can be made to the technical solutions of the present invention without departing from the spirit and scope of the technical solutions of the present invention.

Claims

1. A load balancing method for a dual-mode communication system, applied at the transmitting end of the dual-mode communication system, wherein the dual-mode communication system receives newly arriving data and includes a first link, a second link and their respective corresponding transmission queues, and a scheduler, characterized in that, include: The link status data of the first link, the link status data of the second link, and the preset pressure increment weight factor are obtained. The link status data of the first link and the link status data of the second link both include the queue depth change determined based on the queue occupancy depth at adjacent sampling times. Based on the link status data of the first link, the link status data of the second link, and the preset pressure increment weighting factor, the link pressure value is determined. The target traffic split ratio for each link is determined based on the link pressure value, and the variation range of the target traffic split ratio for each link is limited to obtain the traffic split ratio for each link. The scheduler allocates the newly arrived data according to the traffic splitting ratio of each link; obtains the dequeue data of the sending queues corresponding to the first link and the second link respectively, and adjusts the preset pressure increment weight factor based on the dequeue data of each sending queue and the change in queue depth of the corresponding link of the sending queue.

2. The load balancing method for a dual-mode communication system according to claim 1, characterized in that, The dual-mode communication system further includes ring storage areas corresponding to the first link and the second link, respectively; Before determining the link stress value, the method further includes: The queue occupancy depth and queue emptying rate of the first link and the second link at the current sampling time are collected synchronously according to the preset sampling period and written to the ring storage area of ​​the corresponding link respectively. The queue occupancy depth, the queue emptying rate, and the corresponding change in queue depth of the link are used as the link status data.

3. The load balancing method for a dual-mode communication system according to claim 2, characterized in that, Determine the link stress value, including: According to the preset calculation cycle, the queue occupancy depth, the queue depth change, and the queue emptying rate at the current sampling time are read from the ring storage area of ​​the corresponding link. The queue back pressure value is determined based on the queue occupancy depth, the queue depth change, the queue emptying rate, the preset queue occupancy depth weight, the preset pressure increment weight factor, and the preset queue emptying rate weight. The queue backpressure value is used as the link pressure value of the corresponding link.

4. The load balancing method for a dual-mode communication system according to claim 3, characterized in that, The target traffic split ratio for each link is determined based on the link pressure value, and the variation range of the target traffic split ratio for each link is limited, including: When the queue back pressure value of the corresponding link is greater than a preset back pressure threshold and the queue depth change is greater than a preset depth change threshold, it is determined that the corresponding link has entered a congestion state, and the target diversion ratio of the corresponding link is set to a preset minimum diversion ratio. For links that have not entered a congestion state, the remaining processing capacity of the links that have not entered a congestion state is estimated based on the queue emptying rate, the preset calculation period, and the queue occupancy depth at the current sampling time. If the remaining processing capacity estimate is greater than zero, the target traffic splitting ratio of the links that have not entered a congestion state is determined based on the remaining processing capacity estimate. If the remaining processing capacity estimate is less than or equal to zero, the target traffic splitting ratio of the links that have not entered a congestion state is set to zero. Obtain the split ratio of the corresponding link in the previous calculation cycle, and limit the difference between the target split ratio and the split ratio of the previous calculation cycle according to the preset maximum allowable absolute change value.

5. The load balancing method for a dual-mode communication system according to claim 4, characterized in that, When any link enters a congested state and another link meets the availability condition, the newly arrived data is sent via the other link, and the link that enters a congested state sends the data that has entered its transmission queue according to the preset minimum diversion ratio; The availability condition is that the other link is not in a congested state; When the queue depth change of the link that has entered the congestion state is less than zero for a first preset number of consecutive periods, the congestion state of the link that has entered the congestion state is lifted.

6. The load balancing method for a dual-mode communication system according to claim 3, characterized in that, The scheduler employs a weighted differential round-robin scheduling strategy, adjusting the preset pressure increment weight factor based on the dequeue data of each sending queue and the change in queue depth of the corresponding link of the sending queue. Specifically, this includes: The scheduler acquires the scheduling difference information generated when allocating the newly arrived data, and feeds back the dequeue data of each scheduling cycle, the queue occupancy depth at the end of the current scheduling cycle, and the scheduling difference information to the ring storage area of ​​the corresponding link; the dual-link throughput ratio is determined based on the dequeue data, and the preset pressure increment weight factor is adjusted according to the deviation between the dual-link throughput ratio and the target split ratio of each link, as well as the change in queue depth of the link corresponding to the sending queue; When the deviation between the dual-link throughput ratio and the target split ratio of each link exceeds a preset deviation threshold within multiple consecutive preset calculation cycles, the preset pressure increment weight factor is adjusted according to a preset adjustment step size.

7. The load balancing method for a dual-mode communication system according to claim 1, characterized in that, Also includes: When an abnormal link pressure value or an abnormal target load ratio for each link is detected, it is determined that an operational abnormality has occurred. When the operational anomaly is detected, switch to fixed traffic splitting ratio mode, and restore to the state of traffic splitting calculation based on the link pressure value after the operational anomaly is resolved; The fixed split ratio mode is a mode in which the split ratio of each link adopts a preset fixed ratio.

8. The load balancing method for a dual-mode communication system according to claim 1, characterized in that, Also includes: Parse the header fields of the newly arrived data to determine low-priority business data; When the link pressure values ​​of the first link and the second link are both greater than a preset pressure threshold and remain so for a first preset duration, the low-priority service data is restricted from entering the transmission queue of the corresponding link; after the link pressure value of either the first link or the second link decreases to a preset recovery pressure value and remains so for a second preset duration, the low-priority service data is allowed to enter the transmission queue of the corresponding link.

9. A load balancing method for a dual-mode communication system according to claim 5, characterized in that, Also includes: When it is detected that the number of times the sign of the difference between the traffic split ratios of each link changes within a consecutive preset second number of cycles exceeds a preset threshold, the traffic split ratio of each link is locked to the average value of the traffic split ratios of the most recent preset third number of cycles and the lockout period is maintained for a preset period. After the preset lockout period ends, the average value is used as the initial split ratio after the preset lockout period ends, and the variation range of the split ratio of each link is restricted again.

10. A load balancing device for a dual-mode communication system, used to implement the load balancing method for the dual-mode communication system according to any one of claims 1 to 9, characterized in that, The dual-mode communication system receives newly arrived data and includes a first link, a second link and their respective transmission queues, and a scheduler; the device includes: The status acquisition module is used to acquire the link status data of the first link, the link status data of the second link, and the preset pressure increment weight factor. The link status data of the first link and the link status data of the second link both include the queue depth change determined based on the queue occupancy depth at adjacent sampling times. The pressure calculation module is used to determine the link pressure value based on the link status data of the first link, the link status data of the second link, and the preset pressure increment weighting factor. The traffic splitting calculation module is used to determine the target traffic splitting ratio for each link based on the link pressure value, and to limit the variation range of the target traffic splitting ratio for each link, thereby obtaining the traffic splitting ratio for each link. The scheduling control module is used to control the scheduler to allocate the newly arrived data according to the traffic splitting ratio of each link; The parameter correction module is used to obtain the dequeue data of the sending queues corresponding to the first link and the second link respectively, and adjust the preset pressure increment weight factor based on the dequeue data of each sending queue and the change in queue depth of the corresponding link of the sending queue.