Parameter processing method and apparatus, product, device, and medium

By detecting the status information and congestion indication parameters of the switch ports and adaptively updating the congestion indication parameters, the congestion problem caused by static settings is solved, and the accuracy and flexibility of data exchange are improved.

WO2026031989A1PCT designated stage Publication Date: 2026-02-12TENCENT TECHNOLOGY (SHENZHEN) CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2025/109115
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-08-09
Filing Date
2025-07-17
Publication Date
2026-02-12

AI Technical Summary

Technical Problem

The existing switch port congestion indication parameters are statically set, which makes data exchange prone to congestion and cannot be detected in a timely manner.

Method used

By acquiring the port status information and bound congestion indication parameters of the data exchange device, congestion is detected. If an anomaly is found, the parameters are updated to an appropriate second congestion indication parameter, thus achieving adaptive and automated parameter updates.

Benefits of technology

It improves the accuracy and flexibility of congestion indication parameters, reduces the possibility of congestion during data port switching, and meets the requirements of high-performance networks.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2025109115_12022026_PF_FP_ABST
    Figure CN2025109115_12022026_PF_FP_ABST
Patent Text Reader

Abstract

The present application discloses a parameter processing method and apparatus, a product, a device, and a medium. The method comprises: acquiring first state information of a data port of a data exchange device and a bound first congestion indication parameter, the first state information being state information generated by the data port executing a first data exchange process within a target time period, and the first congestion indication parameter being used for indicating a data exchange volume threshold at which the risk of congestion occurs in the first data exchange process (S101); detecting the congestion condition of the first data exchange process on the basis of the first state information (S102); if the congestion condition of the first data exchange process is abnormal, searching for a second congestion indication parameter adapted to the data port (S103); and updating the congestion indication parameter bound to the data port from the first congestion indication parameter to the second congestion indication parameter (S104). The present application can improve the accuracy and flexibility of updating a congestion indication parameter bound to a data port of a data exchange device, so as to reduce the possibility of congestion occurring when the data port performs data exchange.
Need to check novelty before this filing date? Find Prior Art

Description

Parameter processing method, device, product, equipment and medium

[0001] The present application claims priority to the Chinese patent application No. 2024110990285, filed on August 9, 2024, and entitled "Parameter processing method, device, product, equipment and medium", the whole content of which is incorporated herein by reference. TECHNICAL FIELD

[0002] The present application relates to the technical field of data exchange, and in particular to a parameter processing method, device, product, equipment and medium. BACKGROUND

[0003] Switches can be used to provide data sharing, data processing and data transmission (which can be referred to as data exchange) between different nodes (such as different systems or different devices, etc.). The switch has a port for data exchange, which can be bound with a corresponding congestion indication parameter, which can be used to issue a corresponding indication when the data exchange of the data port is at risk of congestion, so as to adjust the sending rate of the data sent to the data port for data exchange.

[0004] In existing applications, a fixed congestion indication parameter is bound to the port of the switch by static setting, and if the traffic mode of the data exchange of the port of the switch changes, the statically set congestion indication parameter is very likely to fail to meet the current congestion indication of the data exchange of the port, thereby causing the data exchange of the port to easily occur congestion and fail to be discovered in time. SUMMARY

[0005] The present application provides a parameter processing method, device, product, equipment and medium, which can improve the accuracy and flexibility of updating the congestion indication parameter bound to the data port of the data exchange equipment, thereby reducing the possibility of congestion when the data port performs data exchange.

[0006] In one aspect, the present application provides a parameter processing method, which comprises:

[0007] Obtaining first state information of a data port of a data exchange equipment and a first congestion indication parameter bound to the data port, the first state information being state information generated by the data port in a target period when performing a first data exchange process, and the first congestion indication parameter being used to indicate a threshold of exchanged data amount that causes congestion risk in the first data exchange process;

[0008] Detecting the congestion condition of the first data exchange process based on the first state information;

[0009] If the congestion condition of the first data exchange process is abnormal, a second congestion indication parameter adapted to the data port is searched;

[0010] The congestion indication parameter bound to the data port is updated from the first congestion indication parameter to the second congestion indication parameter.

[0011] In an aspect of the present application, a parameter processing apparatus is provided, and the apparatus comprises:

[0012] The first obtaining module is configured to obtain first state information of a data port of a data exchange device and a first congestion indication parameter bound to the data port, the first state information being state information generated by the data port in a target period when performing a first data exchange process, and the first congestion indication parameter being used to indicate a threshold of exchanged data amount that causes congestion risk of the first data exchange process;

[0013] The detecting module is configured to detect a congestion condition of the first data exchange process based on the first state information.

[0014] The second obtaining module is configured to search a second congestion indication parameter adapted to the data port if the congestion condition of the first data exchange process is abnormal.

[0015] The updating module is configured to update the congestion indication parameter bound to the data port from the first congestion indication parameter to the second congestion indication parameter.

[0016] In an aspect of the present application, a computer device is provided, comprising a memory and a processor, the memory storing a computer program, and the computer program being executed by the processor to make the processor execute the method in the aspect of the present application.

[0017] In an aspect of the present application, a computer readable storage medium is provided, and the computer readable storage medium stores a computer program, the computer program being executed by a processor to make the processor execute the method in the aspect.

[0018] According to an aspect of the present application, a computer program product is provided, and the computer program product comprises a computer program stored in a computer readable storage medium. A processor of a computer device reads the computer program from the computer readable storage medium, and the processor executes the computer program to make the computer device execute the method provided in the aspect and various optional manners.

[0019] The method provided in the application can automatically detect the congestion condition of the first data exchange process of the data port in a target period bound with the first congestion indication parameter through the first state information generated by the data port in the target period bound with the first congestion indication parameter, so that when it is found that the congestion condition of the first data exchange process is abnormal, it is indicated that the currently bound first congestion indication parameter is not suitable for the traffic mode of the data port in data exchange, the second congestion indication parameter suitable for the data port can be re-acquired, and the congestion indication parameter bound by the data port can be updated from the first congestion indication parameter to the second congestion indication parameter, so that the automatic detection and update of the first congestion indication parameter bound by the data port are realized, the accuracy and flexibility of updating the congestion indication parameter bound by the data port are improved, and the possibility of congestion of the data port in data exchange is reduced. BRIEF DESCRIPTION OF DRAWINGS

[0020] Fig. 1 is a structural schematic diagram of a network architecture for data exchange provided by an embodiment of the application;

[0021] Fig. 2 is a scene schematic diagram of updating and detecting the congestion indication parameter bound by the port of the data exchange device provided by an embodiment of the application;

[0022] Fig. 3 is a flow schematic diagram of a parameter processing method provided by an embodiment of the application;

[0023] Fig. 4 is a scene schematic diagram of centralized detection and update of the congestion indication parameter bound by the port of the data exchange device provided by an embodiment of the application;

[0024] Fig. 5 is a scene schematic diagram of distributed detection and update of the congestion indication parameter bound by the port of the data exchange device provided by an embodiment of the application;

[0025] Fig. 6 is a flow schematic diagram of detecting the congestion condition of the data exchange process provided by an embodiment of the application;

[0026] Fig. 7 is a flow schematic diagram of searching for the congestion indication parameter suitable for the data port provided by an embodiment of the application;

[0027] Fig. 8 is a scene schematic diagram of collecting the second state information of the data port under various congestion indication parameters provided by an embodiment of the application;

[0028] Fig. 9a is a curve schematic diagram for ECN threshold value one provided by an embodiment of the application;

[0029] Fig. 9b is a curve schematic diagram for ECN threshold value two provided by an embodiment of the application;

[0030] Fig. 10 is a column diagram of bandwidth utilization of a network according to an embodiment of the present application;

[0031] Fig. 11a is a curve diagram of bus bandwidth according to an embodiment of the present application;

[0032] Fig. 11b is another curve diagram of bus bandwidth according to an embodiment of the present application;

[0033] Fig. 12 is a structural diagram of a parameter processing device according to an embodiment of the present application;

[0034] Fig. 13 is a structural diagram of a computer device according to an embodiment of the present application. DETAILED DESCRIPTION

[0035] First, it should be noted that all the data collected by the present application (such as the status information of a data port, the congestion indication parameter bound to the data port, and other related data) is collected with the consent and authorization of the object to which the data belongs (such as a user, an organization, or an enterprise), and the collection, use, and processing of the related data need to comply with the relevant laws, regulations, and standards of the relevant region.

[0036] Here, the related technical concepts involved in the present application are explained:

[0037] ECN: Explicit Congestion Notification, explicit congestion notification.

[0038] DCQCN: Data Center QCN, data center quantization congestion notification.

[0039] CNP: Congestion Notification Packets, congestion notification packets.

[0040] Switch: a network device for forwarding electrical (optical) signals, which can provide exclusive electrical signal paths for any two network nodes connected to the switch.

[0041] Please refer to FIG. 1, which is a structural schematic diagram of a network architecture for data exchange provided by an embodiment of the present application. As shown in FIG. 1, the network architecture can include a plurality of data sending ends (which can also be referred to as data sending devices), a plurality of data exchange devices, and a plurality of data receiving ends (which can also be referred to as data receiving devices). Each data sending end and each data exchange device can be connected to each other via a network, so that each data sending end and each data exchange device can exchange data with each other. Similarly, each data exchange device and each data receiving end can also exchange data with each other, so that each data exchange device can exchange data with each other data receiving end. The specific number of data sending ends, data exchange devices, and data receiving ends can be determined according to actual application scenarios, and the present application does not limit this.

[0042] The data exchange device described above can be a switch, and the data sending end and the data receiving end can be a computer device, which can be a terminal device or a server, or other devices, and the present application does not limit this. In FIG. 1, the data sending end and the data receiving end are both servers as an example.

[0043] The server described in the embodiment of FIG. 1 can be a standalone physical server, a server cluster or a distributed system composed of multiple physical servers, or a cloud server providing cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, CDN (content distribution network), and basic cloud computing services such as big data and artificial intelligence platforms. The terminal device described above can be a smart phone, a tablet computer, a notebook computer, a desktop computer, a smart television, a vehicle-mounted terminal, a smart home, and the like.

