Intelligent calculation network congestion control method, device and system, computer equipment and readable storage medium

By sorting and filtering each data queue in the intelligent computing network, and determining and marking data queues with high queue lengths, the problem of low congestion control efficiency in traditional methods is solved, and faster and more accurate congestion control is achieved.

CN119449714APending Publication Date: 2025-02-14CHINA TELECOM CORP LTD TECHNOLOGY INNOVATION CENTER +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411544023.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-10-31
Publication Date
2025-02-14

AI Technical Summary

Technical Problem

When traditional intelligent computing network congestion control methods send data to one receiving end at the same time, the overall congestion control efficiency is low and it is easy to cause slow congestion control.

Method used

By sorting each data queue in the current time period and filtering out the target data queue outside the low-pass filter window, determining the congestion mark probability based on the average queue length and the current queue length, and the data packets in the target data queue are used to determine the data queue. Congestion marking processing is performed and sent to the receiving end to instruct the corresponding sending end to perform congestion control.

Benefits of technology

It improves the congestion control efficiency of smart computing networks, simplifies the congestion control process, ensures the normal operation of most transmissions, and avoids congestion marking errors.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119449714A_ABST
    Figure CN119449714A_ABST
Patent Text Reader

Abstract

The invention relates to an intelligent calculation network congestion control method, device and system, computer equipment, a computer readable storage medium and a computer program product. The method comprises the steps that under the condition that the average queue length of data queues sent by all sending ends in a current time period meets a preset length condition, all the data queues are sorted, and target data queues located outside a low-pass filtering window of the current time period are screened out from the sorted data queues; determining the congestion marking probability of the target data queue according to the average queue length and the current queue length of the target data queue; according to the congestion marking probability, performing congestion marking processing on the selected target data message in the target data queue to obtain a marked target data queue; and sending the marked target data queue to a receiving end, so that the receiving end indicates the target sending end to perform congestion control processing. By adopting the method, the congestion control efficiency of the intelligent network can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of communication technology, and in particular to an intelligent network congestion control method, device, system, computer equipment, computer-readable storage medium and computer program product. Background Art

[0002] Congestion control has always been a key area of ​​focus for data centers. Especially today, with the widespread development of intelligent computing, intelligent computing networks are facing the problem of congestion control. They have developed from the north-south traffic in the previous cloud computing era to the direction of mainly east-west traffic while taking into account north-south traffic.

[0003] In traditional technology, when performing intelligent network congestion control, data queues whose queue length exceeds the lower threshold are generally probabilistically marked to notify the corresponding sender of the current network congestion status, thereby allowing the sender to take corresponding congestion control measures. However, in a scenario where multiple senders send data to a receiver at the same time, network congestion is usually caused by several data queues with high queue lengths, and most data queues with small traffic have little impact on network congestion; if all data queues with queue lengths exceeding the lower threshold are probabilistically marked, it is easy to cause overall congestion control to be slow, which in turn leads to low efficiency of intelligent network congestion control. Summary of the invention

[0004] Based on this, it is necessary to provide an intelligent computing network congestion control method, device, system, computer equipment, computer-readable storage medium and computer program product that can improve the efficiency of intelligent computing network congestion control in response to the above technical problems.

[0005] In a first aspect, the present application provides an intelligent computing network congestion control method, which is applied to a network device in an intelligent computing network, including:

[0006] When the average queue length of the data queues sent by each sending end in the intelligent computing network in the current time period meets the preset length condition, sorting the data queues, and filtering out the target data queues outside the low-pass filter window of the current time period from the sorted data queues;

[0007] Determining a congestion marking probability of the target data queue according to the average queue length and the current queue length of the target data queue;

[0008] According to the congestion marking probability of the target data queue, a congestion marking process is performed on the target data message selected in the target data queue to obtain a marked target data queue; the marked target data queue includes the marked target data message;

[0009] The marked target data queue is sent to a receiving end in the intelligent computing network, so that the receiving end instructs a target sending end associated with the marked target data message to perform congestion control processing.

[0010] In one embodiment, before sorting the data queues and filtering out the target data queues outside the low-pass filter window of the current time period from the sorted data queues, the method further includes:

[0011] Obtaining low-pass filter window parameters of a time period previous to the current time period;

[0012] Determine the low-pass filter window parameter of the current time period according to the average queue length, the low-pass filter window parameter of the previous time period, the queue length upper limit threshold and the queue length lower limit threshold;

[0013] The low-pass filter window of the current time period is set according to the low-pass filter window parameters of the current time period.

[0014] In one embodiment, the step of sorting the data queues and filtering out the target data queues outside the low-pass filter window of the current time period from the sorted data queues includes:

[0015] Obtaining the current queue length of each of the data queues;

[0016] Sorting the data queues in descending order of the current queue lengths to obtain a sorted data queue;

[0017] From the sorted data queues, a data queue outside the low-pass filter window of the current time period is screened out as the target data queue.

[0018] In one of the embodiments, determining the congestion marking probability of the target data queue according to the average queue length and the current queue length of the target data queue includes:

[0019] Get the queue length upper and lower thresholds.

[0020] A congestion marking probability of the target data queue is determined according to the average queue length, the current queue length of the target data queue, the queue length upper threshold, and the queue length lower threshold.

[0021] In one of the embodiments, determining the congestion marking probability of the target data queue according to the average queue length, the current queue length of the target data queue, the queue length upper threshold, and the queue length lower threshold includes:

[0022] Obtain the correspondence between the average queue length, current queue length, queue length upper threshold, queue length lower threshold, and congestion marking probability;

[0023] Query the corresponding relationship to obtain the congestion marking probability corresponding to the average queue length of the data queues sent by each sending end in the intelligent computing network during the current time period, the current queue length of the target data queue, the queue length upper limit threshold, and the queue length lower limit threshold, as the congestion marking probability of the target data queue.

[0024] In one of the embodiments, when the average queue length of the data queues sent by each sending end in the intelligent computing network in the current time period meets the preset length condition, before sorting the data queues, the method further includes:

[0025] Determine the average queue length of the data queue sent by each sending end in the intelligent computing network in the current time period;

[0026] When the average queue length is greater than or equal to the queue length lower limit threshold and less than or equal to the queue length upper limit threshold, it is determined that the average queue length meets the preset length condition.

[0027] In one of the embodiments, performing congestion marking processing on target data packets selected in the target data queue according to the congestion marking probability of the target data queue to obtain a marked target data queue includes:

[0028] Determining the number of message marks in the target data queue according to the congestion marking probability of the target data queue;

[0029] Randomly selecting a data message that meets the message tag quantity from the target data queue as the target data message;

[0030] Congestion marking information is added to the target data message in the target data queue to obtain a marked target data queue.

[0031] In a second aspect, the present application also provides another intelligent computing network congestion control method, which is applied to a receiving end in an intelligent computing network, including:

[0032] Receive a marked target data queue sent by a network device in the intelligent computing network; the marked target data queue includes a marked target data message; the network device is used to sort each of the data queues when the average queue length of the data queues sent by each sending end in the intelligent computing network in the current time period meets a preset length condition, and filter out the target data queue that is outside the low-pass filter window of the current time period from the sorted data queues, determine the congestion marking probability of the target data queue according to the average queue length and the current queue length of the target data queue, and perform congestion marking processing on the selected target data message in the target data queue according to the congestion marking probability of the target data queue to obtain the marked target data queue;

[0033] Instruct a target sending end associated with the marked target data message to perform congestion control processing.

[0034] In a third aspect, the present application further provides an intelligent computing network congestion control device, which is applied to a network device in an intelligent computing network, including:

[0035] A queue screening module is used to sort the data queues when the average queue length of the data queues sent by each sending end in the intelligent computing network in the current time period meets the preset length condition, and to screen out the target data queues outside the low-pass filter window of the current time period from the sorted data queues;

[0036] A probability determination module, configured to determine a congestion marking probability of the target data queue according to the average queue length and the current queue length of the target data queue;

[0037] A congestion marking module, configured to perform congestion marking processing on the target data message selected in the target data queue according to the congestion marking probability of the target data queue, so as to obtain a marked target data queue; the marked target data queue includes the marked target data message;

[0038] The queue sending module is used to send the marked target data queue to the receiving end in the intelligent computing network, so that the receiving end instructs the target sending end associated with the marked target data message to perform congestion control processing.

[0039] In a fourth aspect, the present application also provides another intelligent computing network congestion control device, which is applied to a receiving end in an intelligent computing network, including:

[0040] A queue receiving module, used for receiving a marked target data queue sent by a network device in the intelligent computing network; the marked target data queue includes a marked target data message; the network device is used for sorting each of the data queues when the average queue length of the data queues sent by each sending end in the intelligent computing network in the current time period meets a preset length condition, and filtering out the target data queue outside the low-pass filter window of the current time period from the sorted data queues, determining the congestion marking probability of the target data queue according to the average queue length and the current queue length of the target data queue, and performing congestion marking processing on the selected target data message in the target data queue according to the congestion marking probability of the target data queue to obtain the marked target data queue;

