Dynamic path switching method and system, computer device and storage medium

CN116866247BActive Publication Date: 2026-09-22HAINAN UNIV
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202310682007.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-06-09
Publication Date
2026-09-22
Estimated Expiration
2043-06-09

AI Technical Summary

Technical Problem

主要体现在两个方面,一是网络的管理和控制处于在不同设备中,各设备协议版本纷乱复杂,难以进行整体网络的配置,不利于网络的管理;二是传输性能低下,传统网络一般采用单一路径进行数据传输,这对传输的灵活性以及保障性来讲都是非常大的挑战,导致传输过程中会产生单点故障或者瓶颈链路的情况发生

Benefits of technology

[0047]上述动态路径切换方法、系统、计算机设备及存储介质,通过实时检测数据流,进而实时检测到网络负载变化,便于对路径评判参数计算标准的权重参数进行调整,便于对各个路径进行评估,从而动态切换路径;通过动态评估路径并进行切换,可以使得网络负载均衡,提高网络传输效率。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116866247B_ABST
    Figure CN116866247B_ABST
Patent Text Reader

Abstract

The application relates to a dynamic path switching method and system, computer equipment and a storage medium. The method comprises the following steps: detecting a data stream in real time, and obtaining a data transmission size corresponding to the data stream; obtaining a path evaluation parameter calculation standard which is adjusted by a weight parameter, a node hop coefficient, a path load coefficient and a path quality coefficient; adjusting the weight parameter according to the data transmission size, updating the path evaluation parameter calculation standard according to the adjusted weight parameter, and constructing a path evaluation parameter set; determining a path set according to the path evaluation parameter set, calculating a total transmission performance of the path set, determining a transmission path from the path set according to the total transmission performance, and switching to the transmission path. The network load change is detected by detecting the data stream in real time, the weight parameter of the path evaluation parameter calculation standard is adjusted, the path is dynamically switched, the network load is balanced, and the network transmission efficiency is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of network communication technology, and in particular to a dynamic path switching method, system, computer device, and storage medium. Background Technology

[0002] In recent years, with the continuous development of network communication technology, the transmission strategies and efficiency of traditional network architectures have become somewhat inferior. This is mainly reflected in two aspects: first, network management and control are located in different devices, with diverse and complex protocol versions, making overall network configuration difficult and hindering network management; second, transmission performance is low. Traditional networks generally use a single path for data transmission, which poses a significant challenge to transmission flexibility and reliability, leading to single points of failure or bottlenecks during transmission. Although traditional networks utilize some static load balancing algorithms to address these issues, they are limited by the traditional network architecture and cannot achieve more efficient and reasonable load balancing.

[0003] Therefore, traditional static load balancing algorithms may overlook certain factors, leading to insufficient load balancing. When facing larger networks with frequent and sudden changes in various situations and requiring path switching, they suffer from poor performance and low network transmission efficiency. Summary of the Invention

[0004] In order to solve the above-mentioned technical problems, a dynamic path switching method, system, computer device and storage medium are provided, which can improve network transmission efficiency.

[0005] A dynamic path switching method, the method comprising:

[0006] Real-time detection of the data stream and acquisition of the data transmission size corresponding to the data stream;

[0007] The path evaluation parameter calculation standard is obtained and adjusted by weight parameters, node hop count coefficient, path load coefficient, and path quality coefficient.

[0008] The weight parameters are adjusted according to the data transmission size, and the path evaluation parameter calculation standard is updated according to the adjusted weight parameters to construct a path evaluation parameter set.

[0009] A path set is determined based on the path evaluation parameter set, the total path transmission performance of the path set is calculated, a transmission path is determined from the path set based on the total path transmission performance, and the transmission path is switched to.

[0010] In one embodiment, the method further includes:

[0011] Determine all global paths and periodically collect the path parameters corresponding to each of the global paths;

[0012] Generate the coefficients in the path evaluation parameter calculation standard based on the path parameters;

[0013] The path parameters include the flow time, bandwidth, packet loss ratio, and node hop count of traffic in each path.

[0014] In one embodiment, generating the coefficients in the path evaluation parameter calculation standard based on the path parameters includes:

[0015] Each candidate path is determined from the given paths, and based on the path parameters, the hop value S of the path with the most hops among the candidate paths is determined. max and the hop count S of the path with the fewest nodes visited min ;

[0016] Based on the path parameters, determine the path with the maximum number of hops among the candidate paths and the path S to be selected. i The difference in the number of nodes traversed |S max -S i | and determine the maximum difference (S-1)-S between the number of nodes traversed in each of the global paths. min ;

[0017] Based on the hop value S of the most paths max The minimum path hop count S min The difference in the number of nodes traversed |S max -S i | The maximum difference between the number of nodes visited (S-1)-S min Generate the node hop count coefficient Q Si ,in,

[0018] In one embodiment, generating the coefficients in the path evaluation parameter calculation standard based on the path parameters includes:

[0019] Calculate the bandwidth B per second of the i-th link in the path based on the path parameters. i And calculate the data transmission rate (1-loss) corresponding to the i-th link. i );

[0020] According to the aforementioned transmission bandwidth B i and data and transmission rate (1-loss) i ), calculate the effective transmission traffic successfully sent in the i-th link within the period Δt.

[0021] Calculate the total rated bandwidth of n paths globally. And calculate the total traffic that n lines can transmit within the period time Δt.

[0022] The path load coefficient Q is generated based on the effective transmission traffic, the total rated bandwidth, and the total traffic. Bi ,in,

[0023] In one embodiment, generating the coefficients in the path evaluation parameter calculation standard based on the path parameters includes:

[0024] Calculate the average bandwidth of n paths globally. And calculate the average round-trip time for n paths. RTT i This represents the delay of the i-th path;

[0025] Calculate the average packet loss rate for n paths. Where, loss i This represents the packet loss rate value for the i-th path;

[0026] The path quality coefficient Q is generated based on the average bandwidth, average round-trip time, and average packet loss rate. Ci ,in,

