A transmission path determination method and apparatus, electronic device, and storage medium

By predicting network node performance values ​​and link weights, and using the Dijkstra algorithm to select transmission paths, the problem of network congestion in data center networks is solved, achieving efficient traffic management and path selection.

CN116366460BActive Publication Date: 2026-05-05CHINA MOBILEHANGZHOUINFORMATION TECH CO LTD +1
View PDF 4 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
CHINA MOBILEHANGZHOUINFORMATION TECH CO LTD
Filing Date
2021-12-28
Publication Date
2026-05-05

AI Technical Summary

Technical Problem

Data center networks are characterized by complex and diverse network traffic that is difficult to manage, leading to network congestion. Existing technologies struggle to effectively manage network data flows and find the optimal transmission path.

Method used

Using a pre-defined model and a spatiotemporal graph convolutional neural network model, the performance values ​​of network nodes are predicted based on historical network graphs to determine link weights. The transmission path is selected using the Dijkstra algorithm, taking into account the priority of service data and the link weight threshold.

Benefits of technology

It improves the adaptability of transmission paths, reduces traffic load imbalance, and enhances network transmission efficiency and reliability.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116366460B_ABST
    Figure CN116366460B_ABST
Patent Text Reader

Abstract

This application discloses a transmission path determination method, comprising: determining the predicted performance value of each network node in a predetermined time period using a preset model based on a historical network graph of a historical time period, wherein the historical network graph includes: adjacency weight values ​​between network nodes and historical performance values ​​of each network node in the historical time period, wherein the historical time period corresponds to the predetermined time period; determining the link weight of each link between network nodes in the predetermined time period based at least on the predicted performance values ​​of each network node, wherein the link weight is used to characterize the transmission performance of the link; and determining the transmission path used for transmitting service data in the predetermined time period based on the link weights of each link, wherein the transmission path includes at least one link. This application also discloses a transmission path determination apparatus, an electronic device, and a storage medium.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of network traffic engineering, and in particular to a method, apparatus, electronic device, and storage medium for determining transmission paths. Background Technology

[0002] As platforms for cloud computing, virtualization, and big data services, data center networks are experiencing continuous expansion in scale and explosive growth in traffic. This traffic exhibits complex and diverse characteristics that are difficult to manage, easily leading to network congestion. Uneven distribution of network resources is one of the main causes of network congestion, making it crucial to manage network data flows and find optimal transmission paths. Therefore, alleviating congestion caused by uneven network load and ensuring network reliability, the implementation of link load balancing strategies has become a core issue in key network optimization technologies. Summary of the Invention

[0003] This application provides a method, apparatus, electronic device, and storage medium for determining a transmission path.

[0004] The technical solution of this application embodiment is implemented as follows:

[0005] According to a first aspect of the embodiments of this application, a method for determining a transmission path is provided, characterized in that the method includes:

[0006] Based on the historical network graph of a historical period, a preset model is used to determine the predicted performance value of each of the network nodes in a predetermined period. The historical network graph includes: the adjacency weight values ​​between the network nodes and the historical performance value of each network node in the historical period. The historical period corresponds to the predetermined period.

[0007] At least based on the predicted performance values ​​of each of the network nodes, the link weight of each link between the network nodes is determined in the predetermined time period, wherein the link weight is used to characterize the transmission performance of the link;

[0008] Based on the link weight of each link, a transmission path for transmitting service data is determined during the predetermined time period, wherein the transmission path includes at least one of the links.

[0009] In one embodiment, determining the predicted performance value of each of the multiple network nodes in a predetermined time period using a preset model based on the historical network graph of a historical time period includes:

[0010] Based on historical network graphs from multiple different historical periods, a spatiotemporal graph convolutional neural network model is used to determine the predicted performance value of each of the multiple network nodes in multiple different predetermined periods.

[0011] In one embodiment, the expression for the adjacency weight value between the network nodes is:

[0012]

[0013] Among them, W ij σ represents the adjacency weight value. 2 ε is a preset value, i and j represent the sequence number of the network node, and d ij This represents the distance between the network node with index i and the network node with index j.

[0014] In one embodiment, determining the link weight of each link between the network nodes during the predetermined time period, based at least on the predicted performance values ​​of each of the network nodes, includes:

[0015] Based on the predicted performance values ​​of each of the network nodes, the criticality of each link between the network nodes is determined, wherein the criticality is positively correlated with the congestion level of the link;

[0016] Based on the transmission performance parameters of each link, determine the cost weight of each link;

[0017] The link weight for the predetermined time period is determined based on the criticality and cost weight of the link.

[0018] In one embodiment, determining the criticality of each link between the network nodes based on the predicted performance values ​​of each network node includes:

[0019] Based on the predicted performance values ​​of each of the network nodes, the predicted load of each link between the network nodes is determined;

[0020] The criticality of a link is determined by dividing the predicted load of the link by the total capacity of the link.

[0021] In one embodiment, the expression for determining the cost weight of the link is:

[0022] σ p =αb p +βd p +μr p +λl p