[0044] Each data exchange device can have one or more ports for data exchange. The data sending end can send data to the port of the data exchange device, so that the port of the data exchange device can send the received data to the corresponding data receiving end, thereby achieving the purpose of data exchange.

[0045] Please refer to FIG. 2, which is a scenario diagram of updating and detecting the congestion indication parameter bound to the port of the data exchange device provided by an embodiment of the present application. As shown in FIG. 2, the data port can be any port of any data exchange device described in FIG. 1, and the execution subject of updating and detecting the congestion indication parameter bound to the port of the data exchange device can be a parameter controller. Here, the process of updating and detecting the congestion indication parameter bound to the data port is taken as an example for corresponding description, as described below.

[0046] The parameter controller can acquire state information (which can be referred to as first state information) generated by the data port in performing the first data exchange process in the target period, and a congestion indication parameter (which can be referred to as a first congestion indication parameter) bound by the data port in the target period. Thus, the parameter controller can detect the congestion condition of the first data exchange process by using the first state information and the first congestion indication parameter.

[0047] If it is detected that the congestion condition of the first data exchange process is abnormal, the parameter controller can reacquire (for example, re-search) a new congestion indication parameter (which can be referred to as a second congestion indication parameter) that is adapted to the data port, and can update the congestion indication parameter bound by the data port from the first congestion indication parameter to the second congestion indication parameter. If it is detected that the congestion condition of the first data exchange process is not abnormal, the parameter controller can not reacquire the second congestion indication parameter that is adapted to the data port, but can continue to use the first congestion indication parameter, that is, the first congestion indication parameter is not updated. In this way, adaptive detection and update of the congestion indication parameter bound by the data port are realized, and details can be obtained from the description of the embodiments below.

[0048] By using the method provided in the present application, whether the currently bound congestion indication parameter needs to be updated can be detected according to the congestion condition of the data exchange process of the data port, so that adaptive and automatic update of the congestion indication parameter bound by the data port is realized, the accuracy of the congestion indication parameter bound by the data port is improved, and the automation, convenience and efficiency of the update of the congestion indication parameter bound by the data port are improved.

[0049] Please refer to FIG. 3, which is a flowchart of a parameter processing method provided in an embodiment of the present application. The execution subject in the embodiment of the present application can be a parameter controller. As shown in FIG. 3, the method can include the following steps.

[0050] In step S101, first state information of a data port of a data exchange device and a first congestion indication parameter bound by the data port are acquired. The first state information is state information generated by the data port in performing a first data exchange process in a target period, and the first congestion indication parameter is used to indicate a threshold of exchanged data amount that causes congestion risk in the first data exchange process.

[0051] In an embodiment, there can be multiple (and in some special cases, only one) data exchange devices, which can be switches. In the description of the embodiments of the present application, the process of automatic detection and updating of the congestion indication parameters bound to any port of a data exchange device is taken as an example for description. It can be understood that the principles of detection and updating of the congestion indication parameters bound to each port of each data exchange device are the same and independent.

[0052] Optionally, the congestion indication parameters bound to the ports of each data exchange device can be detected and updated in a centralized manner, or the congestion indication parameters bound to the ports of each data exchange device can be detected and updated in a distributed manner.

[0053] If the congestion indication parameters bound to the ports of each data exchange device need to be detected and updated in a centralized manner, the execution subject (i.e., the parameter controller) of the embodiments of the present application can be a parameter centralized controller, which can be used to detect and update the congestion indication parameters bound to the ports of each data exchange device, i.e., all the congestion indication parameters bound to the ports of all data exchange devices can share the parameter centralized controller for detection and updating.

[0054] The device where the parameter centralized controller is located can be one or more devices (such as a computer device, which can be a server) independent of each data exchange device, and the parameter centralized controller can be configured with relevant business logic for detecting and updating the congestion indication parameters bound to each port of each data exchange device.

[0055] If the congestion indication parameters bound to the ports of each data exchange device need to be detected and updated in a distributed manner, the execution subject (i.e., the parameter controller) of the embodiments of the present application can be a parameter distributed controller, which can be a parameter distributed controller configured in any data exchange device (i.e., the data exchange device used for specific description in the embodiments of the present application), and the parameter distributed controller can be used to detect and update the congestion indication parameters bound to each port of the any data exchange device.

[0056] In this case, each data exchange device can be configured with a respective parameter distribution controller, which can be a software controller, such as an app (i.e., software). That is, one data exchange device can be configured with one parameter distribution controller, which is configured to detect and update the congestion indication parameter bound to the port of the data exchange device. Different data exchange devices can be configured with different parameter distribution controllers. Optionally, the parameter distribution controller can be a software-type controller, which can be configured with relevant software logic (also referred to as business logic) for detecting and updating the congestion indication parameter bound to the port of the data exchange device. Thus, the parameter distribution controller configured in each data exchange device is configured to detect and update the congestion indication parameter bound to the port of multiple data exchange devices in a distributed manner.

[0057] The centralized or distributed detection and update of the congestion control parameter bound to the port can be determined according to the actual application scenario. By configuring respective parameter distribution controllers in each data exchange device, the congestion indication parameter bound to the port of each data exchange device can be detected and updated in a more flexible and efficient manner. The parameter centralized controller is easier to maintain and manage than multiple parameter distribution controllers, and the congestion indication parameter bound to the port of each data exchange device can also be detected and updated in a more unified manner through the parameter centralized controller.

[0058] It can be understood that the parameter distribution controller and the parameter centralized controller have the same logic for detecting and updating the congestion indication parameter bound to the data port, except that the deployment manner is different.

[0059] The following processes are described by taking the process of detecting and updating the congestion control parameter bound to the port of one data exchange device as an example. Therefore, the following are collectively referred to as data exchange devices.

[0060] The data port described above can be any port of the data exchange device for data exchange (which can be understood as data sharing or data transmission). The parameter controller can obtain the first state information of the data port of the data exchange device and the first congestion indication parameter bound to the data port. The first state information can be the state information generated by the data port during the first data exchange process in the target period. That is, the process of data exchange of the data port in the target period can be referred to as the first data exchange process.

[0061] The first congestion indication parameter can be used to indicate a threshold of exchanged data amount in the first data exchange process that causes a congestion risk. In fact, the first congestion indication parameter can be the threshold of exchanged data amount. It can be understood that the first congestion indication parameter can be a water level for evaluating whether there is a congestion risk in the first data exchange process. The first congestion indication parameter can be used to issue a corresponding indication when a congestion risk occurs in the first data exchange process. The first congestion indication parameter can be a congestion indication parameter that is bound by the data port in the target period.

[0062] Specifically, if the data port performs data exchange in the target period, and the queue length of the data queue to be exchanged is greater than the threshold of exchanged data amount indicated by the first congestion indication parameter, it is considered that the current data exchange has a congestion risk. The data port can perform congestion marking (which can be referred to as ECN marking) on the data currently exchanged, such as marking a preset marker for congestion indication on the data currently exchanged. Therefore, the first congestion indication parameter described above can also be understood as a maximum queue length for evaluating whether there is a congestion risk in the first data exchange process. Of course, if the queue length of the data queue to be exchanged by the data port in the target period is less than or equal to the threshold of exchanged data amount, the data exchanged will not be marked for congestion, but can be directly sent to the corresponding data receiving end.

[0063] For example, if the data to be exchanged by the data port in the target period is data packet A, and the data port detects that the queue length of the data queue to be exchanged (i.e., the queue formed by the data currently waiting to be exchanged) is greater than the threshold of exchanged data amount (e.g., 1000) indicated by the first congestion indication parameter (e.g., 1001), the data port can mark the data packet A for congestion before sending it to the corresponding data receiving end.

[0064] The first state information described above can include a cumulative congestion marking number of the data exchanged by the data port in the target period, and a cumulative data exchange amount of the data port in the target period. The cumulative congestion marking number is the number of times that the data exchanged by the data port in the target period is marked for congestion. A data exchanged will be marked for congestion only once or not marked for congestion. The cumulative data exchange amount can be the total data amount of the data exchanged by the data port in the target period, such as the total byte number of the data exchanged by the data port in the target period.

[0065] Please refer to Fig. 4, which is a scene diagram of centralized detection and update of congestion indication parameters bound to ports of data exchange equipment according to an embodiment of the present application. As shown in Fig. 4, here, the parameter centralized controller can include a collection module, a data processing module, a calculation module, and a configuration module. The data center network can include a plurality of data exchange equipment (including data exchange equipment 1 to data exchange equipment m here).

[0066] The collection module is configured to collect state information (such as first state information) of each data exchange equipment. The data processing module is configured to perform corresponding calculation and processing on the state information collected by the collection module, such as calculation of data exchange rate and target marking rate of a data port in a target period of time according to the first state information in the following corresponding embodiment of Fig. 6. The calculation module is configured to detect congestion of a data exchange process (such as a first data exchange process), and search for a new congestion indication parameter adapted to a corresponding port when an abnormality is detected. The configuration module is configured to distribute the new congestion indication parameter adapted to the corresponding port searched by the calculation module to the data exchange equipment, so as to update the congestion indication parameter bound to the port to the new congestion indication parameter.

[0067] The server shown in Fig. 4 can be used to refer to a data sending end for sending data to the data exchange equipment, or a data receiving end for receiving data sent by the data exchange equipment. The server can have a kernel and a network card.