[0041] The processing instruction module is used to instruct the target sending end associated with the marked target data message to perform congestion control processing.

[0042] In a fifth aspect, the present application also provides another intelligent computing network congestion control system, including: a sending end, a network device and a receiving end in the intelligent computing network;

[0043] The sending end is used to send the data queue to the network device;

[0044] The network device is used to sort the data queues when the average queue length of the data queues sent by the sending ends in the current time period meets the preset length condition, and filter out the target data queues located outside the low-pass filter window of the current time period from the sorted data queues; determine the congestion marking probability of the target data queue according to the average queue length and the current queue length of the target data queue; perform congestion marking processing on the target data packets selected in the target data queue according to the congestion marking probability of the target data queue to obtain a marked target data queue; the marked target data queue includes the marked target data packets; and send the marked target data queue to the receiving end;

[0045] The receiving end is used to instruct the target sending end associated with the marked target data message to perform congestion control processing.

[0046] In a sixth aspect, the present application further provides a computer device, comprising a memory and a processor, wherein the memory stores a computer program, and when the processor executes the computer program, the following steps are implemented:

[0047] When the average queue length of the data queues sent by each sending end in the intelligent computing network in the current time period meets the preset length condition, sorting the data queues, and filtering out the target data queues outside the low-pass filter window of the current time period from the sorted data queues;

[0048] Determining a congestion marking probability of the target data queue according to the average queue length and the current queue length of the target data queue;

[0049] According to the congestion marking probability of the target data queue, a congestion marking process is performed on the target data message selected in the target data queue to obtain a marked target data queue; the marked target data queue includes the marked target data message;

[0050] The marked target data queue is sent to a receiving end in the intelligent computing network, so that the receiving end instructs a target sending end associated with the marked target data message to perform congestion control processing.

[0051] In a seventh aspect, the present application further provides a computer-readable storage medium having a computer program stored thereon, wherein when the computer program is executed by a processor, the following steps are implemented:

[0052] When the average queue length of the data queues sent by each sending end in the intelligent computing network in the current time period meets the preset length condition, sorting the data queues, and filtering out the target data queues outside the low-pass filter window of the current time period from the sorted data queues;

[0053] Determining a congestion marking probability of the target data queue according to the average queue length and the current queue length of the target data queue;

[0054] According to the congestion marking probability of the target data queue, a congestion marking process is performed on the target data message selected in the target data queue to obtain a marked target data queue; the marked target data queue includes the marked target data message;

[0055] The marked target data queue is sent to a receiving end in the intelligent computing network, so that the receiving end instructs a target sending end associated with the marked target data message to perform congestion control processing.

[0056] In an eighth aspect, the present application further provides a computer program product, including a computer program, which implements the following steps when executed by a processor:

[0057] When the average queue length of the data queues sent by each sending end in the intelligent computing network in the current time period meets the preset length condition, sorting the data queues, and filtering out the target data queues outside the low-pass filter window of the current time period from the sorted data queues;

[0058] Determining a congestion marking probability of the target data queue according to the average queue length and the current queue length of the target data queue;

[0059] According to the congestion marking probability of the target data queue, a congestion marking process is performed on the target data message selected in the target data queue to obtain a marked target data queue; the marked target data queue includes the marked target data message;

[0060] The marked target data queue is sent to a receiving end in the intelligent computing network, so that the receiving end instructs a target sending end associated with the marked target data message to perform congestion control processing.

[0061] The above-mentioned intelligent computing network congestion control method, device, system, computer equipment, computer-readable storage medium and computer program product, when the average queue length of the data queues sent by each sending end in the intelligent computing network within the current time period meets the preset length condition, sorts each data queue, and filters out the target data queue located outside the low-pass filter window of the current time period from the sorted data queue, and then determines the congestion marking probability of the target data queue based on the average queue length and the current queue length of the target data queue, and then performs congestion marking processing on the target data message selected in the target data queue based on the congestion marking probability of the target data queue to obtain a marked target data queue; the marked target data queue includes the marked target data message; finally, the marked target data queue is sent to the receiving end in the intelligent computing network, so that the receiving end instructs the target sending end associated with the marked target data message to perform congestion control processing. In this way, when the average queue length of the data queues sent by each sending end in the intelligent computing network within the current time period meets the preset length condition, the target data queue outside the low-pass filter window of the current time period is first screened out from the sorted data queue, and then the selected target data message in the target data queue is congestion marked, so that the target sending end associated with the marked target data message is indicated by the receiving end in the intelligent computing network to perform congestion control processing, that is, only the target data queue with a high queue length that causes congestion is marked, which can quickly indicate the target sending end that causes congestion to perform congestion control processing, and there is no need to perform congestion control processing on all the target sending ends whose queue length exceeds the lower limit threshold. All data queues are probabilistically marked, which simplifies the congestion control process of the intelligent computing network and improves the congestion control efficiency of the intelligent computing network. At the same time, by comprehensively considering the average queue length of the data queues sent by each sender in the intelligent computing network within the current time period and the current queue length of the target data queue, the accuracy of determining the congestion marking probability of the target data queue can be improved, which facilitates the subsequent accurate congestion marking processing of the target data packets selected in the target data queue, so that the target sending end can perform congestion control processing in a timely manner, avoiding congestion marking errors, resulting in the defect that the target sending end fails to perform congestion control processing in a timely manner, and further improves the congestion control efficiency of the intelligent computing network. BRIEF DESCRIPTION OF THE DRAWINGS

[0062] In order to more clearly illustrate the technical solutions in the embodiments of the present application or related technologies, the drawings required for use in the embodiments of the present application or related technical descriptions will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without paying creative work.

[0063] Figure 1This is an application environment diagram of an intelligent computing network congestion control method in an embodiment;

[0064] Figure 2 A schematic diagram of a flow chart of a method for controlling congestion in an intelligent computing network in one embodiment;

[0065] Figure 3 is a schematic diagram of a low-pass filter window in one embodiment;

[0066] Figure 4 A flowchart of a method for controlling congestion in an intelligent computing network in another embodiment;

[0067] Figure 5 A flowchart of a method for controlling congestion in an intelligent computing network in another embodiment;

[0068] Figure 6 It is a flowchart of a congestion control optimization method of an intelligent computing center based on a low-pass filter in one embodiment;

[0069] Figure 7 It is a structural block diagram of an ECN (Explicit Congestion Notification) marking function device of an intelligent computing center switch device in an embodiment;

[0070] Figure 8 It is a structural block diagram of an intelligent computing network congestion control device in an embodiment;

[0071] Fig. 9 It is a structural block diagram of an intelligent computing network congestion control device in another embodiment;

[0072] Fig.10 is an internal structure diagram of a computer device in one embodiment;

[0073] Fig.11 FIG. 4 is a diagram showing the internal structure of a computer device in another embodiment. DETAILED DESCRIPTION

[0074] In order to make the purpose, technical solution and advantages of the present application more clearly understood, the present application is further described in detail below in conjunction with 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.

[0075] Congestion control refers to the measures taken to control congestion in the data center network or other networks. Its purpose is to ensure the stability and reliability of the network and prevent network congestion from causing network performance degradation and data loss. At present, congestion control has always been a key area of ​​concern for data centers. Especially in today's era of widespread development of intelligent computing, intelligent computing networks are facing the difficulties of traffic control and congestion control. From the previous north-south traffic in the cloud computing era to the direction of east-west traffic as the main traffic and taking into account north-south traffic; especially in the case of massive data throughput of large model training, the traffic of intelligent computing centers is becoming more and more complex; from the perspective of cost-effectiveness, mainstream intelligent computing centers currently generally use RoCEv2 (RDMA over Converged Ethernet version 2, Remote Direct Memory Access Protocol based on Converged Ethernet Version 2) protocol to build intelligent computing center RDMA (Remote Direct Memory Access) network, which is applied to artificial intelligence computing scenarios including large model training and reasoning, and RoCEv2 uses DCQCN (Data Center Quantized Congestion Notification) algorithm to control congestion of intelligent computing network.

[0076] The DCQCN algorithm is currently widely adopted and applied in the intelligent computing center, and is constantly developing to adapt to new situations. The DCQCN algorithm does not perform well in the scenario of multiple-to-one incast (multiple senders send data to one receiver at the same time) for large model training. For example, the switches in the intelligent computing center network support the DCQCN algorithm under the RoCEv2 protocol, and usually set the upper threshold Kmax and lower threshold Kmin of the queue length according to the line speed of the switch port; in the DCQCN algorithm, the switch executes the CP (Congestion Point, i.e., network devices such as switches or routers in the network) algorithm. If the current queue length is less than the lower threshold Kmin, the queue is forwarded normally; if the current queue length is between the upper threshold Kmax and the lower threshold Kmin, the ECN (Explicit Congestion Notification) mark is added to the QP (Queue Pair) data message of the existing queue with a certain probability; if the current queue length exceeds the upper threshold Kmax, the ECN mark is added to all QP data messages to suppress the sending message rate of the sender. Among them, the intelligent computing center generally uses RED (Random Early Detection) or improved evolutionary algorithms such as WRED (Weighted Random Early Detection) to implement ECN marking records. These marking algorithms usually perform probabilistic marking on all QP queues. Through observation and statistics of the intelligent computing center network, network congestion usually occurs in the last hop of many-to-one, and it is the QP flow of several main senders. In order to suppress traffic, it should be considered to limit the flow of the main QP queue senders, while most small-flow QP queues do not contribute much to congestion. Based on this, the present application proposes a congestion control method that can quickly suppress the flow of QP senders that cause Incast congestion, while not affecting the services of other small-flow QP senders, ensuring the normal operation of most transmissions.