[0023] Where, σ p b represents the cost weight of the link. p This indicates the bandwidth already used by the link, d. p r represents the latency of the link.p This represents the bandwidth utilization rate of the link, l p The packet loss rate of the link is represented by α, β, μ and λ, which are weighting factors, where α+β+μ+λ=1.

[0024] In one embodiment, the expression for determining the link weight is:

[0025] W p =w1σ p +w2ρ p

[0026] Among them, W p σ represents the link weight. p ρ represents the cost weight of the link. p The criticality of the link is represented by w1 and w2, which represent the cost weight and the criticality weight factor, respectively.

[0027] In one embodiment, determining the transmission path for transmitting service data based on the link weights of each of the links includes:

[0028] Based on the link weights of each link, the Dijkstra algorithm is used to determine the transmission path for transmitting service data.

[0029] In one embodiment, determining the transmission path for transmitting service data based on the link weights of each of the links includes:

[0030] Based on the priority of the service data, the transmission path of the service data is determined; wherein, the sum of the link weights of each link in the transmission path corresponding to the service data with the first priority is less than the sum of the link weights of each link in the transmission path corresponding to the service data with the second priority, wherein the first priority is higher than the second priority.

[0031] In one embodiment, the cost weight of the link included in the transmission path is less than the cost weight threshold of the service type corresponding to the service data.

[0032] According to a second aspect of the embodiments of this application, a transmission path determination apparatus is provided, characterized in that the apparatus comprises:

[0033] The first determining module is used to determine the predicted performance value of each of the network nodes in a predetermined period based on the historical network graph of a historical period and using a preset model. The historical network graph includes: the adjacency weight values ​​between the network nodes and the historical performance value of each network node in the historical period. The historical period corresponds to the predetermined period.

[0034] The second determining module is configured to determine, at least based on the predicted performance values ​​of each of the network nodes, the link weight of each link between the network nodes during the predetermined time period, wherein the link weight is used to characterize the transmission performance of the link;

[0035] The third determining module is used to determine the transmission path for transmitting service data in the predetermined time period based on the link weight of each of the links, wherein the transmission path includes at least one of the links.

[0036] In one embodiment, the first determining module is specifically used for

[0037] Based on historical network graphs from multiple different historical periods, a spatiotemporal graph convolutional neural network model is used to determine the predicted performance value of each of the multiple network nodes in multiple different predetermined periods.

[0038] In one embodiment, the expression for the adjacency weight value between the network nodes is:

[0039]

[0040] Among them, W ij σ represents the adjacency weight value. 2 ε is a preset value, i and j represent the sequence number of the network node, and d ij This represents the distance between the network node with index i and the network node with index j.

[0041] In one embodiment, the second determining module is specifically used for:

[0042] Based on the predicted performance values ​​of each of the network nodes, the criticality of each link between the network nodes is determined, wherein the criticality is positively correlated with the congestion level of the link;

[0043] Based on the transmission performance parameters of each link, determine the cost weight of each link;

[0044] The link weight for the predetermined time period is determined based on the criticality and cost weight of the link.

[0045] In one embodiment, the second determining module is specifically used for:

[0046] Based on the predicted performance values ​​of each of the network nodes, the predicted load of each link between the network nodes is determined;

[0047] The criticality of a link is determined by dividing the predicted load of the link by the total capacity of the link.

[0048] In one embodiment, the expression for determining the cost weight of the link is:

[0049] σ p =αb p +βd p +μr p +λl p

[0050] Where, σ p b represents the cost weight of the link. p This indicates the bandwidth already used by the link, d. p r represents the latency of the link. p This represents the bandwidth utilization rate of the link, l p The packet loss rate of the link is represented by α, β, μ and λ, which are weighting factors, where α+β+μ+λ=1.

[0051] In one embodiment, the expression for determining the link weight is:

[0052] W p =w1σ p +w2ρ p

[0053] Among them, W p σ represents the link weight. p ρ represents the cost weight of the link. p The criticality of the link is represented by w1 and w2, which represent the cost weight and the criticality weight factor, respectively.

[0054] In one embodiment, the third determining module is specifically used for:

[0055] Based on the link weights of each link, the Dijkstra algorithm is used to determine the transmission path for transmitting service data.

[0056] In one embodiment, the third determining module is specifically used for:

[0057] Based on the priority of the service data, the transmission path of the service data is determined; wherein, the sum of the link weights of each link in the transmission path corresponding to the service data with the first priority is less than the sum of the link weights of each link in the transmission path corresponding to the service data with the second priority, wherein the first priority is higher than the second priority.

[0058] In one embodiment, the cost weight of the link included in the transmission path is less than the cost weight threshold of the service type corresponding to the service data.

[0059] According to a third aspect of the embodiments of this application, a storage medium is provided that stores an executable program, characterized in that, when the executable program is executed by a processor, it implements the steps of the transmission path determination method described in the first aspect.

[0060] According to a fourth aspect of the present application, an electronic device is provided, including a memory, a processor, and an executable program stored in the memory and executable by the processor, characterized in that the processor executes the steps of the transmission path determination method as described in the first aspect when running the executable program.

