Data communication method and system for data communication network

By acquiring and analyzing the information of historical data packets, determining the bandwidth allocation priority and assigning weights, the problem of high-priority data packets waiting for a long time during network congestion by Ethernet switches is solved, and data transmission efficiency and responsiveness are improved.

CN119341995BActive Publication Date: 2025-04-15SHENZHEN TEFA TYCO COMM TECH CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202411877088.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-12-19
Publication Date
2025-04-15
Estimated Expiration
2044-12-19

AI Technical Summary

Technical Problem

Existing Ethernet switches are prone to long waits for high-priority data packets when network congestion, resulting in low-priority data packets being unable to respond, and the phenomenon of "starving death" is occurring. In addition, processing data transmission instructions in strict priority mode is less efficient.

Method used

By obtaining the data information and transmission information of historical data packets, network data of historical time, and status information of each port device, the bandwidth allocation priority of each historical data packet is determined, and the bandwidth allocation weight of the real-time data packet is determined based on this priority, so that the data packet transmission is carried out.

Benefits of technology

It solves the problem that low-priority data packets cannot respond, improves data transmission efficiency, and allows corresponding responses to all packet instructions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119341995B_ABST
    Figure CN119341995B_ABST
Patent Text Reader

Abstract

The present invention relates to the field of communication technology, and in particular to a data communication method and system for a data communication network. The method comprises: obtaining historical data packets transmitted between various port devices in historical time; obtaining data information and transmission information of the historical data packets, network data in the historical time, and status information of each of the port devices; determining the bandwidth allocation priority of each of the historical data packets based on the data information, the transmission information, the network data, and the status information; receiving real-time data packets, and determining the bandwidth allocation weight of the real-time data packets based on the bandwidth allocation priority of each of the historical data packets; transmitting the real-time data packets between the sending device and the receiving device based on the bandwidth allocation weight; the sending device and the receiving device belong to the port devices. The present invention improves the data transmission efficiency of each port device and reduces the probability of network congestion.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of communication technology, and in particular to a data communication method and system for a data communication network. Background Art

[0002] An Ethernet switch is a computer network device that filters, forwards, and learns packets from multiple port devices, so as to transmit the packets from the sending port device to the target port device, thereby completing resource sharing between the port devices in the Ethernet. However, since a single Ethernet switch is often connected to multiple port devices, when the transmission requirements of the packets transmitted between the port devices are high, the Ethernet switch will experience network congestion, reducing the data transmission efficiency between Ethernet connected devices.

[0003] In the related art, the strict priority mode (SP-Mode) is usually used to adjust the above network congestion phenomenon. In the strict priority mode, the Ethernet switch will transmit data packets according to the priority corresponding to the data type of each data packet. However, in the above method, if there are data packets with higher priority to be transmitted for a long time, the low-priority data packets will not be responded to at all, resulting in a "starvation" phenomenon. At the same time, the efficiency of the Ethernet switch in processing data transmission instructions in the SP strict priority mode is low. Summary of the invention

[0004] In order to solve the problems existing in the related art that if there are data packets with higher priority to be transmitted for a long time, the data packets with lower priority will not be responded to at all, resulting in the phenomenon of "starvation", and the efficiency of Ethernet switch in processing data transmission instructions in SP strict priority mode is low, the purpose of the present invention is to provide a data communication method and system for a data communication network, and the technical solutions adopted are as follows:

[0005] According to a first aspect of the present invention, there is provided a data communication method for a data communication network, comprising: obtaining historical data packets transmitted between port devices within a historical time; obtaining data information and transmission information of the historical data packets, network data within the historical time, and status information of each port device; determining a bandwidth allocation priority of each historical data packet based on the data information, the transmission information, the network data, and the status information; receiving a real-time data packet, and determining a bandwidth allocation weight of the real-time data packet based on the bandwidth allocation priority of each historical data packet; transmitting the real-time data packet between the sending device and the receiving device based on the bandwidth allocation weight; the sending device and the receiving device belong to the port device.

[0006] In an exemplary embodiment of the present invention, determining the bandwidth allocation priority of each of the historical data packets based on the data information, the transmission information, the network data and the status information includes: determining a first coefficient of the historical data packet based on the data information and the transmission information; determining a bandwidth requirement value of the historical data packet based on the network data, the output information and the first coefficient; and determining the bandwidth allocation priority of the historical data packet based on the bandwidth requirement value and the status information.

[0007] In an exemplary embodiment of the present invention, determining the bandwidth requirement value of the historical data packet based on the network data, the output information and the first coefficient includes: obtaining the packet loss transmission duration of each of the historical data packets based on the output information; determining a second coefficient based on the packet loss transmission duration of each of the historical data packets and the first coefficient; and determining the bandwidth requirement value of the historical data packet based on the second coefficient and the network data.

[0008] In an exemplary embodiment of the present invention, the network data includes an average network speed during the transmission time of each of the historical data packets; determining the bandwidth requirement value of the historical data packets based on the second coefficient and the network data includes: for each of the historical data packets, determining the bandwidth requirement value of the current historical data packet based on the average network speed of the current historical data packet, the average network speed of all the historical data packets and the second coefficient.