[0077] The intelligent computing network congestion control method provided in the embodiment of the present application can be applied to Figure 1 In the application environment shown. The application environment includes an intelligent computing network, which includes a sending end 101, a network device 102 and a receiving end 103, and the network device 102 is connected to the sending end 101 and the receiving end respectively. For example, refer to Figure 1, the sending end 101 in the intelligent computing network sends a data queue to the network device 102 in the intelligent computing network. The network device 102 in the intelligent computing network sorts each data queue when the average queue length of the data queues sent by each sending end 101 in the intelligent computing network in the current time period meets the preset length condition, and filters out the target data queue outside the low-pass filter window of the current time period from the sorted data queue; determines the congestion marking probability of the target data queue according to the average queue length and the current queue length of the target data queue; performs congestion marking processing on the target data message selected in the target data queue according to the congestion marking probability of the target data queue to obtain a marked target data queue; the marked target data queue includes the marked target data message; and sends the marked target data queue to the receiving end 103 in the intelligent computing network. After receiving the marked target data queue, the receiving end 103 in the intelligent computing network instructs the target sending end associated with the marked target data message to perform congestion control processing.

[0078] The sending end 101 refers to a terminal, which may be, but is not limited to, various personal computers, laptops, smart phones, tablet computers, etc., and the number of such terminals is multiple. The network device 102 may be, but is not limited to, various switches, routers, etc. The receiving end 103 may be an independent physical server, or a server cluster or distributed system composed of multiple physical servers, or a cloud server providing cloud computing services, specifically a training server.

[0079] In an exemplary embodiment, Figure 2 As shown, a method for intelligent network congestion control is provided, and the method is applied to Figure 1 The network equipment in the Zhongzhisuan network is used as an example for explanation, and the following steps S201 to S204 are included. Among them:

[0080] Step S201, when the average queue length of the data queues sent by each sending end in the intelligent computing network within the current time period meets the preset length condition, each data queue is sorted, and from the sorted data queues, a target data queue outside the low-pass filter window of the current time period is filtered out.

[0081] The current time period refers to the current timing period, such as (0, t), where t can be obtained by presetting, such as t=1, t=2, and the like.

[0082] The data queue refers to a queue for storing data packets, such as a QP queue. Each sender can send one or more data queues to a network device, and the network device caches the data queues sent by each sender through a buffer area.

[0083] The average queue length refers to the average queue length of the data queues of each sender in the intelligent computing network received by the network device during the current time period.

[0084] The preset length condition refers to the queue length upper limit threshold and the queue length lower limit threshold. The average queue length satisfies the preset length condition, which means that the average queue length is between the queue length lower limit threshold and the queue length upper limit threshold. Specifically, the average queue length is greater than or equal to the queue length lower limit threshold and less than or equal to the queue length upper limit threshold.

[0085] When sorting the data queues, they are arranged in descending order according to the queue length.

[0086] The low-pass filter window is used to characterize the range of data queues that do not need to be marked as congested, that is, to indicate which data queues do not need to be marked as congested, such as Figure 3 The QP_5, QP_6, QP_7, QP_8, etc. shown in the figure indicate that the data queues contained in the low-pass filter window do not need to be marked as congested. In actual scenarios, the low-pass filter window is used to filter out the low-pass queues with lower rankings, that is, the data queues with lower data lengths.

[0087] Each time period corresponds to a low-pass filter window, and is updated by the low-pass filter window parameters corresponding to the previous time period of the time period.

[0088] The target data queue refers to the data queue outside the low-pass filter window of the current time period in the sorted data queue, specifically the top-ranked data queue, that is, the long-length data queue, such as Figure 3 QP_1, QP_2, QP_3, QP_4 shown.

[0089] Exemplarily, the network equipment in the intelligent computing network receives the data queues sent by each sending end in the intelligent computing network, and counts the average queue length of the data queues sent by each sending end in the intelligent computing network in the current time period, and determines whether the average queue length meets the preset length condition; when the average queue length meets the preset length condition, obtain the low-pass filter window parameter of the current time period (for example, 0.63), and set the low-pass filter window of the current time period according to the low-pass filter window parameter of the current time period; then obtain the current queue length of each data queue, and sort each data queue in order from high to low according to the current queue length of each data queue to obtain a sorted data queue; finally, from the sorted data queue, filter out the data queue outside the low-pass filter window of the current time period as the target data queue.

[0090] Step S202: determining the congestion marking probability of the target data queue according to the average queue length and the current queue length of the target data queue.

[0091] The current queue length of the target data queue refers to the instantaneous queue length of the target data queue at the last moment of the current time period. For example, if the current time period is (0, t), the current queue length of the target data queue refers to the instantaneous queue length of the target data queue at time t.

[0092] The congestion marking probability refers to the probability that the data packets in the target data queue are congestion marked (such as ECN marking), specifically the ECN marking probability. For example, if the congestion marking probability is 30%, it means that 30% of the data packets in the target data queue need to be congestion marked.

[0093] It should be noted that if the current queue length of the target data queue is higher, the congestion marking probability of the target data queue will be greater, so as to quickly suppress the message sending rate of the corresponding sender; however, all data messages in the target data queue cannot be marked as congested, so as to avoid the message sending rate being reduced too quickly, resulting in too low bandwidth utilization, thereby causing waste of resources.

[0094] Exemplarily, the network device obtains the current queue length of the target data queue, and queries the correspondence between the average queue length, the current queue length and the congestion marking probability based on the average queue length and the current queue length of the target data queue to obtain the congestion marking probability of the target data queue. Alternatively, the network device inputs the average queue length and the current queue length of the target data queue into a pre-built congestion marking probability determination model to obtain the congestion marking probability of the target data queue; wherein the congestion marking probability determination model refers to a neural network model or a deep learning model used to determine the congestion marking probability of a data queue.

[0095] Step S203 , performing congestion marking processing on the target data message selected in the target data queue according to the congestion marking probability of the target data queue to obtain a marked target data queue; the marked target data queue includes the marked target data message.

[0096] The target data message refers to the data message selected from the target data queue and requiring congestion marking.

[0097] The number of target data packets selected in the target data queue is determined according to the congestion marking probability of the target data queue; for example, if the congestion marking probability is 30%, it means that 30% of the data packets need to be selected from the target data queue as the target data packets.

[0098] The marked target data queue refers to a data queue obtained after congestion marking is performed on the target data message in the target data queue. The marked target data message refers to a data message obtained after congestion marking is performed on the target data message, specifically a data message with congestion marking information added, such as a data message with ECN marking information added.

[0099] Exemplarily, the network device selects data packets that need to be congested marked from the target data queue as target data packets according to the congestion marking probability of the target data queue; then, according to the congestion marking instruction, the target data packets in the target data queue are congested marked to obtain a marked target data queue.

[0100] For example, see Figure 3 , the network device performs ECN marking processing on the target data messages that need to be ECN marked in QP_1, QP_2, QP_3, and QP_4 according to the ECN marking probabilities of QP_1, QP_2, QP_3, and QP_4, and obtains ECN marked QP_1, QP_2, QP_3, and QP_4.

[0101] Step S204: Send the marked target data queue to the receiving end in the intelligent computing network, so that the receiving end instructs the target sending end associated with the marked target data message to perform congestion control processing.

[0102] Among them, in addition to sending the marked target data queue to the receiving end in the intelligent computing network, the network device also sends other data queues in the sorted data queue except the target data queue (that is, the data queues within the low-pass filter window of the current time period) to the receiving end in the intelligent computing network.

[0103] The target sending end associated with the marked target data message refers to the sending end corresponding to the data queue where the target data message is located.

[0104] Among them, after receiving the marked target data message, the receiving end will return a CNP (CongestionNotification Packets) message to the target sending end associated with the marked target data message to notify the target sending end of the current network congestion status, thereby instructing the target sending end to perform corresponding congestion control processing, such as reducing the message sending rate.

[0105] It should be noted that if the target sending end receives a large number of CNP messages (ie, messages carrying a CNP mark), the message sending rate of the target sending end will be reduced to a greater extent.

[0106] The congestion control process may refer to reducing the message sending rate.