[0061] The transmission path determination method, apparatus, electronic device, and storage medium provided in this application include: determining the predicted performance value of each of a plurality of network nodes in a predetermined time period based on a historical network graph of a historical time period using a preset model, wherein the historical network graph includes: adjacency weight values ​​between each of the network nodes and historical performance values ​​of each of the network nodes in the historical time period, wherein the historical time period corresponds to the predetermined time period; determining the link weight of each link between the network nodes in the predetermined time period based at least on the predicted performance values ​​of each of the network nodes, wherein the link weight is used to characterize the transmission performance of the link; and determining a transmission path for transmitting service data in the predetermined time period based on the link weights of each link, wherein the transmission path includes at least one of the links. Thus, a transmission path is selected for service data based on the predicted performance values ​​of the network nodes. The transmission path of service data can be adjusted according to the performance values ​​of the network nodes, providing data support for the selection of transmission paths. This improves the adaptability of the selected transmission path. It reduces the situation where the transmission path selection cannot be adjusted according to changes in the performance values ​​of the network nodes, resulting in unbalanced transmission path traffic load. It also improves the transmission efficiency of the network.

[0062] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and are not intended to limit the embodiments of this disclosure. Attached Figure Description

[0063] Figure 1 A flowchart illustrating a transmission path determination method provided in an embodiment of this application;

[0064] Figure 2 A flowchart illustrating another method for determining a transmission path provided in an embodiment of this application;

[0065] Figure 3 This is a schematic diagram of a transmission path determination device provided in an embodiment of this application. Detailed Implementation

[0066] The present application will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative of the present application and are not intended to limit the scope of the present application.

[0067] In real-world production environments, theoretical results for network traffic scheduling problems are still difficult to obtain, mainly due to two challenges: the complexity of traffic models and the complexity of network models.

[0068] (1) Complex traffic model: The traffic matrix is ​​highly variable and traffic bursts are severe. In the context of high-concurrency traffic in data center networks, where most traffic is low-volume, the traffic matrix exhibits highly dynamic characteristics. This not only increases the complexity of traffic scheduling but may also cause queue congestion on switches due to traffic bursts, and in severe cases, it may also cause a large number of packet losses.

[0069] (2) Complex network model: The challenges include dynamic network bandwidth and randomized network congestion. In scenarios with dynamically changing bandwidth, current traffic scheduling decisions may become ineffective after deployment to the actual environment. This is mainly because most scheduling algorithms are based on current information, and the calculation of scheduling decisions is time-consuming. During this time, the available bandwidth may have changed. Furthermore, random network congestion makes it difficult to capture accurate congestion signals, thus preventing the optimal solution from being obtained.

[0070] like Figure 1 As shown in the exemplary embodiment, this method for determining a transmission path includes:

[0071] Step 101: Based on the historical network graph of the historical period, a preset model is used to determine the predicted performance value of each of the multiple network nodes in the predetermined period, wherein the historical network graph includes: the adjacency weight values ​​between each of the network nodes, and the historical performance value of each of the network nodes in the historical period, wherein the historical period corresponds to the predetermined period;

[0072] Step 102: Determine the link weight of each link between the network nodes in the predetermined time period, at least based on the predicted performance value of each of the network nodes, wherein the link weight is used to characterize the transmission performance of the link;

[0073] Step 103: Determine the transmission path for transmitting service data during the predetermined time period based on the link weight of each link, wherein the transmission path includes at least one of the links.

[0074] The embodiments of this application can be applied to data transmission networks, such as data center networks, which have multiple network nodes and are used for data transmission. Network nodes may include, but are not limited to: data source devices in the data center, network routing devices, network forwarding devices, network relay devices, and / or data receiving devices.

[0075] Links between network nodes can be established via wired or wireless connections.

[0076] A network diagram can at least be used to characterize the connectivity of each network node in a data transmission network and the performance value of each network node.

[0077] Here, the adjacency weight can be the weight of the link between two adjacent network nodes. A weighted adjacency matrix can be used to represent the adjacency weight between any two network nodes. The adjacency weight can correspond to the distance between the network nodes.

[0078] In one embodiment, the adjacency weight of a link between two network nodes is negatively correlated with the distance between the two network nodes.

[0079] The performance values ​​of a network node may include, but are not limited to, the network node's bandwidth, latency, and / or packet loss rate.

[0080] The preset model may include a machine learning model, which can be trained using training data, so that the machine learning model can predict the prediction performance value of network nodes.

[0081] For example, a pre-defined model can be trained using the network graph determined in the first time period and the performance values ​​of network nodes in the second time period. The interval between the first and second time periods can be the same as the interval between historical time periods and the predetermined time period. In this way, the trained pre-defined model can predict the performance values ​​for the predetermined time period based on the historical network graph.

[0082] In one embodiment, the performance value is a vector performance value. The performance value can be directional. For example, it can point from network node a to network node b. For instance, the bandwidth in the performance value of network node a can be directional to network node b, that is, from the perspective of network node a, and related to the bandwidth possessed by network node b.