[0027] In one embodiment, the path evaluation parameter calculation standard is: Q score =α×Q Si +β×Q Bi +γ×Q Ci Where α, β, and γ are all weighting constants; Q Si Q is the node hop count coefficient; Bi Q is the path load factor; Ci This is the path quality coefficient.

[0028] In one embodiment, the step of adjusting the weight parameter according to the data transmission size and updating the path evaluation parameter calculation standard according to the adjusted weight parameter to construct a path evaluation parameter set includes:

[0029] Obtain the data transmission threshold, and compare the data transmission size with the data transmission threshold to obtain the comparison result;

[0030] Based on the comparison results, a routing decision is determined, and the target weight parameter corresponding to the routing decision is obtained. The weight parameter is replaced with the target weight parameter to obtain the updated path evaluation parameter calculation standard.

[0031] A set of path evaluation parameters is constructed based on the updated path evaluation parameter calculation standard.

[0032] A dynamic path switching system, the system comprising:

[0033] The data stream detection module is used to detect the data stream in real time and obtain the data transmission size corresponding to the data stream;

[0034] The path coefficient setting module is used to obtain the path evaluation parameter calculation standard, which is adjusted by weight parameters, node hop count coefficient, path load coefficient, and path quality coefficient.

[0035] The parameter adjustment module is used to adjust the weight parameters according to the data transmission size, and update the path evaluation parameter calculation standard according to the adjusted weight parameters to construct a path evaluation parameter set.

[0036] The routing decision module is used to determine a path set based on the path evaluation parameter set, calculate the total path transmission performance of the path set, determine a transmission path from the path set based on the total path transmission performance, and switch to the transmission path.

[0037] A computer device includes a memory and a processor, the memory storing a computer program, and the processor executing the computer program performing the following steps:

[0038] Real-time detection of the data stream and acquisition of the data transmission size corresponding to the data stream;

[0039] The path evaluation parameter calculation standard is obtained and adjusted by weight parameters, node hop count coefficient, path load coefficient, and path quality coefficient.

[0040] The weight parameters are adjusted according to the data transmission size, and the path evaluation parameter calculation standard is updated according to the adjusted weight parameters to construct a path evaluation parameter set.

[0041] A path set is determined based on the path evaluation parameter set, the total path transmission performance of the path set is calculated, a transmission path is determined from the path set based on the total path transmission performance, and the transmission path is switched to.

[0042] A computer-readable storage medium having a computer program stored thereon, the computer program performing the following steps when executed by a processor:

[0043] Real-time detection of the data stream and acquisition of the data transmission size corresponding to the data stream;

[0044] The path evaluation parameter calculation standard is obtained and adjusted by weight parameters, node hop count coefficient, path load coefficient, and path quality coefficient.

[0045] The weight parameters are adjusted according to the data transmission size, and the path evaluation parameter calculation standard is updated according to the adjusted weight parameters to construct a path evaluation parameter set.

[0046] A path set is determined based on the path evaluation parameter set, the total path transmission performance of the path set is calculated, a transmission path is determined from the path set based on the total path transmission performance, and the transmission path is switched to.

[0047] The aforementioned dynamic path switching method, system, computer equipment, and storage medium detect network load changes in real time by monitoring data flow. This facilitates the adjustment of weight parameters in the path evaluation calculation standard, enabling the evaluation of each path and thus dynamically switching paths. By dynamically evaluating and switching paths, network load can be balanced, improving network transmission efficiency. Attached Figure Description

[0048] Figure 1 This is an application environment diagram of the dynamic path switching method in one embodiment;

[0049] Figure 2 This is a flowchart illustrating a dynamic path switching method in one embodiment;

[0050] Figure 3 This is a schematic diagram of data transmission during experimental verification in one embodiment;

[0051] Figure 4 This is a schematic diagram showing the comparison of experimental results of throughput testing in one embodiment;

[0052] Figure 5 This is a structural block diagram of a dynamic path switching system in one embodiment;

[0053] Figure 6 This is an internal structural diagram of a computer device in one embodiment. Detailed Implementation

[0054] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.

[0055] The Dynamic Switching of the Path Management (DSPM) method provided in this application embodiment can be applied to, for example, Figure 1 The application environment shown. For example... Figure 1 As shown, the application environment includes an SDN controller 110. The SDN controller 110 can detect data flows in real time and obtain the data transmission size corresponding to the data flow; the SDN controller 110 can obtain the path evaluation parameter calculation standard, which is adjusted through weight parameters, node hop count coefficient, path load coefficient, and path quality coefficient; the SDN controller 110 can adjust the weight parameters according to the data transmission size and update the path evaluation parameter calculation standard according to the adjusted weight parameters, constructing a path evaluation parameter set; the SDN controller 110 can determine a path set based on the path evaluation parameter set, calculate the total path transmission performance of the path set, determine a transmission path from the path set based on the total path transmission performance, and switch to the transmission path.

[0056] In one embodiment, such as Figure 2 As shown, a dynamic path switching method is provided, including the following steps:

[0057] Step 202: Detect the data stream in real time and obtain the data transmission size corresponding to the data stream.

[0058] Clients can perform real-time data stream detection on the data to be transmitted, thereby calculating the corresponding data transmission size. Based on transmission size, data can be categorized into "elephant streams," "mouse streams," and others. Elephant streams refer to large data transmissions, such as file transfers exceeding 100MB, video streams, or backups. These streams typically require significant bandwidth and time to transmit; because they consume substantial network resources, they can congest other network traffic, thus impacting overall network performance. Mouse streams refer to small data transmissions, such as emails, web browsing, or instant messaging. These streams are usually more frequent than elephant streams but consume less bandwidth and transmission time; because they consume fewer network resources, they generally do not have a significant impact on overall network performance.

[0059] Step 204: Obtain the path evaluation parameter calculation standard. The path evaluation parameter calculation standard is adjusted by weight parameters, node hop count coefficient, path load coefficient, and path quality coefficient.

[0060] The calculation criteria for path evaluation parameters can be pre-set and used to comprehensively evaluate whether a path is optimal. Specifically, the calculation criteria for path evaluation parameters can be constructed using weight parameters, node hop count coefficients, path load coefficients, and path quality coefficients.

