Congestion control method and device of network equipment, computer equipment and medium

By comprehensively considering the global status information of network equipment and multi-dimensional congestion metric calculations and dynamically selecting paths, the security risks of traditional encryption methods in the face of user dynamic changes and diversity needs, and efficient congestion management and reliability improvement of network equipment are achieved.

CN120416166AActive Publication Date: 2025-08-01INSPUR SUZHOU INTELLIGENT TECH CO LTD

Patent Information

Application Number
CN202510838813.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-06-23
Publication Date
2025-08-01
Estimated Expiration
2045-06-23

AI Technical Summary

Technical Problem

Traditional encryption methods rely on fixed keys and algorithms, which are difficult to meet users' needs for personalized and intelligent encryption methods, and there are security risks of key leakage and insufficient encryption strength.

Method used

By comprehensively considering the global network status information of multiple network devices, combining multi-dimensional congestion metric calculation and dynamic path selection, end-to-end congestion control across devices is realized, and the congestion response capabilities and reliability of network devices are improved.

Benefits of technology

It realizes efficient congestion management of network equipment in the face of dynamic changes in user behavior and diversity needs, and improves the overall congestion response capabilities and reliability of network equipment.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120416166A_ABST
    Figure CN120416166A_ABST
Patent Text Reader

Abstract

The invention relates to a congestion control method and device for network equipment, computer equipment and a medium. The method comprises the following steps: acquiring global network state information of the network equipment; and performing multi-dimensional congestion measurement calculation on the global network state information by adopting a preset weighting function to obtain a congestion measurement value of each node. And identifying one or more bottleneck nodes and / or one or more congestion paths from the network equipment based on a set congestion metric threshold value and each congestion metric value. And determining target path configuration from the plurality of available paths according to each bottleneck node and / or each congestion path. And performing flow distribution on each node on the one or more available paths according to the target path configuration. According to the method, the global network state information of various network devices is comprehensively considered, and multi-dimensional congestion measurement calculation and dynamic path selection are combined, so that cross-device end-to-end congestion control is realized, and the overall congestion response capability and reliability of the network devices are improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The embodiments of the present application relate to the field of network communication technologies, and in particular, to a congestion control method, device, computer device, and medium for network devices. Background Art

[0002] In the current information security field, file encryption technology plays a crucial role. With the rapid development of information technology, users' demands for file security and privacy protection are increasing continuously. At present, traditional encryption methods mainly rely on fixed keys and algorithms, and there are many disadvantages, such as complex key management and limited anti-attack ability, which are difficult to meet users' demands for personalized and intelligent encryption methods.

[0003] In the field of server-switch congestion control, traditional encryption methods mostly rely on symmetric encryption algorithms (such as AES, Advanced Encryption Standard; DES, Data Encryption Standard) and public key encryption algorithms (such as RSA, Rivest-Shamir-Adleman). Although these algorithms ensure data confidentiality to a certain extent, they are unable to cope when faced with the dynamic changes and diverse demands of user behaviors. In addition, due to the fixed nature of their encryption algorithms and key management, there are security risks such as key leakage and insufficient encryption strength. Summary of the Invention

[0004] In view of the above deficiencies or drawbacks, the present application provides a congestion control method, device, computer device, and medium for network devices. By comprehensively considering the global network state information of multiple network devices and combining multi-dimensional congestion metric calculation and dynamic path selection, end-to-end congestion control across devices is achieved, improving the overall congestion response ability and reliability of network devices and meeting the dynamic changes and diverse demands of user behaviors.

[0005] According to a first aspect of the present application, there is provided a congestion control method for a network device. The network device includes multiple interconnected groups of servers and switches. The method includes: Obtain the global network state information of the network device. The global network state information is calculated based on the original state data of multiple nodes, and each node is a server or a switch.

[0006] Perform multi-dimensional congestion metric calculation on the global network state information using a preset weight function to obtain the congestion metric value of each node. The global network state information includes link delay data, packet loss rate data, and queue length data in each original state data.

[0007] Identify one or more bottleneck nodes and / or one or more congested paths from network devices based on a set congestion metric threshold and each congestion metric value. Each bottleneck node is a node whose congestion metric value reaches the congestion metric threshold, and the congested path includes the network links congested between servers and switches, between switches and switches, and between servers.

[0008] Determine a target path configuration from multiple available paths according to each bottleneck node and / or each congested path.

[0009] Allocate traffic to each node on one or more available paths according to the target path configuration.

[0010] In some embodiments, perform multi-dimensional congestion metric calculation on the global network state information to obtain the congestion metric value of each node, including: Perform weighted calculation on each link delay data according to a preset first sensitivity constant and a preset ideal link delay value to obtain multiple weighted link delay values.

[0011] Perform weighted calculation on each packet loss rate data according to a preset second sensitivity constant and a preset ideal packet loss rate to obtain multiple weighted packet loss rates.

[0012] Perform weighted calculation on each queue length data according to a preset third sensitivity constant and a preset ideal queue length to obtain multiple weighted queue lengths.

[0013] Perform multi-dimensional congestion metric calculation according to the total number of nodes, each weighted link delay value, each weighted packet loss rate, and each weighted queue length to obtain the congestion metric value of each node.

[0014] In some embodiments, based on a set congestion metric threshold and each congestion metric value, identify one or more bottleneck nodes and / or one or more congested paths from network devices, including: Determine an initial congestion metric threshold according to the historical state data of each node and the network characteristic parameters of the network device.

[0015] Update the initial congestion metric threshold according to the current congestion metric value of each node to obtain the congestion metric threshold.

[0016] Screen out one or more target nodes from each node whose congestion metric value is greater than the congestion metric threshold according to the congestion metric threshold.

[0017] Calculate the local congestion index of each target node according to the congestion metric value of each target node.

[0018] Arrange each target node in ascending or descending order according to the level of each local congestion index to obtain a list of bottleneck nodes.

[0019] Based on the neighbor node information of each target node in the bottleneck node list on each of its congested paths, analyze the network topology structure and connection relationship between each target node and its neighbor nodes, and determine the key bottleneck path information. The key bottleneck path information characterizes one or more congested paths that have a greater impact on network performance.

[0020] Calculate multiple influencing factors based on the local congestion index of each target node and the number of neighbor nodes obtained through the key bottleneck path information.

[0021] Determine each bottleneck node and / or each congested path according to each local congestion index and each influencing factor.

[0022] In some embodiments, determining a target path configuration from multiple available paths according to each bottleneck node and / or each congested path includes: Based on each bottleneck node and / or each congested path, determine all available paths in the network device.

[0023] Calculate the bottleneck weight of each bottleneck node according to the local congestion index and influencing factor of each bottleneck node.

[0024] Calculate the path cost of each available path according to the bottleneck weight of each bottleneck node on each available path.

[0025] Determine the target available path with the minimum path cost from each available path as the target path configuration.

[0026] In some embodiments, after determining all available paths in the network device, the method further includes: Based on the historical traffic data of each bottleneck node and / or each congested path, establish a network congestion model using a preset time series analysis long short-term memory network.

[0027] Configure a Markov decision model for the network congestion model, and set the decision target of the Markov decision model to minimize the overall congestion according to a preset reward function.

[0028] Obtain the minimum overall congestion path configuration generated by the network congestion model as the target path configuration.