[0083] In practical applications, network performance values ​​and network topology information can be obtained in advance. The performance value of each network node can be obtained every τ minutes, resulting in T = 24 × 60 / τ data graphs per day. After data processing, missing values ​​are filled in using linear interpolation. With the known network nodes and the direction and starting point of each link, the network can be numerically converted into a directed network graph.

[0084] A historical time period is a time period that corresponds to a predetermined time period. A historical time period can be a time period separated from the predetermined time period by a certain interval. The performance values ​​of network nodes in the predetermined time period can have a strong correlation with the performance values ​​of network nodes in the historical time period. Therefore, the historical network graph of the historical time period can be used to predict the performance values ​​of network nodes in the predetermined time period. The interval period can be less than one day, one day or more, or one week or more, etc. For an interval period of less than one day, the network performance value of a network node at the previous moment will inevitably affect its performance at the next moment. For an interval period of one day or more, due to the influence of factors such as morning and evening peak periods and people's daily routines, network traffic data often exhibits strong similarity at the same time every day. Therefore, a one-day or more-than-one-day interval period can be used for modeling. Similarly, network traffic data still exhibits obvious weekly interval patterns. These weekly interval patterns in the network data can be modeled to obtain the changing patterns. By using the performance values ​​of network nodes at historical moments that are correlated with the performance values ​​of network nodes within a predetermined time period as input to the preset model, the accuracy of the preset model's predictions can be improved, thus enhancing the accuracy of the predicted performance values. During the training process of the preset model, the training data can also be set according to the interval period.

[0085] Based on the predicted performance values ​​of each network node within a predetermined time period, the transmission performance of the links between these nodes can be determined. Link transmission performance may include, but is not limited to, the load on the link during the predetermined time period and the load the link can accept during that period. Link transmission performance can be characterized using link weights. Link weights can be obtained after processing using methods such as data normalization. Link weights can be correlated with link transmission performance; for example, a negative correlation can exist, with smaller weights indicating better performance, or a positive correlation, with smaller weights indicating worse performance.

[0086] Links in the transmission path can be selected based on their link weights. For example, the link with the best transmission performance between the service data output network node and the service data receiving network node can be selected for transmitting service data.

[0087] In this way, by predicting the performance values ​​of network nodes, transmission paths are selected for business data. The transmission paths can be adjusted based on these performance values, providing data support for path selection. This improves the adaptability of the selected transmission paths and reduces the likelihood of unbalanced traffic loads caused by transmission path selection failing to adapt to changes in network node performance values. Ultimately, this improves network transmission efficiency.

[0088] In one embodiment, the training data of a predetermined model can be updated based on the transmission performance parameters of the transmission path of the business data time transmission, and the preset model can be trained.

[0089] In one embodiment, determining the predicted performance value of each of the multiple network nodes in a predetermined time period using a preset model based on the historical network graph of a historical time period includes:

[0090] Based on historical network graphs from multiple different historical periods, a spatiotemporal graph convolutional neural network model is used to determine the predicted performance value of each of the multiple network nodes in multiple different predetermined periods.

[0091] Here, a spatiotemporal graph convolutional neural network model can be used to predict the prediction performance value for a predetermined time period. The spatiotemporal graph convolutional neural network model can be trained using training data with time series relationships. At the same time, historical network graphs of multiple different historical time periods with time series relationships can also be used as input for prediction to predict the prediction performance value of multiple different predetermined time periods with time series relationships.

[0092] Spatiotemporal graph convolutional neural network (SGMCNN) models can handle structured time series. Combining graph convolution and gated temporal convolution, SGMCNN models can extract the most useful spatial features and coherently capture the most fundamental temporal features, thereby improving prediction accuracy.

[0093] Spatiotemporal graph convolutional neural network (SPCNN) models can be trained in parallel using training data from multiple time periods, and can also be trained in parallel using historical network graphs from multiple different historical time periods to predict performance values ​​for multiple predetermined time periods with time-series relationships. This improves prediction speed. SPCNN models can handle large-scale networks with greater efficiency.