[0009] In an exemplary embodiment of the present invention, determining the bandwidth allocation priority of the historical data packet based on the bandwidth demand value and the status information includes: determining the utilization rate of the central processing unit of each of the port devices based on the status information; determining the bandwidth allocation priority of the historical data packet based on the utilization rate of the central processing unit of each of the port devices and the bandwidth demand value.

[0010] In an exemplary embodiment of the present invention, determining the bandwidth allocation weight of the real-time data packet based on the bandwidth allocation priority of each of the historical data packets includes: determining the similarity between the real-time data packet and each of the historical data packets; determining a target data packet in each of the historical data packets based on the similarity; and determining the bandwidth allocation weight of the real-time data packet based on the bandwidth allocation priority of the target data packet.

[0011] In an exemplary embodiment of the present invention, the data information includes the data type and data occupied space of the historical data packet; the first coefficient of the historical data packet is determined based on the data information and the transmission information, including: judging whether the historical data packet has packet loss based on the transmission information; establishing a two-dimensional coordinate system based on the data type and data occupied space of the historical data packet; performing density clustering operation on the two-dimensional coordinate system to obtain multiple density clusters; for each of the historical data packets, determining the packet loss rate of the corresponding density cluster, and determining the first coefficient based on the packet loss rate of the density cluster and the total number of the density clusters.

[0012] In an exemplary embodiment of the present invention, determining the bandwidth allocation weight of the real-time data packet based on the bandwidth allocation priority of each of the historical data packets includes: determining the position information of the real-time data packet in the two-dimensional coordinate system based on the data type and the data occupied space of the real-time data packet; calculating the Euclidean distance between the real-time data packet and each of the historical data packets in the two-dimensional coordinate system based on the position information of the real-time data packet; taking the historical data packet with the smallest Euclidean distance to the real-time data packet as the target data packet; and determining the bandwidth allocation weight of the real-time data packet based on the bandwidth allocation priority of the target data packet.

[0013] In an exemplary embodiment of the present invention, the transmission of the real-time data packets between the sending device and the receiving device based on the bandwidth allocation weights includes: normalizing the bandwidth allocation weights of each real-time data packet; and transmitting the real-time data packets between the sending device and the receiving device based on the normalized bandwidth allocation weights.

[0014] According to a second aspect of the present invention, there is provided a data communication system of a data communication network, the data communication system of the data communication network comprising a server, a switch and a port device, the server comprising an acquisition unit, a determination unit and a transmission unit: the port device is used to receive or send a data packet; the acquisition unit is used to acquire a historical data packet transmitted between each port device in a historical time; and, data information and transmission information of the historical data packet, network data in the historical time, and status information of each of the port devices; the determination unit is used to determine a bandwidth allocation priority of each of the historical data packets based on the data information, the transmission information, the network data and the status information; and, receiving a real-time data packet, determining a bandwidth allocation weight of the real-time data packet based on the bandwidth allocation priority of each of the historical data packets; the transmission unit is used to transmit the real-time data packet between the sending device and the receiving device based on the bandwidth allocation weight; the sending device and the receiving device belong to the port device; the switch is used to transmit the real-time data packet from the sending device to the receiving device based on the bandwidth allocation weight obtained by the transmission unit.

[0015] The present invention has the following beneficial effects:

[0016] In the data communication method of the data communication network provided by the present invention, the historical data packets transmitted between the various port devices in the historical time are obtained; the data information and transmission information of the historical data packets, the network data in the historical time, and the status information of the various port devices are obtained; the bandwidth allocation priority of each historical data packet is determined based on the data information, transmission information, network data and status information; the real-time data packet is received, and the bandwidth allocation weight of the real-time data packet is determined based on the bandwidth allocation priority of each historical data packet; the real-time data packet is transmitted between the sending device and the receiving device based on the bandwidth allocation weight; the sending device and the receiving device belong to the port device. The present invention obtains the data information and transmission information of the historical data packet, the network data in the historical time, and the status information of each port device, and determines the bandwidth allocation priority of each historical data packet based on the data information and transmission information of the historical data packet, the network data in the historical time, and the status information of each port device. Since the bandwidth allocation priority comprehensively considers the data characteristics of the data packet and the various factors affecting the transmission of the data packet, the bandwidth allocation weight of the real-time data packet determined based on the bandwidth allocation priority has a high accuracy, so that all data packet instructions can get corresponding responses, thereby improving the data transmission efficiency. BRIEF DESCRIPTION OF THE DRAWINGS

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

[0018] Figure 1 A method flow chart of a data communication method of a data communication network provided by one embodiment of the present invention;

[0019] Figure 2 An application scenario diagram of a data communication method of a data communication network provided by an embodiment of the present invention;

[0020] Figure 3 A flow chart of a method for determining bandwidth allocation priority of historical data packets in a data communication method of a data communication network provided by an embodiment of the present invention;