[0061] Step 206: Adjust the weight parameters according to the data transmission size, and update the path evaluation parameter calculation standard according to the adjusted weight parameters to construct a path evaluation parameter set.

[0062] Different data transmission sizes correspond to different weight parameters, and routing decisions can be determined based on these weight parameters.

[0063] Specifically, the path evaluation parameter calculation standard can be updated based on the weight parameters. The evaluation parameters of each path can be calculated based on the updated path evaluation parameter calculation standard, thereby constructing a path evaluation parameter set.

[0064] Step 208: Determine the path set based on the path evaluation parameter set, calculate the total path transmission performance of the path set, determine the transmission path from the path set based on the total path transmission performance, and switch to the transmission path.

[0065] The path determination parameter set can correspond to multiple paths, which are then combined into a path set. Next, by calculating the total transmission performance of each path in the path set, the selection of the chosen transmission path can be determined.

[0066] In this embodiment, the data stream is detected in real time, and the data transmission size corresponding to the data stream is obtained. A path evaluation parameter calculation standard is obtained, which is adjusted using weight parameters, node hop count coefficients, path load coefficients, and path quality coefficients. The weight parameters are adjusted according to the data transmission size, and the path evaluation parameter calculation standard is updated based on the adjusted weight parameters to construct a path evaluation parameter set. A path set is determined based on the path evaluation parameter set, the total path transmission performance of the path set is calculated, and a transmission path is determined from the path set based on the total path transmission performance, and the path is switched to. By detecting the data stream in real time, changes in network load are detected in real time, facilitating the adjustment of the weight parameters of the path evaluation parameter calculation standard, and enabling the evaluation of each path, thereby dynamically switching paths. By dynamically evaluating paths and switching them, network load balancing can be achieved, improving network transmission efficiency.

[0067] In one embodiment, a dynamic path switching method may further include a process of collecting global path parameters. The specific process includes: determining each global path and periodically collecting the path parameters corresponding to each global path; generating various coefficients in the path evaluation parameter calculation standard based on the path parameters; wherein, the path parameters include the flow time, bandwidth, packet loss ratio, and node hop count of traffic in each path.

[0068] Specifically, due to the significant differences in network conditions at different stages, and even within the same network at different times, conditions can vary greatly, making it difficult for a single routing strategy to efficiently handle various situations. However, under an SDN architecture, each SDN controller can periodically collect path parameters in each cycle to ensure that dynamic transmission routing methods can handle unexpected situations more rationally and effectively. The collected parameters mainly include the time Δt for traffic to flow through each link in each cycle, the real-time rate (i.e., bandwidth) B of traffic flowing through each link, the packet loss ratio (loss) of each link, and the number of hops S traversed by the traffic transmission.

[0069] In one embodiment, a dynamic path switching method may further include defining a node hop count coefficient Q. Si The process specifically includes: determining each candidate path from the various paths, and based on the path parameters, determining the hop value S of the path with the most hops among the candidate paths. max and the hop count S of the path with the fewest nodes visited min Based on the path parameters, determine the path with the maximum number of hops among the candidate paths and the path S to be selected. i The difference in the number of nodes traversed |S max -S i | and determine the maximum difference (S-1)-S between the number of nodes traversed in each path globally. min Based on the hop count S of the most paths max The minimum path hop count S min The difference in the number of nodes traversed |S max -S i | The maximum difference between the number of nodes visited (S-1)-S min Generate node hop count coefficient Q Si ,in,

[0070] Specifically, in this embodiment, since in a network topology with S (S≥2) nodes, without traversing loops, reaching any node in the topology will always occur after passing through at most (S-1) nodes, the maximum node hop count in the topology is (S-1). In fact, since |S max -S i |≤(S-1)-S min Therefore, 0 ≤ Q Si ≤1 reflects the number of nodes traversed by the i-th path. Generally speaking, when the transmission capacity is much greater than the transmission demand, the path with the fewest hops is still the optimal choice.

[0071] In this embodiment, the RIP routing algorithm selects the optimal path by calculating the distance to the destination network (i.e., hop count) to achieve routing forwarding. However, while the RIP protocol is widely used in small networks, its high computational complexity makes it difficult to adapt to the needs of large, complex networks. To intuitively demonstrate the hop count of a node, this embodiment defines a node hop count coefficient Q. Si , can represent the difference between the number of hops on the i-th path and the maximum number of hops on the path, where Q is the node hop count coefficient. Si A higher value indicates fewer hops between the source and destination addresses, meaning faster arrival times.

[0072] In one embodiment, a dynamic path switching method may further include defining a path load factor Q. Bi The process specifically includes: calculating the transmission bandwidth B per second in the i-th link of the path based on the path parameters. i And calculate the data transmission rate (1-loss) corresponding to the i-th link. i According to the bandwidth B per second i and data and transmission rate (1-loss) i ), calculate the effective transmission traffic successfully sent in the i-th link within the period Δt. Calculate the total rated bandwidth of n paths globally. And calculate the total traffic that n lines can transmit within the period time Δt. The path load factor Q is generated based on the effective transmission traffic, the total rated bandwidth, and the total traffic. Bi ,in,

[0073] During network transportation, certain links, due to their relatively central position in the topology or their superior throughput performance, are frequently occupied, potentially leading to a rapid decline in path transmission performance. Meanwhile, paths at the edges have relatively low utilization, further exacerbating centralization. To reasonably assess the load on each link over a period Δt, assuming there are n reachable paths in the network, a path load coefficient Q is defined. Bi , where 0≤Q Bi ≤1, Path load factor Q Bi It represents the percentage of the rated bandwidth of all reachable paths that was successfully transmitted on the i-th link within a period, and it can intuitively reflect the transmission load of the i-th link at that time.