[0094] For example, a spatiotemporal graph convolutional neural network model can be composed of multiple spatiotemporal convolutional modules. Each module contains two gated sequence convolutional layers and an intermediate graph convolutional layer, used to capture temporal and spatial correlations, respectively. Multiple spatiotemporal convolutional modules can each process the historical network graph for a specific historical time period. At time t, the network graph can be represented by the expression G. t =(V t (,E,W) indicates that V in the middle t V represents the set of all nodes. t = {Vi|i = 1, 2, 3, 4...n}, where i represents the i-th network node, V i Let represent the performance value of the i-th network node, and n represent the total number of network nodes. E represents a link, indicating the connectivity between network nodes, and can be represented by a matrix; W represents a weighted adjacency matrix composed of adjacency weight values.

[0095] Based on the correlation between historical time periods and prediction time periods, given the historical performance values ​​of network nodes from the previous historical time period t-m+1 to t, we can predict the predicted performance values ​​of network nodes from the future prediction time period t+1 to t+h, where m equals h, and V t It is a vector composed of the performance values ​​of all network nodes. The predicted performance value can be represented by expression (1):

[0096]

[0097] In one embodiment, the adjacency weight values ​​between the network nodes can be represented by expression (2):

[0098]

[0099] Among them, W ij σ represents the adjacency weight value. 2 ε is a preset value, i and j represent the sequence number of the network node, and d ij This represents the distance between the network node with index i and the network node with index j.

[0100] The weighted adjacency matrix, which is composed of network adjacency weights, can be calculated based on the physical distance between each network node in the network. The weighted adjacency matrix can be represented by expression (2).

[0101] In one embodiment, determining the link weight of each link between the network nodes during the predetermined time period, based at least on the predicted performance values ​​of each of the network nodes, includes:

[0102] Based on the predicted performance values ​​of each of the network nodes, the criticality of each link between the network nodes is determined, wherein the criticality is positively correlated with the congestion level of the link;

[0103] Based on the transmission performance parameters of each link, determine the cost weight of each link;

[0104] The link weight for the predetermined time period is determined based on the criticality and cost weight of the link.

[0105] The criticality of a link can be used to characterize the level of congestion of the link during the prediction period. The level of congestion can be determined based on the predicted performance values ​​of the network nodes at both ends of the link during the prediction period. The level of congestion can be the available capacity and bandwidth of the link during the prediction period, or it can be the capacity and bandwidth that the link is using during the prediction period.

[0106] For example, the bandwidth that a network node can be applied to in the link can be determined based on the bandwidth of the network nodes at both ends of the link during the predicted period.

[0107] For example, criticality can be a normalized result of link congestion.

[0108] Transmission performance parameters can be inherent characteristics of the link. Due to factors such as link transmission length and transmission environment, the transmission performance parameters of different links can be different or the same. The cost incurred when transmitting service data on the link varies. Here, the cost can be the inefficient resources consumed by the service data during transmission on the link. For example, service data transmission on the link may incur delays or require retransmissions due to packet loss.

[0109] Cost weights can be used to characterize the cost incurred when service data is transmitted over a link. Cost weights can be the result of data normalization of transmission performance parameters. For example, the normalized retransmission rate of each link can be used as the cost weight of that link.

[0110] Link weight can be a weight that combines criticality and cost to evaluate at least the link's transmission performance, such as transmission efficiency. Link weight can be determined based on criticality and cost; for example, the sum of criticality and cost weights can be used to determine the link weight.

[0111] In this way, by selecting the link with better transmission performance during the predetermined time period from among various links, and not using a fixed link for service data transmission, on the one hand, the adaptability of the transmission path to service data is improved; on the other hand, selecting the link with better transmission performance to transmit service data improves transmission efficiency.

[0112] In one embodiment, determining the criticality of each link between the network nodes based on the predicted performance values ​​of each network node includes:

[0113] Based on the predicted performance values ​​of each of the network nodes, the predicted load of each link between the network nodes is determined;

[0114] The criticality of a link is determined by dividing the predicted load of the link by the total capacity of the link.

[0115] The predicted load of a link can be determined based on the predicted performance values ​​of the network nodes at both ends of the link during the prediction period. The predicted load can be the traffic on the link during the prediction period, etc.

[0116] For example, the traffic between network nodes can be determined based on the traffic of the network nodes at both ends of the link during the prediction period.

[0117] Keyness can be expressed by expression (3):

[0118]

[0119] In the above formula, ρ p C represents the criticality of link p. p Let c(p) represent the total capacity of link p, and c(p) represent the predicted load, i.e., traffic, of link p during the predicted period. The higher the criticality value of a link, the greater the probability of congestion on that link. Therefore, links with lower criticality can be selected for business data to reduce congestion.

[0120] In one embodiment, the cost weight of the link can be determined by expression (4):

[0121] σ p =αb p +βd p +μr p +λl p (4)

[0122] Where, σ p b represents the cost weight of the link. p This indicates the bandwidth already occupied by the link, d p r represents the latency of the link. p This represents the bandwidth utilization rate of the link, l p The packet loss rate of the link is represented by α, β, μ and λ, which are weighting factors, where α+β+μ+λ=1.

[0123] Cost factors affecting the transmission cost of a business data link include: the bandwidth already occupied by the link, the link latency, bandwidth utilization, and / or the link packet loss rate. Here, the cost weight of the link can be obtained by weighted summation of these cost factors.

[0124] Here, a higher cost weight indicates a higher cost when transmitting through that link. Therefore, a link with a lower cost weight can be selected for business data to reduce resource consumption when transmitting business data.

[0125] In one embodiment, the link weight can be determined using expression (5):

[0126] W p =w1σ p +w2ρ p (5)

[0127] Among them, W p σ represents the link weight. p ρ represents the cost weight of the link. p The criticality of the link is represented by w1 and w2, which represent the cost weight and the criticality weight factor, respectively.

[0128] Here, the weighted average of cost and criticality can be used as the link weight. w1 and w2 can be determined based on actual needs. For example, w1 and w2 can be determined based on the requirements of business data regarding network congestion and transmission costs.

[0129] Link weight and link transmission performance can be negatively correlated; that is, the lower the link weight, the higher the link transmission performance, and vice versa.

[0130] Using the weighted value of cost and criticality as the link weight, and then using the link weight as the basis for link selection, can improve the adaptability of the selected link to business data.

[0131] By combining a predetermined model to predict the link weights of each link in the network, reliable dynamic weights are provided for the next step of selecting the optimal path. Network data is dynamically updated to obtain the best performance parameters, avoiding the algorithm from getting trapped in local optima and solving the problem that fixed weight allocation and scheduling order cannot adapt to increased latency caused by increased network load.

[0132] In one embodiment, determining the transmission path for transmitting service data based on the link weights of each of the links includes:

[0133] Based on the link weights of each link, the Dijkstra algorithm is used to determine the transmission path for transmitting service data.

[0134] The Dijkstra algorithm can be used to select the neighboring node with the smallest link weight for expansion until the optimal transmission path is calculated based on the link performance index and meets the network capacity requirements of the service.

[0135] The transmission path determined by Dijkstra's algorithm has the minimum sum of the link weights of all links, meaning that the transmission path determined by Dijkstra's algorithm has the best transmission performance.

[0136] In one embodiment, determining the transmission path for transmitting service data based on the link weights of each of the links includes:

[0137] Based on the priority of the service data, the transmission path of the service data is determined; wherein, the sum of the link weights of each link in the transmission path corresponding to the service data with the first priority is less than the sum of the link weights of each link in the transmission path corresponding to the service data with the second priority, wherein the first priority is higher than the second priority.

[0138] Accurate and timely knowledge of the quality of each network line is crucial for optimal path selection. Furthermore, different services have varying network capacity requirements, primarily measured by network performance metrics such as bandwidth, latency, and packet loss rate. Therefore, rationally selecting the optimal transmission path for different services based on their network capacity requirements and service priorities is key to effective traffic scheduling strategies.

[0139] When searching for the optimal transmission path, the optimal traffic scheduling strategy should be selected for different services based on service attributes, network capability requirements, and data priority.

[0140] Here, different priorities can be set for different service types of business data. For service types with higher priority, a transmission path with better transmission performance can be selected. In a better transmission path, the sum of the link weights of each link is smaller.

[0141] In this way, based on the priority of the business type of the business data, the transmission path corresponding to the priority is selected, and the transmission path is reasonably allocated to meet the transmission needs of different business data.

[0142] In one embodiment, the cost weight of the link included in the transmission path is less than the cost weight threshold of the service type corresponding to the service data.

[0143] Different service types have different cost requirements for data transmission along the links. Cost weight thresholds can be set for different service types. When determining the transmission path for service data, links with cost weights greater than the cost weight thresholds can be selected, ensuring that each link in the determined transmission path can meet the transmission requirements of the service data and improving transmission efficiency.

[0144] The following provides a specific example in conjunction with any of the above embodiments:

[0145] like Figure 2 As shown, the transmission path determination method includes:

[0146] Step 201: Data Preprocessing. Network performance values ​​and topology information can be obtained in advance. The performance value of each network node can be obtained every τ minutes, resulting in T = 24 × 60 / τ data graphs per day. After data processing, missing values ​​are filled using linear interpolation. Using the known network nodes and the direction and start point of each link, the network can be numerically transformed into a directed network graph.

[0147] Step 202: Initialize the parameters of the spatiotemporal graph convolutional neural network model.

[0148] Step 203: Training the spatiotemporal graph convolutional neural network model. For example, a pre-defined model can be trained using the network graph determined in the first time period and the performance values ​​of the network nodes in the second time period. The interval between the first and second time periods can be the same as the interval between historical time periods and the predetermined time period. In this way, the trained spatiotemporal graph convolutional neural network model can predict the performance values ​​for the predetermined time period based on the historical network graph.

[0149] Step 204: Calculate the link weights. Here, the link weights can be determined based on the predicted performance values ​​for the predetermined time period.

[0150] Step 205: Calculate the optimal path under constraints using Dijkstra's algorithm. The transmission path determined by Dijkstra's algorithm has the minimum sum of link weights, meaning it has the best transmission performance.

[0151] Step 206: Update performance parameters. The training data of the predetermined model can be updated according to the transmission performance parameters of the transmission path determined by Dijkstra's algorithm, and the predetermined model can be trained.

[0152] Step 207: Output the scheduling results. Use the determined transmission path for the transmission of service data.

[0153] Figure 3 This illustration shows a schematic diagram of the transmission path determination device provided in an embodiment of this application. The transmission path determination device 100 includes:

[0154] The first determining module 110 is used to determine the predicted performance value of each of the network nodes in a predetermined period of time based on the historical network graph of the historical period and using a preset model. The historical network graph includes: the adjacency weight values ​​between the network nodes and the historical performance value of each network node in the historical period of time. The historical period of time corresponds to the predetermined period of time.

[0155] The second determining module 120 is configured to determine, at least based on the predicted performance values ​​of each of the network nodes, the link weight of each link between the network nodes during the predetermined time period, wherein the link weight is used to characterize the transmission performance of the link.

[0156] The third determining module 130 is used to determine, based on the link weight of each of the links, a transmission path for transmitting service data during the predetermined time period, wherein the transmission path includes at least one of the links.

[0157] In one embodiment, the first determining module 110 is specifically used for

[0158] Based on historical network graphs from multiple different historical periods, a spatiotemporal graph convolutional neural network model is used to determine the predicted performance value of each of the multiple network nodes in multiple different predetermined periods.

[0159] In one embodiment, the expression for the adjacency weight value between the network nodes is:

[0160]

[0161] Among them, W ij σ represents the adjacency weight value. 2 ε is a preset value, i and j represent the sequence number of the network node, and d ij This represents the distance between the network node with index i and the network node with index j.

[0162] In one embodiment, the second determining module 120 is specifically used for:

[0163] Based on the predicted performance values ​​of each of the network nodes, the criticality of each link between the network nodes is determined, wherein the criticality is positively correlated with the congestion level of the link;

[0164] Based on the transmission performance parameters of each link, determine the cost weight of each link;

[0165] The link weight for the predetermined time period is determined based on the criticality and cost weight of the link.

[0166] In one embodiment, the second determining module 120 is specifically used for:

[0167] Based on the predicted performance values ​​of each of the network nodes, the predicted load of each link between the network nodes is determined;

[0168] The criticality of a link is determined by dividing the predicted load of the link by the total capacity of the link.

[0169] In one embodiment, the expression for determining the cost weight of the link is:

[0170] σ p =αb p +βd p +μr p +λl p

[0171] Where, σ p b represents the cost weight of the link. p This indicates the bandwidth already used by the link, d. pr represents the latency of the link. p This represents the bandwidth utilization rate of the link, l p The packet loss rate of the link is represented by α, β, μ and λ, which are weighting factors, where α+β+μ+λ=1.

[0172] In one embodiment, the expression for determining the link weight is:

[0173] W p =w1σ p +w2ρ p

[0174] Among them, W p σ represents the link weight. p ρ represents the cost weight of the link. p The criticality of the link is represented by w1 and w2, which represent the cost weight and the criticality weight factor, respectively.

[0175] In one embodiment, the third determining module 130 is specifically used for:

[0176] Based on the link weights of each link, the Dijkstra algorithm is used to determine the transmission path for transmitting service data.

[0177] In one embodiment, the third determining module 130 is specifically used for:

[0178] Based on the priority of the service data, the transmission path of the service data is determined; wherein, the sum of the link weights of each link in the transmission path corresponding to the service data with the first priority is less than the sum of the link weights of each link in the transmission path corresponding to the service data with the second priority, wherein the first priority is higher than the second priority.

[0179] In one embodiment, the cost weight of the link included in the transmission path is less than the cost weight threshold of the service type corresponding to the service data.

[0180] Those skilled in the art will understand that all or part of the steps of the above method embodiments can be implemented by hardware related to program commands. The aforementioned program can be stored in a storage medium, including various media capable of storing program code such as mobile storage devices, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0181] Alternatively, if the integrated units described above are implemented as software functional modules and sold or used as independent products, they can also be stored in a computer-readable storage medium. Based on this understanding, the technical solutions of the embodiments of this application, or the parts that contribute to the prior art, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several commands to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as mobile storage devices, ROM, RAM, magnetic disks, or optical disks.