[0021] Figure 4 A block diagram of a data communication system of a data communication network provided by an embodiment of the present invention. DETAILED DESCRIPTION

[0022] In order to further explain the technical means and effects adopted by the present invention to achieve the predetermined invention purpose, the following is a detailed description of the data communication method of a digital communication network proposed by the present invention, its specific implementation, structure, features and effects, in conjunction with the accompanying drawings and preferred embodiments. In the following description, different "one embodiment" or "another embodiment" does not necessarily refer to the same embodiment. In addition, specific features, structures or characteristics in one or more embodiments may be combined in any suitable form.

[0023] Unless defined otherwise, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs.

[0024] An Ethernet switch is a computer network device that filters, forwards, and learns packets from multiple port devices, so as to transmit packets from the source port device to the target port device, thereby completing resource sharing between the port devices in the Ethernet. However, since a single Ethernet switch is often connected to multiple port devices, when the transmission requirements of the packets transmitted between ports are high, the Ethernet switch needs to process a large amount of information in a short period of time, which will cause network congestion. Network congestion will reduce the data transmission efficiency between Ethernet connected devices.

[0025] Traditional methods often use strict priority mode to adjust network congestion. In strict priority mode, each data packet is set with a corresponding priority according to its data type, and the Ethernet switch will transmit the data packets according to the priority of all data packets to be transmitted. Specifically, during the data transmission process, the Ethernet switch will give priority to transmitting data packets with higher priority. When the data packets with higher priority are transmitted, the data packets with lower priority will be transmitted.

[0026] Although the above method can transmit all pending data packets to the target device according to their priority, if there are data packets with higher priority to be transmitted for a long time, the low-priority data packets will not be responded to at all, resulting in a "starvation" phenomenon. At the same time, since the SP strict priority mode only considers the priority order obtained by the data type of the data packet, but does not consider the impact of other factors on the data packet transmission process, there are still problems such as low efficiency of Ethernet switches in processing data transmission instructions under the SP strict priority mode.

[0027] In order to solve the above problems, the present invention provides a data communication method and system for a data communication network. By acquiring data information and transmission information of historical data packets, network data at historical times, and status information of each port device, and determining the bandwidth allocation priority of each historical data packet based on the data information and transmission information of the historical data packet, network data at historical times, and status information of each port device, since the bandwidth allocation priority comprehensively considers the data characteristics of the data packet and various factors affecting the transmission of the data packet, the bandwidth allocation weight of the real-time data packet determined based on the bandwidth allocation priority has a high accuracy, so that all data packet instructions can get corresponding responses, thereby improving data transmission efficiency.

[0028] The specific scheme of a data communication method of a data communication network provided by the present invention is described in detail below with reference to the accompanying drawings.

[0029] See also Figure 1 , which shows a method flow chart of a data communication method of a data communication network provided by an embodiment of the present invention, such as Figure 1 As shown, the data communication method of the above data communication network includes the following steps:

[0030] S110: Acquire historical data packets transmitted between devices on each port within a historical period.

[0031] In the embodiment of the present application, the port device is a device connected to an Ethernet switch, and data can be transmitted between the port devices through the Ethernet switch, thereby realizing resource sharing between the port devices. In the process of data transmission, the device port that sends the data packet is the sending device, and the device port that receives the data packet is the receiving device. Figure 2 Take the application scenario shown as an example. Figure 2 The scenario includes an Ethernet switch, port device PC1, port device PC2 and port device PC3. Port devices PC1 to PC3 can be used as sending devices to send data, or as receiving devices to receive data. The Ethernet switch is used to receive data packets sent by the sending device and forward the received data packets to the receiving device. Specifically, taking port device PC1 as the sending device and port device PC3 as the receiving device as an example, if port device PC1 wants to share data packets with port device PC3, the data transmission process between port devices PC1 and PC3 can be implemented as follows: port data PC1 sends a data packet request to the Ethernet switch; the Ethernet switch analyzes and processes the real-time data packet sending requests, and transmits each data packet to device PC3 in batches.

[0032] In the embodiment of the present application, the historical data packets are data packets transmitted between the port devices within the historical time, and the historical time is a period of time in the past. For example, the historical time can be set based on experience in combination with actual application scenarios. For example, the historical time can be set to 7 days, and the acquisition of the historical data packets transmitted between the port devices within the historical time is to acquire the historical data packets transmitted between the port devices within the past 7 days.

[0033] S120: Acquire data information and transmission information of historical data packets, network data of historical time, and status information of each port device.

[0034] In the embodiment of the present application, the data information of the historical data packet is used to describe the data characteristics of the corresponding historical data packet. Exemplarily, the data information of the historical data packet may include information such as the data type of the data packet and the space occupied by the data.

[0035] In the embodiment of the present application, the transmission information of the above historical data packet is used to describe the data transmission of the corresponding historical data packet. Exemplarily, the transmission data of the historical data packet may include information such as loss of the corresponding historical data packet during transmission, delay duration, etc.

[0036] In the embodiment of the present application, the network data of the historical time is the network performance index corresponding to the historical time of collecting the historical data packets. Exemplarily, the network data of the historical time may include the network speed data between each port device in the historical time period.