[0074] In one embodiment, a dynamic path switching method may further include defining a path quality coefficient Q. Ci The process specifically includes: calculating the average bandwidth of n paths globally. And calculate the average round-trip time for n paths. RTT i Indicate the delay of the i-th path; calculate the average packet loss rate of the n paths. Where, loss i Let represent the packet loss rate of the i-th path; generate the path quality coefficient Q based on the average bandwidth, average round-trip time, and average packet loss rate. Ci ,in,

[0075] When evaluating the quality of a network path, hop count and load are just some of the factors that help in a quick assessment. In reality, many factors influence communication links, such as bandwidth, latency, packet loss, and others. Therefore, this embodiment defines a path quality coefficient Q. Ci It allows for a more granular assessment of path quality, and its standard deviation can be used to determine path stability.

[0076] Specifically, in this embodiment, in order to more accurately describe the path quality coefficient Q... Ci This can be addressed by introducing knowledge of calculus. Calculus can be used to describe the rate of change of a function, thus providing a more accurate description of the trend in path score changes. The main purpose of introducing calculus is to determine Q. Ci The stability of the network is crucial because most scenarios don't require high bandwidth; instead, a stable and sustainable network is essential. A high-bandwidth but unstable network is often more difficult to operate than a low-bandwidth but stable network. This is especially true for applications requiring real-time performance, such as video conferencing and online gaming, where network stability is paramount.

[0077] Specifically, the path quality coefficient can be expressed as a function of time, i.e., Q(t). The rate of change of the path score is Q′(t), which can also be expressed as... To assess how quickly a path quality coefficient changes, one can consider the absolute value of the rate of change of the path score, i.e., |Q′(t)|. If Q... Ci If the rate of change remains stable over a certain period of time, it can be considered that Q remains stable over that period of time. Ci Changes in Q have little impact on network performance. Therefore, Q can be calculated. Ci The rate of change, its formula is: The standard deviation of the network path is used to evaluate its stability. The average rate of change of the path quality coefficient is represented by t0 and t1, which represent the start and end times of the time period, respectively; the standard deviation σ of the rate of change of the path quality coefficient is also represented by t0. Q The smaller the value, the more stable the path quality coefficient, and the more stable the network path performance; where σ Q This is a follow-up to QCi One auxiliary criterion for judgment is to intuitively assess the stability of the path from a data perspective. Generally speaking, σ Q It's best not to exceed 10%.

[0078] In one embodiment, a dynamic path switching method may further include defining a path evaluation parameter calculation standard Q. score The process in which Q score =α×Q Si +β×Q Bi +γ×Q Ci Where α, β, and γ are all weighting constants; Q Si Q is the node hop count coefficient; Bi Q is the path load factor; Ci This is the path quality coefficient.

[0079] In this embodiment, a preliminary assessment of the performance and status of the path within each cycle has been made. However, a single routing method is clearly insufficient to handle complex and diverse network environments. Therefore, a good routing method should select different routing methods based on different network path conditions. In the decision module, the judgment coefficient results of different path nodes can be imported, and the path evaluation parameter calculation standard Q can be defined. score We weight the judgment coefficients of different path nodes to achieve a more rational use of each parameter.

[0080] During the initialization phase, the default values ​​are (α,β,γ)=(1,0,0). However, due to network fluctuations, the role of each path varies under different environments. After a transmission time period T, the values ​​of weights α, β, and γ need to be adjusted again to change the path evaluation values ​​under different environments, which is beneficial for timely and reasonable adjustment and switching of path routes.

[0081] In one embodiment, it is assumed that there are n paths in the network that can reach the destination, and the path set is U = {a} i |1≤i≤n}. Definition These are the parameters for the comprehensive evaluation path of the i-th path. The following is constructed: The set, i.e. Sort them from high to low to get

[0082] At this point, you can select Q. score The top k paths with the largest values ​​are selected as priority subflows. Generally, k = [0.5n + 1], k ≤ n, indicating that the value of k is rounded down; Q... score Let U* be the set of preferred paths, and its expression is: In addition, to accurately determine the total transmission performance of the first k paths, the delay-bandwidth product (BDP) of these k sub-streams is defined.Σ , Among them, BW j Let represent the rated bandwidth of substream j, where j∈(1,k); RTT represents the total bandwidth of k substreams; max This represents the maximum RTT (Round-Trip Time) among the k substreams.

[0083] In one embodiment, a dynamic path switching method may further include a path decision-making process, which includes: obtaining a data transmission threshold and comparing the data transmission size with the data transmission threshold to obtain a comparison result; determining a routing decision based on the comparison result and obtaining a target weight parameter corresponding to the routing decision; replacing the weight parameter with the target weight parameter to obtain an updated path evaluation parameter calculation standard; and constructing a path evaluation parameter set based on the updated path evaluation parameter calculation standard.

[0084] The data transmission threshold can be a data segment, which can be used to determine whether it's a mouse flow or an elephant flow. The weight parameters are initially set to (α,β,γ) = (1,0,0), i.e., Q0. score =Q Si .

[0085] If it's a mouse flow, the routing decision is g1. When transmitting a mouse flow, choosing the shortest path might be the optimal path because most of the bandwidth resources on the network path are idle. Choosing the shortest path allows data packets to reach their destination in the shortest time, meeting the requirement of low latency in mouse flow transmission and helping to improve transmission efficiency. However, it's important to note that the shortest path is not always the optimal path because network conditions change dynamically. As network load changes, the original shortest path may become congested, while other paths may become smoother. In this case, choosing the shortest path is not the best choice. Therefore, in practical applications, it's necessary to choose the most suitable path based on the actual network conditions and transmission requirements, rather than simply choosing the shortest path.

[0086] In data center networks, bandwidths less than 1Mb are generally considered to be "rat streams". Define R... s The size of the data that the current data stream needs to transmit can be represented as: R s ≤1Mb indicates that the amount of data to be transmitted is much smaller than the transmission capacity of the first k paths.