[0182] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.

Claims

1. A method for determining a transmission path, characterized in that, The method includes: Based on the historical network graph of a historical period, a preset model is used to determine the predicted performance value of each of the network nodes in a predetermined period. The historical network graph includes: the adjacency weight values ​​between the network nodes and the historical performance value of each network node in the historical period. The historical period corresponds to the predetermined period. Based on the predicted performance values ​​of each of the network nodes, the criticality of each link between the network nodes is determined, wherein the criticality is positively correlated with the congestion level of the link; Based on the transmission performance parameters of each link, a cost weight for each link is determined; wherein, the transmission performance parameters include the inherent transmission characteristics of the link. Based on the criticality and cost weight of the link, the link weight of the link in the predetermined time period is determined; wherein, the link weight is used to characterize the transmission performance of the link; Based on the link weight of each link, a transmission path for transmitting service data is determined during the predetermined time period, wherein the transmission path includes at least one of the links.

2. The method according to claim 1, wherein, The step of determining the predicted performance value of each network node in a predetermined time period using a preset model based on the historical network graph of a historical time period includes: Based on historical network graphs from multiple different historical periods, a spatiotemporal graph convolutional neural network model is used to determine the predicted performance value of each of the multiple network nodes in multiple different predetermined periods.

3. The method according to claim 1, wherein, The expression for the adjacency weight value between each network node is: in, This represents the adjacency weight value. and As a preset value, and This indicates the sequence number of the network node. Indicates the sequence number is The network node with the sequence number is The distance between the network nodes.