[0037] In the embodiment of the present application, when the above historical data packets are transmitted, the operating state of the corresponding port device may be, for example, the CPU usage of each port device.

[0038] In an embodiment of the present application, the above-mentioned acquisition of data information and transmission information of historical data packets, network data of historical time, and status information of each port device can be achieved by the following method: using a network data packet capture tool to collect information such as the data type, data occupied space, data packet loss during transmission, and delay duration of data packets transmitted between each port device within a historical time period; using a network monitoring tool to synchronously collect network speed data between each port device within a historical time period; synchronously collecting the CPU usage of each port device through the task manager of each port device, and simultaneously obtaining in real time the data type and data occupied space of the data packets to be transmitted by each port device.

[0039] S130: Determine the bandwidth allocation priority of each historical data packet based on the data information, transmission information, network data and status information.

[0040] In the embodiment of the present application, the above-mentioned bandwidth allocation priority refers to the importance of the corresponding historical data packet transmission, which can be used to evaluate the bandwidth required for data packet transmission.

[0041] In an embodiment of the present application, the above-mentioned data information may include the data type and data space occupied by the corresponding historical data packet. Among them, different data types of data packets correspond to different transmission priorities, and in the process of data transmission, the data packet with a higher transmission priority is more likely to be transmitted first, and the transmission priority directly affects the data transmission result. For example, the priority of real-time video and voice data packets is higher than that of real-time text data packets, and the priority of real-time text data packets is higher than that of file download data packets. The above-mentioned data space occupied is positively correlated with the network resources required for transmission. The larger the data space occupied by the data packet, the more network resources the data packet consumes during transmission, so the data type and data space occupied by the data packet are the main factors affecting the bandwidth allocation weight.

[0042] In the embodiment of the present application, based on the above transmission information, it can be determined whether the corresponding historical data packet has a packet loss phenomenon. Among them, the main reason for the above packet loss phenomenon is that, during the data transmission process, there is a data packet with a higher priority than the current historical data packet, and the data packet with a higher priority occupies a large amount of transmission time and resources, resulting in the current historical data packet waiting for the transmission resources for a long time, thereby causing the data packet transmission failure phenomenon, that is, packet loss phenomenon. It should be noted that for the historical data packet with packet loss phenomenon, if the packet loss transmission time of the historical data packet from the issuance of the request instruction to the occurrence of the packet loss phenomenon is long, that is, the "queue" time is long, then it is determined that the above packet loss phenomenon may be caused by network congestion, and it is believed that the historical data packet should be allocated with higher bandwidth resources; if the packet loss transmission time of the historical data packet with packet loss phenomenon is short, then it is determined that the above packet loss phenomenon may be because the data packet may be an abnormal data packet itself, and such historical data packets have little reference significance for bandwidth allocation. In the process of determining the above bandwidth allocation priority, the impact proportion of such historical data packets should be lowered.

[0043] In an embodiment of the present application, the above-mentioned network data may be network speed data of historical time corresponding to the historical data packet transmission process, and the network speed data may further reflect the bandwidth demand degree of the historical data packet.

[0044] In the embodiment of the present application, the above-mentioned state information can be measured by the CPU utilization of the port device. For example, during the data transmission process, if the device operating status of the sending port device and the receiving port device corresponding to the historical data packet is poor, such as when the CPU utilization is high, it will cause the port device to have fewer resources for data transmission, which will in turn affect the efficiency of data packet transmission. Therefore, at this time, a higher bandwidth allocation weight needs to be allocated to the port device to support the port device to more efficiently process the data packet transmission operation. That is, during the data transmission process, if the CPU utilization of the port device corresponding to the historical data packet is high, more bandwidth needs to be allocated to the port device corresponding to the historical data packet.

[0045] In the embodiment of the present application, it can be seen from the above description that the data information and transmission information of the above historical data packets, the network speed data corresponding to the transmission process of the historical data packets, and the status information of the port device all have an impact on the bandwidth allocation of the corresponding port device. Therefore, the data communication method of the data communication network provided in the embodiment of the present application comprehensively considers the above factors when determining the bandwidth allocation priority of the historical data packets, such as Figure 3 As shown, this can be achieved by:

[0046] S310: Determine a first coefficient of a historical data packet based on data information and transmission information.

[0047] In the embodiment of the present application, the first coefficient is used to indicate the transmission importance of the corresponding historical data packet. Exemplarily, the first coefficient of the historical data packet determined based on the data information and transmission information can be implemented by the following process: judging whether the historical data packet has packet loss based on the transmission information; establishing a two-dimensional coordinate system based on the data type and data occupied space of the historical data packet; performing density clustering operation on the two-dimensional coordinate system to obtain multiple density clusters; for each historical data packet, determining the packet loss rate of the corresponding density cluster, and determining the first coefficient based on the packet loss rate of the density cluster and the total number of density clusters.