[0068] Please also refer to Fig. 5, which is a scene diagram of distributed detection and update of congestion indication parameters bound to ports of data exchange equipment according to an embodiment of the present application. As shown in Fig. 5, here, the parameter distributed controller can also include a collection module, a data processing module, a calculation module, a configuration module, and a log module. The functions of the collection module, the data processing module, the calculation module, and the configuration module are the same as those described in the above corresponding embodiment of Fig. 4, except that the collection module collects state information generated by the ports of the data exchange equipment in a statistical database of the data exchange equipment, and the configuration module distributes the new congestion indication parameter adapted to the corresponding port searched by the calculation module to a configuration database of the data exchange equipment, so as to update and bind the distributed congestion indication parameter to the corresponding port through the configuration database. The log module is configured to record the history of searching for a new congestion indication parameter of the port of the data exchange equipment where the parameter distributed controller is located, or / and update and change of the congestion indication parameters bound to each port of the data exchange equipment.

[0069] Here, the application can also have a monitoring module, and the above-mentioned embodiment of FIG. 4 can also have a monitoring module. Here, there can also be a monitoring database, which can be used to record the configuration information of the congestion indication parameter bound to the port of the data exchange device by the relevant technical personnel. The configuration information can be used to indicate the way of managing (or controlling) the congestion indication parameter bound to the port of the data exchange device. Therefore, the monitoring module can obtain the configuration information of the congestion indication parameter bound to the port of the data exchange device from the monitoring database, such as obtaining the configuration information of the congestion indication parameter bound to the above-mentioned data port.

[0070] If the configuration information of the congestion indication parameter bound to the data port is rollback information, the monitoring module can roll back and bind the current congestion indication parameter bound to the data port to the preset static congestion indication parameter (i.e., bind to a fixed congestion indication parameter set statically).

[0071] If the configuration information of the congestion indication parameter bound to the data port is rollback information, the monitoring module can roll back and bind the current congestion indication parameter bound to the data port to the preset static congestion indication parameter (i.e., bind to a fixed congestion indication parameter set statically).

[0072] Among them, the way of using the above-mentioned parameter centralized controller to control the congestion indication parameter can be fast iterative control (i.e., simultaneously iterative control of the congestion indication parameter bound to the port of multiple data exchange devices), which is suitable for the scene of verification and optimization of the scheme. The feedback delay of the parameter distributed controller is low, and the adjustment is more accurate, which can be used as a long-term deployment method. Which parameter control method to use can be selected according to the actual application scene.

[0073] The congestion indication parameter bound to the port of the data exchange device in the application can also be called ECN threshold (or ECN parameter). The scheme of the application can be an improvement of the DCQCN scheme (i.e., improvement of the congestion indication parameter bound to the port), so the scheme of the application (i.e., the scheme of adaptively adjusting the congestion indication parameter bound to the port) can also be recorded as AIQCN, which is an adaptive parameter tuning enhanced congestion control method.

[0074] Step S102, detecting the congestion condition of the first data exchange process based on the first state information.

[0075] In an implementation, the parameter controller can detect the congestion condition of the first data exchange process according to the first state information obtained above, i.e., whether the congestion condition of the first data exchange process is abnormal.

[0076] If the congestion condition of the first data exchange process is abnormal, it indicates that the currently bound first congestion control parameter is no longer suitable for the traffic mode of the data port for data exchange, the traffic mode of the data port for data exchange has changed, and the first congestion control parameter bound by the data port needs to be updated and cannot continue to be used. For example, the traffic mode changes from one-to-one (i.e., one data sending end sends data to one data receiving end through the data port) to three-to-one (i.e., three data sending ends send data to one data receiving end through the data port), and so on.

[0077] If the congestion condition of the first data exchange process is not abnormal, it indicates that the currently bound first congestion control parameter is still suitable for the traffic mode of the data port for data exchange, and the first congestion control parameter bound by the data port does not need to be updated and can continue to be used.

[0078] The specific detection of the congestion condition of the first data exchange process can be understood from the description of the corresponding embodiment of FIG. 6 below.

[0079] In step S103, if the congestion condition of the first data exchange process is abnormal, a second congestion indication parameter suitable for the data port is searched.

[0080] In an implementation, as known above, if the congestion condition of the first data exchange process is abnormal, the parameter controller needs to find a new congestion indication parameter suitable for the data port, i.e., a congestion indication parameter suitable for the traffic mode of the data port for current data exchange. This congestion indication parameter can be referred to as a second congestion indication parameter.

[0081] The specific process of obtaining (e.g., searching for) the second congestion indication parameter can be understood from the description of the corresponding embodiment of FIG. 7 below.

[0082] In step S104, the congestion indication parameter bound by the data port is updated from the first congestion indication parameter to the second congestion indication parameter.

[0083] In an implementation, the parameter controller can update the congestion indication parameter bound by the data port from the first congestion indication parameter to the second congestion indication parameter obtained again, so as to achieve the purpose of automatically and timely updating the first congestion indication parameter bound by the data port when it is detected that the first congestion indication parameter is not suitable for the traffic mode of the data port for data exchange.

[0084] After the congestion indication parameter of the data port binding is updated to the second congestion indication parameter, and before the second congestion indication parameter is continuously updated to other congestion indication parameters, the data port can obtain target data (which can be any data that needs to be exchanged) from the data queue to be exchanged, i.e., the target data is the data currently to be exchanged by the data port. At this time, if the queue length of the data queue to be exchanged by the data port is greater than the exchange data threshold indicated by the second congestion indication parameter, the data port can perform congestion marking on the target data to obtain marked target data.

[0085] The data port can send the marked target data to the data receiving end. The target data can be sent by the data sending end to the data port of the data exchange device. Therefore, when the data receiving end receives the marked target data, the data receiving end can generate a congestion indication packet, which can be a CNP packet. The data receiving end can send the generated congestion indication packet to the data receiving end. That is, the data receiving end can generate a corresponding congestion indication packet for the received marked data.

[0086] In fact, the data port can determine whether to perform congestion marking on the exchanged data according to the above principle when sending each data. The data receiving end can generate a corresponding congestion indication packet and send it to the data sending end when receiving the marked data. Therefore, the data sending end can adjust the sending rate of the data to be sent (i.e., the data that has not been sent but needs to be sent to the data port) according to the receiving frequency of the congestion indication packet sent by the data receiving end. For example, a functional relationship (which can be a linear relationship or a nonlinear relationship) between the receiving frequency and the sending rate can be set. The receiving frequency of the congestion indication packet by the data sending end is substituted into the functional relationship, and the sending rate of the data to be sent by the data sending end is calculated (which can be periodic calculation, such as calculation and update once every 5 seconds).

[0087] The receiving frequency of the congestion indication packet by the data sending end and the sending rate of the data to be sent by the data sending end can be negatively correlated in the functional relationship. Specifically, the higher the receiving frequency of the congestion indication packet by the data sending end, the smaller the sending rate of the data to be sent by the data sending end through the functional relationship. Conversely, the lower the receiving frequency of the congestion indication packet by the data sending end, the larger the sending rate of the data to be sent by the data sending end through the functional relationship.

[0088] Through the above process, it can be intuitively understood that the congestion indication parameter plays an important role in the process of data exchange of the data port. The frequency of marking the exchanged data as congested by the data port under the indication of the bound congestion indication parameter can indirectly and automatically adjust the sending rate of the data sending end for sending data, so that there is no excessive data to be exchanged at the data port, thereby avoiding problems such as data packet loss (data exceeding the cache capacity will be discarded) and greatly reducing the possibility of data congestion of the data port when exchanging data.

[0089] The present application can be applied to but not limited to the following application scenarios: cloud storage scenarios (such as scenarios of transferring data stored by multiple conventional storage devices to other multiple cloud storage devices for cloud storage), big data computing scenarios (such as scenarios of performing big data computing through data exchanged between multiple cloud devices), AI (artificial intelligence) large model training scenarios (such as scenarios of performing model training through data exchanged between multiple training ends), and other scenarios with frequent data interaction. In these scenarios, the performance requirement of the network is extremely high, and the method provided by the present application can meet the high performance requirement of the network.

[0090] The method of the present application can meet the demand for high throughput and low latency of the data port under various traffic modes through the congestion control mode of end-to-network cooperation (automatic tuning of the ECN threshold of the network side of the switch, and adjustment of the data sending rate by the end side (which can be a data sending end) according to the feedback of the ECN marking), greatly improving the performance and effect of data exchange of the data port.

[0091] The application can obtain first state information of a data port of a data exchange device and a first congestion indication parameter bound to the data port, the first state information is state information generated by the data port in a target period when performing a first data exchange process, and the first congestion indication parameter is used to indicate a threshold of exchanged data amount that causes congestion risk of the first data exchange process; the congestion condition of the first data exchange process is detected based on the first state information; if the congestion condition of the first data exchange process is abnormal, a second congestion indication parameter suitable for the data port is searched; and the congestion indication parameter bound to the data port is updated from the first congestion indication parameter to the second congestion indication parameter. As can be seen, the method provided by the application can automatically detect the congestion condition of the first data exchange process of the data port in the target period based on the first state information generated by the data port in the target period when the first congestion indication parameter is bound, so that when it is found that the congestion condition of the first data exchange process is abnormal, it is indicated that the currently bound first congestion indication parameter is not suitable for the traffic mode when the data port exchanges data, and then the second congestion indication parameter suitable for the data port can be obtained, and the congestion indication parameter bound to the data port can be updated from the first congestion indication parameter to the second congestion indication parameter, so that the automatic detection and update of the first congestion indication parameter bound to the data port are realized, the accuracy and flexibility of updating the congestion indication parameter bound to the data port are improved, and the possibility of congestion when the data port exchanges data is reduced.

[0092] Please refer to FIG. 6, which is a flow diagram of detecting the congestion condition of a data exchange process according to an embodiment of the application. As shown in FIG. 6, the flow can include the following steps:

[0093] In step S201, the data exchange rate of the data port in the target period is calculated based on the cumulative data exchange amount and the length of the target period.

[0094] In an embodiment, the first state information can include the cumulative data exchange amount of the data exchanged by the data port in the target period, and thus the parameter controller can calculate the data exchange rate of the data port in the target period based on the cumulative data exchange amount and the length of the target period (for example, in seconds), and the data exchange rate is the rate of data exchange of the data port in the target period. For example, the data exchange rate can be obtained by dividing the cumulative data exchange amount by the length of the target period (for example, 5 seconds).

