Multi-link data transmission method and system based on active-active architecture
Through the introduction of dynamic threshold adjustment and link time heartbeat maintenance mechanism in the multi -link data transmission system, the problem of unable to dynamically adjust the flow distribution and dynamic load equilibrium complexity of the existing technology in the existing technology, and realized the high -efficiency load balancing And high availability.
Patent Information
- Application Number
- CN202411439253.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-10-15
- Publication Date
- 2025-01-21
AI Technical Summary
In the prior art, the polling algorithm cannot dynamically adjust traffic allocation according to the real-time link state, and the dynamic load balancing implementation is complex and the computational volume is large, which cannot fully meet the multi-link load requirements in modern network environments.
A multi-link data transmission method based on active-active architecture is used to calculate the initial threshold by obtaining the maximum bandwidth and historical load coefficient of all links, establish a polling scheduling chain list, and perform polling scheduling based on the initial threshold. The dynamic threshold adjustment mechanism automatically adjusts the threshold according to the IO traffic of the link to ensure load balancing. At the same time, a link timing heartbeat keep-alive mechanism is introduced to detect and handle link failures in a timely manner.
Without increasing additional calculation overhead, the distribution of traffic allocation is dynamically adjusted according to the real -time link state, which is strong, can achieve efficient load balance, and improve the high availability and fault tolerance of the network.
Smart Images