[0107] Exemplarily, the network device in the intelligent computing network sends the data packet in the marked target data queue to the receiving end in the intelligent computing network; after receiving the data packet, the receiving end in the intelligent computing network will identify the data packet. If the data packet is a marked data packet, such as the data packet successfully matches the marked data packet, a corresponding CNP message is generated, and the CNP message is returned to the target sending end associated with the marked target data message; after receiving the CNP message, the target sending end can obtain the current network congestion status, and perform corresponding congestion control processing according to the current network congestion status, such as reducing the message sending rate.

[0108] In the above-mentioned intelligent computing network congestion control method, when the average queue length of the data queues sent by each sending end in the intelligent computing network within the current time period meets the preset length condition, each data queue is sorted, and from the sorted data queue, the target data queue located outside the low-pass filter window of the current time period is screened out, and then the congestion marking probability of the target data queue is determined based on the average queue length and the current queue length of the target data queue, and then, based on the congestion marking probability of the target data queue, the selected target data message in the target data queue is congested marked to obtain a marked target data queue; the marked target data queue includes the marked target data message; finally, the marked target data queue is sent to the receiving end in the intelligent computing network, so that the receiving end instructs the target sending end associated with the marked target data message to perform congestion control processing. In this way, when the average queue length of the data queues sent by each sending end in the intelligent computing network within the current time period meets the preset length condition, the target data queue outside the low-pass filter window of the current time period is first screened out from the sorted data queue, and then the selected target data message in the target data queue is congestion marked, so that the target sending end associated with the marked target data message is indicated by the receiving end in the intelligent computing network to perform congestion control processing, that is, only the target data queue with a high queue length that causes congestion is marked, which can quickly indicate the target sending end that causes congestion to perform congestion control processing, and there is no need to perform congestion control processing on all the target sending ends whose queue length exceeds the lower limit threshold. All data queues are probabilistically marked, which simplifies the congestion control process of the intelligent computing network and improves the congestion control efficiency of the intelligent computing network. At the same time, by comprehensively considering the average queue length of the data queues sent by each sender in the intelligent computing network within the current time period and the current queue length of the target data queue, the accuracy of determining the congestion marking probability of the target data queue can be improved, which facilitates the subsequent accurate congestion marking processing of the target data packets selected in the target data queue, so that the target sending end can perform congestion control processing in a timely manner, avoiding congestion marking errors, resulting in the defect that the target sending end fails to perform congestion control processing in a timely manner, and further improves the congestion control efficiency of the intelligent computing network.

[0109] In an exemplary embodiment, the above step S201, before sorting each data queue and filtering out the target data queue outside the low-pass filter window of the current time period from the sorted data queue, also includes the following contents: obtaining the low-pass filter window parameters of the previous time period of the current time period; determining the low-pass filter window parameters of the current time period based on the average queue length, the low-pass filter window parameters of the previous time period, the queue length upper limit threshold and the queue length lower limit threshold; setting the low-pass filter window of the current time period based on the low-pass filter window parameters of the current time period.

[0110] Among them, the low-pass filter window parameter is used to characterize the range of the low-pass filter window, which determines the length and proportion of the low-pass queue. For example, 0.63 means that the data queues are sorted in descending order of queue length, and the data queues with a total queue length of 63% are ranked, for example Figure 3 QP_5, QP_6, QP_7, QP_8, etc. shown.

[0111] Among them, the low-pass filter window of the current time period is determined by the low-pass filter window parameter of the current time period; for example, the low-pass filter window parameter is 0.63, indicating that the sum of the queue lengths of the data queues contained in the low-pass filter window of the current time period accounts for 63% of the sum of the queue lengths of all data queues.

[0112] Exemplarily, the network device obtains the low-pass filter window parameters of the previous time period of the current time period from the local parameter register, and queries the correspondence between the average queue length, the low-pass filter window parameters of the previous time period, the upper limit threshold of the queue length, the lower limit threshold of the queue length and the low-pass filter window parameters of the current time period according to the average queue length, the low-pass filter window parameters of the previous time period, the upper limit threshold of the queue length, the lower limit threshold of the queue length, and the low-pass filter window parameters of the current time period to obtain the low-pass filter window parameters of the current time period; or, the network device inputs the average queue length, the low-pass filter window parameters of the previous time period, the upper limit threshold of the queue length, and the lower limit threshold of the queue length into a pre-constructed low-pass filter window parameter determination model (such as a neural network model or a deep learning model for calculating the low-pass filter window parameters) to obtain the low-pass filter window parameters of the current time period; finally, the network device sets the low-pass filter window of the current time period according to the low-pass filter window parameters of the current time period.

[0113] For example, the low-pass filter window parameter λ_ecn of the low-pass filter window LP-WND also needs to be well designed. As the queue length increases, the low-pass filter window size should be reduced to exclude more data queues from the low-pass filter window, thereby marking them with ECN marks and suppressing the message sending rate of more QP queue senders. The nonlinear calculation formula of the low-pass filter window parameter λ_ecn is as follows:

[0114]

[0115] Among them, λ_ecn(t) represents the low-pass filter window parameter at time t (i.e., the low-pass filter window parameter of the current time period), λ_ecn(t-1) represents the low-pass filter window parameter at time t-1 (i.e., the low-pass filter window parameter of the previous time period), represents the constant coefficient, Kmin represents the lower limit threshold of the queue length, Kmax represents the upper limit threshold of the queue length, and Qavg(t) represents the average queue length at time t (that is, the average queue length in the current time period).

[0116] When the average queue length is less than the lower limit of the queue length, the low-pass filter window parameter is 1, that is, the full-pass window, and all data queues do not need to be marked; when the average queue length is greater than the upper limit of the queue length, the low-pass filter window parameter is 0, and all data queues need to be marked; when the average queue length is between the upper and lower limits, the low-pass filter window parameter will be nonlinearly fitted with the average queue length.

[0117] In this embodiment, when determining the low-pass filter window parameters of the current time period, the average queue length, the low-pass filter window parameters of the previous time period, the queue length upper threshold and the queue length lower threshold are comprehensively considered, which can improve the accuracy of determining the low-pass filter window parameters of the current time period, thereby improving the setting accuracy of the low-pass filter window of the current time period, and making the target data queue subsequently screened out more accurate.

[0118] In an exemplary embodiment, the above step S201 sorts each data queue and filters out a target data queue that is outside the low-pass filter window of the current time period from the sorted data queue, and specifically includes the following contents: obtaining the current queue length of each data queue; sorting each data queue in order of the current queue length from high to low to obtain a sorted data queue; and filtering out a data queue that is outside the low-pass filter window of the current time period from the sorted data queue as the target data queue.

[0119] The current queue length of the data queue refers to the instantaneous queue length of the data queue at the last moment of the current time period.

[0120] Exemplarily, the network device obtains the current queue length of each data queue, and sorts each data queue in order from high to low according to the current queue length to obtain a sorted data queue; from the sorted data queue, the data queue outside the low-pass filter window of the current time period is identified, and the data queue outside the low-pass filter window of the current time period is filtered out, that is, the data queue within the low-pass filter window of the current time period is filtered out, and finally the filtered data queue is confirmed as the target data queue.

[0121] For example, the congestion point switch CP counts the length of each QP queue in the current queue and sets the low-pass filter window LP-WND. The key parameter of the low-pass filter window is λ_ecn, which determines the length and proportion of the low-pass queue. For example, 0.63 means that the queues are sorted from high to low in descending order. The total length of the following queues accounts for 63% of the QP queues, such as Figure 3 Reference Figure 3 , the data queues after arrangement are QP_1, QP_2, QP_3, QP_4, QP_5, QP_6, QP_7, QP_8. According to λ_ecn=0.63, the QP queues with queue lengths of 5 and above (i.e., QP_5, QP_6, QP_7, QP_8, etc.) are all in the low-pass filter window, that is, these queues are low-pass for ECN marking and do not need to be marked, while the queues outside the low-pass filter window (i.e., QP_1, QP_2, QP_3, QP_4) need to be ECN marked according to probability.

[0122] It should be noted that the reference Figure 3 , the sum of the queue lengths of data queues such as QP_5, QP_6, QP_7, and QP_8 accounts for 63% of the sum of the queue lengths of all data queues, indicating that QP_1, QP_2, QP_3, and QP_4 are outside the low-pass filter window, and QP_1, QP_2, QP_3, and QP_4 are used as target data queues. If the sum of the queue lengths of data queues such as QP_6, QP_7, and QP_8 accounts for 62% of the sum of the queue lengths of all data queues, and the sum of the queue lengths of data queues such as QP_5, QP_6, QP_7, and QP_8 accounts for 68% of the sum of the queue lengths of all data queues, it means that QP_5 is partially within the low-pass filter window and partially outside the low-pass filter window, and QP_1, QP_2, QP_3, QP_4, and QP_5 are used as target data queues.