[0087] For the mouse flow, shorter and higher-performing paths can be selected because these paths can transmit data faster, and idle paths have sufficient bandwidth resources, resulting in high transmission efficiency. Therefore, the weighting coefficients α, β, and γ are assigned values ​​of 0.5, 0, and 0.5, respectively; that is, in this state, the node hop count coefficient and the path quality coefficient Q can be the primary focus.Ci At this time, Q score The expression is: Q score =0.5Q Si +0.5Q Ci The preferred path set U can be obtained using the preferred path selection algorithm. * The expression is: For the mouse stream, the first two paths with the largest values ​​can be selected for transmission.

[0088] If it is an elephant flow, the routing decision is g2. When transmitting elephant flows, it is necessary to select a path with greater bandwidth, and the number of hops may not be the primary consideration. However, current algorithms consider the number of hops too much, which may cause problems such as path congestion or excessive transmission latency. Therefore, when transmitting large data packets, DSPM will focus on the path bandwidth to reduce transmission time and improve path transmission efficiency.

[0089] As network bandwidth demands increase, traffic typically requires significant bandwidth and time to transmit. In this case, the amount of data to be transmitted exceeds the transmission capacity of all paths in the preferred path set. Define R... s The size of the data that the current data stream needs to transmit can be represented as: R s ≥100BDP Σ The weighting coefficients α, β, and γ are adjusted to 0, 0.8, and 0.2, respectively. This is because the new host needs to avoid choosing overly congested paths, as this would lead to increased latency and packet loss, impacting network performance and stability. The focus here is on improving the overall network transport capacity by utilizing alternative sub-stream paths for parallel data transmission, thereby enhancing transmission performance. Setting β and γ to weights of 0.8 and 0.2 respectively yields a reasonable Q-value. score At this time, Q score =0.8Q Bi +0.2Q Ci At this point, the preferred path set U can be selected. * All sub-streams are transmitted, U * There are k substreams. Its expression is:

[0090]

[0091] Besides large and small traffic volumes, networks may also transmit other traffic requests. These requests may not conform to the characteristics of elephant or mouse flows. In such cases, we need to conduct a comprehensive analysis of the selected paths to choose the most suitable transmission path, which helps to allocate and utilize network resources more rationally. If the required traffic volume falls between mouse and elephant flows, i.e., 1Mb ≤ R... s≤100BDP Σ At this point, we can assign the value 1 / 3 to each of the three coefficients α, β, and γ, and Q. score The expression is updated to: At this point, all parameters affecting path performance are considered comprehensively, including hop count, bandwidth, and sub-flow characteristics. This approach appropriately considers the transmission capacity of the central path while also reasonably evaluating edge network resources, contributing to load balancing across the entire network. The corresponding preferred path set U* is expressed as: At this point, no more than three substreams in U* are used for transmission; the specific details will depend on Q. score The value is used to make a decision, if Q (4) score The parameter Q represents the evaluation path of the 4th path. score , Q represents the largest path among all paths. score If the equation holds true, it means that the fourth path is in an extremely unstable state, so we choose not to consider adding this sub-stream to the transmission.

[0092] It should be understood that although the steps in the flowchart above are shown sequentially as indicated by the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowchart above may include multiple sub-steps or multiple stages. These sub-steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these sub-steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the sub-steps or stages of other steps.

[0093] In one embodiment, an experiment was conducted on a provided dynamic path switching method. The experimental procedure is as follows:

[0094] To verify the performance of DSPM, the dynamic path switching method was implemented in the Linux kernel and tested using the Mininet emulator. Specifically, the experiment used a microcomputer, HP Compaq 8200 Elite SFFPC, with the following specifications: processor... Core TMThe system consists of an i5-2400 3.10GHz processor, 4GB of RAM, running Windows 7 64-bit with VirtualBox OracleVM version 4.2.12 installed. Under VirtualBox management, the following guest operating systems are installed on this microcomputer: a Mininet emulator version 2.0 running Ubuntu 10.12 64-bit with 1GB of RAM; and an RYU controller version v3.16 running Ubuntu 12.10 64-bit with 256MB of RAM.

[0095] To simplify the experimental design, this experiment uses an abstract four transmission paths as an example, divided into two phases: 0-60s involves simple communication testing, while 60-120s involves a test file size of 225Mb. Scenarios with more than four paths are also applicable, primarily to demonstrate the algorithm's operation. In the simulated scenario, one can... Figure 3 The topology in the code creates three hosts, two switches, and one controller, and connects all the nodes via wired links.

[0096] Regarding the path, from Figure 3 As can be seen, S1->R3->S2 is the shortest path. The shortest path is calculated using the widely used Dijkstra algorithm, and this path is set as the default route for all hosts. In addition, in this experimental scenario, we set three other main paths and configured their corresponding parameters. The specific parameter settings for all paths are shown in Table 1, as follows:

[0097] Table 1 Initial state parameters of the path

[0098]

[0099] In the experiment, two clients, h1 and h2, and a file server were set up. The total experiment duration was 120 seconds. During the first 60 seconds, h1 transmitted data, but h1 only performed simple communication, so a mouse-stream strategy was adopted. During the second 60-120 seconds, h2 and h3 also participated in the transmission. As shown in Table 1, the priority sub-stream had a 100BDP. Σ It is approximately 140Mb, which is less than the required data transfer amount of 225Mb, or 100BDP. Σ ≤R s Therefore, the elephant flow routing strategy is adopted.

[0100] The server monitors detailed transmission traffic and uses the monitored average traffic to determine the performance difference between the traditional shortest path algorithm (Dijkstra) and the DSPM proposed in this paper, in order to verify the effectiveness of DSPM.

[0101] Experimental results are as follows Figure 4 As shown in the figure, during the 0-60s period, when DSPM uses the mouse-flow strategy, it uses the two paths with the least latency for concurrent transmission. For small data streams, choosing this path, although it doesn't maximize throughput, can significantly shorten transmission time. However, during the 60s-120s period, clients h2 and h3 suddenly join and begin transferring large files, which is consistent with a surge in data center network traffic. After evaluation, this scenario is suitable for elephant-flow scenarios, so the elephant-flow strategy is adopted. At this time, DSPM utilizes Q... score Evaluate the quality of all sub-streams. At this point, DSPM simultaneously utilizes path 1, path 3, and path 4 for multipath transmission, significantly increasing bandwidth.