[0029] In some embodiments, when allocating traffic to each node on one or more available paths, the method further includes: Monitor the real-time traffic transmission rate of each available path, and determine whether the traffic transmission rate of any available path in the monitoring result exceeds the transmission rate upper limit or is lower than the transmission rate lower limit. The transmission rate upper limit and the transmission rate lower limit are preset according to requirements.

[0030] If it exists, adjust the rate adjustment factor of the available path up or down according to the monitoring result. The rate adjustment factor is pre-calculated based on the congestion metric value and the path cost of the available path.

[0031] Calculate the target transmission rate of the available path according to the adjusted rate adjustment factor and the initial transmission rate. The initial transmission rate is pre-set according to the historical state data of each node and the network characteristic parameters of the network device.

[0032] In some embodiments, when allocating traffic to each node on one or more available paths, the method further includes: Calculate the comprehensive state index of each node according to the link delay data, packet loss rate data, queue length data, ideal link delay value, ideal packet loss rate, and ideal queue length.

[0033] Calculate the overall network health index of the network device according to the comprehensive state index of each node.

[0034] Use a preset trend prediction algorithm to predict the overall network health index of the network device and generate a network performance prediction result.

[0035] Adjust the rate adjustment factor and path cost of each available path up or down according to the network performance prediction result.

[0036] According to a second aspect of the present application, there is provided a congestion control device for a network device. The network device includes multiple interconnected groups of servers and switches. The device includes: A network state acquisition module, configured to acquire the global network state information of the network device; the global network state information is calculated based on the original state data of multiple nodes, and each node is a server or a switch.

[0037] A congestion metric calculation module, configured to perform multi-dimensional congestion metric calculation on the global network state information by using a preset weight function to obtain the congestion metric value of each node. The global network state information includes link delay data, packet loss rate data, and queue length data in each original state data.

[0038] A congested node path identification module, configured to identify one or more bottleneck nodes and / or one or more congested paths from the network device based on a set congestion metric threshold and each congestion metric value. Each bottleneck node is a node whose congestion metric value reaches the congestion metric threshold, and the congested path includes network links congested between servers and switches, switches and switches, and servers.

[0039] A path configuration determination module, configured to determine a target path configuration from multiple available paths according to each bottleneck node and / or each congested path.

[0040] A path traffic allocation module, configured to allocate traffic to each node on one or more available paths according to a target path configuration.

[0041] According to a third aspect of the present application, there is provided a computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, the steps of the congestion control method of any network device in the above embodiments are implemented.

[0042] According to a fourth aspect of the present application, there is provided a computer device, including a memory, a processor, and a computer program stored on the memory and executable on the processor. When the processor executes, the steps of the congestion control method of any network device in the above embodiments are implemented.

[0043] The congestion control method of the network device in the above embodiments can be applied to a network communication system (hereinafter simply referred to as: system), which includes multiple groups of interconnected servers and switches. The method includes: the system first obtains the global network status information of the network device. Then, a preset weight function is used to perform a multi-dimensional congestion metric calculation on the global network status information to obtain the congestion metric values of each node. Next, based on the set congestion metric threshold and each congestion metric value, one or more bottleneck nodes and / or one or more congested paths are identified from the network device. Then, the system determines a target path configuration from multiple available paths according to each bottleneck node and / or each congested path. Finally, the system allocates traffic to each node on one or more available paths according to the target path configuration. Therefore, by comprehensively considering the global network status information of multiple network devices, combining multi-dimensional congestion metric calculation and dynamic path selection, the system realizes end-to-end congestion control across devices, improving the overall congestion response ability and reliability of the network device. Description of the Drawings

[0044] Figure 1 It is a flowchart of a congestion control method for a network device in one or more embodiments of the present application; Figure 2 It is a flowchart of a method for calculating the congestion metric value of each node in one or more embodiments of the present application; Figure 3 It is a flowchart of a method for identifying bottleneck nodes and / or congested paths from a network device in one or more embodiments of the present application; Figure 4 It is a flowchart of a method for determining a target path configuration from multiple available paths in one or more embodiments of the present application; Figure 5 It is a flowchart of another method for determining a target path configuration in one or more embodiments of the present application; Figure 6A flowchart of a method for allocating traffic to each node on one or more available paths in one or more embodiments of the present application; Figure 7 A flowchart of a method for dynamically adjusting the rate adjustment factor and path cost of each available path in one or more embodiments of the present application; Figure 8 An embodiment of a congestion control method for a network device in the present application; Figure 9 A schematic structural diagram of a congestion control device for a network device in one or more embodiments of the present application; Figure 10 A schematic internal structure diagram of a computer device in one or more embodiments of the present application. Detailed implementation manners

[0045] In order to make the objectives, technical solutions and advantages of the present application more clear and understandable, the present application will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.

[0046] A congestion control method for a network device provided by the present application according to the first aspect can be applied to a network communication system (hereinafter simply referred to as: system), and the system includes a variety of interconnected servers and switches. For example, a service server is used to process logic and operations related to specific services; a data server is used to store and manage data, etc.; a switch is used to connect various devices in the network. The switch can be connected to the network interface card of the server using a network cable (such as an Ethernet cable), and identify the device through the MAC address to accurately forward data frames. Therefore, various types of servers are interconnected through switches to form a complex network communication system. In addition, in this system, since different servers undertake different service processing tasks and need to frequently perform data interaction and transmission with each other, congestion is likely to occur due to excessive network traffic.

[0047] In some exemplary embodiments of the present application, as Figure 1 shown, the network device includes multiple groups of interconnected servers and switches, and the congestion control method of the network device includes the following steps: Step 101: Obtain the global network status information of the network device.

[0048] Among them, the global network status information is calculated based on the original status data of multiple nodes, and each node is a server or a switch. The original status data of each node can be obtained by the system through regular queries of the participating servers and switches using the SNMP (Simple Network Management Protocol) protocol.

[0049] For example, the system uses a timer mechanism to set a fixed time interval to trigger SNMP requests, and queries the current link delay, packet loss rate, and queue length of each node through the SNMP Get command to obtain the original status data of each node. Each node can maintain and feedback its running status data through an internal counter mechanism. In addition, the system can also store the collected original status data in a data server to form a preliminary view of the global network status information.

[0050] Step 102: Perform multi-dimensional congestion metric calculation on the global network status information using a preset weight function to obtain the congestion metric values of each node.

[0051] Among them, the global network status information includes link delay data, packet loss rate data, and queue length data in each original status data.

[0052] Specifically, the system can use a preset link delay weight function, packet loss rate weight function, and queue length weight function to weight the corresponding data of each node respectively, and then adjust the sensitivity constant and ideal value to adapt to different network environments and requirements. Then, the weighted data is input into a preset comprehensive congestion metric formula for calculation to obtain the comprehensive congestion metric value of the entire network. And during the process of calculating the comprehensive congestion metric value, the system also calculates the congestion metric values of each node respectively.

[0053] Step 103: Based on the set congestion metric threshold and each congestion metric value, identify one or more bottleneck nodes and / or one or more congested paths from the network devices.

[0054] Among them, a bottleneck node refers to a node whose congestion metric value reaches the congestion metric threshold. Congested paths include the network links congested between servers and switches, the network links congested between switches and switches, and the network links congested between servers. Moreover, the steps for the system to preset the congestion metric threshold can be as follows: First, collect network historical data, which includes the congestion metric values of each node and their corresponding network states. Then, the system analyzes these historical data to determine the distribution of congestion metric values under different network states. Next, in combination with the preset service requirements and SLA (Service Level Agreement) of the network, set a preliminary congestion metric threshold. After that, verify and adjust the preliminary congestion metric threshold through simulation or actual tests to ensure its effectiveness. Finally, update the congestion metric threshold regularly or dynamically according to the actual operation of the network and changes in service requirements.