[0048] Specifically, a two-dimensional coordinate system is established based on the data type and data occupied space of the historical data packets; density clustering operation is performed on the two-dimensional coordinate system to obtain multiple density clusters, which can be achieved as follows: the transmission priority corresponding to the data type of each historical data packet is used as the x-axis coordinate information, and the data occupied space of each historical data packet is used as the y-axis coordinate information, each historical data packet is placed in the two-dimensional coordinate system, and density clustering operation is performed on the two-dimensional coordinate system to obtain multiple density clusters. Exemplarily, when performing density clustering operation on the two-dimensional coordinate system, a density-based clustering algorithm (Density-Based Spatial Clustering of Applications with Noise, DBSCAN) can be used, wherein the minimum number of sample points is selected as the empirical value of 8, and the density radius is selected as the empirical value of 5.

[0049] In the embodiment of the present application, each density cluster is analyzed according to the result of the density clustering operation. If the packet loss rate of the historical data packets in the current density cluster is higher than that of the historical data packets in other density clusters, it proves that the bandwidth allocated to each historical data packet in the current density cluster is insufficient during the data transmission process. Therefore, in the subsequent data transmission process, the bandwidth allocation weight of this type of historical data packet should be increased. Based on this idea, the formula for determining the first coefficient is as follows:

[0050]

[0051] in, Indicates the transmission importance of the density cluster where the i-th historical data packet is located, which is the first coefficient mentioned above; It represents the packet loss rate of each data packet in the density cluster where the i-th historical data packet is located, which can be obtained by comparing the number of data packets with packet loss in the density cluster with the number of all data packets in the density cluster; Represents the number of all density clusters; represents the packet loss rate of each data packet in the xth density cluster except the density cluster where the i-th historical data packet is located; and then we get , The larger the value of is, the higher the packet loss rate of the density cluster where the i-th historical data packet is located is compared with other density clusters. That is, the possibility of insufficient bandwidth allocation for the i-th historical data packet during data transmission is high. Therefore, a higher allocated bandwidth needs to be set for the i-th historical data packet during data transmission. It should be noted that, since the same density cluster can approximately reflect the same type of data, the transmission importance of a single historical data packet can be approximately replaced by the transmission importance of the density cluster where the historical data packet is located.

[0052] S320: Determine a bandwidth requirement value of the historical data packet based on the network data, the output information and the first coefficient.

[0053] In an embodiment of the present application, after the first coefficient is determined through the above S310, the above-mentioned determination of the bandwidth requirement value of the historical data packet based on the network data, output information and the first coefficient can be achieved through the following steps: obtaining the packet loss transmission duration of each historical data packet based on the output information; determining the second coefficient based on the packet loss transmission duration of each historical data packet and the first coefficient; determining the bandwidth requirement value of the historical data packet based on the second coefficient and the network data.

[0054] In the embodiment of the present application, the second coefficient represents the difference in the comprehensive packet loss transmission time of the density cluster where the i-th historical data packet is located. Specifically, the process of determining the second coefficient based on the packet loss transmission time of each historical data packet and the first coefficient can be implemented as follows:

[0055] First, based on the packet loss transmission duration of each historical data packet, an adjustment parameter of the first coefficient is determined. The adjustment parameter can be determined by the following formula:

[0056]

[0057] in, It represents the comprehensive packet loss transmission time difference of the density cluster where the i-th historical data packet is located; Indicates the number of packets that are lost in the density cluster where the i-th historical data packet is located; Indicates the packet loss transmission duration of the jth packet that has packet loss in the density cluster where the i-th historical data packet is located; It represents the average transmission time of all packets with packet loss in the density cluster where the i-th historical data packet is located; and then we get , the smaller the value is, the higher the possibility that the number of abnormal data packets with low reference significance in the transmission process appears in the density cluster where the i-th historical data packet is located.

[0058] After obtaining the above adjustment coefficient, the first coefficient can be adjusted based on the adjustment coefficient to obtain the above second coefficient. Specifically, it can be achieved by the following formula:

[0059]

[0060] in, Indicates the real transmission importance of the density cluster where the i-th historical data packet is located, which is the second coefficient mentioned above; Indicates the transmission importance of the density cluster where the i-th historical data packet is located, which is the first coefficient mentioned above; It represents the comprehensive packet loss transmission time difference of the density cluster where the i-th historical data packet is located; Indicates the minimum comprehensive packet loss transmission time difference value among all density clusters; represents the maximum comprehensive packet loss transmission time difference value among all density clusters; and then we get , the smaller the value is, the more abnormal data packets there are in the density cluster where the i-th historical data packet is located. Since the abnormal data packets have a lower reference significance for the bandwidth allocation weight in the data transmission process, the lower the trustworthiness of the transmission importance of the density cluster where the i-th historical data packet is located, the lower the transmission importance of the density cluster where the i-th historical data packet is located. It should be noted that since a single density cluster can reflect the same type of data packets, the actual transmission importance of the density cluster where a single historical data packet is located can be used to approximately replace the actual transmission importance of the historical data packet.