[0123] In this embodiment, each data queue is sorted, and from the sorted data queues, a target data queue that is outside the low-pass filter window of the current time period is screened out, so that only the target data queue with a high queue length that causes congestion can be subsequently marked as congestion, without the need to probabilistically mark all data queues whose queue lengths exceed the lower limit threshold, thereby simplifying the congestion control process and further improving the congestion control efficiency.

[0124] In an exemplary embodiment, the above step S202 determines the congestion marking probability of the target data queue based on the average queue length and the current queue length of the target data queue, and specifically includes the following contents: obtaining the queue length upper threshold and the queue length lower threshold; determining the congestion marking probability of the target data queue based on the average queue length, the current queue length of the target data queue, the queue length upper threshold and the queue length lower threshold.

[0125] Exemplarily, the network device obtains the queue length upper threshold and the queue length lower threshold from the local database, and inputs the average queue length, the current queue length of the target data queue, the queue length upper threshold and the queue length lower threshold into a pre-built congestion marking probability determination model to obtain the congestion marking probability of the target data queue.

[0126] For example, the ECN marking probability of a QP queue outside the low-pass filter window is:

[0127]

[0128] in, represents the ECN marking probability of queue QP_i, QP_i represents the i-th QP queue, Qavg(t) represents the average queue length in the current time period (t), Kmin represents the lower limit threshold of the queue length, Kmax represents the upper limit threshold of the queue length, Qi represents the queue length of the i-th QP queue at time t (that is, the instantaneous queue length at time t, also called the current queue length).

[0129] If Qavg(t) is less than the lower limit of the queue length, all QP queues do not need to be marked; if Qavg(t) exceeds the upper limit of the queue length, it means that there is a risk of packet loss, and all QP queues need to be marked. In addition, the larger the queue length of the QP queue, the greater the probability of ECN marking is needed to quickly suppress its message sending rate, but all data packets in the QP queue cannot be marked with ECN, so as to avoid the message sending rate being reduced too quickly, resulting in too low bandwidth utilization, and thus causing resource waste.

[0130] In this embodiment, when calculating the congestion marking probability of the target data queue, the average queue length, the current queue length of the target data queue, the queue length upper threshold and the queue length lower threshold are comprehensively considered, so that the calculated congestion marking probability can be made more accurate, thereby improving the accuracy of determining the congestion marking probability of the target data queue, facilitating subsequent accurate congestion marking processing of the target data message selected in the target data queue, so that the target sending end can perform congestion control processing in time, avoiding the defect that the target sending end fails to perform congestion control processing in time due to congestion marking errors, and further improving the congestion control efficiency.

[0131] In an exemplary embodiment, the congestion marking probability of the target data queue is determined based on the average queue length, the current queue length of the target data queue, the queue length upper threshold and the queue length lower threshold, specifically including the following contents: obtaining the correspondence between the average queue length, the current queue length, the queue length upper threshold, the queue length lower threshold and the congestion marking probability; querying the correspondence to obtain the congestion marking probability corresponding to the average queue length of the data queues sent by each sending end in the intelligent computing network within the current time period, the current queue length of the target data queue, the queue length upper threshold and the queue length lower threshold, as the congestion marking probability of the target data queue.

[0132] Exemplarily, the network device obtains the correspondence between the average queue length, the current queue length, the upper threshold of the queue length, the lower threshold of the queue length and the congestion marking probability from the local database; then, based on the average queue length of the data queues sent by each sending end in the intelligent computing network in the current time period, the current queue length of the target data queue, the upper threshold of the queue length and the lower threshold of the queue length, the correspondence is queried to obtain the congestion marking probability corresponding to the average queue length of the data queues sent by each sending end in the intelligent computing network in the current time period, the current queue length of the target data queue, the upper threshold of the queue length and the lower threshold of the queue length, as the congestion marking probability of the target data queue.

[0133] In this embodiment, when determining the congestion marking probability of the target data queue, the congestion marking probability of the target data queue can be quickly obtained by querying the correspondence between the average queue length, the current queue length, the queue length upper threshold, the queue length lower threshold and the congestion marking probability, without the need for manual calculation, thereby simplifying the determination process of the congestion marking probability and further improving the determination efficiency of the congestion marking probability of the target data queue.

[0134] In an exemplary embodiment, the above-mentioned step S201, when the average queue length of the data queues sent by each sending end in the intelligent computing network within the current time period meets the preset length condition, before sorting each data queue, also includes: determining the average queue length of the data queues sent by each sending end in the intelligent computing network within the current time period; when the average queue length is greater than or equal to the lower limit threshold of the queue length, and less than or equal to the upper limit threshold of the queue length, determining that the average queue length meets the preset length condition.

[0135] Among them, the average queue length of the data queues sent by each sending end in the intelligent computing network in the current time period is determined based on the average queue length of the data queues sent by each sending end in the intelligent computing network in the previous time period and the instantaneous average queue length of each data queue at the last moment of the current time period.

[0136] The instantaneous average queue length of each data queue at the last moment of the current time period refers to the average value of the queue length of each data queue at the last moment of the current time period (i.e., the current queue length of each data queue). For example, if the last moment of the current time period is t, then the instantaneous average queue length of each data queue at the last moment of the current time period refers to the instantaneous average queue length of each data queue at t.

[0137] Exemplarily, the network device obtains the queue length of each data queue at the last moment of the current time period, and calculates the average value of the queue length of each data queue at the last moment of the current time period as the instantaneous average queue length of each data queue at the last moment of the current time period; then obtains the average queue length and the corresponding first weight of the data queues sent by each sending end in the intelligent computing network in the previous time period of the current time period, and the second weight corresponding to the instantaneous average queue length, and the sum of the first weight and the second weight is 1; then, based on the first weight and the second weight, the average queue length of the previous time period and the instantaneous average queue length of each data queue at the last moment of the current time period are summed to obtain the average queue length of the data queues sent by each sending end in the intelligent computing network in the current time period; finally, when the average queue length of the current time period is greater than or equal to the lower limit threshold of the queue length, and less than or equal to the upper limit threshold of the queue length, it is determined that the average queue length meets the preset length condition.

[0138] For example, the network device refers to the RED algorithm to calculate the average queue length Qavg(t) of the current time period (t):

[0139] Qavg(t)=(1-w)×Qavg(t-1)+w×Q(t)

[0140] Wherein, Qavg(t) is the average queue length of the current time period (t), Qavg(t-1) is the average queue length of the previous time period (t-1), w is the weight, and Q(t) is the average queue length at instantaneous value t (i.e., the instantaneous average queue length at t).

[0141] In this embodiment, by comparing the average queue length of the data queues sent by each sending end in the intelligent computing network within the current time period with the lower limit threshold of the queue length and the upper limit threshold of the queue length, it is possible to effectively determine whether the average queue length meets the preset length condition, so that when the average queue length meets the preset length condition, the target data queue can be screened and congestion marked in a timely manner, so that the target sending end can perform congestion control processing in a timely manner.

[0142] In an exemplary embodiment, the above step S203, according to the congestion marking probability of the target data queue, performs congestion marking processing on the target data packets selected in the target data queue to obtain a marked target data queue, specifically including the following contents: according to the congestion marking probability of the target data queue, determining the number of message marks in the target data queue; randomly selecting data packets that meet the message marking number from the target data queue as target data packets; adding congestion marking information to the target data packets in the target data queue to obtain a marked target data queue.

[0143] The number of message markings refers to the number of target data messages that need to be congested in the target data queue. For example, if the congestion marking probability of the target data queue is 30% and it contains 100 data messages, the number of message markings is 100×30%, that is, 30.

[0144] The congestion marking information refers to ECN marking information.

[0145] Exemplarily, the network device obtains the number of data packets contained in the target data queue, and determines the number of message marks in the target data queue based on the number of data packets and the congestion marking probability of the target data queue, such as multiplying the number of data packets by the congestion marking probability of the target data queue to obtain the number of message marks in the target data queue; then, randomly selects data packets from the target data queue until the number of selected data packets reaches the number of message marks, and uses the selected data packets as target data packets; finally, adds congestion marking information (i.e., ECN marking information) to each target data packet in the target data queue to obtain a marked target data queue.

[0146] In this embodiment, congestion marking is performed on the target data message selected in the target data queue according to the congestion marking probability of the target data queue to obtain a marked target data queue, so that the marked target data queue causing network congestion is subsequently sent to the receiving end, so that the receiving end can promptly instruct the target sending end associated with the marked target data message to perform congestion control processing, thereby enabling the target sending end to quickly perform congestion control processing, thereby improving the congestion control efficiency.

[0147] In an exemplary embodiment, Figure 4 As shown in FIG. , another intelligent network congestion control method is provided, which is applied to Figure 1 Taking the receiving end in the China Intelligent Computing Network as an example, the following steps S401 to S402 are included. Among them:

[0148] Step S401: receiving a marked target data queue sent by a network device in the intelligent computing network.