[0095] The data exchange rate of the data port in the target period can be used to reflect the data flow of the data port in the target period. The smaller the data exchange rate is, the smaller the data flow of the data port in the target period is. Conversely, the larger the data exchange rate is, the larger the data flow of the data port in the target period is.

[0096] In step S202, a reference exchange rate for flow judgment of the data port is obtained.

[0097] In an embodiment, the parameter controller can also obtain a reference exchange rate, which can be used for flow judgment of the data port, such as judging whether the data port has data flow in the target period. The reference exchange rate can be the minimum exchange rate for evaluating that the data port has data flow in the target period. In this application, the case that the data flow of the data port is extremely small (such as the case that the exchange rate of the data is less than the reference exchange rate) can be regarded as that the data port does not have data flow.

[0098] Therefore, if the data exchange rate of the data port in the target period is less than the reference exchange rate, it can be considered that the data port does not have data flow in the target period. In this application, in the period (such as the target period) in which the data port does not have data flow, the congestion indication parameter (such as the first congestion indication parameter) bound to the data port does not need to be updated. In this case, the congestion condition of the first data exchange process does not need to be detected, but it can be directly considered that the congestion condition of the first data exchange process of the data port is normal.

[0099] In step S203, if the data exchange rate is greater than or equal to the reference exchange rate, it is determined that the data port has data flow in the target period, and the congestion condition of the first data exchange process is detected.

[0100] In an embodiment, if the data exchange rate of the data port in the target period is greater than or equal to the reference exchange rate, the parameter controller can determine that the data port has data flow in the target period. In this case, the congestion condition of the first data exchange process needs to be detected. The process of the detection can include:

[0101] The parameter controller can obtain a detection condition set, which can include N detection conditions. The N detection conditions are used to determine the conditions for determining that the congestion condition of the first data exchange process is abnormal. N is a positive integer, and the specific value of N can be determined according to the actual application scenario. Therefore, the reference controller can detect the congestion condition of the first data exchange process of the data port through the detection condition set, as described below.

[0102] The congestion indication parameter of the data port binding is subjected to periodic detection (i.e., detection of whether it needs to be updated), and thus the target period can be any one of the periodic periods in the process of the periodic detection, in other words, the congestion indication parameter of each periodic period can be detected and / or updated according to the principles described in the embodiments of the present application at each periodic period of the periodic detection of the congestion indication parameter of the data port binding. For example, the periodic detection can be detection once every 5 seconds, and the length of the target period can also be 5 seconds.

[0103] The parameter controller can detect a hit relationship between the congestion condition of the first data exchange process and the detection condition in the detection condition set. Thus, if the congestion condition of the first data exchange process hits any detection condition in the detection condition set, and the congestion conditions of K second data exchange processes performed in K periodic periods detected consecutively before the target period all hit the detection condition in the detection condition set, the parameter controller can determine that the congestion condition of the first data exchange process is abnormal, K being a positive integer. One periodic period can correspond to one data exchange process, and the data exchange process performed in the periodic period detected before the target period can be referred to as a second data exchange process.

[0104] In other words, if the congestion condition of the data exchange process of the data port is detected consecutively K+1 times (i.e., K+1 periodic periods) to hit the detection condition in the detection condition set, it can be considered that the congestion condition of the data exchange process (i.e., the first data exchange process) in the current periodic period (e.g., the target period) is abnormal. For example, K+1 can be equal to 3, and K can be equal to 2. The congestion condition of one data exchange process can be considered to hit the detection condition in the detection condition set as long as it hits at least one detection condition in the detection condition set.

[0105] If the congestion condition of the first data exchange process does not hit any detection condition in the detection condition set, or the congestion conditions of the K second data exchange processes detected consecutively before the target period do not all hit the detection condition in the detection condition set (i.e., the congestion condition of the data exchange process of the data port is not detected consecutively K+1 times to hit the detection condition), the reference controller can determine that the congestion condition of the first data exchange process is not abnormal.

[0106] It can be understood that the application is to detect the congestion indication parameter (such as the first congestion indication parameter) bound to the data port by detecting the congestion condition of the data exchange process performed on the data port. Therefore, by the above detection manner of the application (i.e., the manner that K+1 consecutive detections all hit the detection condition), the reference controller can avoid misjudgment of the congestion indication parameter bound to the data port, and enhance the fault tolerance of detecting the congestion indication parameter bound to the data port.

[0107] The N detection conditions can include a rate detection condition for congestion marking of the data port, which can mean that the rate of congestion marking of the data port on the exchanged data within a period is greater than or equal to a reference marking rate. The reference marking rate can be a minimum marking rate set for evaluating that the rate of congestion marking of the data port is too large.

[0108] The first state information can include the cumulative congestion marking number of the data port within the target period. Therefore, the reference controller can calculate the marking rate of the data port on the exchanged data within the target period by the cumulative congestion marking number and the length of the target period, which can be referred to as a target marking rate, which is obtained by dividing the cumulative congestion marking number by the length of the target period.

[0109] Therefore, if the target marking rate is greater than or equal to the reference marking rate, it indicates that the rate of congestion marking of the data port within the target period is too large, and it can be determined that the congestion condition of the first data exchange process hits the rate detection condition. The target marking rate can be used to reflect the congestion condition of the first data exchange process, and the greater the target marking rate, the greater the congestion risk, and the smaller the target marking rate, the smaller the congestion risk.

[0110] Of course, if the target marking rate is less than the reference marking rate, the congestion condition of the first data exchange process does not hit the rate detection condition.

[0111] The N detection conditions can also include a first quantity detection condition for congestion marking of the data port, which can mean that the number of congestion marking of the data port on the exchanged data within a period exceeds a reference multiple (such as 10 times) of a reference congestion marking number. The reference congestion marking number can be an index for evaluating that the number of congestion marking of the data port is too large.

[0112] Therefore, the reference controller can obtain the reference congestion mark number, and can calculate a multiple between the accumulated congestion mark number of the data port in the target period and the reference congestion mark number. The calculated multiple can be referred to as a target multiple, which can be a value obtained by dividing the accumulated congestion mark number by the reference congestion mark number.

[0113] If the target multiple is greater than the reference multiple, it indicates that the currently bound first congestion indication parameter of the data port is not the optimal congestion indication parameter, and a new optimal congestion indication parameter needs to be found. In this case, the congestion condition of the first data exchange process hits the first quantity detection condition. The target multiple can be used to reflect the congestion condition of the first data exchange process. The greater the target multiple, the greater the congestion risk. The smaller the target multiple, the smaller the congestion risk.

[0114] If the target multiple is less than or equal to the reference multiple, the congestion condition of the first data exchange process does not hit the first quantity detection condition.

[0115] For example, a feasible way to obtain the reference congestion mark number is described as follows. The first congestion indication parameter can be state information of data exchange bound with the first congestion indication parameter in a historical search period. The searched congestion indication parameter adapted to the data port is obtained. Therefore, the reference congestion mark number can be the number of congestion marks of exchanged data of the data port in the historical search period. In other words, the reference congestion mark number can be obtained in the process of obtaining the last optimal congestion indication parameter (such as the first congestion indication parameter) adapted to the data port. Therefore, the reference congestion mark number can also be referred to as the current optimal configuration mark number. The optimal configuration can refer to the last obtained first congestion indication parameter adapted to the data port. The specific process of searching the congestion indication parameter adapted to the data port can be referred to the related description in the corresponding embodiment of FIG. 7.

[0116] The N detection conditions can further include a second quantity detection condition of congestion marks of the data port. The second quantity detection condition can refer to that the number of congestion marks of exchanged data of the data port in a period is equal to a target value, and the reference congestion mark number is not equal to the target value. The target value can be 0. Because if the number of congestion marks of exchanged data of the data port in a period is equal to 0, and the previously recorded optimal configuration mark number (i.e., the reference congestion mark number) is not equal to 0, it indicates that the currently bound congestion control parameter can be too large for the current traffic mode of the data port, and no data is marked with congestion when the data queue is long. In this case, if the congestion control parameter is not updated, it is easy to fail to find in time when data exchange of the data port occurs and data congestion occurs.

[0117] Therefore, if the cumulative congestion mark number of the data port in the target period is equal to the target value (equal to 0), and the reference congestion mark number is not equal to the target value (not equal to 0), it can be determined that the congestion condition of the first data exchange process hits the second quantity detection condition. The equal relationship (i.e., equal or not equal) between the cumulative congestion mark number and the target value can be used to reflect the congestion condition of the first data exchange process. If the cumulative congestion mark number is equal to the target value, it indicates that the currently bound congestion indication parameter can be set too large, and the data port can not be able to discover congestion in time.

[0118] The above N detection conditions can further include a third quantity detection condition for congestion marking of the data port. The third quantity detection condition can be that the number of congestion marks of the data port on the exchanged data in a period is not equal to the target value (i.e., not equal to 0), and the reference congestion mark number is equal to the target data (i.e., equal to 0). Because if the number of congestion marks of the data port on the exchanged data in a period is not equal to 0, and the previously recorded optimal configuration mark number (i.e., the reference congestion mark number) is equal to 0, it indicates that the currently bound congestion control parameter can be too small for the current traffic mode of the data port, and cannot well perform congestion control.

[0119] Therefore, if the cumulative congestion mark number of the data port in the target period is not equal to the target value, and the reference congestion mark number is equal to the target data, it can be determined that the congestion condition of the first data exchange process hits the third quantity detection condition. Similarly, the equal relationship between the cumulative congestion mark number and the target value can be used to reflect the congestion condition of the first data exchange process.

[0120] Through the above process, the N detection conditions are used to achieve multi-dimensional detection of the congestion condition of the first data exchange process. When the congestion condition of the first data exchange process is abnormal, the optimal congestion indication parameter is reacquired to update the currently bound congestion control parameter. When the congestion condition of the first data exchange process is not abnormal, the currently bound congestion control parameter does not need to be updated, thereby achieving the purpose of not updating the congestion control parameter when unnecessary.