[0055] The system can screen the standardized comprehensive congestion metric values of all nodes through a preset node screening algorithm to find the nodes whose values are greater than the set congestion metric threshold, forming a list of bottleneck nodes. At the same time, the system calculates the local congestion index of the bottleneck nodes and sorts the bottleneck nodes according to this index. Then, the system combines the traffic load change trend and historical congestion records of the nodes, as well as the above list of bottleneck nodes, to identify one or more bottleneck nodes and / or one or more congested paths from network devices.

[0056] Step 104: Determine the target path configuration from multiple available paths according to each bottleneck node and / or each congested path.

[0057] Among them, an available path refers to a link that has no faults or severe congestion and can meet the basic requirements of data transmission. The target path configuration refers to the optimal path or path combination determined by the system according to the current state and congestion situation of network devices through specific algorithms and strategies, which is used to guide the transmission of network traffic to achieve efficient and reliable data transmission and optimal utilization of network resources.

[0058] Specifically, the system can use a preset topology structure analysis algorithm to analyze the current topology structure of the network and identify all possible paths and their connection relationships. For example, the system can select the path with the minimum path cost as the target path configuration from the nodes at both ends of each path (i.e., the source node to the target node) through a path selection algorithm (such as Dijkstra's algorithm) to optimize the network traffic distribution.

[0059] Step 105: Allocate traffic to each node on one or more available paths according to the target path configuration.

[0060] Specifically, the system can calculate the optimal path using the above path selection algorithm, and formulate a traffic scheduling strategy by combining the preset service priorities and path states, reasonably allocate service traffic to different paths, and ensure the transmission efficiency and stability of critical services.

[0061] Moreover, when allocating traffic, the system also uses the traffic scheduling function of network devices to allocate traffic according to the established strategy and considers load balancing to avoid path overload. In addition, the system can continuously monitor the traffic allocation situation and network status changes, and dynamically adjust the allocation strategy according to real-time data to cope with network changes and service demand fluctuations.

[0062] Through steps 101 to 105, the system can achieve end-to-end congestion control across devices by comprehensively considering the global network status information of multiple network devices, combining multi-dimensional congestion metric calculation and dynamic path selection, improving the overall congestion response ability and reliability of network devices, and meeting the dynamic changes and diverse needs of user behavior.

[0063] In some embodiments, as Figure 2 shown, step 102 above includes: Step 201: Perform weighted calculation on each link delay data according to the preset first sensitivity constant and the preset ideal link delay value to obtain multiple weighted link delay values.

[0064] Among them, the first sensitivity constant is used to adjust the influence degree of link delay on congestion metric, and the ideal link delay value refers to the standard value of link delay when the network is in the best state.

[0065] Generally, when the network is in the best state, it includes the following aspects: Link operates normally: The link does not have problems such as physical damage, looseness, or electrical interference, and can transmit data at the designed rate normally.

[0066] No network congestion: The data traffic in the network is within the carrying capacity of the link, and there will be no queuing delay due to excessive traffic.

[0067] Devices operate with high performance: Resources such as the CPU (Central Processing Unit) and memory of devices such as servers and switches are sufficient, and can process data packets quickly, without increasing delay due to device performance bottlenecks.

[0068] Efficient data transmission: When data packets are transmitted in the network, there will be no additional delay due to frequent retransmission, packet loss, or error correction.

[0069] Network configuration optimization: The network topology is reasonable, routing is correctly configured, and QoS (Quality of Service) policies are effectively implemented to ensure priority transmission of critical traffic.

[0070] Specifically, the system performs weighted processing on the link delay data of each node through a link delay weight function. The link delay weight function can be expressed as:

[0071] ; Among them, k D is the first sensitivity constant, D0 is the ideal link delay value, W D (D) refers to the link delay weight function that changes with the value D of the link delay data, W D The value of (D) represents the weighted link delay value.

[0072] For example, when the first sensitivity constant is set to 0.5, the ideal link delay value is 10 milliseconds, and the current link delay of a certain node is 20 milliseconds, the calculated weighted link delay value is 1.

[0073] Step 202: performing weighted calculation on each packet loss rate data according to a preset second sensitivity constant and a preset ideal packet loss rate to obtain multiple weighted packet loss rates.

[0074] The second sensitivity constant is used to adjust the impact of the packet loss rate on the congestion metric, and the ideal packet loss rate refers to the standard value of the packet loss rate when the network is in the optimal state.

[0075] Specifically, the system performs weighted processing on the packet loss rate data of each node through the packet loss rate weight function. The packet loss rate weight function can be expressed as: ; in, is a constant for adjusting sensitivity, is the ideal packet loss rate, Refers to the value of the packet loss rate data Changing packet loss rate weight function, The value of represents the weighted link delay value.

[0076] For example, when the second sensitivity constant is set to 0.3, the ideal packet loss rate is 0.1%, and the current packet loss rate of a node is 0.2%, the calculated weighted packet loss rate is 0.6.

[0077] Step 203: Perform weighted calculation on each queue length data according to a preset third sensitivity constant and a preset ideal queue length to obtain multiple weighted queue lengths.

[0078] Among them, the third sensitivity constant is used to adjust the influence degree of the queue length on the congestion metric, and the ideal queue length refers to the standard value of the queue length when the network is in the optimal state.

[0079] Specifically, the system performs weighted processing on the queue length data of each node through a queue length weight function, and the queue length weight function can be expressed as: ; where k L is the constant for adjusting the sensitivity, L0 is the ideal queue length, and W L (L) refers to the packet loss rate weight function that changes with the value L of the queue length data, and the value of W L (L) characterizes the weighted queue length.

[0080] For example, when the third sensitivity constant is set to 0.2, the ideal queue length is 100, and the current queue length of a certain node is 150, the calculated weighted queue length is 0.3.

[0081] Step 204: Perform multi-dimensional congestion metric calculation based on the total number of nodes, each weighted link delay value, each weighted packet loss rate, and each weighted queue length to obtain the congestion metric value of each node.

[0082] Among them, the congestion metric value of each node is used to comprehensively evaluate the congestion degree of each node in the network.

[0083] Specifically, the system performs comprehensive calculation on the weighted link delay value, weighted packet loss rate, and weighted queue length of all nodes through a comprehensive congestion metric formula, and the comprehensive congestion metric formula can be expressed as: ; where C is the comprehensive congestion metric value of the entire network, and the value range depends on the actual value ranges of each parameter. A higher value indicates a more serious congestion situation. is the weighted link delay of the i-th node, is the weighted packet loss rate of the i-th node, is the weighted queue length of the i-th node, and n is the total number of nodes in the network.

[0084] For example, for a network containing 3 nodes, the weighted link delay values of each node are 1, 0.5, and 0.8 respectively, the weighted packet loss rates are 0.6, 0.3, and 0.4 respectively, and the weighted queue lengths are 0.3, 0.2, and 0.5 respectively. Then the calculated comprehensive congestion metric value is 1.5 + 0.8 + 1.0 = 3.3.

[0085] Through steps 201 to 204, the system can accurately calculate the congestion metric of each node in the network, providing a scientific basis for subsequent congestion control and traffic optimization.

[0086] In some embodiments, as Figure 3 shown, step 103 above includes: Step 301: Determine an initial congestion metric threshold according to the historical state data of each node and the network characteristic parameters of the network device.

[0087] Among them, the historical state data includes information such as link delay, packet loss rate, and queue length within a preset time period; the network characteristic parameters cover network scale, link bandwidth, and service type, etc.

[0088] Specifically, the system analyzes the historical state data, calculates the distribution statistical characteristics of the congestion metric values of each node, and combines the network characteristic parameters to determine the initial threshold.

[0089] For example, in a large-scale, high-bandwidth, and diverse-service-type network, the initial congestion metric threshold should be set to a relatively high value, such as 0.7 (the numerical range is usually 0 to 1), to adapt to the network complexity and high-load requirements.

[0090] Step 302: Update the initial congestion metric threshold according to the current congestion metric values of each node to obtain the congestion metric threshold.

[0091] Among them, the current congestion metric value reflects the real-time congestion status of the network.

[0092] Specifically, the system adopts an adaptive adjustment algorithm to dynamically adjust the initial threshold according to the distribution and change trend of the current congestion metric value.

[0093] For example, if the current congestion metric values of most nodes are continuously higher than the initial threshold, the system will appropriately increase the threshold to more accurately identify congested nodes; conversely, if the congestion metric values are generally lower than the initial threshold, the threshold will be decreased so that the threshold always remains at a level that can effectively distinguish between normal and congested states.

[0094] Step 303: Screen out one or more target nodes from each node whose congestion metric values are greater than the congestion metric threshold.

[0095] Among them, the target node refers to a node that may be congested.

[0096] Specifically, the system compares the congestion metric value of each node with the threshold one by one. When the value of a certain node is greater than the threshold, it is determined as a target node.

[0097] For example, if the congestion metric threshold is 0.6 and the congestion metric value of node A is 0.7, then node A is screened as a target node, indicating that it may be congested and needs further analysis and confirmation.

[0098] Step 304: Calculate the local congestion index of each target node based on the congestion metric values of each target node.

[0099] Among them, the local congestion index is used to quantify the difference in congestion degree of the target node relative to its neighbor nodes.

[0100] Specifically, the system can use the local congestion index calculation formula to calculate the local congestion index of the bottleneck node, and the expression is: ; Among them, LC i is the local congestion index of node , and the value range depends on the actual value ranges of each parameter. A higher value indicates that this node is more likely to become a bottleneck relative to its neighbor nodes; C norm,i is the normalized comprehensive congestion metric value of node i, and C norm,i is the normalized comprehensive congestion metric value of node j, and node j is a neighbor node of node i.

[0101] Suppose the congestion metric value of node B is 0.8, the average value of its neighbor nodes is 0.5, and the standard deviation is 0.1. Then the local congestion index of node B is 3, indicating that its congestion degree is significantly higher than that of the surrounding nodes and it may become a congestion bottleneck.

[0102] Step 305: Arrange each target node in ascending or descending order according to the level of each local congestion index to obtain a list of bottleneck nodes.

[0103] Among them, the list of bottleneck nodes is used to clearly identify the nodes or paths in the network that are prone to congestion.

[0104] For example, the system can compare the local congestion indices of all target nodes and arrange them in descending order. If there are node C (local congestion index is 2.3), node D (index is 1.8), and node E (index is 2.5) among the target nodes, then the order of the list of bottleneck nodes obtained after sorting is node E, node C, node D, which helps to prioritize the processing of the most severe congestion points.

[0105] Step 306: Based on the neighbor node information of each target node in each congestion path in the list of bottleneck nodes, analyze the network topology structure and connection relationship between each target node and its neighbor nodes, and determine the key bottleneck path information.

[0106] Among them, the key bottleneck path information represents one or more congestion paths that have a greater impact on network performance.

[0107] Specifically, the system traces the source and destination of the traffic of each bottleneck node, identifies the connection paths between nodes, and evaluates its impact on network performance in combination with the link status on the paths.

[0108] For example, if both node F and node G are bottleneck nodes, and there is a high packet loss rate and high latency on the connection path between them, then this path is determined as a critical bottleneck path, indicating that this path is one of the main factors affecting network performance.

[0109] Step 307: Calculate multiple influencing factors based on the local congestion index of each target node and the number of neighbor nodes obtained through the critical bottleneck path information.

[0110] Among them, the influencing factor is used to evaluate the specific impact degree of each target node and the path where it is located on the overall network congestion situation.

[0111] Specifically, the system can use the influencing factor calculation formula to calculate the influencing factor of each bottleneck node, evaluate the impact degree of this node on the entire network performance, and obtain the influencing factors of each bottleneck node. The expression is: ; where, IF i is the influencing factor of node , and the value range depends on the actual value ranges of each parameter. A higher value indicates that this node has a greater negative impact on the overall network performance. LC j is the local congestion index of node , is the number of neighbor nodes of node i.

[0112] Step 308: Determine each bottleneck node and / or each congested path according to each local congestion index and each influencing factor.

[0113] Among them, the local congestion index highlights the relative congestion degree of the node, and the influencing factor emphasizes the impact of the node and its path on the network as a whole.

[0114] Specifically, the system sets two weight coefficients, multiplies them by the local congestion index and the influencing factor respectively and then adds them up to obtain the final comprehensive evaluation value. Therefore, the system can combine the above local congestion index LC i and the influencing factor IF i to determine the real bottleneck node or path, and obtain the bottleneck node or path information.

[0115] For example, if the weight coefficients are both 0.5, the local congestion index of node I is 2.5, and the influencing factor is 0.8, then the comprehensive evaluation value is 2.15. According to the sorting of the comprehensive evaluation values, the final bottleneck nodes and congested paths are determined. The higher the comprehensive evaluation value of a node or path, the more it needs to be preferentially subjected to congestion control and optimization.

[0116] Through steps 301 - 308, the system can accurately identify bottleneck nodes and congested paths in the network, providing a scientific basis for subsequent traffic scheduling and congestion control, effectively improving network performance and reliability, and ensuring the smooth transmission of critical services.

[0117] In some embodiments, as Figure 4 shown, step 104 above includes: Step 401: Based on each bottleneck node and / or each congested path, determine all available paths in the network devices.

[0118] Among them, an available path refers to a path in the network that does not have severe congestion or faults and can meet the basic requirements of data transmission.

[0119] Specifically, the system identifies the current topology of the network through a topology analysis algorithm and excludes those paths that contain congested nodes or congested links. The remaining paths are the available paths.

[0120] For example, if there are three paths in the network topology: Path A passes through node 1 and node 2, Path B passes through node 3 and node 4, and Path C passes through node 5 and node 6. If node 2 and node 3 are identified as bottleneck nodes, then Path A and Path B are excluded, and only Path C remains as an available path.

[0121] Step 402: According to the local congestion index and influence factor of each bottleneck node, calculate the bottleneck weight of each bottleneck node.

[0122] Among them, the bottleneck weight is used to measure the importance of the node in network congestion and its impact on traffic scheduling.

[0123] Specifically, the system can use the bottleneck node weight adjustment formula to calculate the weight of each bottleneck node, and obtain the weights of each bottleneck node. The expression is: ; where, W BN (i) is the bottleneck weight of node i, and the value range depends on the actual value ranges of each parameter. LC i is the local congestion index of node i, and IF i is the influence factor of node i. If the bottleneck weight of node i is larger, it means that the probability of node i being a bottleneck node is greater, and the system should avoid allocating traffic to node i during traffic scheduling. Assume that the local congestion index of bottleneck node X is 3.5, the influence factor is 0.8, and α = 0.6, β = 0.4. Then the bottleneck weight of node X is 0.6×3.5 + 0.4×0.8 = 2.5.

[0124] Step 403: According to the bottleneck weights of each bottleneck node on each available path, calculate the path cost of each available path.

[0125] Among them, the path cost is used to evaluate the quality of a path. The larger the value, the higher the congestion risk of the path.

[0126] Specifically, the system can calculate the path cost of each path using a path cost calculation formula, and the expression is: ; Among them, PC(p) is the path cost of path p, and its value range depends on the actual value ranges of the respective parameters. W BN (i) is the bottleneck weight of node i on path p. If the path cost of path p is lower, it means that the system should give higher priority to allocating traffic to path p.

[0127] Suppose the available path P contains two bottleneck nodes, and their bottleneck weights are 2.5 and 1.8 respectively. Then the path cost of path P is 2.5 + 1.8 = 4.3.

[0128] Step 404: Determine the target available path with the minimum path cost from each available path, and use it as the target path configuration.

[0129] Among them, the target path configuration refers to the optimal path combination selected in the network for data transmission.

[0130] Specifically, the system uses a path selection algorithm (such as Dijkstra's algorithm or A* algorithm) to find the path with the minimum path cost from all available paths.

[0131] Specifically, the system can use a traffic allocation model to re - allocate the traffic on the optimal path to obtain the re - allocated traffic distribution F(p), and the expression is: ; Among them, T j represents the jth traffic demand, and m is the total traffic demand. If the value of T j is higher, then the value of its corresponding traffic distribution F(p) is also larger.

[0132] Suppose in the set of available paths, the path cost of path A is 4.3, the path cost of path B is 3.2, and the path cost of path C is 5.1. Then path B is selected as the target available path for subsequent traffic allocation.

[0133] Through steps 401 - 404, the system can intelligently identify the optimal available path, ensure efficient network traffic scheduling and reasonable resource utilization, and improve the overall congestion control effect and network performance.

[0134] In some embodiments, as Figure 5 shown, after the above - mentioned step 401, the following steps are further included: Step 501: Based on the historical traffic data of each bottleneck node and / or each congested path, a network congestion model is established using a preset time series analysis long short-term memory network.

[0135] Among them, the long short-term memory network (LSTM, Long Short-Term Memory) is a neural network structure that can process time series data and is good at capturing long-term dependencies in the data.

[0136] Specifically, the system collects historical traffic data, including traffic characteristics of each bottleneck node and congested path at different time periods, such as traffic peak, average traffic, traffic change rate, etc. Then, the system inputs this data into the LSTM model for training so that the model can learn the patterns of traffic changes and the laws of congestion occurrence.

[0137] For example, the system can use the hourly traffic data in the past week as training samples to train the LSTM model in order to predict possible congestion situations in the next few hours.

[0138] Step 502: Configure a Markov decision model for the network congestion model, and set the decision goal of the Markov decision model to minimize the overall congestion according to a preset reward function.

[0139] Among them, the Markov decision model is a probability model based on state transitions and is used for decision-making in an uncertain environment. The reward function is a quantitative evaluation of different decision results and is used to guide the learning direction of the model.

[0140] Specifically, the system defines different congestion states of the network as the states of the Markov decision model, takes the traffic scheduling strategy as an action, and designs the reward function according to factors such as congestion metric values and service priorities.

[0141] For example, when the traffic scheduling strategy reduces the congestion metric value of the critical service path, a higher positive reward is given; while when the congestion metric value of the non-critical service path increases, a lower negative reward is given. In this way, the model is guided to learn the optimal traffic scheduling strategy to achieve the goal of minimizing the overall congestion.

[0142] Alternatively, the system can also model network congestion control as a Markov decision process. The Agent controller selects the optimal path according to the current network state with the goal of minimizing the overall congestion. Among them, the reward function expression is: ; Among them, CBRS is the comprehensive bottleneck risk score, and β controls the stability weight; Path represents the path formed by the Agent controller in the network environment, which is used to describe the action trajectory of the intelligent agent (such as the Agent controller) from the initial state to the target state; the larger the value of Path, the more serious the network congestion can be reflected; the larger the value of Stability, the stronger the ability of the network system to maintain stable operation in the face of interference or changes.

[0143] Step 503: Obtain the minimum overall congestion path configuration generated by the network congestion model as the target path configuration.

[0144] Among them, the minimum overall congestion path configuration refers to the path combination or path allocation scheme that can minimize the overall network congestion degree calculated through the network congestion model and the Markov decision model.

[0145] Specifically, the system predicts the future congestion situation through the LSTM model, calculates the expected rewards under different path configurations in combination with the Markov decision model, and selects the path configuration with the highest expected reward as the minimum overall congestion path configuration.

[0146] For example, if the model predicts that within the next half hour, allocating high-priority service traffic to paths A, B, and C, and non-critical service traffic to paths D and E can minimize the overall network congestion metric, then this path configuration is selected as the target path configuration.

[0147] Through steps 501 to 503, the system can use advanced machine learning technologies to accurately predict network congestion and make intelligent decisions, realize dynamic traffic scheduling and path optimization, further improve the network congestion control ability and performance, and ensure the efficient transmission of services and the stable and reliable quality of service.

[0148] In some embodiments, as Figure 6 shown, when executing step 105, the method further includes: 1] Step 601: Monitor the real-time traffic transmission rate of each available path, and determine whether the traffic transmission rate of any available path in the monitoring result exceeds the transmission rate upper limit or is lower than the transmission rate lower limit.

[0149] Among them, the transmission rate upper limit and the transmission rate lower limit are preset according to requirements.

[0150] Specifically, the system collects the traffic transmission rate of each path in real time through the monitoring tools deployed in the network and compares them with the preset upper and lower limits respectively.

[0151] For example, for critical business paths, the upper limit of the transmission rate can be set to 1 gigabit per second, and the lower limit to 500 megabits per second; while for non-critical business paths, the upper limit of the transmission rate can be set to 500 megabits per second, and the lower limit to 100 megabits per second.

[0152] Step 602: If it exists, increase or decrease the rate adjustment factor of the available path according to the monitoring result.

[0153] Among them, the rate adjustment factor is pre-calculated according to the congestion metric value and the path cost of the available path, and is used to dynamically adjust the traffic transmission rate to adapt to network state changes.

[0154] Specifically, if the traffic transmission rate exceeds the upper limit, the rate adjustment factor is decreased; if it is lower than the lower limit, the rate adjustment factor is increased.

[0155] For example, the initial rate is 500 megabits per second, and the rate adjustment factor is 1.2. If monitoring finds that the traffic transmission rate exceeds the upper limit, the rate adjustment factor is decreased to 0.8, and the target transmission rate is recalculated.

[0156] Step 603: Calculate the target transmission rate of the available path according to the adjusted rate adjustment factor and the initial transmission rate.

[0157] Among them, the initial transmission rate is pre-set according to the historical state data of each node and the network characteristic parameters of the network device, and reflects the ideal transmission rate of the path without congestion.

[0158] Specifically, the system can calculate the rate adjustment factor for each path by using the combined formula of the comprehensive congestion metric value and the path cost. The expression is: ; Among them, R factor (p) is the rate adjustment factor of path p, and the value range depends on the actual value ranges of the parameters. PC(p) is the path cost of path p, and C norm is the standardized comprehensive congestion metric value. If the rate adjustment factor of path p is higher, the system should increase the transmission rate of this path by a greater margin.

[0159] Assume that the initial transmission rate is 500 megabits per second. After the rate adjustment factor is adjusted to 0.8, the target transmission rate is 500×0.8 = 400 megabits per second.

[0160] Through steps 601 - 603, the system can monitor and dynamically adjust the traffic transmission rate in real time, ensure that the network traffic is within a reasonable range, improve the stability and resource utilization rate of the network, effectively respond to the dynamic changes of the network state, and ensure the efficiency and reliability of business transmission.

[0161] In some embodiments, as Figure 7 shown, when performing step 105, the method further includes: Step 701: Calculate the comprehensive state index of each node based on the link delay data, packet loss rate data, queue length data, ideal link delay value, ideal packet loss rate, and ideal queue length.

[0162] Among them, the comprehensive state index is used to quantitatively evaluate the operating conditions and congestion levels of each node, and is an important reference index for implementing network congestion control and traffic scheduling.

[0163] Specifically, the system processes the latest network state data using the comprehensive state index calculation, calculates the comprehensive state index of each node, and obtains the updated comprehensive state index. The expression is: ; where S is the comprehensive state index of the node, D is the link delay, D0 is the ideal link delay, is the standard deviation of the link delay, P loss is the packet loss rate, P loss,0 is the ideal packet loss rate, is the standard deviation of the packet loss rate, L is the queue length, L0 is the ideal queue length, is the standard deviation of the queue length.

[0164] Suppose the link delay data of a certain node is 20 milliseconds, and the ideal link delay value is 10 milliseconds; the packet loss rate data is 0.2%, and the ideal packet loss rate is 0.1%; the queue length data is 150, and the ideal queue length is 100. Then the comprehensive state index of this node is: 1020 + 0.10.2 + 100150 = 2 + 2 + 1.5 = 5.5.

[0165] Step 702: Calculate the overall network health index of the network device based on the comprehensive state index of each node.

[0166] Among them, the overall network health index is used to macroscopically evaluate the operating state and performance level of the entire network, and provides an intuitive network performance index for network administrators.

[0167] For example, if there are 3 nodes in the network, and their comprehensive state indexes are 5.5, 4.0, and 6.0 respectively, then the overall network health index is 5.166, indicating that the overall network is in a relatively good operating state.

[0168] Step 703: Use a preset trend prediction algorithm to predict the overall network health index of the network device and generate a network performance prediction result.

[0169] Among them, the trend prediction algorithm is used to analyze historical data, predict the change trend of future network performance, and help administrators take countermeasures in advance.

[0170] Specifically, algorithms such as moving average, exponential smoothing, or ARIMA (Autoregressive Integrated Moving Average) can be used for prediction. For example, using the simple moving average method, calculate the average value of the overall network health index of the past 5 time points as the predicted value of the next time point.

[0171] Step 704: Increase or decrease the rate adjustment factor and path cost of each available path according to the network performance prediction result.

[0172] Among them, the rate adjustment factor is used to dynamically adjust the traffic transmission rate, and the path cost is used to evaluate the quality of the path.

[0173] Specifically, if the prediction result shows that network congestion will intensify, then reduce the rate adjustment factor and increase the path cost; conversely, if the prediction result shows that the network state will improve, then increase the rate adjustment factor and reduce the path cost.

[0174] For example, the current rate adjustment factor is 1.0 and the path cost is 3.5. If the prediction result shows that network congestion will worsen, then reduce the rate adjustment factor to 0.8 and increase the path cost to 4.0 to relieve possible future congestion.

[0175] Through steps 701 - 704, the system can predict network performance changes in advance, dynamically adjust network parameters, optimize traffic allocation, enhance the self - adaptability and stability of the network, effectively improve network service quality, and meet users' high requirements for network performance.

[0176] In an embodiment as Figure 8 shown, the system includes multiple interconnected servers and switches. The method includes: The system first collects status information of the participating servers and switches to obtain the current link delay, packet loss rate, and queue length data of each device, which is marked as the original status data. Here, the "original status data" refers to the initial set of device status information without any processing, including the specific values of each key performance indicator, which is the basic material for subsequent analysis of the network state. Then, use the distributed state sharing protocol to update the original status data to obtain the global network state information. For example, the system can introduce a differential state broadcast mechanism to improve the state synchronization efficiency and reduce communication overhead, specifically including: The node only broadcasts status updates externally when the change amount of a certain key indicator exceeds the preset threshold; Compress and transmit data through Delta coding to reduce redundant information. Among them, the judgment logic expression is: ; Among them, x i represents a certain index of the i-th node, is its change threshold.

[0177] Next, the "global network status information" refers to the current operating status information of the entire network presented after integrating the original status data of each decentralized device through a distributed sharing protocol, covering the comprehensive situation after the correlation of indicators such as link latency, packet loss rate, and queue length of all devices, reflecting the macroscopic state of the network. Next, multi-dimensional congestion metric calculations are performed on the global network status information, and comprehensive analysis is carried out after the calculations to obtain a comprehensive congestion metric value. "Multi-dimensional congestion metric calculations" refers to the calculation process of quantitatively evaluating the network congestion situation from multiple different perspectives and factors (such as link latency, packet loss rate, queue length, etc.). Comprehensive analysis is to combine the calculation results of each dimension to obtain a comprehensive congestion metric value that can comprehensively reflect the degree of network congestion. This value is a comprehensive quantitative indicator and is the key basis for subsequent judgment of network congestion. Then, a bottleneck node identification method is used to evaluate the comprehensive congestion metric value, comparing the congestion metric values between different nodes to identify the bottleneck nodes or paths in the current network, and obtaining bottleneck node or path information. The "bottleneck node identification method" is a technical means specifically used to analyze and find the key points or key paths causing congestion in the network from the comprehensive congestion metric value. By comparing the magnitudes of the congestion metric values of different nodes, etc., to determine which nodes or paths are the bottlenecks restricting network performance. This bottleneck node or path information clearly points out the parts of the network that need to be optimized and processed. Next, a dynamic path selection and traffic redirection method is used to process the bottleneck node or path information to obtain traffic distribution path information. The "dynamic path selection and traffic redirection method" refers to a technical method that, based on the currently identified bottleneck nodes or paths, real-timely selects a better transmission path and re-reasonably distributes the traffic to these paths. The obtained traffic distribution path information refers to the specific distribution of network traffic on each path after optimization, including the amount of traffic borne by each path, etc., and is used to guide subsequent data transmission. Based on the comprehensive congestion metric value and the traffic distribution path information, an adaptive rate adjustment method is used to dynamically adjust the data transmission rate to obtain the dynamically adjusted data transmission rate information. The "adaptive rate adjustment method" is a mechanism that automatically and flexibly adjusts the data transmission rate based on the current comprehensive congestion metric value and traffic distribution path information. Through dynamic adjustment, the data transmission rate is matched with the actual situation of the current network. The obtained dynamically adjusted data transmission rate information is the specific value of the data transmission rate suitable for the current network state on each path, thus ensuring the efficiency and stability of network transmission. Finally, continuously monitor the network performance indicators and continuously adjust the strategy according to the latest data to obtain the updated network performance indicators and optimization strategy."Continuous monitoring" means continuously monitoring various performance indicators of the network (such as latency, packet loss rate, etc.) to promptly grasp changes in the network state; "constantly adjusting strategies" refers to optimizing and improving previous strategies such as congestion metric calculation, bottleneck identification, path selection, and rate adjustment in real time based on the latest data obtained from monitoring, and finally obtaining updated network performance indicators and optimized strategies to achieve continuous optimization and performance improvement of the network. Therefore, by comprehensively considering the global network state information of multiple network devices and combining multi-dimensional congestion metric calculation and dynamic path selection, the system realizes end-to-end congestion control across devices, improving the overall congestion response ability and reliability of network devices.

[0178] According to a second aspect, the present application provides a congestion control device for a network device, as Figure 9 shown. The network device includes multiple interconnected groups of servers and switches, and the device includes: A network state acquisition module 110, configured to acquire the global network state information of the network device; the global network state information is calculated based on the original state data of multiple nodes, and each node is a server or a switch.

[0179] A congestion metric calculation module 120, configured to perform multi-dimensional congestion metric calculation on the global network state information by using a preset weight function to obtain the congestion metric values of each node. The global network state information includes link latency data, packet loss rate data, and queue length data in each original state data.

[0180] A congested node path identification module 130, configured to identify one or more bottleneck nodes and / or one or more congested paths from the network device based on a set congestion metric threshold and each congestion metric value. Each bottleneck node is a node whose congestion metric value reaches the congestion metric threshold, and the congested path includes congested network links between servers and switches, switches and switches, and servers.

[0181] A path configuration determination module 140, configured to determine a target path configuration from multiple available paths according to each bottleneck node and / or each congested path.

[0182] A path traffic allocation module 150, configured to allocate traffic to each node on one or more available paths according to the target path configuration.

[0183] In some embodiments, the congestion metric calculation module 120 is further configured to perform weighted calculation on each link delay data according to a preset first sensitivity constant and a preset ideal link delay value to obtain multiple weighted link delay values. Perform weighted calculation on each packet loss rate data according to a preset second sensitivity constant and a preset ideal packet loss rate to obtain multiple weighted packet loss rates. Perform weighted calculation on each queue length data according to a preset third sensitivity constant and a preset ideal queue length to obtain multiple weighted queue lengths. Perform multi-dimensional congestion metric calculation according to the total number of nodes, each weighted link delay value, each weighted packet loss rate, and each weighted queue length to obtain the congestion metric value of each node.

[0184] In some embodiments, the congested node path identification module 130 is further configured to determine an initial congestion metric threshold according to the historical state data of each node and the network characteristic parameters of the network device. Update the initial congestion metric threshold according to the current congestion metric value of each node to obtain the congestion metric threshold. Screen out one or more target nodes whose congestion metric values are greater than the congestion metric threshold from each node according to the congestion metric threshold. Calculate the local congestion index of each target node according to the congestion metric value of each target node. Arrange the target nodes in ascending or descending order according to the levels of the local congestion indices to obtain a bottleneck node list. Based on the neighbor node information of each target node on each of its congested paths in the bottleneck node list, analyze the network topology structure and connection relationship of each target node and its neighbor nodes to determine the critical bottleneck path information. The critical bottleneck path information represents one or more congested paths that have a greater impact on network performance. Calculate multiple impact factors according to the local congestion index of each target node and the number of neighbor nodes obtained through the critical bottleneck path information. Determine each bottleneck node and / or each congested path according to each local congestion index and each impact factor.

[0185] In some embodiments, the path configuration determination module 140 is further configured to determine all available paths in the network device based on each bottleneck node and / or each congested path. Calculate the bottleneck weight of each bottleneck node according to the local congestion index and impact factor of each bottleneck node. Calculate the path cost of each available path according to the bottleneck weight of each bottleneck node on each available path. Determine the target available path with the minimum path cost from each available path to be used as the target path configuration.

[0186] In some embodiments, after determining all available paths in the network device, the path configuration determination module 140 is further configured to establish a network congestion model by using a preset time series analysis long short-term memory network based on the historical traffic data of each bottleneck node and / or each congested path. Configure a Markov decision model for the network congestion model, and set the decision target of the Markov decision model to minimize the overall congestion according to a preset reward function. Obtain the minimum overall congestion path configuration generated by the network congestion model and use it as the target path configuration.

[0187] In some embodiments, when allocating traffic to each node on one or more available paths, the path traffic allocation module 150 is further configured to monitor the real-time traffic transmission rate of each available path and determine whether there is any available path in the monitoring result whose traffic transmission rate exceeds the transmission rate upper limit or is lower than the transmission rate lower limit. The transmission rate upper limit and the transmission rate lower limit are preset according to requirements. If so, increase or decrease the rate adjustment factor of the available path according to the monitoring result. The rate adjustment factor is pre-calculated according to the congestion metric value and the path cost of the available path. Calculate the target transmission rate of the available path according to the adjusted rate adjustment factor and the initial transmission rate. The initial transmission rate is preset according to the historical state data of each node and the network characteristic parameters of the network device.

[0188] In other embodiments, when allocating traffic to each node on one or more available paths, the path traffic allocation module 150 is further configured to calculate the comprehensive state index of each node according to the link delay data, packet loss rate data, queue length data, ideal link delay value, ideal packet loss rate, and ideal queue length. Calculate the overall network health index of the network device according to the comprehensive state index of each node. Use a preset trend prediction algorithm to predict the overall network health index of the network device and generate a network performance prediction result. Increase or decrease the rate adjustment factor and path cost of each available path according to the network performance prediction result.

[0189] For the specific limitations of the congestion control device of the network device, reference may be made to the limitations of the congestion control method applicable to the network device described above, which will not be elaborated here. Each module in the above-mentioned congestion control device of the network device can be implemented in whole or in part by software, hardware, and their combination. The above-mentioned modules can be embedded in the processor in the computer device in hardware form or be independent of it, or can be stored in the memory in the computer device in software form so that the processor can call and execute the operations corresponding to the above-mentioned modules.

[0190] According to a third aspect, the present application 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 the congestion control method of any one of the network devices in the above embodiments are implemented.

[0191] According to a fourth aspect, the present application provides a computer device, including a memory, a processor, and a computer program stored on the memory and executable on the processor. When the processor executes, the steps of the congestion control method of any one of the network devices in the above embodiments are implemented.

[0192] In one embodiment, a computer device is provided. The computer device may be a server, and its internal structure diagram may be as Figure 10 shown. The computer device includes a processor, a memory, a network interface, and a database connected through a system bus. Among them, the processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program, and a database. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The database of the computer device is used to store data related to the congestion control of network devices. The network interface of the computer device is used to communicate with an external terminal through a network connection. When the computer program is executed by the processor, the congestion control method of any one of the above is implemented.

[0193] Among them, any reference to a memory, storage, database, or other medium used in the various embodiments provided by the present application may include non-volatile and / or volatile memories. Non-volatile memory may include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), or flash memory. Volatile memory may include random access memory (RAM) or an external cache. By way of illustration and not limitation, RAM is available in many forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDR SDRAM), enhanced SDRAM (ESDRAM), synchronous link (Synchlink) DRAM (SLDRAM), memory bus (RamCUs), direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM), etc.