[0149] Among them, the marked target data queue includes the marked target data message; the network device is used to sort the data queues when the average queue length of the data queues sent by each sending end in the intelligent computing network within the current time period meets the preset length condition, and filter out the target data queue outside the low-pass filter window of the current time period from the sorted data queue, determine the congestion marking probability of the target data queue according to the average queue length and the current queue length of the target data queue, and perform congestion marking processing on the selected target data message in the target data queue according to the congestion marking probability of the target data queue to obtain the marked target data queue.

[0150] Step S402, instructing the target sending end associated with the marked target data message to perform congestion control processing.

[0151] Exemplarily, a receiving end in an intelligent computing network receives a data packet in a marked target data queue sent by a network device in the intelligent computing network, and identifies the data packet. If the data packet is a marked data packet, a corresponding CNP message is generated, and the CNP message is returned to a target sending end associated with the marked target data packet. After receiving the CNP message, the target sending end can obtain the current network congestion status, and perform corresponding congestion control processing according to the current network congestion status, such as reducing the message sending rate.

[0152] It should be noted that for the specific limitations of the embodiments of the intelligent computing network congestion control method applied to the receiving end, reference can be made to the relevant embodiments of the intelligent computing network congestion control method applied to the network device mentioned above, which will not be repeated here.

[0153] In the above-mentioned intelligent computing network congestion control method, when the average queue length of the data queues sent by each sending end in the intelligent computing network within the current time period meets the preset length condition, the target data queue located outside the low-pass filter window of the current time period is first screened out from the sorted data queue, and then the selected target data message in the target data queue is subjected to congestion marking processing, so that the target sending end associated with the marked target data message is instructed by the receiving end in the intelligent computing network to perform congestion control processing, that is, only the target data queue with a high queue length causing congestion is subjected to congestion marking processing, so that the target sending end causing congestion can be quickly instructed to perform congestion control processing, and there is no need to perform congestion control processing on the target sending end with a queue length exceeding the following. All data queues within the limit threshold are probabilistically marked, thereby simplifying the congestion control process of the intelligent computing network and further improving the congestion control efficiency of the intelligent computing network; at the same time, by comprehensively considering the average queue length of the data queues sent by each sender in the intelligent computing network within the current time period and the current queue length of the target data queue, the accuracy of determining the congestion marking probability of the target data queue can be improved, which is convenient for the subsequent accurate congestion marking processing of the target data packets selected in the target data queue, so that the target sending end can perform congestion control processing in time, avoiding the defect that the target sending end fails to perform congestion control processing in time due to congestion marking errors, and further improving the congestion control efficiency of the intelligent computing network.

[0154] In an exemplary embodiment, Figure 5 As shown, another intelligent network congestion control method is provided, which is applied to Figure 1 Taking the network equipment in the China Intelligent Computing Network as an example, the following steps S501 to S511 are included. Among them:

[0155] Step S501, determining the average queue length of the data queue sent by each sending end in the intelligent computing network within the current time period.

[0156] Step S502: When the average queue length is greater than or equal to the lower limit threshold of the queue length and less than or equal to the upper limit threshold of the queue length, it is determined that the average queue length meets the preset length condition.

[0157] Step S503, obtaining the low-pass filter window parameters of the previous time period of the current time period; determining the low-pass filter window parameters of the current time period according to the average queue length, the low-pass filter window parameters of the previous time period, the queue length upper limit threshold and the queue length lower limit threshold.

[0158] Step S504, setting the low-pass filter window of the current time period according to the low-pass filter window parameters of the current time period.

[0159] Step S505, obtaining the current queue length of each data queue; sorting each data queue in descending order of the current queue length to obtain a sorted data queue.

[0160] Step S506: Filter out the data queues outside the low-pass filter window of the current time period from the sorted data queues as target data queues.

[0161] Step S507, obtaining a corresponding relationship between the average queue length, the current queue length, the queue length upper threshold, the queue length lower threshold and the congestion marking probability.

[0162] Step S508, query the corresponding relationship, and obtain the congestion marking probability corresponding to the average queue length of the data queues sent by each sending end in the intelligent computing network within the current time period, the current queue length of the target data queue, the upper limit threshold of the queue length, and the lower limit threshold of the queue length as the congestion marking probability of the target data queue.

[0163] Step S509, determining the number of message marks in the target data queue according to the congestion marking probability of the target data queue; and randomly selecting data messages that meet the number of message marks from the target data queue as target data messages.

[0164] Step S510: adding congestion marking information to the target data message in the target data queue to obtain a marked target data queue.

[0165] Step S511, sending the marked target data queue to the receiving end in the intelligent computing network, so that the receiving end instructs the target sending end associated with the marked target data message to perform congestion control processing.

[0166] In the above-mentioned intelligent computing network congestion control method, when the average queue length of the data queues sent by each sending end in the intelligent computing network within the current time period meets the preset length condition, the target data queue located outside the low-pass filter window of the current time period is first screened out from the sorted data queue, and then the selected target data message in the target data queue is subjected to congestion marking processing, so that the target sending end associated with the marked target data message is instructed by the receiving end in the intelligent computing network to perform congestion control processing, that is, only the target data queue with a high queue length causing congestion is subjected to congestion marking processing, so that the target sending end causing congestion can be quickly instructed to perform congestion control processing, and there is no need to perform congestion control processing on the target sending end with a queue length exceeding the following. All data queues within the limit threshold are probabilistically marked, thereby simplifying the congestion control process of the intelligent computing network and further improving the congestion control efficiency of the intelligent computing network; at the same time, by comprehensively considering the average queue length of the data queues sent by each sender in the intelligent computing network within the current time period and the current queue length of the target data queue, the accuracy of determining the congestion marking probability of the target data queue can be improved, which is convenient for the subsequent accurate congestion marking processing of the target data packets selected in the target data queue, so that the target sending end can perform congestion control processing in time, avoiding the defect that the target sending end fails to perform congestion control processing in time due to congestion marking errors, and further improving the congestion control efficiency of the intelligent computing network.

[0167] In order to more clearly illustrate the intelligent computing network congestion control method provided in the embodiment of the present application, the intelligent computing network congestion control method is specifically described below with a specific embodiment. In an exemplary embodiment, Figure 6 As shown, in response to the common Incast traffic congestion problem in the RoCEv2 network intelligent computing center, the present application also provides a congestion control optimization method for the intelligent computing center based on a low-pass filter. This method can quickly suppress the traffic sending of the QP sender that causes Incast congestion without affecting the business of other small-traffic QP senders, thereby ensuring the normal operation of most transmissions.

[0168] refer to Figure 6 The processing flow of the intelligent computing center congestion control optimization method based on low-pass filter (i.e., the CP-side DCQCN optimization method based on low-pass filter) is as follows:

[0169] (1) The switch detects the current port queue status. If the average queue length of the current time period is lower than the lower threshold Kmin, the switch directly enters the QP data packet forwarding process, that is, enters the process of forwarding the QP data queue in the next time period.

[0170] (2) If the average queue length of the current time period exceeds the lower limit threshold Kmin, the ECN marking process is entered. First, the low-pass filter window parameter λ_ecn is reset, and the queue length QP_i of each QP queue is calculated and sorted. According to the low-pass filter window of the current time period, the QP queues with high queue lengths outside the low-pass filter window are screened out. These QP queues will be probabilistically marked, that is, the QP packets in these QP queues will be marked with ECN marks according to the ECN marking probability.

[0171] (3) The ECN marking probability of each QP queue is calculated respectively. According to the ECN marking probability, the QP message is selected and marked with the ECN mark. All queues to be sent enter the sending state and start resetting the timer.

[0172] (4) At the next time t, if the average queue length of the sending queue still exceeds the lower limit threshold Kmin, the low-pass filter window parameters at this time are calculated based on the low-pass filter window parameters at the previous time t, and the queue performs the ECN identification process, repeating the processes (2) to (3).

[0173] refer to Figure 7 The present application also provides an ECN marking function device architecture for an intelligent computing center switch device, which can be deployed on a switch and mainly includes:

[0174] Intelligent computing center switch CP algorithm core processing unit: This unit is mainly used to process congestion perception and the CP side functions of the DCQCN algorithm, while coordinating and controlling the logical business process operation of other units.

[0175] QP queue buffer: It is the buffer area where the switch stores QP messages.

[0176] Timer: A timing device used to control QP queue sending, congestion sensing, low-pass filtering and other related operations. It is configurable.

[0177] Parameter register: The DCQCN algorithm on the CP side has a series of key parameters, such as low-pass filter window parameters, etc. The parameters stored in the register can be modified by the core processing unit and are usually valid in one timing cycle.

[0178] Low-pass filter: This unit performs the low-pass filtering function. The core parameter is the low-pass window parameter λ_ecn. The unit first sorts the statistics and lengths of the QP queues in the buffer area, and filters out the QP queue messages with high queue lengths according to the low-pass filter window parameters, and transmits them to the ECN marking engine for ECN marking.