[0121] Please refer to FIG. 7, which is a flowchart of searching for a congestion indication parameter suitable for a data port according to an embodiment of the present application.

[0122] As shown in FIG. 7, the flowchart can include the following steps.

[0123] In step S301, a parameter search range is acquired, and the parameter search range includes multiple congestion indication parameters to be searched.

[0124] In an embodiment, the parameter controller can obtain a parameter search range, i.e., a range for searching the congestion indication parameter adapted to the data port, in other words, the parameter search range is an optional range of the congestion indication parameter that can be bound to the data port, and the parameter search range can be set by a skilled person. The reference search range can include a plurality of congestion indication parameters to be searched (or said to be optional or searchable).

[0125] It should be noted that the congestion indication parameter cannot be infinite, and in actual application, there are usually 64 kinds of congestion indication parameters (such as 500, 1000, 2000, …, etc.), so the above-mentioned reference search range can include all or part of the 64 kinds of congestion indication parameters. Wherein, the reference search range includes which optional congestion indication parameters can be set according to the feasibility of the actual application scenario.

[0126] The application can search (i.e., obtain) the congestion indication parameter (such as the second congestion indication parameter) adapted to the data port in the reference search range, as described below.

[0127] Step S302, the data port sequentially traverses each congestion indication parameter in the parameter search range, and respectively collects the second state information generated by the data port performing the data exchange process in the search period of binding each congestion indication parameter.

[0128] In an embodiment, the reference controller can sequentially traverse each congestion indication parameter in the above-mentioned parameter search range for the data port, and can respectively collect the state information generated by the data port performing the data exchange process in the search period of binding each congestion indication parameter, and the state information generated in the search process of the congestion indication parameter can be called the second state information.

[0129] In other words, the reference controller can sequentially bind each congestion indication parameter in the parameter search range for the data port, so that the data port can perform the data exchange process under the indication of each sequentially bound congestion indication parameter, to generate the corresponding second state information.

[0130] Similarly, one second state information can include the cumulative congestion mark number of exchanged data in one search period of the data port binding corresponding to the congestion indication parameter data exchange process, and the cumulative data exchange amount of the data port in the search period. The concept of the cumulative congestion mark number of exchanged data of the data port in the search period is the same as the concept of the cumulative congestion mark number of exchanged data of the data port in the target period, and the concept of the cumulative data exchange amount of the data port in the search period is the same as the concept of the cumulative data exchange amount of the data port in the target period. Wherein, the length of the search period and the length of the target period can be the same, such as both can be 5 seconds.

[0131] In one embodiment, when there is no data flow in the data port in the search period of one congestion indication parameter in the data port binding parameter search range, at most, the data exchange process of the data port binding the congestion indication parameter can be carried out in the continuous specified number (such as 3, or other number) of search periods, so as to try to obtain the second state information of the data port under the congestion indication parameter when the data port binds the congestion indication parameter and there is data flow, that is, the second state information generated by the data exchange process of the data port binding the congestion indication parameter.

[0132] And if the data port does not have data flow in the specified number of search periods after binding the congestion indication parameter, the second state information generated in any search period (such as the last search period) of the data port in the specified number of search periods can be taken as the second state information of the data port under the congestion indication parameter.

[0133] For example, if the specified number is 3, after binding one congestion indication parameter in the data port binding parameter search range in one search period, one corresponding second state information is obtained, and then the cumulative data exchange amount in the second state information is used to judge whether there is data flow in the data port in the search period. The principle of the judgment is the same as the principle of judging whether there is flow in the data port in the target period by using the cumulative data exchange amount in the first state information, that is, judging the exchange rate of data, so that if it is judged that there is data flow in the data port in the search period, the obtained second state information can be directly taken as the second state information of the data port under the congestion indication parameter; and if it is judged that there is no data flow in the data port in the search period, the next search period can be continuously bound to obtain the second state information of the data port under the congestion indication parameter.

[0134] Similarly, the reference controller can continue to judge whether there is data traffic in the corresponding search period (i.e. the second search period of binding the congestion indication parameter) of the data port by the second second state information, if there is data traffic, the second second state information can be taken as the final second state information of the data port under the congestion indication parameter; and if there is still no data traffic in the second search period, the corresponding third second state information can be obtained by continuing to bind the congestion indication parameter in the next continuous search period (the third search period), at this time, whether the data port has data traffic in the third search period or not, the third second state information can be taken as the final second state information of the data port under the congestion indication parameter, and the congestion indication parameter does not need to be bound in the next search period, so as to avoid the reference controller from entering the cycle of binding the congestion indication parameter and causing errors.

[0135] Please refer to FIG. 8, which is a scene diagram provided by the embodiment of the present application for collecting the second state information of the data port under various congestion indication parameters. As shown in FIG. 8, it is assumed here that the congestion indication parameters in the parameter search range can include congestion indication parameter c1, congestion indication parameter c2, congestion indication parameter c3, congestion indication parameter c4 and congestion indication parameter c5 in turn.

[0136] Therefore, the reference controller can first bind the congestion indication parameter c1 to the data port to collect the second state information z1 generated by the data port in the search period of binding the congestion indication parameter c1. After collecting the second state information z1 of the data port under the congestion indication parameter c1, the reference controller can then bind the congestion indication parameter c2 to the data port to collect the second state information z2 generated by the data port in the search period of binding the congestion indication parameter c2. After collecting the second state information z2 of the data port under the congestion indication parameter c2, the reference controller can then bind the congestion indication parameter c3 to the data port to collect the second state information z3 generated by the data port in the search period of binding the congestion indication parameter c3. After collecting the second state information z3 of the data port under the congestion indication parameter c3, the reference controller can then bind the congestion indication parameter c4 to the data port to collect the second state information z4 generated by the data port in the search period of binding the congestion indication parameter c4. Thus, after collecting the second state information z4 of the data port under the congestion indication parameter c4, the reference controller can then bind the congestion indication parameter c5 to the data port to collect the second state information z5 generated by the data port in the search period of binding the congestion indication parameter c5.

[0137] Through the above process, the reference controller acquires the second state information of the data port under the congestion indication parameter c1, the congestion indication parameter c2, the congestion indication parameter c3, the congestion indication parameter c4 and the congestion indication parameter c5 in the reference search range respectively.

[0138] In step S303, the second congestion indication parameter is selected from the parameter search range based on the second state information of the data port under each congestion indication parameter.

[0139] In an embodiment, the parameter controller can select (i.e. search) the second congestion indication parameter suitable for the data port from the parameter search range based on the second state information of the data port under each congestion indication parameter in the parameter search range.

[0140] The reference controller can determine whether there is data traffic in the search period (i.e. the search period to which the final second state information belongs) bound by each congestion indication parameter of the data port based on the second state information of the data port under each congestion indication parameter, and the determination principle is the same as the above principle of determining whether there is data traffic in the target period.

[0141] Therefore, the reference controller can take the congestion indication parameter bound by the search period in which there is data traffic as the candidate congestion indication parameter, and the candidate congestion indication parameter can be at least one, and the reference controller can select the second congestion indication parameter suitable for the data port from the at least one candidate congestion indication parameter, as described below.

[0142] The reference controller can obtain the marking rate of the exchanged data for congestion marking in the search period (i.e. the search period to which the final second state information belongs) bound by each candidate congestion indication parameter of the data port based on the second state information of the data port under each congestion indication parameter, and the obtaining principle of the marking rate is the same as the above obtaining principle of the target marking rate.

[0143] Therefore, the reference controller can take the candidate congestion indication parameter bound by the search period with the minimum marking rate as the final search result of the second congestion indication parameter suitable for the data port, because in normal cases, the smaller the marking rate of congestion marking, the lower the congestion risk of the data port for data exchange.

[0144] Therefore, it can be understood that the historical search period to which the above-mentioned congestion mark number belongs is the search period in which the marking rate of the congestion mark is the smallest when the last search of the congestion indication parameter is performed according to the above-mentioned principle, and the data port is bound to the first congestion indication parameter in the search period, that is, the first congestion indication parameter can be the last searched congestion indication parameter adapted to the data port.

[0145] After the congestion indication parameter bound to the data port is updated from the first congestion indication parameter to the second congestion indication parameter, the periodic detection of the second congestion indication parameter bound to the data port according to the above-mentioned principle can be continued to start, so as to continue to update the second congestion indication parameter bound to the data port when it is detected that it is necessary.

[0146] The above-mentioned search process of the congestion indication parameter can also be called a heuristic search process. It needs to be explained that when the AIQCN (that is, the scheme of the present application) is just started, the abnormal or normal judgment of the congestion condition of the data exchange process can not be performed, and the heuristic search process can be directly entered to search the congestion indication parameter that needs to be bound to the data port at the beginning.

[0147] In some special cases, it is also possible that the ECN mark number (that is, the number of congestion marks) of the data port under each congestion indication parameter is 0, so that the marking rate of each data port under each congestion indication parameter is also 0. This situation is because the current traffic mode of the data port has no congestion, and the network is very smooth, so any configuration can be selected, that is, any congestion indication parameter can be bound to the data port, such as the congestion indication parameter in the static setting.

[0148] As can be known from the above-mentioned process of the present application, when searching for a new data port adapted to the data port, each congestion indication parameter in the reference search range is bound to the data port, and during this period (which can last for tens of seconds), the congestion mark of the data port during data exchange can be dithered. Therefore, the present application first detects the congestion condition of the first data exchange process, and then searches and updates the congestion indication parameter when an abnormality is detected, so as to achieve the purpose of unnecessary updating and ensure the rationality and performance of the update of the congestion indication parameter bound to the data port.

[0149] No matter in the simulation test scene or in the real business test scene, it is tested that the method provided by the present application can greatly improve the performance of the data port in data exchange. The effectiveness and availability of the congestion control method provided by the present application are proved by some experimental results as described below.