[0194] The technical features of the above embodiments can be combined arbitrarily. For the sake of concise description, 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, it should be considered as the scope described in this specification.

[0195] The above embodiments only represent several implementation manners of the present application. The description is relatively specific and detailed, but it should not be construed as a limitation on the scope of the invention patent. It should be noted that for those of ordinary skill in the art, without departing from the concept of the present application, several modifications and improvements can still be made, and these all belong to the protection scope of the present application.

[0196] Finally, it should also be noted that in this text, relational terms such as "first" and "second" are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the term "comprising", "including" or any other variant thereof is intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements not only includes those elements, but also includes other elements not expressly listed, or further includes elements inherent to such process, method, article or device. Without further limitation, an element defined by the statement "comprising an..." does not exclude the presence of additional identical elements in the process, method, article or device including the element.

Claims

1. A congestion control method for a network device, characterized in that, The network device includes multiple groups of interconnected servers and switches; the method includes: Obtain the global network status information of the network device; the global network status information is calculated based on the original status data of multiple nodes, and each of the nodes is a server or a switch; Perform multi-dimensional congestion metric calculation on the global network status information by using a preset weight function to obtain the congestion metric values of each of the nodes; the global network status information includes link delay data, packet loss rate data, and queue length data in each of the original status data; Based on a set congestion metric threshold and each of the congestion metric values, identify one or more bottleneck nodes and / or one or more congested paths from the network device; each of the bottleneck nodes is a node whose congestion metric value reaches the congestion metric threshold, and the congested path includes network links congested between servers and switches, switches and switches, and servers; Determine a target path configuration from multiple available paths according to each of the bottleneck nodes and / or each of the congested paths; Allocate traffic to each of the nodes on one or more available paths according to the target path configuration.