[0179] QP queue ECN marking probability calculation engine: Under the control of the core processing unit, this unit calculates the marking probability value for the messages in each QP queue, and the calculated marking probability value will be directly passed to the ECN marking engine.

[0180] ECN marking engine: This unit performs ECN marking on the QP queue input from the low-pass filter according to the marking probability value calculated by the QP queue ECN marking probability calculation engine.

[0181] The above embodiments can achieve the following technical effects: (1) A DCQCN optimization method, which first proposes a CP-side DCQCN optimization method based on low-pass filtering, mainly targeting the network congestion problem caused by Incast traffic in the RoCEv2 network. Through this method, the main QP message sender causing congestion can be quickly suppressed, while trying not to affect the low-traffic sender as much as possible, ensuring that most network transmissions proceed smoothly; (2) Based on the above method, the present application also proposes an ECN marking function device architecture for the intelligent computing center switch equipment. Through this device architecture, the optimized DCQ CN algorithm; (3) The CP-side DCQCN optimization method based on low-pass filtering proposed in this application can be deployed and implemented in the intelligent computing center for large model calculations, especially in the switch connected to the training server, because this is the so-called last-hop node that is prone to Incast congestion. The algorithm of this application is conducive to quickly degrading the network congestion caused by burst QP messages and many-to-one traffic; (4) The method and device provided in this application are universal, general, and cross-platform. They can be implemented and deployed on various platform devices, and can also be deployed and run on physical devices or virtual machines, and have broad application prospects.

[0182] It should be understood that, although the various steps in the flowcharts involved in the above-mentioned embodiments are displayed in sequence according to the indication of the arrows, these steps are not necessarily executed in sequence according to the order indicated by the arrows. Unless there is a clear explanation in this article, the execution of these steps does not have a strict order restriction, and these steps can be executed in other orders. Moreover, at least a part of the steps in the flowcharts involved in the above-mentioned embodiments can include multiple steps or multiple stages, and these steps or stages are not necessarily executed at the same time, but can be executed at different times, and the execution order of these steps or stages is not necessarily to be carried out in sequence, but can be executed in turn or alternately with other steps or at least a part of the steps or stages in other steps.

[0183] Based on the same inventive concept, the embodiment of the present application also provides an intelligent network congestion control device for implementing the intelligent network congestion control method involved above. The implementation scheme for solving the problem provided by the device is similar to the implementation scheme recorded in the above method, so the specific limitations in one or more intelligent network congestion control device embodiments provided below can refer to the limitations of the intelligent network congestion control method above, and will not be repeated here.

[0184] In an exemplary embodiment, Figure 8 As shown, an intelligent computing network congestion control device 800 is provided, which is applied to a network device in an intelligent computing network, including: a queue screening module 810, a probability determination module 820, a congestion marking module 830 and a queue sending module 840, wherein:

[0185] The queue screening module 810 is used to sort the data queues when the average queue length of the data queues sent by each sending end in the intelligent computing network within the current time period meets the preset length condition, and to screen out the target data queues outside the low-pass filter window of the current time period from the sorted data queues.

[0186] The probability determination module 820 is used to determine the congestion marking probability of the target data queue according to the average queue length and the current queue length of the target data queue.

[0187] The congestion marking module 830 is used to perform congestion marking processing on the target data message selected in the target data queue according to the congestion marking probability of the target data queue to obtain a marked target data queue; the marked target data queue includes the marked target data message.

[0188] The queue sending module 840 is used to send the marked target data queue to the receiving end in the intelligent computing network, so that the receiving end instructs the target sending end associated with the marked target data message to perform congestion control processing.

[0189] In an exemplary embodiment, the congestion control device 800 also includes a window setting module, which is used to obtain the low-pass filter window parameters of the previous time period of the current time period; determine the low-pass filter window parameters of the current time period based on the average queue length, the low-pass filter window parameters of the previous time period, the queue length upper limit threshold and the queue length lower limit threshold; set the low-pass filter window of the current time period based on the low-pass filter window parameters of the current time period.

[0190] In an exemplary embodiment, the queue screening module 810 is also used to obtain the current queue length of each data queue; sort each data queue in order of the current queue length from high to low to obtain a sorted data queue; and from the sorted data queue, screen out the data queue outside the low-pass filter window of the current time period as the target data queue.

[0191] In an exemplary embodiment, the probability determination module 820 is also used to obtain the queue length upper threshold and the queue length lower threshold; determine the congestion marking probability of the target data queue based on the average queue length, the current queue length of the target data queue, the queue length upper threshold and the queue length lower threshold.

[0192] In an exemplary embodiment, the probability determination module 820 is also used to obtain the correspondence between the average queue length, the current queue length, the queue length upper threshold, the queue length lower threshold and the congestion marking probability; query the correspondence to obtain the congestion marking probability corresponding to the average queue length of the data queues sent by each sending end in the intelligent computing network within the current time period, the current queue length of the target data queue, the queue length upper threshold and the queue length lower threshold, as the congestion marking probability of the target data queue.

[0193] In an exemplary embodiment, the congestion control device 800 also includes a length judgment module, which is used to determine the average queue length of the data queues sent by each sending end in the intelligent computing network within the current time period; when the average queue length is greater than or equal to the lower limit threshold of the queue length, and less than or equal to the upper limit threshold of the queue length, it is determined that the average queue length meets the preset length condition.

[0194] In an exemplary embodiment, the congestion marking module 830 is also used to determine the number of message marks in the target data queue based on the congestion marking probability of the target data queue; randomly select data packets that meet the number of message marks from the target data queue as target data packets; add congestion marking information to the target data packets in the target data queue to obtain a marked target data queue.

[0195] In an exemplary embodiment, Fig. 9 As shown, another intelligent computing network congestion control device 900 is provided, which is applied to a receiving end in an intelligent computing network, including: a queue receiving module 910 and a processing indication module 920, wherein:

[0196] The queue receiving module 910 is used to receive the marked target data queue sent by the network device in the intelligent computing network; the marked target data queue includes the marked target data message; the network device is used to sort the data queues when the average queue length of the data queues sent by each sending end in the intelligent computing network within the current time period meets the preset length condition, and filter out the target data queue outside the low-pass filter window of the current time period from the sorted data queues, determine the congestion marking probability of the target data queue according to the average queue length and the current queue length of the target data queue, and perform congestion marking processing on the selected target data message in the target data queue according to the congestion marking probability of the target data queue to obtain the marked target data queue.

[0197] The processing instruction module 920 is used to instruct the target sending end associated with the marked target data message to perform congestion control processing.

[0198] Each module in the above-mentioned intelligent network congestion control device can be implemented in whole or in part by software, hardware and their combination. Each of the above-mentioned modules can be embedded in or independent of the processor in the computer device in the form of hardware, or can be stored in the memory in the computer device in the form of software, so that the processor can call and execute the operations corresponding to each of the above modules.

[0199] In an exemplary embodiment, Figure 1 As shown, the present application also provides an intelligent computing network congestion control system, which includes: a sending end 101, a network device 102 and a receiving end 103 in the intelligent computing network. Among them:

[0200] The sending end 101 is used to send the data queue to the network device 102.

[0201] The network device 102 is used to sort the data queues when the average queue length of the data queues sent by each sending end 101 in the current time period meets the preset length condition, and filter out the target data queue outside the low-pass filter window of the current time period from the sorted data queues; determine the congestion marking probability of the target data queue according to the average queue length and the current queue length of the target data queue; perform congestion marking processing on the target data message selected in the target data queue according to the congestion marking probability of the target data queue to obtain a marked target data queue; the marked target data queue includes the marked target data message; and send the marked target data queue to the receiving end 103.

[0202] The receiving end 103 is used to instruct the target sending end associated with the marked target data message to perform congestion control processing.

[0203] In an exemplary embodiment, a computer device is provided. The computer device may be a terminal, and its internal structure diagram may be as shown in FIG. Fig.10 As shown. The computer device includes a processor, a memory, an input / output interface, a communication interface, a display unit and an input device. Among them, the processor, the memory and the input / output interface are connected through a system bus, and the communication interface, the display unit and the input device are connected to the system bus through the input / output interface. 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 and a computer program. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The input / output interface of the computer device is used to exchange information between the processor and an external device. The communication interface of the computer device is used to communicate with an external terminal in a wired or wireless manner, and the wireless manner can be implemented through WIFI, a mobile cellular network, near field communication (Near Field Communication, NFC) or other technologies. When the computer program is executed by the processor, a method for controlling congestion in an intelligent computing network is implemented. The display unit of the computer device is used to form a visually visible picture, which can be a display screen, a projection device or a virtual reality imaging device. The display screen can be a liquid crystal display screen or an electronic ink display screen, and the input device of the computer device can be a touch layer covering the display screen, or a button, trackball or touchpad set on the computer device shell, or an external keyboard, touchpad or mouse.