[0061] In the embodiment of the present application, after determining the second coefficient, the process of determining the bandwidth requirement value of the historical data packet based on the second coefficient and the network data can be implemented as follows:

[0062] During data transmission, the greater the difference between the network speed corresponding to a single historical data packet and the overall network speed average, the higher bandwidth allocation weight needs to be allocated to the historical data packet.

[0063] Furthermore, the above determination of the bandwidth requirement value of the historical data packet based on the second coefficient and network data can be implemented as follows: for each historical data packet, the bandwidth requirement value of the current historical data packet is determined based on the average network speed of the current historical data packet, the average network speed of all historical data packets, and the second coefficient. Specifically, it can be determined by the following formula:

[0064]

[0065] in, Indicates the bandwidth requirement of the i-th historical data packet; Indicates the number of all historical data packets collected; represents the average network speed of the i-th historical data packet during the transmission period; Indicates the average network speed of the yth historical data packet during the transmission period; Represents the average network speed of all historical data packets during transmission within the set time; and then obtains , the larger the value, the greater the impact of the i-th historical data packet on the network speed during transmission, and the historical data packet needs to be allocated a higher bandwidth allocation weight during transmission; Indicates the real transmission importance of the density cluster where the i-th historical data packet is located, that is, the second coefficient mentioned above. This value is used as a confidence parameter of the bandwidth demand degree; Represents the normalization function.

[0066] S330: Determine the bandwidth allocation priority of the historical data packet based on the bandwidth demand value and the status information.

[0067] In the embodiment of the present application, after the bandwidth demand value is determined through the above process, the above process of determining the bandwidth allocation priority of the historical data packet based on the bandwidth demand value and the status information can be implemented as follows: determine the utilization rate of the central processor of each port device based on the status information; determine the bandwidth allocation priority of the historical data packet based on the utilization rate of the central processor of each port device and the bandwidth demand value. Specifically, the above bandwidth allocation priority can be determined based on the following formula:

[0068]

[0069] in, Indicates the bandwidth allocation priority of the i-th historical data packet, that is, the bandwidth allocation priority mentioned above; Indicates the bandwidth requirement of the i-th historical data packet, that is, the bandwidth requirement value mentioned above. The larger the bandwidth requirement value, the worse the network speed condition of the i-th data packet during transmission, and a higher bandwidth size needs to be allocated first; It represents the average CPU utilization of the sending and receiving port devices during the transmission of the i-th historical data packet; Indicates the minimum CPU utilization value of all port devices during the collection period; Indicates the maximum CPU utilization value of all port devices during the collection period; and then obtains , this value is used as a confidence parameter of the bandwidth allocation priority. The larger the value is, the higher the CPU utilization of the sending and receiving port devices when the i-th historical data packet is transmitted. In this case, a higher bandwidth allocation weight needs to be allocated to the i-th historical data packet.

[0070] S140: receiving a real-time data packet, and determining a bandwidth allocation weight of the real-time data packet based on the bandwidth allocation priority of each historical data packet.

[0071] In the embodiment of the present application, the above-mentioned real-time data packet is a data packet sent from a sending port device to a receiving port device and received in real time by the Ethernet switch.

[0072] In the embodiment of the present application, after determining the bandwidth allocation priority of each historical data packet through the above process, the embodiment of the present application can further obtain the bandwidth allocation weight of the port device corresponding to each real-time data packet based on the data characteristics of the above real-time data packet and the bandwidth allocation priority of the above historical data packet. Exemplarily, the process can be implemented as follows: determine the similarity between the real-time data packet and each historical data packet; determine the target data packet in each historical data packet based on the similarity; determine the bandwidth allocation weight of the real-time data packet based on the bandwidth allocation priority of the target data packet.

[0073] Among them, the above-mentioned process of determining the bandwidth allocation weight of the real-time data packet based on the bandwidth allocation priority of each historical data packet can be implemented as follows: determine the position information of the real-time data packet in the two-dimensional coordinate system based on the data type and data occupied space of the real-time data packet; calculate the Euclidean distance between the real-time data packet and each historical data packet in the two-dimensional coordinate system based on the position information of the real-time data packet; take the historical data packet with the smallest Euclidean distance to the real-time data packet as the target data packet; determine the bandwidth allocation weight of the real-time data packet based on the bandwidth allocation priority of the target data packet.

[0074] Specifically, after placing each historical data packet in a two-dimensional coordinate system according to the transmission priority corresponding to the data type and the space occupied by the data packet, clustering them into various density clusters, and determining the bandwidth allocation priority of the historical data packets in each density cluster, for the rth real-time data packet currently being transmitted, the rth data packet can also be placed in the two-dimensional coordinates of each density cluster according to the data type and the space occupied by the data packet of the rth data packet, and the Euclidean distance between the rth data packet and each historical data packet is calculated. The closer the Euclidean distance between the historical data packet and the rth data packet in the two-dimensional coordinate system, the higher the reference significance of the historical data packet to the bandwidth allocation weight of the rth data packet. Specifically, the above-mentioned determination of the bandwidth allocation weight of the port device corresponding to the real-time data packet can be implemented based on the following formula:

[0075]

[0076] in, represents the bandwidth allocation weight of the port device of the rth real-time data packet; represents the number of historical data packets in the density cluster closest to the rth real-time data packet in the two-dimensional coordinate system; Indicates the bandwidth allocation priority of the s-th historical data packet in the density cluster closest to the r-th real-time data packet in the two-dimensional coordinate system, that is, the above-mentioned bandwidth allocation priority; It represents the Euclidean distance between the sth historical data packet and the rth real-time data packet in the density cluster closest to the rth real-time data packet in the two-dimensional coordinate system. The smaller the value, the The higher the trustworthiness of the bandwidth allocation weight obtained, the higher the trustworthiness of the bandwidth allocation weight obtained; Represents the normalization function.

[0077] Step S150: Transmitting real-time data packets between a sending device and a receiving device based on bandwidth allocation weights; the sending device and the receiving device are port devices.

[0078] In an embodiment of the present application, after determining the bandwidth allocation weight of the above-mentioned real-time data packet, the real-time data packet can be transmitted between the sending device and the receiving device based on the bandwidth allocation weight. Exemplarily, the above process can be implemented as follows: normalizing the bandwidth allocation weight of each real-time data packet; and transmitting the real-time data packet between the sending device and the receiving device based on the normalized bandwidth allocation weight.

[0079] Specifically, the above process can be implemented as follows: for all real-time data packet transmission requests received by the Ethernet switch at each real-time moment, the bandwidth of each real-time data packet is assigned a weight Normalized to get , and then the switch The bandwidth allocation weights of the sending and receiving port devices to which each real-time data packet belongs are configured to achieve efficient data transmission between the port devices of the Ethernet switch.

[0080] It should be noted that although the steps of the method in the present disclosure are described in a specific order in the drawings, this does not require or imply that the steps must be performed in this specific order, or that all the steps shown must be performed to achieve the desired results. Additionally or alternatively, some steps may be omitted, multiple steps may be combined into one step, and / or one step may be decomposed into multiple steps, etc.

[0081] The embodiment of the present invention also provides a data communication system of a data communication network, referring to Figure 4 As shown, the data communication system of the data communication network includes a server, a switch and a port device, wherein the server includes an acquisition unit, a determination unit and a transmission unit.

[0082] Port device, used to receive or send data packets;

[0083] An acquisition unit, used to acquire historical data packets transmitted between various port devices in historical time; as well as data information and transmission information of historical data packets, network data in historical time, and status information of various port devices;

[0084] A determination unit, configured to determine a bandwidth allocation priority of each historical data packet based on data information, transmission information, network data, and status information; and, receiving a real-time data packet, and determining a bandwidth allocation weight of the real-time data packet based on the bandwidth allocation priority of each historical data packet;

[0085] A transmission unit, used for transmitting real-time data packets between a sending device and a receiving device based on bandwidth allocation weights; the sending device and the receiving device are port devices;

[0086] The switch is used to transmit the real-time data packet from the sending device to the receiving device based on the bandwidth allocation weight obtained by the transmission unit.

[0087] In addition, the specific implementation details of the data communication system of the above-mentioned data communication network have been described in detail in the location of the data communication method of the data communication network, so they will not be repeated here.

[0088] It should be noted that, although several modules or units of the device for action execution are mentioned in the above detailed description, this division is not mandatory. In fact, according to the embodiments of the present disclosure, the features and functions of two or more modules or units described above can be embodied in one module or unit. On the contrary, the features and functions of one module or unit described above can be further divided into multiple modules or units to be embodied.

[0089] It should be noted that the sequence of the above embodiments of the present invention is only for description and does not represent the advantages and disadvantages of the embodiments. The processes depicted in the accompanying drawings do not necessarily require the specific order or continuous order shown to achieve the desired results. In some embodiments, multitasking and parallel processing are also possible or may be advantageous.

[0090] The various embodiments in this specification are described in a progressive manner, and the same or similar parts between the various embodiments can be referenced to each other, and each embodiment focuses on the differences from other embodiments.

Claims

1. A data communication method in a data communication network, characterized in that: The method comprises: Obtain historical data packets transmitted between devices on each port within a historical period; Acquire data information and transmission information of the historical data packets, network data of the historical time, and status information of each of the port devices; Determine the bandwidth allocation priority of each of the historical data packets based on the data information, the transmission information, the network data and the status information; receiving a real-time data packet, and determining a bandwidth allocation weight of the real-time data packet based on the bandwidth allocation priority of each of the historical data packets; The real-time data packet is transmitted between a sending device and a receiving device based on the bandwidth allocation weight; the sending device and the receiving device belong to the port device; The method for obtaining the bandwidth allocation priority of each of the historical data packets is as follows: determining a first coefficient of the historical data packet based on the data information and the transmission information; determining a bandwidth requirement value of the historical data packet based on the network data, the transmission information and the first coefficient; determining a bandwidth allocation priority of the historical data packet based on the bandwidth requirement value and the status information; Wherein, the method for determining the bandwidth requirement value of the historical data packet is: obtaining the packet loss transmission duration of each of the historical data packets based on the transmission information; determining the second coefficient based on the packet loss transmission duration of each of the historical data packets and the first coefficient; determining the bandwidth requirement value of the historical data packet based on the second coefficient and the network data; Wherein, the network data includes the average network speed during the transmission time of each historical data packet; The method for obtaining the bandwidth requirement value of the historical data packet is as follows: for each historical data packet, the bandwidth requirement value of the current historical data packet is determined based on the average network speed of the current historical data packet, the average network speed of all the historical data packets and the second coefficient.