4. The method according to claim 1, wherein, Determining the criticality of each link between the network nodes based on the predicted performance values ​​of each network node includes: Based on the predicted performance values ​​of each of the network nodes, the predicted load of each link between the network nodes is determined; The criticality of a link is determined by dividing the predicted load of the link by the total capacity of the link.

5. The method according to claim 1, wherein, The expression for determining the cost weight of the link is: in, This represents the cost weight of the link. This indicates the bandwidth already used by the link. This indicates the latency of the link. This indicates the bandwidth utilization rate of the link. This indicates the packet loss rate of the link. , , and Here, is the weighting factor, .

6. The method according to claim 1, wherein, The expression for determining the link weight is: in, This represents the link weight. This represents the cost weight of the link. This indicates the criticality of the link. and These represent the weighting factors for the cost weight and the criticality, respectively.

7. The method according to claim 1, wherein, The step of determining the transmission path for transmitting service data based on the link weights of each link includes: Based on the link weights of each link, the Dijkstra algorithm is used to determine the transmission path for transmitting service data.

8. The method according to claim 1, wherein, The step of determining the transmission path for transmitting service data based on the link weights of each link includes: Based on the priority of the service data, the transmission path of the service data is determined; wherein, the sum of the link weights of each link in the transmission path corresponding to the service data with the first priority is less than the sum of the link weights of each link in the transmission path corresponding to the service data with the second priority, wherein the first priority is higher than the second priority.