[0150] Please refer to FIG. 9a and FIG. 9b, FIG. 9a is a curve diagram for ECN threshold provided by an embodiment of the present application, and FIG. 9b is another curve diagram for ECN threshold provided by an embodiment of the present application. In the diagrams, the ECN threshold is a congestion indication parameter, and FIG. 9a and FIG. 9b provide the changes of the bandwidth utilization and the average queue length (i.e. the queue length of the data queue to be exchanged) caused by the changes of the ECN threshold in the scenarios of two traffic modes (such as Incast scenario, i.e. the scenario that a large number of servers send data to a data port) of the data port.

[0151] In FIG. 9a and FIG. 9b, the left vertical axis represents the bandwidth utilization of the network (such as the network of the data port), the right vertical axis represents the average queue length of the data queue of the data port, and the horizontal axis represents the ECN threshold.

[0152] As shown in FIG. 9a, in the case of comprehensively considering the bandwidth utilization (the greater the better) and the average queue length (the smaller the better), the effect is optimal when the ECN threshold is set to 100. As shown in FIG. 9b, in the case of comprehensively considering the bandwidth utilization and the average queue length, the effect is optimal when the ECN threshold is set to 500. As can be seen from the curve diagrams of FIG. 9a and FIG. 9b, the changes of the ECN threshold have a great influence on the curve changes of the bandwidth utilization of the network and the average queue length of the data queue, which indicates that the congestion control of the data port for data exchange by adjusting the ECN parameter bound to the port is very effective.

[0153] Please also refer to FIG. 10, which is a column diagram for the bandwidth utilization of the network provided by an embodiment of the present application. As shown in FIG. 10, scenario ① represents the scenario that the ECN threshold bound to the data port is statically set to 100, scenario ② represents the scenario that the ECN threshold bound to the data port is statically set to 500, and scenario ③ represents the way of adaptively adjusting the ECN threshold bound to the data port.

[0154] Here, the size relationship of the bandwidth utilization of the network in the case of binding the ECN threshold of the data port by using the above scenarios in two traffic modes of the data port is embodied, the two traffic modes include the "15to 1" mode (also referred to as 15 to 1) and the "8to 1" mode (also referred to as 8 to 1). The "15to 1" mode can refer to the mode that 15 data sending ends send data to 1 data receiving end through the data port, and the "8to 1" mode can refer to the mode that 8 data sending ends send data to 1 data receiving end through the data port.

[0155] As shown in FIG. 10, in the "15 to 1" mode, the bandwidth utilization of the network in scenario 1 is less than that in scenario 2, and the bandwidth utilization of the network in scenario 2 is less than that in scenario 3. In the "8 to 1" mode, the bandwidth utilization of the network in scenario 1 is also less than that in scenario 2, and the bandwidth utilization of the network in scenario 2 is also less than that in scenario 3. This shows that the self-adaptive adjustment of the ECN threshold bound to the data port provided in the present application can greatly improve the bandwidth utilization of the network.

[0156] Referring to FIG. 11a and FIG. 11b, FIG. 11a is a curve diagram for the bus bandwidth provided in an embodiment of the present application, and FIG. 11b is another curve diagram for the bus bandwidth provided in an embodiment of the present application. In FIG. 11a and FIG. 11b, the solid curve represents the change of the bus bandwidth when the self-adaptive adjustment of the ECN threshold bound to the data port is adopted, and the dashed curve represents the change of the bus bandwidth when the static setting of the ECN threshold is adopted.

[0157] As shown in FIG. 11a, in the all-to-all communication mode, the bus bandwidth continuously increases when the self-adaptive adjustment of the ECN threshold bound to the data port is adopted, while the bus bandwidth continuously decreases in the latter half when the static setting of the ECN threshold is adopted, resulting in the problem of bandwidth bottoming and thus under-throughput. As shown in FIG. 11b, in the all-reduce communication mode, the self-adaptive adjustment of the ECN threshold bound to the data port has no effect on the change of the bus bandwidth compared with the static setting of the ECN threshold, and in this case, the solid curve and the dashed curve are nearly coincident.

[0158] In addition, it is found through experiments that, when the self-adaptive adjustment of the ECN threshold bound to the data port is adopted, the congestion marking amount is reduced by 80%, and the throughput of the network is increased by more than 6 times, which greatly reflects the superior effect of the congestion control scheme provided in the present application.

[0159] The target of the congestion control of the present application can be: the amount of data sent by the sending end to the network should be kept as much as possible at the level of just filling the network bandwidth without causing queuing. However, this target is very difficult to achieve in actual implementation, because the following challenges will be encountered: the data sending end does not know how much the capacity of the network is, and does not know how many data sending ends are competing for the use of network resources at the same time, therefore, the problem of congestion control is essentially a distributed optimization problem, in which each data sending end must continuously adjust its traffic load (i.e. continuously adjust the rate of sending data) according to the feedback information received from the network, so that the total load of the network is kept at the level of just filling, and through the above method of the present application, the number of ECN marks of the data port (i.e. the number of congestion marks) is kept in a small range, so as to achieve the purpose of both controlling the switch buffer (buffer for buffering data to be switched beyond the capacity of the data queue) and fully utilizing the network bandwidth.

[0160] Please refer to FIG. 12, which is a structural schematic diagram of a parameter processing apparatus provided by an embodiment of the present application. As shown in FIG. 12, the parameter processing apparatus 120 can include a first obtaining module 1201, a detecting module 1202, a second obtaining module 1203 and an updating module 1204.

[0161] The first obtaining module 1201 is configured to obtain first state information of a data port of a data switching device and a first congestion indication parameter bound to the data port, the first state information being state information generated by the data port in a target period when performing a first data switching process, and the first congestion indication parameter being used to indicate a threshold of switching data amount that causes congestion risk in the first data switching process.

[0162] The detecting module 1202 is configured to detect congestion of the first data switching process based on the first state information.

[0163] The second obtaining module 1203 is configured to search for a second congestion indication parameter adapted to the data port if the congestion of the first data switching process is abnormal.

[0164] The updating module 1204 is configured to update the congestion indication parameter bound to the data port from the first congestion indication parameter to the second congestion indication parameter.

[0165] Optionally, the data port is any port of the data switching device used for data switching.

[0166] If the data queue to be exchanged has a queue length greater than the threshold of exchanged data indicated by the first congestion indication parameter when the data port exchanges data in the target period, the data port is configured to mark the exchanged data as congested.

[0167] The first status information includes: a cumulative number of congestion marks of the data port on the exchanged data in the target period, and a cumulative data exchange amount of the data port in the target period.

[0168] Optionally, the detection module 1202 detects the congestion condition of the first data exchange process based on the first status information in the following manner:

[0169] Based on the cumulative data exchange amount and the length of the target period, the data exchange rate of the data port in the target period is calculated.

[0170] The reference exchange rate for flow judgment of the data port is obtained.

[0171] If the data exchange rate is greater than or equal to the reference exchange rate, it is determined that there is data flow in the target period of the data port, and the congestion condition of the first data exchange process is continuously detected.

[0172] Optionally, the detection module 1202 continuously detects the congestion condition of the first data exchange process in the following manner:

[0173] A set of detection conditions is obtained, and the set of detection conditions includes N detection conditions, the N detection conditions are conditions for determining that the congestion condition of the first data exchange process is abnormal, and N is a positive integer.

[0174] The congestion condition of the first data exchange process is detected based on the set of detection conditions.

[0175] Optionally, the congestion indication parameter bound to the data port is used for periodic detection, and the target period is any periodic period of the periodic detection.

[0176] The detection module 1202 detects the congestion condition of the first data exchange process based on the set of detection conditions in the following manner:

[0177] The hit relationship between the congestion condition of the first data exchange process and the detection conditions in the set of detection conditions is detected.

[0178] If the congestion condition of the first data exchange process hits any detection condition in the set of detection conditions, and the congestion conditions of K second data exchange processes performed in K periodic periods continuously detected before the target period all hit the detection condition in the set of detection conditions, it is determined that the congestion condition of the first data exchange process is abnormal, and K is a positive integer.

[0179] If the congestion condition of the first data exchange process does not hit any detection condition in the detection condition set, or the congestion conditions of the K second data exchange processes do not all hit the detection condition in the detection condition set, it is determined that the congestion condition of the first data exchange process is not abnormal.

[0180] Optionally, the N detection conditions include a rate detection condition for congestion marking of the data port.

[0181] The detection module 1202 detects the hit relationship between the congestion condition of the first data exchange process and the detection condition in the detection condition set in the following manner:

[0182] Based on the cumulative congestion marking number and the length of the target time period, a target marking rate of the data port for congestion marking of exchanged data within the target time period is calculated.

[0183] If the target marking rate is greater than or equal to the reference marking rate, it is determined that the congestion condition of the first data exchange process hits the rate detection condition.

[0184] The target marking rate is used to reflect the congestion condition of the first data exchange process.

[0185] Optionally, the N detection conditions include a first quantity detection condition for congestion marking of the data port.

[0186] The detection module 1202 detects the hit relationship between the congestion condition of the first data exchange process and the detection condition in the detection condition set in the following manner:

[0187] A reference congestion marking number is obtained, and a target multiple between the cumulative congestion marking number and the reference congestion marking number is calculated.

[0188] If the target multiple is greater than the reference multiple, it is determined that the congestion condition of the first data exchange process hits the first quantity detection condition.

[0189] The target multiple is used to reflect the congestion condition of the first data exchange process.

[0190] Optionally, the first congestion indication parameter is a congestion indication parameter adapted to the data port searched based on state information of data exchange bound with the first congestion indication parameter within a historical search time period.

[0191] The reference congestion marking number is a number of congestion markings of exchanged data performed by the data port within the historical search time period.

[0192] Optionally, the N detection conditions include a second quantity detection condition for congestion marking of the data port.

[0193] The detection module 1202 detects the hit relationship between the congestion condition of the first data exchange process and the detection condition in the detection condition set in the following manner:

[0194] The reference congestion marking number is obtained.