2. The data communication method of the data communication network according to claim 1, characterized in that: The determining the bandwidth allocation priority of the historical data packet based on the bandwidth requirement value and the status information includes: Determine the utilization rate of the central processing unit of each of the port devices based on the status information; The bandwidth allocation priority of the historical data packets is determined based on the utilization rate of the central processor of each of the port devices and the bandwidth demand value.

3. The data communication method of the data communication network according to claim 1, characterized in that: The step of determining the bandwidth allocation weight of the real-time data packet based on the bandwidth allocation priority of each of the historical data packets includes: Determining the similarity between the real-time data packet and each of the historical data packets; Determine a target data packet in each of the historical data packets based on the similarity; The bandwidth allocation weight of the real-time data packet is determined based on the bandwidth allocation priority of the target data packet.

4. The data communication method of the data communication network according to claim 1, characterized in that: The data information includes the data type and data occupied space of the historical data packet; The determining the first coefficient of the historical data packet based on the data information and the transmission information includes: Determining whether packet loss occurs in the historical data packet based on the transmission information; Establishing a two-dimensional coordinate system based on the data type of the historical data packet and the space occupied by the data; Performing a density clustering operation on the two-dimensional coordinate system to obtain a plurality of density clusters; For each of the historical data packets, a packet loss rate of the corresponding density cluster is determined, and the first coefficient is determined based on the packet loss rate of the density cluster and the total number of the density clusters.

5. The data communication method of the data communication network according to claim 4, characterized in that: The step of determining the bandwidth allocation weight of the real-time data packet based on the bandwidth allocation priority of each of the historical data packets includes: Determine the position information of the real-time data packet in the two-dimensional coordinate system based on the data type and the data occupied space of the real-time data packet; Based on the location information of the real-time data packet, calculating the Euclidean distance between the real-time data packet and each of the historical data packets in the two-dimensional coordinate system; The historical data packet having the smallest Euclidean distance with the real-time data packet among the historical data packets is used as the target data packet; The bandwidth allocation weight of the real-time data packet is determined based on the bandwidth allocation priority of the target data packet.

6. The data communication method of the data communication network according to claim 1, characterized in that: The transmitting of the real-time data packet between the sending device and the receiving device based on the bandwidth allocation weight includes: Normalizing the bandwidth allocation weight of each real-time data packet; The real-time data packet is transmitted between the sending device and the receiving device based on the normalized bandwidth allocation weight.

7. A data communication system of a data communication network, characterized in that: The data communication system of the data communication network includes a server, a switch and a port device, and the server includes an acquisition unit, a determination unit and a transmission unit: The port device is used to receive or send data packets; The acquisition unit is used to acquire historical data packets transmitted between each port device in the historical time; as well as data information and transmission information of the historical data packets, network data in the historical time, and status information of each of the port devices; The determining unit is used to determine the bandwidth allocation priority of each of the historical data packets based on the data information, the transmission information, the network data and the status information; and, receiving a real-time data packet, and determining a bandwidth allocation weight of the real-time data packet based on the bandwidth allocation priority of each of the historical data packets; The transmission unit is used to transmit the real-time data packet between a sending device and a receiving device based on the bandwidth allocation weight; the sending device and the receiving device belong to the port device; The switch is used to transmit the real-time data packet from the sending device to the receiving device based on the bandwidth allocation weight obtained by the transmission unit; The method for obtaining the bandwidth allocation priority of each of the historical data packets is as follows: determining a first coefficient of the historical data packet based on the data information and the transmission information; determining a bandwidth requirement value of the historical data packet based on the network data, the transmission information and the first coefficient; determining a bandwidth allocation priority of the historical data packet based on the bandwidth requirement value and the status information; Wherein, the method for determining the bandwidth requirement value of the historical data packet is: obtaining the packet loss transmission duration of each of the historical data packets based on the transmission information; determining the second coefficient based on the packet loss transmission duration of each of the historical data packets and the first coefficient; determining the bandwidth requirement value of the historical data packet based on the second coefficient and the network data; Wherein, the network data includes the average network speed during the transmission time of each historical data packet; The method for obtaining the bandwidth requirement value of the historical data packet is as follows: for each historical data packet, the bandwidth requirement value of the current historical data packet is determined based on the average network speed of the current historical data packet, the average network speed of all the historical data packets and the second coefficient.

Citation Information

Patent Citations

  • Data transmission method and transmission system for realizing FC protocol

    CN118784744A