9. The method according to claim 1, wherein, The cost weight of the link included in the transmission path is less than the cost weight threshold of the service type corresponding to the service data.

10. A transmission path determination device, characterized in that, The device includes: The first determining module is used to determine the predicted performance value of each of the network nodes in a predetermined period based on the historical network graph of a historical period and using a preset model. The historical network graph includes: the adjacency weight values ​​between the network nodes and the historical performance value of each network node in the historical period. The historical period corresponds to the predetermined period. The second determining module is configured to: determine the criticality of each link between the network nodes based on the predicted performance values ​​of each network node; determine the cost weight of each link based on the transmission performance parameters of each link; and determine the link weight of the link in a predetermined time period based on the criticality and the cost weight of the link; wherein the criticality is positively correlated with the congestion level of the link, the transmission performance parameters include the inherent transmission characteristics of the link, and the link weight is used to characterize the transmission performance of the link; The third determining module is used to determine the transmission path for transmitting service data in the predetermined time period based on the link weight of each of the links, wherein the transmission path includes at least one of the links.

11. The apparatus according to claim 10, wherein, The first determining module is specifically used for Based on historical network graphs from multiple different historical periods, a spatiotemporal graph convolutional neural network model is used to determine the predicted performance value of each of the multiple network nodes in multiple different predetermined periods.

12. The apparatus according to claim 10, wherein, The expression for the adjacency weight value between each network node is: in, This represents the adjacency weight value. and As a preset value, and This indicates the sequence number of the network node. Indicates the sequence number is The network node with the sequence number is The distance between the network nodes.

13. The apparatus according to claim 10, wherein, The second determining module is specifically used for: Based on the predicted performance values ​​of each of the network nodes, the predicted load of each link between the network nodes is determined; The criticality of a link is determined by dividing the predicted load of the link by the total capacity of the link.

14. The apparatus according to claim 10, wherein, The expression for determining the cost weight of the link is: in, This represents the cost weight of the link. This indicates the bandwidth already used by the link. This indicates the latency of the link. This indicates the bandwidth utilization rate of the link. This indicates the packet loss rate of the link. , , and Here, is the weighting factor, .

15. The apparatus according to claim 10, wherein, The expression for determining the link weight is: in, This represents the link weight. This represents the cost weight of the link. This indicates the criticality of the link. and These represent the weighting factors for the cost weight and the criticality, respectively.

16. The apparatus according to claim 10, wherein, The third determining module is specifically used for: Based on the link weights of each link, the Dijkstra algorithm is used to determine the transmission path for transmitting service data.

17. The apparatus according to claim 10, wherein, The third determining module is specifically used for: Based on the priority of the service data, the transmission path of the service data is determined; wherein, the sum of the link weights of each link in the transmission path corresponding to the service data with the first priority is less than the sum of the link weights of each link in the transmission path corresponding to the service data with the second priority, wherein the first priority is higher than the second priority.

18. The apparatus according to claim 10, wherein, The cost weight of the link included in the transmission path is less than the cost weight threshold of the service type corresponding to the service data.

19. A storage medium storing an executable program, characterized in that, When the executable program is executed by the processor, it implements the steps of the transmission path determination method according to any one of claims 1 to 9.

20. An electronic device comprising a memory, a processor, and an executable program stored in the memory and executable by the processor, characterized in that, When the processor runs the executable program, it performs the steps of the transmission path determination method as described in any one of claims 1 to 9.

Citation Information

Patent Citations

  • Network path selection using bandwidth prediction

    CN106165354A

  • Perception data transmission method and device based on load prediction and routing controller

    CN106302161A

  • Network traffic space-time prediction method and device, computer equipment and storage medium

    CN112910710A

  • Network routing method and device

    CN113347098A