[0204] In an exemplary embodiment, another computer device is provided. The computer device may be a server, and its internal structure diagram may be as shown in FIG. Fig.11 As shown. The computer device includes a processor, a memory, an input / output interface (Input / Output, referred to as I / O) and a communication interface. Among them, the processor, the memory and the input / output interface are connected through a system bus, and the communication interface is connected to the system bus through the input / output interface. 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 such as data packets and data packet processing results. The input / output interface of the computer device is used to exchange information between the processor and an external device. The communication 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, a method for controlling congestion in an intelligent computing network is implemented.

[0205] Those skilled in the art will understand that Fig.10 and Fig.11 The structure shown in the figure is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation on the computer device to which the solution of the present application is applied. The specific computer device may include more or fewer components than those shown in the figure, or combine certain components, or have a different arrangement of components.

[0206] In an exemplary embodiment, a computer device is further provided, including a memory and a processor, wherein a computer program is stored in the memory, and the processor implements the steps in the above-mentioned method embodiments when executing the computer program.

[0207] In an exemplary embodiment, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the steps in the above-mentioned method embodiments are implemented.

[0208] In an exemplary embodiment, a computer program product is provided, including a computer program, and when the computer program is executed by a processor, the steps in the above method embodiments are implemented.

[0209] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data must comply with relevant regulations.

[0210] Those of ordinary skill in the art can understand that all or part of the processes in the above-mentioned embodiment methods can be completed by instructing the relevant hardware through a computer program, and the computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to the memory, database or other medium used in the embodiments provided in the present application can include at least one of non-volatile memory and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. As an illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM). The database involved in each embodiment provided in this application may include at least one of a relational database and a non-relational database. Non-relational databases may include distributed databases based on blockchains, etc., but are not limited to this. The processor involved in each embodiment provided in this application may be a general-purpose processor, a central processing unit, a graphics processor, a digital signal processor, a programmable logic device, a data processing logic device based on quantum computing, an artificial intelligence (AI) processor, etc., but are not limited to this.

[0211] The technical features of the above embodiments may be combined arbitrarily. To make the description concise, 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 application.

[0212] The above-described embodiments only express several implementation methods of the present application, and the descriptions thereof are relatively specific and detailed, but they cannot be understood as limiting the scope of the present application. It should be pointed out that, for a person of ordinary skill in the art, several variations and improvements can be made without departing from the concept of the present application, and these all belong to the protection scope of the present application. Therefore, the protection scope of the present application shall be subject to the attached claims.

Claims

1. A method for controlling network congestion by intelligent computing, characterized in that: A network device applied to an intelligent computing network, the method comprising: When the average queue length of the data queues sent by each sending end in the intelligent computing network in the current time period meets the preset length condition, sorting the data queues, and filtering out the target data queues outside the low-pass filter window of the current time period from the sorted data queues; Determining a congestion marking probability of the target data queue according to the average queue length and the current queue length of the target data queue; According to the congestion marking probability of the target data queue, a congestion marking process is performed on the target data message selected in the target data queue to obtain a marked target data queue; the marked target data queue includes the marked target data message; The marked target data queue is sent to a receiving end in the intelligent computing network, so that the receiving end instructs a target sending end associated with the marked target data message to perform congestion control processing.

2. The method according to claim 1, characterized in that Before sorting the data queues and filtering out the target data queues outside the low-pass filter window of the current time period from the sorted data queues, the method further includes: Obtaining low-pass filter window parameters of a time period previous to the current time period; Determine the low-pass filter window parameter of the current time period according to the average queue length, the low-pass filter window parameter of the previous time period, the queue length upper limit threshold and the queue length lower limit threshold; The low-pass filter window of the current time period is set according to the low-pass filter window parameters of the current time period.

3. The method according to claim 1, characterized in that The step of sorting the data queues and filtering out the target data queues outside the low-pass filter window of the current time period from the sorted data queues includes: Obtaining the current queue length of each of the data queues; Sorting the data queues in descending order of the current queue lengths to obtain a sorted data queue; From the sorted data queues, a data queue outside the low-pass filter window of the current time period is screened out as the target data queue.

4. The method according to claim 1, characterized in that: The determining, according to the average queue length and the current queue length of the target data queue, a congestion marking probability of the target data queue includes: Get the queue length upper and lower thresholds. A congestion marking probability of the target data queue is determined according to the average queue length, the current queue length of the target data queue, the queue length upper threshold, and the queue length lower threshold.

5. The method according to claim 4, characterized in that The determining, according to the average queue length, the current queue length of the target data queue, the queue length upper limit threshold, and the queue length lower limit threshold, of the congestion marking probability of the target data queue includes: Obtain the correspondence between the average queue length, current queue length, queue length upper threshold, queue length lower threshold, and congestion marking probability; Query the corresponding relationship to obtain the congestion marking probability corresponding to the average queue length of the data queues sent by each sending end in the intelligent computing network during the current time period, the current queue length of the target data queue, the queue length upper limit threshold, and the queue length lower limit threshold, as the congestion marking probability of the target data queue.

6. The method according to claim 1, characterized in that When the average queue length of the data queues sent by each sending end in the intelligent computing network in the current time period meets the preset length condition, before sorting the data queues, the method further includes: Determine the average queue length of the data queue sent by each sending end in the intelligent computing network in the current time period; When the average queue length is greater than or equal to the queue length lower limit threshold and less than or equal to the queue length upper limit threshold, it is determined that the average queue length meets the preset length condition.

7. The method according to any one of claims 1 to 6, characterized in that: The step of performing congestion marking processing on the target data message selected in the target data queue according to the congestion marking probability of the target data queue to obtain a marked target data queue includes: Determining the number of message marks in the target data queue according to the congestion marking probability of the target data queue; Randomly selecting a data message that meets the message tag quantity from the target data queue as the target data message; Congestion marking information is added to the target data message in the target data queue to obtain a marked target data queue.

8. A method for controlling congestion in an intelligent computing network, characterized in that: Applied to a receiving end in an intelligent computing network, the method includes: Receive a marked target data queue sent by a network device in the intelligent computing network; the marked target data queue includes a marked target data message; the network device is used to sort each of the data queues when the average queue length of the data queues sent by each sending end in the intelligent computing network in the current time period meets a preset length condition, and filter out the target data queue that is outside the low-pass filter window of the current time period from the sorted data queues, determine the congestion marking probability of the target data queue according to the average queue length and the current queue length of the target data queue, and perform congestion marking processing on the selected target data message in the target data queue according to the congestion marking probability of the target data queue to obtain the marked target data queue; Instruct a target sending end associated with the marked target data message to perform congestion control processing.

9. An intelligent computing network congestion control device, characterized in that: A network device applied to an intelligent computing network, the device comprising: A queue screening module is used to sort the data queues when the average queue length of the data queues sent by each sending end in the intelligent computing network in the current time period meets the preset length condition, and to screen out the target data queues outside the low-pass filter window of the current time period from the sorted data queues; A probability determination module, configured to determine a congestion marking probability of the target data queue according to the average queue length and the current queue length of the target data queue; A congestion marking module, configured to perform congestion marking processing on the target data message selected in the target data queue according to the congestion marking probability of the target data queue, so as to obtain a marked target data queue; the marked target data queue includes the marked target data message; The queue sending module is used to send the marked target data queue to the receiving end in the intelligent computing network, so that the receiving end instructs the target sending end associated with the marked target data message to perform congestion control processing.

10. An intelligent network congestion control device, characterized in that: Applied to a receiving end in an intelligent computing network, the device comprises: A queue receiving module, used for receiving a marked target data queue sent by a network device in the intelligent computing network; the marked target data queue includes a marked target data message; the network device is used for sorting each of the data queues when the average queue length of the data queues sent by each sending end in the intelligent computing network in the current time period meets a preset length condition, and filtering out the target data queue outside the low-pass filter window of the current time period from the sorted data queues, determining the congestion marking probability of the target data queue according to the average queue length and the current queue length of the target data queue, and performing congestion marking processing on the selected target data message in the target data queue according to the congestion marking probability of the target data queue to obtain the marked target data queue; The processing instruction module is used to instruct the target sending end associated with the marked target data message to perform congestion control processing.

11. An intelligent network congestion control system, characterized in that: The system comprises: a sending end, a network device and a receiving end in an intelligent computing network; The sending end is used to send the data queue to the network device; The network device is used to sort the data queues when the average queue length of the data queues sent by the sending ends in the current time period meets the preset length condition, and filter out the target data queues located outside the low-pass filter window of the current time period from the sorted data queues; determine the congestion marking probability of the target data queue according to the average queue length and the current queue length of the target data queue; perform congestion marking processing on the target data packets selected in the target data queue according to the congestion marking probability of the target data queue to obtain a marked target data queue; the marked target data queue includes the marked target data packets; and send the marked target data queue to the receiving end; The receiving end is used to instruct the target sending end associated with the marked target data message to perform congestion control processing.

12. 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, the steps of the method according to any one of claims 1 to 8 are implemented.

13. 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 8 are implemented.

14. A computer program product comprising a computer program, 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 8 are implemented.