Figure CN119341987A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the technical field of data transmission, and in particular to a multi-link data transmission method and system based on a dual-active architecture. Background Art
[0002] In the field of storage technology, the application of active-active architecture and multiple Fibre Channel (FC) links is developing rapidly. Active-active architecture greatly improves data availability and business continuity by keeping data active in two geographically separated data centers at the same time. This architecture not only ensures high data reliability, but also can quickly take over the business from another active data center when a system failure occurs, avoiding interruption and data loss. However, the deployment of active-active architecture faces many challenges, especially in the management and optimization of multiple FC links.
[0003] In order to meet the requirements of high availability and performance, existing technologies usually deploy multiple FC links between two data centers. This multi-link configuration can significantly increase the bandwidth of data transmission and reduce the impact of a single link failure on the overall system. In addition, multiple FC links also provide additional redundancy to ensure that even if a link fails, data transmission can continue through other links, thereby improving the fault tolerance of the system. However, in actual applications, the management and optimization of multiple links is also a complex task, requiring an effective link routing strategy to dynamically adjust and optimize the data transmission path to ensure that the system always runs in the best state. This is also one of the challenges currently faced by many storage systems.
[0004] In a multi-link scenario, multiple algorithms can be used to implement multi-link routing and load balancing. The following are two common methods:
[0005] 1. Polling load routing
[0006] Round Robin is one of the most basic and widely used load balancing algorithms. It achieves the purpose of load balancing by distributing new requests or data traffic to each available link or server in turn. In a multi-link environment, the specific process of round robin is to arrange each link into a circular queue and then send data to these links in turn. When a link processes a request or data packet, the next request is automatically assigned to the next link in the queue, and so on, until all links are assigned in turn. The implementation of the round robin algorithm is very intuitive, does not require additional complex load detection mechanisms, and does not depend on the performance or status of the link. Network administrators can easily set up round robin policies to balance traffic. If the bandwidth, latency, and performance of multiple links are very close, the round robin algorithm can achieve a more balanced load distribution.
[0007] 2. Dynamic load balancing routing
[0008] Dynamic load balancing is a more advanced load distribution algorithm that dynamically adjusts traffic distribution by continuously monitoring the real-time status of each link in the network (for example, bandwidth, latency, error rate, and current load). The algorithm can intelligently select the appropriate link based on the performance changes and burst traffic conditions of the link to ensure maximum system performance. The biggest advantage of dynamic load balancing is its adaptive ability. It can make intelligent adjustments based on the real-time status of the link (for example, current bandwidth utilization and load conditions). Even if the network environment changes, dynamic load balancing can respond quickly. By continuously monitoring and adjusting traffic distribution, dynamic load balancing ensures the best utilization of link resources. For example, when the bandwidth utilization of a link reaches a threshold, the system can automatically allocate new requests to the link with lower load to avoid overload. Dynamic load balancing can monitor the health of the link and automatically switch traffic to other links when a link fails or performance degrades, thereby improving the fault tolerance and reliability of the system.
[0009] However, the above two methods also have their own shortcomings:
[0010] 1. Polling load routing
[0011] Ignoring link status: The polling algorithm does not consider the current status and load of each link, and allocates the same number of IO requests to each link regardless of the link's bandwidth, latency, or current load. This may cause some links to be overloaded while other links are in a low-load state.
[0012] Unable to adapt to uneven link environments: In a multi-link environment, not all links have the same bandwidth and data transmission rate. Some links may have higher bandwidth and transmission rate. If the existing polling scheduling method is used, a large amount of unfinished IO traffic will accumulate on some links with low bandwidth and transmission rate.
[0013] Poor adaptability: The polling algorithm only focuses on the allocation order of requests and cannot monitor the real-time performance and health status of the link. As a result, when the link performance changes or a link fails, the polling strategy will still allocate traffic to these links, reducing the efficiency and reliability of the system.
[0014] 2. Dynamic load balancing routing
[0015] Complex implementation: Compared with simple algorithms such as polling, dynamic load balancing requires the introduction of complex monitoring mechanisms and scheduling algorithms. This increases the difficulty of system implementation and management costs, especially in large-scale networks, where real-time monitoring and adjustment may incur large computing overhead.
[0016] High overhead: Dynamic load balancing needs to continuously obtain the status information of each link in the network and perform real-time calculations and adjustments. This continuous monitoring and adjustment process increases the system's computing and network overhead, especially in scenarios where traffic fluctuates frequently.
[0017] In summary, the above two load balancing solutions each have obvious limitations and cannot fully meet the multi-link load requirements in modern network environments. Although the polling algorithm is simple to implement, it cannot dynamically adjust traffic distribution according to the real-time link status, resulting in unbalanced loads between links. Especially when the performance of different links varies greatly or the network traffic fluctuates significantly, some links are prone to overload while other link resources are idle. The dynamic load balancing solution can better adapt to the complex link environment and achieve more efficient load balancing by real-time monitoring of link status and adjusting traffic distribution. However, the dynamic load balancing solution is complex to implement and requires a large amount of computing and monitoring mechanisms, which brings high system overhead and additional performance burden. Especially in large-scale networks, the dynamic adjustment of the computing overhead may significantly increase the system's latency and resource consumption. Summary of the invention
[0018] To this end, the present application provides a multi-link data transmission method and system based on a dual-active architecture to solve the problems in the prior art that the polling algorithm cannot dynamically adjust traffic distribution according to the real-time link status and the dynamic load balancing is complex and computationally intensive to implement.
[0019] In order to achieve the above objectives, this application provides the following technical solutions:
[0020] In a first aspect, a multi-link data transmission method based on a dual-active architecture is provided, wherein the multi-link data transmission method based on the dual-active architecture is applied to a scheduling server, comprising:
[0021] Obtain the maximum bandwidth and historical load factor of all links, and calculate the initial threshold value according to the maximum bandwidth and historical load factor of all links;
[0022] Establishing a polling scheduling chain table, and performing polling scheduling according to the polling scheduling chain table and the initial threshold;
[0023] The polling scheduling process is specifically as follows:
[0024] Determine whether the IO traffic of all links is less than the initial threshold. If the IO traffic of all links is less than the initial threshold, the IO traffic is evenly distributed to each link. If there is a link with an IO traffic greater than the initial threshold among all links, the link with an IO traffic greater than the initial threshold is removed from the polling scheduling linked list, and then the IO traffic is evenly distributed to the remaining links. If the IO traffic of all links is greater than the initial threshold, a fixed value is added to the initial threshold, and all links are re-added to the polling linked list to start a new polling scheduling.
[0025] Preferably, the method further includes: regularly sending a heartbeat packet to each link, and determining whether a response is received within a specified time; if no response is received within the specified time, determining that the link is failed, and removing the failed link from the polling scheduling linked list.
[0026] Preferably, the heartbeat packets continue to be sent regularly after the link fails. If a response is received within a specified time, it means that the failed link is restored and is re-added to the polling scheduling linked list.
[0027] Preferably, the initial threshold calculation formula is:
[0028]
[0029] Where T is the initial threshold, n is the total number of links, and i is the i-th link.
[0030] Preferably, the historical load factor calculation process is specifically as follows:
[0031] Define the historical time window;
[0032] The load factor is obtained according to the historical data of the sampling link in the historical time window; the load factor calculation formula is:
[0033] Where, t is time;
[0034] The historical load average is calculated according to the load factor to obtain the historical load factor; the calculation formula of the historical load factor is:
[0035] Where C is the number of samples in the historical time window.
[0036] Preferably, during the polling scheduling process, when the IO traffic of the removed link falls back to a reasonable range, it will be re-added to the polling scheduling linked list.
[0037] Preferably, in the polling scheduling process, after a fixed value is added to the initial threshold, the threshold is restored to the initial threshold only when the IO traffic of one link among all the links is lower than the initial threshold minus twice the fixed value.
[0038] In a second aspect, a multi-link data transmission system based on a dual-active architecture includes:
[0039] An initial threshold calculation module is used to obtain the maximum bandwidth and historical load factor of all links, and calculate the initial threshold according to the maximum bandwidth and historical load factor of all links;
[0040] A polling scheduling module, used to establish a polling scheduling linked list, and perform polling scheduling according to the polling scheduling linked list and the initial threshold;
[0041] The polling scheduling process is specifically as follows:
[0042] Determine whether the IO traffic of all links is less than the initial threshold. If the IO traffic of all links is less than the initial threshold, the IO traffic is evenly distributed to each link. If there is a link with an IO traffic greater than the initial threshold among all links, the link with an IO traffic greater than the initial threshold is removed from the polling scheduling linked list, and then the IO traffic is evenly distributed to the remaining links. If the IO traffic of all links is greater than the initial threshold, a fixed value is added to the initial threshold, and all links are re-added to the polling linked list to start a new polling scheduling.
[0043] In a third aspect, a computer-readable storage medium stores a computer program, which, when executed by a processor, implements the steps of a multi-link data transmission method based on an active-active architecture.
[0044] In a fourth aspect, a computer program product includes a computer program or instructions, which, when executed by a processor, implements the steps of a multi-link data transmission method based on an active-active architecture.
[0045] Compared with the prior art, this application has at least the following beneficial effects:
[0046] 1. The present application provides a multi-link data transmission method based on a dual-active architecture, which calculates the initial threshold value according to the maximum bandwidth and historical load factor of all links; establishes a polling scheduling linked list, and performs polling scheduling according to the polling scheduling linked list and the initial threshold value; the polling scheduling process is specifically as follows: determine whether the IO traffic of all links is less than the initial threshold value, if the IO traffic of all links is less than the initial threshold value, then the IO traffic is evenly distributed to each link; if there are links with IO traffic greater than the initial threshold value among all links, then the links with IO traffic greater than the initial threshold value are removed from the polling scheduling linked list, and then the IO traffic is evenly distributed to the remaining links; if the IO traffic of all links is greater than the initial threshold value, then a fixed value is added to the initial threshold value, and all links are re-added to the polling linked list to start a new polling scheduling. The present application introduces a dynamic threshold adjustment mechanism to dynamically adjust the traffic distribution according to the real-time link status without increasing additional computing overhead. It has strong adaptability and can achieve efficient load balancing.
[0047] 2. The timed heartbeat keep-alive mechanism can detect failed links in time and automatically redistribute traffic to other links. After the link is restored, it can be automatically included in the polling schedule to ensure high availability and fault tolerance of the network. BRIEF DESCRIPTION OF THE DRAWINGS
[0048] In order to more intuitively illustrate the prior art and the present application, exemplary drawings are given below. It should be understood that the specific shapes and structures shown in the drawings should not generally be regarded as limiting conditions for implementing the present application; for example, those skilled in the art are capable of easily making conventional adjustments or further optimizations to the addition / reduction / attribution division, specific shapes, positional relationships, connection methods, dimensional ratios, etc. of certain units (components) based on the technical concepts and exemplary drawings disclosed in the present application.
[0049] Figure 1 A flow chart of a dynamic threshold adjustment mechanism in a multi-link data transmission method based on a dual-active architecture provided in Embodiment 1 of the present application;
[0050] Figure 2 A flow chart of a link timing heartbeat keep-alive mechanism in a multi-link data transmission method based on a dual-active architecture provided in Example 1 of the present application. DETAILED DESCRIPTION
[0051] The present application is further described below in detail through specific embodiments in conjunction with the accompanying drawings.
[0052] In the description of this application: unless otherwise specified, the meaning of "plurality" is two or more. The terms "first", "second", "third", etc. in this application are intended to distinguish the objects referred to, and do not have special meanings in terms of technical connotations (for example, they should not be understood as emphasizing the importance or order, etc.). Expressions such as "including", "comprising", "having", etc. also mean "not limited to" (certain units, components, materials, steps, etc.).
[0053] The terms such as "upper", "lower", "left", "right", "middle", etc. cited in this application are usually used to indicate the general relative position relationship for the purpose of intuitive understanding by referring to the drawings, and are not absolute limitations on the position relationship in the actual product.
[0054] Embodiment 1
[0055] See also Figure 1 This embodiment provides a multi-link data transmission method based on a dual-active architecture, and the multi-link data transmission method based on a dual-active architecture is applied to a scheduling server, including:
[0056] S1: Obtain the maximum bandwidth and historical load factor of all links, and calculate the initial threshold based on the maximum bandwidth and historical load factor of all links;
[0057] Specifically, during initialization, it is necessary to count the maximum bandwidth of all links and the average load of the links over a period of time to calculate a reasonable initial threshold. The calculation formula for the initial threshold is:
[0058]
[0059] Where T is the initial threshold, n is the total number of links, i is the i-th link, the maximum bandwidth of link i refers to the maximum IO traffic carrying capacity of each link, and the historical load factor is a coefficient between 0 and 1, representing the average utilization of the link in the historical load. For example, if a link has used 80% of its bandwidth on average in history, its load factor is 0.8.
[0060] More specifically, the calculation process of the historical load factor is:
[0061] S101: Define the historical time window, that is, select a reasonable time window, such as the most recent week or month;
[0062] S102: obtaining a load factor according to historical data of the link sampled in the historical time window, that is, calculating the ratio of the actual bandwidth usage to the maximum bandwidth of the link at each time point for each link;
[0063] The load factor calculation formula is:
[0064] Where t is time.
[0065] S103: Calculate the historical load average value according to the load coefficient to obtain the historical load coefficient, that is, for each link, average the load coefficient in the entire time window to obtain the historical load coefficient of the link.
[0066] The historical load factor calculation formula is:
[0067]
[0068] Among them, C is the number of sampling times in the historical time window. The closer the historical load factor is to 1, the closer the link is to full load in history; the closer it is to 0, the more idle the link is.
[0069] S2: Establish a polling scheduling linked list, and perform polling scheduling according to the polling scheduling linked list and the initial threshold.
[0070] Specifically, after determining the initial threshold value T, this embodiment will establish a polling scheduling linked list including all links, the current IO traffic state of each link will be monitored in real time, and whether the link exceeds the threshold value T will be tracked.
[0071] The specific polling scheduling process is as follows:
[0072] Determine whether the IO traffic of all links is less than the initial threshold T. If the IO traffic of all links is less than the initial threshold T, the IO traffic is evenly distributed to each link; if there is a link with IO traffic greater than the initial threshold T among all links, the link with IO traffic greater than the initial threshold T is removed from the polling scheduling linked list, and then the IO traffic is evenly distributed to the remaining links; if the IO traffic of all links is greater than the initial threshold T, a fixed value N is added to the initial threshold T, and all links are re-added to the polling linked list to start a new polling scheduling.
[0073] In other words, in the polling scheduling stage, when the IO traffic of all links is lower than the threshold T, the polling scheduling algorithm will be used to evenly distribute the traffic to each link, and continuously monitor the IO traffic of each link. When the traffic of a link reaches or exceeds the threshold T, it will be removed from the polling list to ensure that other links that do not exceed the threshold continue to accept traffic (that is, continue to use polling scheduling). At this time, the link that exceeds the threshold will no longer accept new traffic until its traffic falls back to a reasonable range; when the IO traffic of all links exceeds the threshold T, the current initial threshold T is increased by a fixed value N, and all links are re-added to the polling list to start a new polling scheduling. The new threshold T+N will be used as the judgment standard to continue to monitor the IO traffic of the link.
[0074] In this embodiment, when the IO traffic of the removed link falls back to a reasonable range (the link IO traffic is less than the threshold TN), it will be re-added to the polling scheduling linked list.
[0075] In this embodiment, after a fixed value N is added to the initial threshold T, the threshold will be restored to the initial threshold T only when the IO traffic of one link among all the links is lower than the initial threshold minus twice the fixed value (i.e., T-2N). In other words, in order to avoid frequent adjustment of the threshold, this embodiment introduces a dynamic adjustment mechanism, and the threshold T will be reduced by N only when the IO traffic of a certain link is lower than the threshold T-2N, so that the overall flow control is more flexible. When the threshold is reduced, the status of all links will be re-evaluated and the polling linked list will be readjusted.
[0076] The entire polling scheduling process is a dynamic, threshold-based scheduling strategy. According to the IO traffic of the link, the polling list and threshold are automatically adjusted to balance the load of each link. The IO traffic of the link is continuously detected to ensure balanced traffic distribution, and the threshold is automatically adjusted according to the link performance to optimize the overall performance of the network.
[0077] See also Figure 2 In order to ensure the health of the link and improve the reliability and adaptability of load balancing, a multi-link data transmission method based on a dual-active architecture provided in this embodiment also introduces a link timing heartbeat keep-alive mechanism. The link timing heartbeat keep-alive mechanism specifically includes:
[0078] S301: Link heartbeat monitoring: regularly sending heartbeat packets to each link to check whether it is operating normally;
[0079] S302: Link failure detection: determine whether a response is received within the specified time; if no response is received within the specified time, determine that the link is failed, and remove the failed link from the polling scheduling list;
[0080] S303: Redistribute traffic: After detecting a link failure, immediately redistribute the traffic of the link to other healthy links to ensure business continuity and stability;
[0081] S304: Link recovery monitoring: After a link fails, heartbeat packets will continue to be sent periodically to detect the recovery status of the failed link. If a response is received within the specified time, it means that the failed link has been restored. Once the link is restored to normal, it will be re-added to the polling scheduling list.
[0082] The present embodiment provides a multi-link data transmission method based on a dual-active architecture to optimize multi-link load balancing through dynamic threshold adjustment and link timing heartbeat keep-alive mechanism. First, an initial threshold T is set for each link and polling scheduling is enabled to ensure that when the link load does not exceed the threshold, each link carries traffic evenly; when the IO traffic of a link exceeds the threshold T or its heartbeat detection is abnormal, the link is removed from the polling list to prevent traffic from continuing to be distributed to overloaded or faulty links. Continuously monitor the status of all links, and dynamically increase the threshold T+N when the load on all links is too high to continue polling scheduling. When the link returns to normal and the IO is lower than T-2N, reduce the threshold T and readjust the scheduling table. The heartbeat mechanism ensures link health status monitoring and improves the reliability and adaptability of load balancing.
[0083] The multi-link data transmission method based on the active-active architecture provided in this embodiment has the following advantages:
[0084] (1) Improved load balancing efficiency: By introducing a dynamic threshold adjustment mechanism, efficient load balancing can be achieved without adding additional computing overhead. When the link traffic exceeds the preset threshold, the link can be automatically removed to avoid overloading of a single link and ensure the balance of the entire load.
[0085] (2) Reduced link overload and bottleneck problems: By setting the threshold T, when the link load is too high, the link can be automatically removed to ensure that other links continue to carry traffic evenly. This method avoids the generation of link bottlenecks and improves the overall stability of the network and the fairness of traffic distribution.
[0086] (3) Dynamically adapt to changes in the network environment: When the load on all links is too high, the threshold T+N will be automatically increased to adapt to changes in the complex network environment. When the link load decreases, the threshold will be automatically lowered to dynamically adjust the link allocation strategy, which has strong adaptability.
[0087] (4) Heartbeat keep-alive mechanism improves reliability: Through the timed heartbeat detection mechanism, it can detect link failure in time and automatically redistribute traffic to other links. After the link is restored, it can be automatically included in the polling schedule to ensure high availability and fault tolerance of the network.
[0088] (5) Avoid frequent threshold adjustments: By designing a reasonable threshold increase and decrease mechanism, frequent threshold adjustments can be effectively avoided, reducing unnecessary computing overhead and thus maintaining efficient operation.
[0089] This embodiment realizes dynamic load balancing between links while minimizing the computational and management overhead. Specifically, this embodiment uses an optimized algorithm design to flexibly adjust the load distribution when detecting changes in link status, but avoids frequent computational operations in dynamic load balancing. This not only ensures that the loads of each link reach a relatively balanced state, but also effectively adapts to the dynamic changes in the link environment, whether it is traffic fluctuations or link performance differences. This embodiment pays special attention to improving the adaptability and efficiency of the system while reducing complexity, aiming to provide an efficient and low-overhead load balancing solution for complex and changeable network environments, solving the contradiction between performance and complexity in the prior art.
[0090] Embodiment 2
[0091] This embodiment provides a multi-link data transmission system based on a dual-active architecture, including:
[0092] An initial threshold calculation module is used to obtain the maximum bandwidth and historical load factor of all links, and calculate the initial threshold according to the maximum bandwidth and historical load factor of all links;
[0093] A polling scheduling module, used to establish a polling scheduling linked list, and perform polling scheduling according to the polling scheduling linked list and the initial threshold;
[0094] The polling scheduling process is specifically as follows:
[0095] Determine whether the IO traffic of all links is less than the initial threshold. If the IO traffic of all links is less than the initial threshold, the IO traffic is evenly distributed to each link. If there is a link with an IO traffic greater than the initial threshold among all links, the link with an IO traffic greater than the initial threshold is removed from the polling scheduling linked list, and then the IO traffic is evenly distributed to the remaining links. If the IO traffic of all links is greater than the initial threshold, a fixed value is added to the initial threshold, and all links are re-added to the polling linked list to start a new polling scheduling.
[0096] For the specific implementation content of each module in a multi-link data transmission system based on a dual-active architecture, please refer to the above definition of a multi-link data transmission method based on a dual-active architecture, which will not be repeated here.
[0097] Embodiment 3
[0098] This embodiment provides a computer-readable storage medium on which a computer program is stored. When the computer program is executed by a processor, the steps of a multi-link data transmission method based on an active-active architecture are implemented.
[0099] Embodiment 4
[0100] This embodiment provides a computer program product, including a computer program or an instruction, which, when executed by a processor, implements the steps of a multi-link data transmission method based on an active-active architecture.
[0101] The technical features of the above embodiments may be arbitrarily combined (as long as there is no contradiction in the combination of these technical features). To make the description concise, not all possible combinations of the technical features in the above embodiments are described; these embodiments that are not explicitly written should also be considered to be within the scope of this specification.
Claims
1. A multi-link data transmission method based on active-active architecture, characterized in that: The multi-link data transmission method based on the active-active architecture is applied to a scheduling server, comprising: Obtain the maximum bandwidth and historical load factor of all links, and calculate the initial threshold value according to the maximum bandwidth and historical load factor of all links; Establishing a polling scheduling linked list, and performing polling scheduling according to the polling scheduling linked list and the initial threshold; The polling scheduling process is specifically as follows: Determine whether the IO traffic of all links is less than the initial threshold. If the IO traffic of all links is less than the initial threshold, the IO traffic is evenly distributed to each link. If there is a link with an IO traffic greater than the initial threshold among all links, the link with an IO traffic greater than the initial threshold is removed from the polling scheduling linked list, and then the IO traffic is evenly distributed to the remaining links. If the IO traffic of all links is greater than the initial threshold, a fixed value is added to the initial threshold, and all links are re-added to the polling linked list to start a new polling scheduling.
2. The multi-link data transmission method based on active-active architecture according to claim 1, characterized in that: Also includes: Send heartbeat packets to each link regularly and determine whether a response is received within the specified time; If no response is received within the specified time, the link is judged to be failed, and the failed link is removed from the polling scheduling linked list.
3. The multi-link data transmission method based on active-active architecture according to claim 2, characterized in that: After the link fails, the heartbeat packet continues to be sent regularly. If a response is received within a specified time, it means that the failed link is restored and it is re-added to the polling scheduling linked list.
4. The multi-link data transmission method based on active-active architecture according to claim 1, characterized in that: The initial threshold calculation formula is: Where T is the initial threshold, n is the total number of links, and i is the i-th link.
5. The multi-link data transmission method based on active-active architecture according to claim 4, characterized in that: The historical load factor calculation process is specifically as follows: Define the historical time window; The load factor is obtained according to the historical data of the sampling link in the historical time window; the load factor calculation formula is: Where, t is time; The historical load average is calculated according to the load factor to obtain the historical load factor; the calculation formula of the historical load factor is: Where C is the number of samples in the historical time window.
6. The multi-link data transmission method based on active-active architecture according to claim 1, characterized in that: During the polling scheduling process, when the IO traffic of the removed link falls back to a reasonable range, it will be added back to the polling scheduling linked list.
7. The multi-link data transmission method based on active-active architecture according to claim 1, characterized in that: In the polling scheduling process, after a fixed value is added to the initial threshold, the threshold is restored to the initial threshold only when the IO flow of one link among all the links is lower than the initial threshold minus twice the fixed value.
8. A multi-link data transmission system based on a dual-active architecture, characterized in that: include: An initial threshold calculation module is used to obtain the maximum bandwidth and historical load factor of all links, and calculate the initial threshold according to the maximum bandwidth and historical load factor of all links; A polling scheduling module, used to establish a polling scheduling linked list, and perform polling scheduling according to the polling scheduling linked list and the initial threshold; The polling scheduling process is specifically as follows: Determine whether the IO traffic of all links is less than the initial threshold, and if the IO traffic of all links is less than the initial threshold, evenly distribute the IO traffic to each link; If there is a link among all the links whose IO traffic is greater than the initial threshold, the link whose IO traffic is greater than the initial threshold is removed from the polling scheduling linked list, and then the IO traffic is evenly distributed to the remaining links; if the IO traffic of all links is greater than the initial threshold, a fixed value is added to the initial threshold, and all links are re-added to the polling linked list to start a new polling scheduling.
9. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 7 are implemented.
10. A computer program product comprising a computer program or instructions, characterized in that When the computer program or instruction is executed by a processor, the steps of the method according to any one of claims 1 to 7 are implemented.