[0102] Furthermore, during the 60-120s period, the traditional shortest path algorithm Dijkstra defaults to using path 2 as the sole communication link. However, even when path 2 is fully utilized, it can only achieve a bandwidth of 20Mbps. Therefore, this algorithm is suitable for scenarios with low network traffic demand and requiring fast transmission. But in situations like data center data bursts, this algorithm cannot handle such sudden events, leading to wasted network resources and low transmission efficiency, which clearly does not meet practical needs.

[0103] In addition, from Figure 4 As can be seen from the data, the DSPM algorithm completed the transfer of a 225Mb test file in 120s, while the Dijkstra algorithm only transferred about 110Mb at the same time. Therefore, theoretically, the latter would require more transfer time to complete the file transfer.

[0104] In one embodiment, such as Figure 5 As shown, a dynamic path switching system is provided, including: a data flow detection module 510, a path coefficient setting module 520, a parameter adjustment module 530, and a route decision module 540, wherein:

[0105] The data stream detection module 510 is used to detect the data stream in real time and obtain the data transmission size corresponding to the data stream;

[0106] The path coefficient setting module 520 is used to obtain the path evaluation parameter calculation standard. The path evaluation parameter calculation standard is adjusted by weight parameters, node hop count coefficient, path load coefficient, and path quality coefficient.

[0107] The parameter adjustment module 530 is used to adjust the weight parameters according to the data transmission size, and update the path evaluation parameter calculation standard according to the adjusted weight parameters to construct a path evaluation parameter set.

[0108] The routing decision module 540 is used to determine the path set based on the path evaluation parameter set, calculate the total path transmission performance of the path set, determine the transmission path from the path set based on the total path transmission performance, and switch to the transmission path.

[0109] In one embodiment, the provided dynamic path switching system may further include a parameter collection module for determining all global paths and periodically collecting path parameters corresponding to each global path; generating various coefficients in the path evaluation parameter calculation standard based on the path parameters; wherein, the path parameters include the flow time, bandwidth, packet loss ratio, and node hop count of traffic in each path.

[0110] In one embodiment, the path coefficient setting module 520 is further configured to determine each candidate path from the various paths, and based on the path parameters, determine the hop value S of the path with the most hops among the candidate paths. max and the hop count S of the path with the fewest nodes visited min Based on the path parameters, determine the path with the maximum number of hops among the candidate paths and the path S to be selected. i The difference in the number of nodes traversed |S max -S i | and determine the maximum difference (S-1)-S between the number of nodes traversed in each path globally. min Based on the hop count S of the most paths max The minimum path hop count S min The difference in the number of nodes traversed |S max -S i | The maximum difference between the number of nodes visited (S-1)-S min Generate node hop count coefficient Q Si ,in,

[0111] In one embodiment, the path coefficient setting module 520 is further configured to calculate the transmission bandwidth B per second in the i-th link of the path based on the path parameters. i And calculate the data transmission rate (1-loss) corresponding to the i-th link. i According to the bandwidth B per second i and data and transmission rate (1-loss) i ), calculate the effective transmission traffic successfully sent in the i-th link within the period Δt. Calculate the total rated bandwidth of n paths globally. And calculate the total traffic that n lines can transmit within the period time Δt. The path load factor Q is generated based on the effective transmission traffic, the total rated bandwidth, and the total traffic. Bi ,in,

[0112] In one embodiment, the path coefficient setting module 520 is also used to calculate the average bandwidth value of n paths globally. And calculate the average round-trip time for n paths. RTT i Indicate the delay of the i-th path; calculate the average packet loss rate of the n paths. Where, loss i Let represent the packet loss rate of the i-th path; generate the path quality coefficient Q based on the average bandwidth, average round-trip time, and average packet loss rate. Ci ,in,

[0113] In one embodiment, the path evaluation parameter calculation standard is: Q score =α×Q Si +β×Q Bi +γ×Q Ci Where α, β, and γ are all weighting constants; Q Si Q is the node hop count coefficient; Bi Q is the path load factor; Ci This is the path quality coefficient.

[0114] In one embodiment, the routing decision module 540 is further configured to obtain a data transmission threshold, compare the data transmission size with the data transmission threshold to obtain a comparison result; determine a routing decision based on the comparison result, obtain the target weight parameter corresponding to the routing decision, replace the weight parameter with the target weight parameter to obtain an updated path evaluation parameter calculation standard; and construct a path evaluation parameter set based on the updated path evaluation parameter calculation standard.

[0115] In one embodiment, a computer device is provided, which may be a terminal, and its internal structure diagram may be as follows: Figure 6 As shown, the computer device includes a processor, memory, network interface, display screen, and input devices connected via a system bus. The processor provides computing and control capabilities. The memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system and computer programs. The internal memory provides an environment for the operation of the operating system and computer programs stored in the non-volatile storage media. The network interface is used to communicate with external terminals via a network connection. When the computer program is executed by the processor, it implements a dynamic path switching method. The display screen can be an LCD screen or an e-ink display screen. The input devices can be a touch layer covering the display screen, buttons, a trackball, or a touchpad mounted on the computer device casing, or an external keyboard, touchpad, or mouse.

[0116] Those skilled in the art will understand that Figure 6 The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.

[0117] In one embodiment, a computer device is provided, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to perform the following steps:

[0118] Real-time detection of data streams and acquisition of the corresponding data transmission size;

[0119] Obtain the calculation standard for path evaluation parameters. The calculation standard for path evaluation parameters is adjusted by weight parameters, node hop count coefficient, path load coefficient, and path quality coefficient.

[0120] The weight parameters are adjusted according to the data transmission size, and the path evaluation parameter calculation standard is updated according to the adjusted weight parameters to construct a path evaluation parameter set.

[0121] The path set is determined based on the path evaluation parameter set, the total path transmission performance of the path set is calculated, the transmission path is determined from the path set based on the total path transmission performance, and the transmission path is switched to.