[0195] If the accumulated congestion marking number is equal to the target value and the reference congestion marking number is not equal to the target value, it is determined that the congestion condition of the first data exchange process hits the second quantity detection condition.

[0196] The equal relationship between the accumulated congestion marking number and the target value is used to reflect the congestion condition of the first data exchange process.

[0197] Optionally, the N detection conditions include a third quantity detection condition of marking the data port with congestion.

[0198] The detection module 1202 detects the hit relationship between the congestion condition of the first data exchange process and the detection condition in the detection condition set in the following manner:

[0199] The reference congestion marking number is obtained.

[0200] If the accumulated congestion marking number is not equal to the target value and the reference congestion marking number is equal to the target value, it is determined that the congestion condition of the first data exchange process hits the third quantity detection condition.

[0201] The equal relationship between the accumulated congestion marking number and the target value is used to reflect the congestion condition of the first data exchange process.

[0202] Optionally, the second obtaining module 1203 searches for the second congestion indication parameter suitable for the data port in the following manner:

[0203] A parameter search range is obtained, and the parameter search range includes a plurality of congestion indication parameters to be searched.

[0204] Each congestion indication parameter in the parameter search range is sequentially bound to the data port, and second state information generated by the data port in a search period of binding each congestion indication parameter is collected.

[0205] The second congestion indication parameter is selected from the parameter search range based on the second state information generated by the data port under each congestion indication parameter.

[0206] Optionally, the second obtaining module 1203 selects the second congestion indication parameter from the parameter search range based on the second state information of the data port under each congestion indication parameter in the following manner:

[0207] determine whether the data port has data flow in a search period of binding each congestion indication parameter based on the second state information of the data port under each congestion indication parameter;

[0208] determine the congestion indication parameter bound in the search period of the data port having data flow as a candidate congestion indication parameter;

[0209] select a second congestion indication parameter from the at least one candidate congestion indication parameter.

[0210] Optionally, the manner of the second obtaining module 1203 selecting the second congestion indication parameter from the at least one candidate congestion indication parameter comprises:

[0211] obtain a marking rate of marking exchanged data for congestion based on the second state information of the data port under each congestion indication parameter in a search period of binding each candidate congestion indication parameter;

[0212] determine the candidate congestion indication parameter bound in the search period of the minimum marking rate as the searched second congestion indication parameter adapted to the data port.

[0213] Optionally, the data exchange device has multiple data exchange devices;

[0214] Optionally, the parameter processing apparatus 120 is applied to a parameter centralized controller, and the parameter centralized controller is configured to centrally detect and update the congestion indication parameter bound by the port of the multiple data exchange devices; or,

[0215] Optionally, the parameter processing apparatus 120 is applied to a parameter distributed controller, and each data exchange device is configured with a respective parameter distributed controller, and the parameter distributed controller configured in each data exchange device is configured to distributively detect and update the congestion indication parameter bound by the port of the multiple data exchange devices.

[0216] Optionally, after the congestion indication parameter bound by the data port is updated as the second congestion indication parameter, the data port is configured to obtain target data to be exchanged from a data queue to be exchanged;

[0217] Optionally, if the queue length of the data queue of the data port to be exchanged is greater than the exchange data threshold indicated by the second congestion indication parameter, the data port is configured to mark the target data for congestion to obtain marked target data.

[0218] The data port is configured to send the marked target data to a data receiving end.

[0219] Optionally, the target data is data sent by a data sending end to the data port of the data exchange device.

[0220] The data receiving end is configured to generate a congestion indication packet when the target data marked is received, and send the generated congestion indication packet to the data sending end.

[0221] The data sending end is configured to adjust the sending rate of the data to be sent according to the frequency of receiving the congestion indication packet sent by the data receiving end.

[0222] According to an embodiment of the present application, the steps involved in the parameter processing method shown in FIG. 3 can be performed by the modules in the parameter processing apparatus 120 shown in FIG. 12. For example, the step S101 shown in FIG. 3 can be performed by the first obtaining module 1201 in FIG. 12, the step S102 shown in FIG. 3 can be performed by the detecting module 1202 in FIG. 12; the step S103 shown in FIG. 3 can be performed by the second obtaining module 1203 in FIG. 12, and the step S104 shown in FIG. 3 can be performed by the updating module 1204 in FIG. 12.

[0223] The apparatus provided in the present application can automatically detect the congestion condition of the first data exchange process of the data port in the target period bound with the first congestion indication parameter through the first state information generated by the data port in the target period bound with the first congestion indication parameter, so that when it is found that the congestion condition of the first data exchange process is abnormal, it indicates that the currently bound first congestion indication parameter is not suitable for the traffic mode when the data port exchanges data, and the second congestion indication parameter suitable for the data port can be reacquired, and the congestion indication parameter bound by the data port can be updated from the first congestion indication parameter to the second congestion indication parameter. In this way, the automatic detection and updating of the first congestion indication parameter bound by the data port are realized, the accuracy and flexibility of updating the congestion indication parameter bound by the data port are improved, and the possibility of congestion when the data port exchanges data is reduced.

[0224] According to an embodiment of the present application, the modules in the parameter processing apparatus 120 shown in FIG. 12 can be combined into one or several units respectively or all, or some of the units can be further split into a plurality of sub-units with smaller functions, and the same operations can be realized without affecting the realization of the technical effects of the embodiments of the present application. The above-mentioned modules are divided based on logical functions, and in actual application, the functions of one module can also be realized by multiple units, or the functions of multiple modules can be realized by one unit. In other embodiments of the present application, the parameter processing apparatus 120 can also include other units, and in actual application, these functions can also be realized by other units, and can be realized by multiple units in cooperation.

[0225] In the embodiments of the present application, the term "module" or "unit" refers to a computer program or a part of a computer program with a predetermined function, and works together with other related parts to achieve a predetermined target, and can be implemented entirely or partially by using software, hardware (such as a processing circuit or a memory) or a combination thereof. Similarly, one processor (or multiple processors or memories) can be used to implement one or more modules or units. In addition, each module or unit can be a part of an integral module or unit that includes the functions of the module or unit.

[0226] According to an embodiment of the present application, a parameter processing apparatus 120 as shown in FIG. 12 can be constructed on a general computer device (which can include a central processing unit (CPU), a random access memory (RAM), a read-only memory (ROM), and the like processing and storage elements) by running a computer program capable of performing each step involved in the corresponding method shown in each embodiment of the present application.

[0227] Please refer to FIG. 13, which is a structural schematic diagram of a computer device provided by an embodiment of the present application. As shown in FIG. 13, the computer device 1000 can include a processor 1001, a network interface 1004, and a memory 1005, and in some embodiments, the computer device 1000 can further include a user interface 1003 and at least one communication bus 1002. The communication bus 1002 is used to realize the connection and communication between the components. The user interface 1003 can include a display, a keyboard, and optionally the user interface 1003 can further include a standard wired interface and a wireless interface. The network interface 1004 can optionally include a standard wired interface and a wireless interface (such as a WI-FI interface). The memory 1005 can be a high-speed RAM memory or a non-volatile memory such as at least one disk memory. The memory 1005 can optionally be at least one storage device located away from the aforementioned processor 1001. As shown in FIG. 13, the memory 1005 as a computer storage medium can include an operating system, a network communication module, a user interface module, and a device control application program.

[0228] In the computer device 1000 shown in FIG. 13, the network interface 1004 can provide network communication functions; the user interface 1003 is mainly used to provide an input interface for the user; and the processor 1001 can be used to call the device control application program stored in the memory 1005 to realize:

[0229] obtain first state information of a data port of a data exchange device and a first congestion indication parameter bound to the data port, the first state information being state information generated by the data port in a target period when performing a first data exchange process, and the first congestion indication parameter being used to indicate a threshold of exchanged data amount that causes congestion risk of the first data exchange process;

[0230] detect a congestion condition of the first data exchange process based on the first state information;

[0231] if the congestion condition of the first data exchange process is abnormal, search for a second congestion indication parameter suitable for the data port;

[0232] update the congestion indication parameter bound to the data port from the first congestion indication parameter to the second congestion indication parameter.

[0233] It should be understood that the computer device 1000 described in the embodiments of the present application can execute the description of the parameter processing method in the embodiments of the present application, and can also execute the description of the parameter processing apparatus 120 in the embodiments corresponding to the foregoing FIG. 12, which will not be described herein again. In addition, the beneficial effects of using the same method will not be described again.

[0234] In addition, it should be noted that the present application also provides a computer readable storage medium, and the computer readable storage medium stores a computer program, and when a processor executes the computer program, the computer program can execute the description of the parameter processing method in the embodiments of the present application, and therefore, the description will not be described herein again. In addition, the beneficial effects of using the same method will not be described again. For technical details of the computer storage medium embodiments involved in the present application, please refer to the description of the method embodiments of the present application.

[0235] The computer readable storage medium can be an internal storage unit of the computer device, such as a hard disk or a memory of the computer device. The computer readable storage medium can also be an external storage device of the computer device, such as a plug-in hard disk, a smart media card (SMC), a secure digital (SD) card, a flash card, etc. Further, the computer readable storage medium can include both the internal storage unit and the external storage device of the computer device. The computer readable storage medium is used to store the computer program and other programs and data required by the computer device. The computer readable storage medium can also be used to temporarily store data that has been output or will be output.

[0236] The present application provides a computer program product, which comprises a computer program stored in a computer readable storage medium. A processor of a computer device reads the computer program from the computer readable storage medium, and the processor executes the computer program, so that the computer device executes the description of the parameter processing method in the embodiments of the present application. Therefore, the description will not be repeated here. In addition, the description of the beneficial effects of using the same method will not be repeated. For technical details not disclosed in the computer readable storage medium embodiments of the present application, please refer to the description of the method embodiments of the present application.