2. The method according to claim 1, characterized in that The performing multi-dimensional congestion metric calculation on the global network status information to obtain the congestion metric values of each of the nodes includes: Perform weighted calculation on each of the link delay data according to a preset first sensitivity constant and a preset ideal link delay value to obtain multiple weighted link delay values; Perform weighted calculation on each of the packet loss rate data according to a preset second sensitivity constant and a preset ideal packet loss rate to obtain multiple weighted packet loss rates; Perform weighted calculation on each of the queue length data according to a preset third sensitivity constant and a preset ideal queue length to obtain multiple weighted queue lengths; Perform multi-dimensional congestion metric calculation according to the total number of the nodes, each of the weighted link delay values, each of the weighted packet loss rates, and each of the weighted queue lengths to obtain the congestion metric values of each of the nodes.

3. The method according to claim 1, wherein The identifying one or more bottleneck nodes and / or one or more congested paths from the network device based on a set congestion metric threshold and each of the congestion metric values includes: Determine an initial congestion metric threshold according to the historical status data of each of the nodes and the network characteristic parameters of the network device; Update the initial congestion metric threshold according to the current congestion metric values of each of the nodes to obtain the congestion metric threshold; Screen out one or more target nodes from each of the nodes whose congestion metric values are greater than the congestion metric threshold according to the congestion metric threshold; Calculate the local congestion index of each of the target nodes according to the congestion metric values of each of the target nodes; Arrange each of the target nodes in ascending or descending order according to the levels of each of the local congestion indices to obtain a bottleneck node list; Analyze the network topology structure and connection relationship of each of the target nodes and their neighbor nodes based on the neighbor node information of each of the target nodes in the bottleneck node list on each of its congested paths, and determine the critical bottleneck path information; the critical bottleneck path information characterizes one or more congested paths that have a greater impact on network performance; Calculate multiple impact factors based on the local congestion index of each of the target nodes and the number of neighbor nodes obtained through the critical bottleneck path information; Determine each of the bottleneck nodes and / or each of the congested paths based on each of the local congestion indices and each of the impact factors; 4. The method according to claim 1, wherein The determining the target path configuration from multiple available paths according to each of the bottleneck nodes and / or each of the congested paths includes: Based on each of the bottleneck nodes and / or each of the congested paths, determine all available paths in the network device; Calculate the bottleneck weight of each of the bottleneck nodes according to the local congestion index and impact factor of each of the bottleneck nodes; Calculate the path cost of each of the available paths according to the bottleneck weight of each bottleneck node on each of the available paths; Determine the target available path with the minimum path cost from each of the available paths as the target path configuration; 5. The method according to claim 4, wherein After determining all available paths in the network device, the method further includes: Based on the historical traffic data of each of the bottleneck nodes and / or each of the congested paths, establish a network congestion model using a preset time series analysis long short-term memory network; Configure a Markov decision model for the network congestion model, and set the decision target of the Markov decision model to minimize the overall congestion according to a preset reward function; Obtain the minimum overall congestion path configuration generated by the network congestion model as the target path configuration; 6. The method according to claim 4, wherein When allocating traffic to each node on one or more available paths, the method further includes: Monitor the real-time traffic transmission rate of each of the available paths, and determine whether the traffic transmission rate of any available path in the monitoring result exceeds the transmission rate upper limit or is lower than the transmission rate lower limit; the transmission rate upper limit and the transmission rate lower limit are preset according to requirements; If so, increase or decrease the rate adjustment factor of the available path according to the monitoring result; the rate adjustment factor is pre-calculated according to the congestion metric value and the path cost of the available path; Calculate the target transmission rate of the available path according to the adjusted rate adjustment factor and the initial transmission rate; the initial transmission rate is preset according to the historical state data of each node and the network characteristic parameters of the network device; 7. The method according to claim 2, wherein When allocating traffic to each node on one or more available paths, the method further includes: Calculate the comprehensive state index of each node according to the link delay data, the packet loss rate data, the queue length data, the ideal link delay value, the ideal packet loss rate, and the ideal queue length; Calculate the overall network health index of the network device according to the comprehensive state index of each node; Predict the overall network health index of the network device using a preset trend prediction algorithm to generate a network performance prediction result; Increase or decrease the rate adjustment factor and path cost of each available path according to the network performance prediction result.