[0122] In one embodiment, when the processor executes the computer program, it also performs the following steps: determining all global paths and periodically collecting path parameters corresponding to each global path; generating various coefficients in the path evaluation parameter calculation standard based on the path parameters; wherein, the path parameters include the flow time, bandwidth, packet loss ratio, and node hop count of traffic in each path.

[0123] In one embodiment, when the processor executes the computer program, it further performs the following steps: determining each candidate path from the various paths, and determining the hop value S of the path with the most hops among the candidate paths based on the path parameters. max and the hop count S of the path with the fewest nodes visited min Based on the path parameters, determine the path with the maximum number of hops among the candidate paths and the path S to be selected. i The difference in the number of nodes traversed |S max -S i | and determine the maximum difference (S-1)-S between the number of nodes traversed in each path globally. min Based on the hop count S of the most paths max The minimum path hop count S min The difference in the number of nodes traversed |S max -Si | The maximum difference between the number of nodes visited (S-1)-S min Generate node hop count coefficient Q Si ,in,

[0124] In one embodiment, the processor, when executing the computer program, further performs the following steps: calculating the bandwidth B per second of the i-th link in the path based on the path parameters. i And calculate the data transmission rate (1-loss) corresponding to the i-th link. i According to the bandwidth B per second i and data and transmission rate (1-loss) i ), calculate the effective transmission traffic successfully sent in the i-th link within the period Δt. Calculate the total rated bandwidth of n paths globally. And calculate the total traffic that n lines can transmit within the period time Δt. The path load factor Q is generated based on the effective transmission traffic, the total rated bandwidth, and the total traffic. Bi ,in,

[0125] In one embodiment, the processor, while executing the computer program, also performs the following steps: calculating the average bandwidth of n paths globally. And calculate the average round-trip time for n paths. RTT i Indicate the delay of the i-th path; calculate the average packet loss rate of the n paths. Where, loss i Let represent the packet loss rate of the i-th path; generate the path quality coefficient Q based on the average bandwidth, average round-trip time, and average packet loss rate. Ci ,in,

[0126] In one embodiment, the path evaluation parameter calculation standard is: Q score =α×Q Si +β×Q Bi +γ×Q Ci Where α, β, and γ are all weighting constants; Q Si Q is the node hop count coefficient; Bi Q is the path load factor; Ci This is the path quality coefficient.

[0127] In one embodiment, when the processor executes the computer program, it further performs the following steps: obtaining a data transmission threshold and comparing the data transmission size with the data transmission threshold to obtain a comparison result; determining a routing decision based on the comparison result and obtaining the target weight parameter corresponding to the routing decision, replacing the weight parameter with the target weight parameter to obtain an updated path evaluation parameter calculation standard; and constructing a path evaluation parameter set based on the updated path evaluation parameter calculation standard.

[0128] In one embodiment, a computer-readable storage medium is provided having a computer program stored thereon, the computer program performing the following steps when executed by a processor:

[0129] Real-time detection of data streams and acquisition of the corresponding data transmission size;

[0130] Obtain the calculation standard for path evaluation parameters. The calculation standard for path evaluation parameters is adjusted by weight parameters, node hop count coefficient, path load coefficient, and path quality coefficient.

[0131] The weight parameters are adjusted according to the data transmission size, and the path evaluation parameter calculation standard is updated according to the adjusted weight parameters to construct a path evaluation parameter set.

[0132] The path set is determined based on the path evaluation parameter set, the total path transmission performance of the path set is calculated, the transmission path is determined from the path set based on the total path transmission performance, and the transmission path is switched to.

[0133] In one embodiment, when the computer program is executed by the processor, it also performs the following steps: determining all global paths and periodically collecting path parameters corresponding to each global path; generating various coefficients in the path evaluation parameter calculation standard based on the path parameters; wherein, the path parameters include the flow time, bandwidth, packet loss ratio, and node hop count of traffic in each path.

[0134] In one embodiment, when the computer program is executed by the processor, it further performs the following steps: determining each candidate path from the various paths, and determining the hop value S of the path with the most hops among the candidate paths based on the path parameters. max and the hop count S of the path with the fewest nodes visited min Based on the path parameters, determine the path with the maximum number of hops among the candidate paths and the path S to be selected. i The difference in the number of nodes traversed |S max -S i | and determine the maximum difference (S-1)-S between the number of nodes traversed in each path globally. min Based on the hop count S of the most paths max The minimum path hop count S min The difference in the number of nodes traversed |S max-S i | The maximum difference between the number of nodes visited (S-1)-S min Generate node hop count coefficient Q Si ,in,

[0135] In one embodiment, when the computer program is executed by the processor, it further performs the following steps: calculating the transmission bandwidth B per second in the i-th link of the path based on the path parameters. i And calculate the data transmission rate (1-loss) corresponding to the i-th link. i According to the bandwidth B per second i and data and transmission rate (1-loss) i ), calculate the effective transmission traffic successfully sent in the i-th link within the period Δt. Calculate the total rated bandwidth of n paths globally. And calculate the total traffic that n lines can transmit within the period time Δt. The path load factor Q is generated based on the effective transmission traffic, the total rated bandwidth, and the total traffic. Bi ,in,

[0136] In one embodiment, when the computer program is executed by a processor, it further performs the following steps: calculating the average bandwidth value of n paths globally. And calculate the average round-trip time for n paths. RTT i Indicate the delay of the i-th path; calculate the average packet loss rate of the n paths. Where, loss i Let represent the packet loss rate of the i-th path; generate the path quality coefficient Q based on the average bandwidth, average round-trip time, and average packet loss rate. Ci ,in,

[0137] In one embodiment, the path evaluation parameter calculation standard is: Q score =α×Q Si +β×Q Bi +γ×Q Ci Where α, β, and γ are all weighting constants; Q Si Q is the node hop count coefficient; Bi Q is the path load factor; Ci This is the path quality coefficient.

[0138] In one embodiment, when the computer program is executed by the processor, it further performs the following steps: obtaining a data transmission threshold and comparing the data transmission size with the data transmission threshold to obtain a comparison result; determining a routing decision based on the comparison result and obtaining the target weight parameter corresponding to the routing decision, replacing the weight parameter with the target weight parameter to obtain an updated path evaluation parameter calculation standard; and constructing a path evaluation parameter set based on the updated path evaluation parameter calculation standard.