[0237] The terms "first", "second", etc. in the description and claims of the present application and the accompanying drawings are used to distinguish different objects, not to describe a specific order. In addition, the term "comprising" and any variations thereof are intended to cover non-exclusive inclusion. For example, a process, method, device, product or equipment including a series of steps or units is not limited to the listed steps or modules, but can optionally include steps or modules not listed, or can optionally include other steps or units inherent to the process, method, device, product or equipment.

[0238] Those of ordinary skill in the art can realize that the units and algorithm steps of the examples described in conjunction with the embodiments disclosed herein can be realized in electronic hardware, computer software or a combination of both. In order to clearly illustrate the interchangeability of hardware and software, the components and steps of the examples have been described in the above description in a general manner. Whether the functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of the present application.

[0239] The above disclosure is only the preferred embodiments of the present application, and of course cannot limit the scope of the rights of the present application, so the equivalent changes made according to the claims of the present application are still within the scope of the present application.

Claims

1. A method of parameter processing, characterized by, The method comprises: acquiring first state information of a data port of a data exchange device and a first congestion indication parameter bound to the data port, the first state information being state information generated by the data port in a target period when performing a first data exchange process, and the first congestion indication parameter being used to indicate a threshold of exchanged data amount at which the first data exchange process generates congestion risk; detecting congestion of the first data exchange process based on the first state information; if the congestion of the first data exchange process is abnormal, searching for a second congestion indication parameter suitable for the data port; updating the congestion indication parameter bound to the data port from the first congestion indication parameter to the second congestion indication parameter.

2. The method of claim 1, wherein, The data port is any port of the data exchange device used for data exchange; if the queue length of a data queue to be exchanged is greater than the threshold of exchanged data amount indicated by the first congestion indication parameter when the data port exchanges data in the target period, the data port is used to mark exchanged data as congested; The first state information comprises: cumulative congestion marking number of exchanged data of the data port in the target period, and cumulative data exchange amount of the data port in the target period.

3. The method of claim 1 or 2, wherein, The detection of congestion of the first data exchange process based on the first state information comprises: calculating data exchange rate of the data port in the target period based on the cumulative data exchange amount and the length of the target period; acquiring a reference exchange rate used to judge data flow of the data port; if the data exchange rate is greater than or equal to the reference exchange rate, it is determined that there is data flow of the data port in the target period, and the detection of congestion of the first data exchange process is continued.

4. The method according to any one of claims 1 to 3, characterized in that, The continued detection of congestion of the first data exchange process comprises: acquiring a detection condition set, the detection condition set comprising N detection conditions, the N detection conditions being conditions used to determine that the congestion of the first data exchange process is abnormal, and N being a positive integer; detecting congestion of the first data exchange process based on the detection condition set.

5. The method according to any one of claims 1 to 4, characterized in that, The congestion indication parameter bound to the data port is used to be periodically detected, and the target period is any periodic period of the periodic detection; The detection of congestion of the first data exchange process based on the detection condition set comprises: detecting a hit relationship between the congestion of the first data exchange process and the detection conditions in the detection condition set; if the congestion of the first data exchange process hits any detection condition in the detection condition set, and the congestions of K second data exchange processes performed in K periodic periods before the target period and continuously detected hit the detection conditions in the detection condition set, it is determined that the congestion of the first data exchange process is abnormal, and K being a positive integer. If the congestion condition of the first data exchange process does not hit any detection condition in the detection condition set, or the congestion conditions of the K second data exchange processes do not all hit the detection condition in the detection condition set, it is determined that the congestion condition of the first data exchange process is not abnormal.

6. The method according to any one of claims 1 to 5, wherein, The N detection conditions include a rate detection condition for congestion marking of the data port; The detection of the hit relationship between the congestion condition of the first data exchange process and the detection condition in the detection condition set includes: Based on the cumulative congestion marking number and the length of the target period, a target marking rate of the data port for congestion marking of exchanged data in the target period is calculated; If the target marking rate is greater than or equal to the reference marking rate, it is determined that the congestion condition of the first data exchange process hits the rate detection condition. The target marking rate is used to reflect the congestion condition of the first data exchange process.

7. The method according to any one of claims 1 to 6, wherein The N detection conditions include a first quantity detection condition for congestion marking of the data port; The detection of the hit relationship between the congestion condition of the first data exchange process and the detection condition in the detection condition set includes: A reference congestion marking number is obtained, and a target multiple between the cumulative congestion marking number and the reference congestion marking number is calculated; If the target multiple is greater than the reference multiple, it is determined that the congestion condition of the first data exchange process hits the first quantity detection condition. The target multiple is used to reflect the congestion condition of the first data exchange process.

8. The method according to any one of claims 1 to 7, wherein, The first congestion indication parameter is searched based on state information of data exchange binding the first congestion indication parameter in a historical search period, and the searched congestion indication parameter suitable for the data port; The reference congestion marking number is the number of congestion markings of exchanged data by the data port in the historical search period.

9. The method according to any one of claims 1 to 8, wherein, The N detection conditions include a second quantity detection condition for congestion marking of the data port; The detection of the hit relationship between the congestion condition of the first data exchange process and the detection condition in the detection condition set includes: A reference congestion marking number is obtained; If the cumulative congestion marking number is equal to a target value, and the reference congestion marking number is not equal to the target value, it is determined that the congestion condition of the first data exchange process hits the second quantity detection condition. The equal relationship between the cumulative congestion marking number and the target value is used to reflect the congestion condition of the first data exchange process.

10. The method of any one of claims 1-9, wherein, The N detection conditions include a third quantity detection condition for congestion marking of the data port; The detection of the hit relationship between the congestion condition of the first data exchange process and the detection condition in the detection condition set includes: A reference congestion marking number is obtained; If the cumulative congestion marking number is not equal to a target value, and the reference congestion marking number is equal to the target value, it is determined that the congestion condition of the first data exchange process hits the third quantity detection condition. The equation relationship between the accumulated congestion marking number and the target value is used to reflect the congestion situation of the first data exchange process.

11. The method of any one of claims 1-10, wherein, The searching for the second congestion indication parameter suitable for the data port comprises: obtaining a parameter search range, wherein the parameter search range comprises a plurality of congestion indication parameters to be searched; sequentially traversing the data port to bind each congestion indication parameter in the parameter search range, and collecting second state information generated by the data port in a search period during which the data port executes a data exchange process while binding each congestion indication parameter; selecting the second congestion indication parameter from the parameter search range based on the second state information generated by the data port under each congestion indication parameter.

12. The method of any one of claims 1-11, wherein, The selecting the second congestion indication parameter from the parameter search range based on the second state information of the data port under each congestion indication parameter comprises: judging whether there is data flow in the search period during which the data port binds each congestion indication parameter based on the second state information generated by the data port under each congestion indication parameter; determining the congestion indication parameter bound in the search period during which there is data flow as a candidate congestion indication parameter; selecting the second congestion indication parameter from at least one candidate congestion indication parameter.

13. The method of any one of claims 1-12, wherein, The selecting the second congestion indication parameter from at least one candidate congestion indication parameter comprises: obtaining a marking rate of congestion marking of exchanged data in a search period during which the data port binds each candidate congestion indication parameter based on the second state information of the data port under each congestion indication parameter; determining the candidate congestion indication parameter bound in the search period with the minimum marking rate as the second congestion indication parameter suitable for the data port.

14. The method of any one of claims 1-13, wherein, The data exchange device has a plurality of data ports. The execution subject of the method is a parameter centralized controller, and the parameter centralized controller is configured to centrally detect and update the congestion indication parameter bound by the ports of the plurality of data exchange devices; or The execution subject of the method is a parameter distributed controller, and each data exchange device is configured with a respective parameter distributed controller, and the parameter distributed controller configured in each data exchange device is configured to detect and update the congestion indication parameter bound by the ports of the plurality of data exchange devices in a distributed manner.

15. The method of any one of claims 1-14, wherein, After the congestion indication parameter bound by the data port is updated to the second congestion indication parameter, the data port is configured to obtain target data to be exchanged from a data queue to be exchanged. If the queue length of the data queue to be exchanged by the data port is greater than the exchange data threshold indicated by the second congestion indication parameter, the data port is configured to mark the target data with congestion to obtain marked target data. The data port is configured to send the marked target data to a data receiving end.

16. The method of any one of claims 1-15, wherein, The target data is sent to the data port of the data exchange device by a data sending end. The data receiving end generates a congestion indication packet when receiving the marked target data, and sends the generated congestion indication packet to the data sending end. The data sending end adjusts the sending rate of the data to be sent according to the receiving frequency of the congestion indication packet sent by the data receiving end.

17. A parameter processing apparatus characterized by comprising: The apparatus comprises: The first obtaining module is configured to obtain first state information of a data port of a data exchange device and a first congestion indication parameter bound to the data port, the first state information being state information generated by the data port in a target period of time when performing a first data exchange process, and the first congestion indication parameter being used to indicate a threshold of exchanged data amount that causes congestion risk in the first data exchange process; The detecting module is configured to detect congestion of the first data exchange process based on the first state information; The second obtaining module is configured to search for a second congestion indication parameter suitable for the data port if the congestion of the first data exchange process is abnormal. The updating module is configured to update the congestion indication parameter bound to the data port from the first congestion indication parameter to the second congestion indication parameter.

18. A computer program product, characterised in that, The computer program is executed by a processor to implement the steps of the method in any one of claims 1-16.

19. A computer device, comprising: The memory stores a computer program, and the computer program is executed by the processor to make the processor execute the steps of the method in any one of claims 1-16.

20. A computer-readable storage medium, characterized in that, The computer readable storage medium stores a computer program, and the computer program is loaded and executed by the processor to implement the steps of the method in any one of claims 1-16.

Citation Information

Patent Citations

  • Data transmission method and device, equipment and storage medium

    CN113411263A

  • High-speed network congestion control method and device based on dynamic threshold

    CN113938433A

  • Parameter processing method and device, product, equipment and medium

    CN119011483A

  • Method and device for controlling alignment buffer

    CN1910868A

  • Intelligent fabric congestion detection apparatus and method

    US20060092840A1