8. A congestion control device for a network device, characterized in that, The network device includes multiple groups of interconnected servers and switches; the device includes: A network status acquisition module, configured to acquire the global network status information of the network device; the global network status information is calculated based on the original status data of multiple nodes, and each of the nodes is a server or a switch; A congestion metric calculation module, configured to perform multi-dimensional congestion metric calculation on the global network status information using a preset weight function to obtain the congestion metric values of the nodes; the global network status information includes link delay data, packet loss rate data, and queue length data in the original status data; A congested node path identification module, configured to identify one or more bottleneck nodes and / or one or more congested paths from the network device based on a set congestion metric threshold and the congestion metric values; each bottleneck node is a node whose congestion metric value reaches the congestion metric threshold, and the congested path includes network links congested between servers and switches, switches and switches, and servers; A path configuration determination module, configured to determine a target path configuration from multiple available paths according to each bottleneck node and / or each congested path; A path traffic allocation module, configured to allocate traffic to each node on one or more available paths according to the target path configuration.

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 device, comprising a memory, a processor, and a computer program stored on the memory and executable on the processor, characterized in that, When the processor executes the computer program, the steps of the method according to any one of claims 1 to 7 are implemented.

Citation Information

Patent Citations

  • Intelligent fusion identification network state prediction and congestion control system

    CN111526096A

  • Network congestion control method and device, equipment and storage medium

    CN117014947A

  • Data flow control method, network switching subsystem and intelligent computing platform

    CN117938755A

  • Holographic media transmission congestion prediction system based on programmable network

    CN119172318A

  • Network congestion control method and device based on deep learning, and readable storage medium

    CN120075137A

Cited By

  • Arbitration method, device and equipment, storage medium and computer program product

    CN120692227A

  • Network congestion relieving method for network resource adjustment

    CN121151323A

  • Data routing method and device, electronic equipment, storage medium and program product

    CN121585604A