[0139] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium, and when executed, it can include the processes of the embodiments of the above methods. Any references to memory, storage, databases, or other media used in the embodiments provided in this application can include non-volatile and / or volatile memory. Non-volatile memory can include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), or flash memory. Volatile memory can include random access memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in various forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), dual data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous link DRAM (SLDRAM), Rambus direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM), etc.

[0140] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0141] The embodiments described above are merely illustrative of several implementation methods of this application, and while the descriptions are relatively specific and detailed, they should not be construed as limiting the scope of the invention patent. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this patent application should be determined by the appended claims.

Claims

1. A dynamic path switching method, characterized in that, The method includes: Real-time detection of the data stream and acquisition of the data transmission size corresponding to the data stream; The system obtains a path evaluation parameter calculation standard, which is adjusted through weight parameters, node hop count coefficients, path load coefficients, and path quality coefficients. It then determines all global paths and periodically collects the path parameters corresponding to each of these paths. Based on the path parameters, it generates various coefficients in the path evaluation parameter calculation standard, including: determining candidate paths from among the various paths; and, based on the path parameters, determining the hop count of the path with the highest number of node hops among the candidate paths. and the hop count of the path with the fewest nodes visited. Based on the path parameters, determine the path with the maximum number of hops among the candidate paths and the path to be selected. The difference in the number of nodes visited And determine the maximum difference in the number of nodes traversed in each of the global paths. S represents the number of hops the traffic transmission traverses; based on the hop count of the maximum path. , minimum path hop count The difference in the number of nodes visited The maximum difference between the number of nodes visited Generate the node hop count coefficient ,in, The path parameters include the flow time, bandwidth, packet loss ratio, and node hop count of traffic in each path. The weight parameters are adjusted according to the data transmission size, and the path evaluation parameter calculation standard is updated according to the adjusted weight parameters to construct a path evaluation parameter set. A path set is determined based on the path evaluation parameter set, the total path transmission performance of the path set is calculated, a transmission path is determined from the path set based on the total path transmission performance, and the transmission path is switched to.

2. The dynamic path switching method according to claim 1, characterized in that, The step of generating the coefficients in the path evaluation parameter calculation standard based on the path parameters includes: Calculate the path parameter based on the path parameters. bandwidth per second in the link And calculate the first Data transmission rate corresponding to each link ; According to the transmission bandwidth per second And data and transmission rate Calculation in period Inner Valid transmission traffic successfully sent in the link ; Calculate the total rated bandwidth of n paths globally. And calculate the cycle time. The total traffic that can be transmitted by the n innermost lines. ; The path load factor is generated based on the effective transmission traffic, the total rated bandwidth, and the total traffic. ,in, .

3. The dynamic path switching method according to claim 2, characterized in that, The step of generating the coefficients in the path evaluation parameter calculation standard based on the path parameters includes: Calculate the average bandwidth of n paths globally. And calculate the average round-trip time for the n paths. ; This represents the delay of the i-th path; Calculate the average packet loss rate for n paths. ;in, This represents the packet loss rate value for the i-th path; The path quality coefficient is generated based on the average bandwidth, average round-trip time, and average packet loss rate. ,in, .

4. The dynamic path switching method according to claim 3, characterized in that, The calculation standard for the path evaluation parameters is as follows: ,in, , , All are weighting constants; This is the node hop count coefficient; This is the path load factor; This is the path quality coefficient.

5. The dynamic path switching method according to claim 1, characterized in that, The step involves adjusting the weight parameters based on the data transmission size and updating the path evaluation parameter calculation criteria based on the adjusted weight parameters to construct a path evaluation parameter set, including: Obtain the data transmission threshold, and compare the data transmission size with the data transmission threshold to obtain the comparison result; Based on the comparison results, a routing decision is determined, and the target weight parameter corresponding to the routing decision is obtained. The weight parameter is replaced with the target weight parameter to obtain the updated path evaluation parameter calculation standard. A set of path evaluation parameters is constructed based on the updated path evaluation parameter calculation standard.

6. A dynamic path switching system, characterized in that, The system includes: The data stream detection module is used to detect the data stream in real time and obtain the data transmission size corresponding to the data stream; The path coefficient setting module is used to obtain the path evaluation parameter calculation standard, which is adjusted through weight parameters, node hop count coefficient, path load coefficient, and path quality coefficient; determine all global paths and periodically collect the path parameters corresponding to each of the global paths; generate each coefficient in the path evaluation parameter calculation standard based on the path parameters, including: determining each candidate path from the various paths, and determining the hop value of the path with the most node hops among the candidate paths based on the path parameters. and the hop count of the path with the fewest nodes visited. Based on the path parameters, determine the path with the maximum number of hops among the candidate paths and the path to be selected. The difference in the number of nodes visited And determine the maximum difference in the number of nodes traversed in each of the global paths. S represents the number of hops the traffic transmission traverses; based on the hop count of the maximum path. , minimum path hop count The difference in the number of nodes visited The maximum difference between the number of nodes visited Generate the node hop count coefficient ,in, The path parameters include the flow time, bandwidth, packet loss ratio, and node hop count of traffic in each path. The parameter adjustment module is used to adjust the weight parameters according to the data transmission size, and update the path evaluation parameter calculation standard according to the adjusted weight parameters to construct a path evaluation parameter set. The routing decision module is used to determine a path set based on the path evaluation parameter set, calculate the total path transmission performance of the path set, determine a transmission path from the path set based on the total path transmission performance, and switch to the transmission path.

7. A computer device comprising a memory and a processor, wherein the memory stores a computer program, characterized in that, When the processor executes the computer program, it implements the steps of the method according to any one of claims 1 to 5.

8. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 5.

Citation Information

Patent Citations

  • Route selection method and device and gateway

    CN106535276A

  • Transmission path determination method and device, computer equipment and storage medium

    CN115175265A