Network path optimization method, apparatus, device, storage medium and program product

By constructing network topology, pruning, and prediction models, and combining multiple indicators to optimize path selection, the problem of insufficient accuracy and reliability of path selection in existing technologies is solved, and efficient network path selection is achieved.

CN118802720BActive Publication Date: 2025-11-28CHINA MOBILE GROUP ZHEJIANG +2
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202410536866.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-04-30
Publication Date
2025-11-28
Estimated Expiration
2044-04-30

AI Technical Summary

Technical Problem

Existing network path selection schemes only consider a single factor, resulting in poor accuracy and reliability in path selection.

Method used

The network topology is constructed, pruning is performed, sensing data of links is obtained and features are extracted, latency is predicted using a prediction model, and global path search is performed in the topology graph in combination with multiple indicators to determine the optimal path.

Benefits of technology

It improves the accuracy and reliability of network path selection, maximizes network communication quality, and is suitable for complex, large-scale networks.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118802720B_ABST
    Figure CN118802720B_ABST
Patent Text Reader

Abstract

The application provides a network path optimization method, device, equipment, storage medium and program product, wherein the method comprises the following steps: constructing a network topology based on a communication network, obtaining a routing request, determining a source port and a target port, and pruning the network topology; obtaining sensing data of each link, wherein the sensing data comprises a time delay, performing feature extraction on the time delay of each link, inputting the feature vector of the time delay of each link into a pre-constructed prediction model to obtain a predicted time delay of each link; generating a network topology graph based on the pruned network topology, performing global path search in the network topology graph based on the sensing data of each link and the predicted time delay of each link, and determining an optimal path. The application comprehensively considers multiple indexes for path optimization, has high accuracy and strong reliability, can maximize the improvement of network communication quality, and is suitable for complex large networks.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of communication, and in particular to a network path optimization method, device, equipment, storage medium and program product. BACKGROUND

[0002] With the continuous development of information technology, the information dissemination demand to be carried by the network is also increasing. How to select a suitable path forwarding scheme to ensure the efficiency, reliability and security of network communication becomes a problem to be solved. The existing path optimization scheme only considers single factor, and the accuracy and reliability of path optimization are poor. SUMMARY

[0003] The present application provides a network path optimization method, device, equipment, storage medium and program product to solve the defects that the existing path optimization scheme only considers single factor, and the accuracy and reliability of path optimization are poor.

[0004] In a first aspect, the present application provides a network path optimization method, comprising:

[0005] A network topology structure is constructed by taking the ports of each router in the communication network as nodes and taking each link between the ports as an edge, a routing request is obtained, a source port and a target port are determined based on the routing request, the network topology structure is pruned to obtain a pruned network topology structure;

[0006] The perception data of each link corresponding to the pruned network topology structure is obtained, the perception data includes delay, the delay of each link is feature extracted, the feature vector of the delay of each link is input into a pre-constructed prediction model to obtain the predicted delay of each link output by the prediction model, the prediction model is trained based on the feature vector of the sample delay of the sample link and the predicted delay label of the sample link;

[0007] A network topology graph is generated based on the pruned network topology structure, global path search is performed in the network topology graph based on the perception data of each link and the predicted delay of each link, and the optimal path from the source port to the target port is determined.

[0008] In some embodiments, the perception data further includes jitter, packet loss rate, inflow rate, outflow rate and bandwidth;

[0009] Correspondingly, the global path search is performed in the network topology graph based on the perception data of each link and the predicted delay of each link to determine the optimal path from the source port to the target port, comprising:

[0010] calculating a bandwidth utilization of each link based on the incoming rate, the outgoing rate and the bandwidth of the link;

[0011] calculating a total latency, a total jitter, a total packet loss rate, a total bandwidth utilization and a total predicted latency of each feasible path based on the latency, the jitter, the packet loss rate, the bandwidth utilization and the predicted latency of each link;

[0012] determining an optimal path from the plurality of feasible paths with a target of minimizing the total latency, the total jitter, the total packet loss rate, the total bandwidth utilization and the total predicted latency.

[0013] In some embodiments, the determining the optimal path from the plurality of feasible paths with the target of minimizing the total latency, the total jitter, the total packet loss rate, the total bandwidth utilization and the total predicted latency comprises:

[0014] determining a priority of each port, encoding each feasible path into a chromosome according to the priority of each port, and constructing a fitness function with the target of minimizing the total latency, the total jitter, the total packet loss rate, the total bandwidth utilization and the total predicted latency;

[0015] generating an initial population comprising a plurality of chromosomes;

[0016] calculating a fitness function value corresponding to each chromosome, and determining an initial ideal chromosome from the plurality of chromosomes;

[0017] selecting two target chromosomes from the plurality of chromosomes, performing a crossover and mutation operation based on the two target chromosomes to generate a new generation of chromosomes, and determining a new ideal chromosome;

[0018] determining the optimal path based on the new ideal chromosome if a termination condition of iteration is reached, or performing a loop iteration starting from the calculating the fitness function value corresponding to each chromosome until the termination condition is reached to determine the optimal path if the termination condition of iteration is not reached.

[0019] In some embodiments, the selecting the two target chromosomes from the plurality of chromosomes comprises:

[0020] determining a weight vector sequence corresponding to the total latency, the total jitter, the total packet loss rate, the total bandwidth utilization and the total predicted latency;

[0021] obtaining a neighbor of the weight vector sequence, selecting two indexes from the neighbor of the weight vector sequence, and selecting the two target chromosomes from the plurality of chromosomes according to the two indexes.

[0022] In some embodiments, the determining the optimal path based on the new ideal chromosome comprises:

[0023] determining a current port from the plurality of ports, and determining whether the current port is the target port;

[0024] in a case where it is determined that the current port is the target port, outputting an optimal path;

[0025] in a case where it is determined that the current port is not the target port, obtaining an adjacent port of the source port, and determining whether the adjacent port exists;

[0026] in a case where it is determined that the adjacent port exists, selecting a next port according to an adjacent port priority, determining whether the next port is in a selected path, if yes, deleting the next port, re-obtaining a new adjacent port, and otherwise, re-selecting a new current port;

[0027] in a case where it is determined that the adjacent port does not exist, deleting the adjacent port, and re-obtaining a new adjacent port.

[0028] In some embodiments, the network topology is constructed by taking ports of routers in the communication network as nodes and taking links between the ports as edges, and the constructing comprises:

[0029] constructing an initial network topology based on communication links between different routers;

[0030] adding edges in the initial network topology based on communication links inside a same router to obtain the network topology.

[0031] In some embodiments, the determining process of the prediction model comprises:

[0032] obtaining a sample delay of a sample link, and determining a predicted delay label of the sample link;

[0033] performing feature extraction on the sample delay of the sample link to obtain a feature vector of the sample delay of the sample link;

[0034] training an initial prediction model by taking the feature vector of the sample delay of the sample link as sample data and taking the predicted delay label of the sample link as a sample label;

[0035] calculating a loss function value based on a cross-entropy loss function;

[0036] optimizing and iterating parameters of the initial prediction model based on the loss function value to obtain the prediction model.

[0037] In a second aspect, the present application further provides a network path optimization device, comprising:

[0038] The construction unit is configured to construct a network topology structure by taking ports of routers in a communication network as nodes and taking links between the ports as edges, acquire a routing request, determine a source port and a target port based on the routing request, and prune the network topology structure to obtain a pruned network topology structure;

[0039] The prediction unit is configured to acquire perception data of each link corresponding to the pruned network topology structure, the perception data including a time delay, perform feature extraction on the time delay of each link, input a feature vector of the time delay of each link into a pre-constructed prediction model to obtain a predicted time delay of each link output by the prediction model, and the prediction model is trained based on a feature vector of a sample time delay of a sample link and a predicted time delay label of the sample link.

[0040] The determination unit is configured to generate a network topology graph based on the pruned network topology structure, perform global path searching in the network topology graph based on the perception data of each link and the predicted time delay of each link, and determine an optimal path from the source port to the target port.

[0041] In a third aspect, the present application also provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, and the processor implements the network path optimization method according to any of the above when executing the program.

[0042] In a fourth aspect, the present application also provides a non-transitory computer readable storage medium, which stores a computer program executable by a processor to implement the network path optimization method according to any of the above.

[0043] In a fifth aspect, the present application also provides a computer program product, which includes a computer program executable by a processor to implement the network path optimization method according to any of the above.

[0044] The network path optimization method, device, equipment, storage medium and program product provided by the present application can construct a network topology structure, prune the network topology structure, acquire perception data of each link, perform feature extraction on the time delay of each link, input a feature vector of the time delay of each link into a pre-constructed prediction model to obtain a predicted time delay of each link, determine an optimal path from a source port to a target port based on the perception data and the predicted time delay of each link, and comprehensively consider multiple indexes for path optimization, so that the accuracy is high, the reliability is strong, the network communication quality can be improved to the greatest extent, and the method is suitable for complex large networks. BRIEF DESCRIPTION OF DRAWINGS

[0045] In order to more clearly illustrate the technical solutions in the present application or the prior art, the following will briefly introduce the drawings needed to be used in the embodiments or prior art description. Obviously, the drawings in the following description are only some embodiments of the present application, and other drawings can be obtained by those skilled in the art without creative effort based on these drawings.

[0046] Figure 1 is a flowchart of the network path optimization method provided by the embodiment of the present application.

[0047] Figure 2 is one of the flowcharts of the determination process of the optimal path provided by the embodiment of the present application.

[0048] Figure 3 is another flowchart of the determination process of the optimal path provided by the embodiment of the present application.

[0049] Figure 4 is a flowchart of the decoding process of the chromosome provided by the embodiment of the present application.

[0050] Figure 5 is a flowchart of the determination process of the prediction model provided by the embodiment of the present application.

[0051] Figure 6 is a structural diagram of the network path optimization device provided by the embodiment of the present application.

[0052] Figure 7 is a structural diagram of the electronic device provided by the embodiment of the present application. DETAILED DESCRIPTION

[0053] In order to make the objects, technical solutions and advantages of the present application clearer, the following will combine the drawings in the present application to clearly and completely describe the technical solutions in the present application. Obviously, the described embodiments are only some of the embodiments of the present application, not all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative effort belong to the protection scope of the present application.

[0054] Figure 1 is a flowchart of the network path optimization method provided by the embodiment of the present application. As shown in Figure 1 , a network path optimization method is provided, which includes the following steps: step 110, step 120, step 130. The method flowchart steps are only as one possible implementation of the present application.

[0055] Step 110: Using the ports of each router in the communication network as nodes and the links between the ports as edges, construct the network topology, obtain routing requests, determine the source port and destination port based on the routing requests, prune the network topology, and obtain the pruned network topology.

[0056] Optionally, the network topology is represented as g(V,E), where V represents the set of ports of the industrial park router devices and the city router devices, V={v1,v2,...,v... n}, where E is the set of communication links between different routers and the set of internal communication links within the same router, (v i ,v j ) indicates port v i With v j The communication link between them, (v i ,v j )∈E.

[0057] It should be noted that there is a communication link between a pair of connected routers. Since each router has multiple ports, different communication links pass through different ports; there is also communication between ports of the same router.

[0058] In some embodiments, a network topology is constructed using the ports of each router in the communication network as nodes and the links between the ports as edges, including:

[0059] Construct the initial network topology based on the communication links between different routers;

[0060] Based on the communication links within the same router, edges are added to the initial network topology to obtain the new network topology.

[0061] Optionally, edges can be added to the initial network topology based on the original information from the router device.

[0062] Understandably, adding edges to the internal communication links of a router can make the network topology more complete and accurate.

[0063] Step 120: Obtain the perception data of each link corresponding to the pruned network topology. The perception data includes latency. Extract features from the latency of each link and input the feature vector of the latency of each link into the pre-built prediction model to obtain the predicted latency of each link output by the prediction model. The prediction model is trained based on the feature vector of the sample latency of the sample link and the predicted latency label of the sample link.

[0064] The sensing data includes, but is not limited to: latency, jitter, packet loss rate, inflow rate, outflow rate, and bandwidth.

[0065] Optionally, the perception data of each link is obtained through a network monitoring system or a management tool.

[0066] Optionally, the time delay of each link is feature extracted to obtain a feature vector of the time delay of each link.

[0067] Step 130, generating a network topology graph based on the pruned network topology structure, performing global path search in the network topology graph based on the perception data of each link and the predicted time delay of each link, and determining the optimal path from the source port to the target port.

[0068] Optionally, the feasibility of each link is evaluated according to the perception data of each link and the predicted time delay of each link.

[0069] Optionally, a path search algorithm is used to search for multiple feasible paths from the source port to the target port in the network topology graph, and the optimal path is determined from the multiple feasible paths.

[0070] It can be understood that by comprehensively considering multiple indexes to fully perceive various states and performances of the network and by using a prediction model to mine the space-time features in the network to predict the future link conditions, the service quality of the communication network can be maximally improved, the communication time delay, jitter and packet loss rate can be reduced, and the network experience of users can be significantly improved.

[0071] In the embodiments of the present application, by constructing a network topology structure, pruning the network topology structure, obtaining the perception data of each link, feature extracting the time delay of each link, inputting the feature vector of the time delay of each link into a pre-constructed prediction model, obtaining the predicted time delay of each link, determining the optimal path from the source port to the target port based on the perception data of each link and the predicted time delay, and comprehensively considering multiple indexes for path optimization, the accuracy is high, the reliability is strong, the network communication quality can be maximally improved, and the present application is suitable for complex large networks.

[0072] Figure 2 One of the flowcharts of the determination process of the optimal path provided by the embodiments of the present application is shown in FIG. 1. Figure 2 As shown in FIG. 1, in some embodiments, the perception data further includes jitter, packet loss rate, inflow rate, outflow rate and bandwidth.

[0073] Correspondingly, based on the perception data of each link and the predicted time delay of each link, global path search is performed in the network topology graph to determine the optimal path from the source port to the target port, including the following steps: steps 210-230.

[0074] Step 210, calculating the bandwidth utilization of each link based on the inflow rate, outflow rate and bandwidth of each link.

[0075] wherein the bandwidth utilization of each link is calculated according to the following formula:

[0076]

[0077] wherein buf(v i ,v j ) represents the bandwidth utilization of link (v i ,v j ), i_v(v i ,v j ) represents the inflow rate of link (v i ,v j ), o_v(v i ,v j ) represents the outflow rate of link (v i ,v j ), and b(v i ,v j ) represents the bandwidth of link (v i ,v j ).

[0078] Step 220, based on the delay, jitter, packet loss rate, bandwidth utilization and predicted delay of each link, the total delay, total jitter, total packet loss rate, total bandwidth utilization and total predicted delay of each feasible path are calculated.

[0079] Optionally, for each feasible path, the total delay, total jitter, total packet loss rate, total bandwidth utilization and total predicted delay can be calculated by accumulating the indicators of each link on the path.

[0080] Step 230, the optimal path is determined from the multiple feasible paths with the objective of minimizing the total delay, total jitter, total packet loss rate, total bandwidth utilization and total predicted delay.

[0081] Optionally, with the objective of minimizing the total delay, total jitter, total packet loss rate, total bandwidth utilization and total predicted delay, for each target indicator, the relative importance is determined, the weight is assigned, the objective function is constructed, the constraint condition is determined, the objective function is solved to obtain the optimal solution, and the optimal path is determined according to the optimal solution.

[0082] wherein the expression of the objective function is as follows:

[0083]

[0084] wherein f(∑d) represents the total delay, f(∑s) represents the total jitter, f(∑l) represents the total packet loss rate, f(∑buf) represents the total bandwidth utilization, and f(∑p) represents the total predicted delay.

[0085] It can be understood that the path is optimized by the multi-objective optimization strategy, which can be compatible with the evaluation mode of different indicators, can fully consider the space-time characteristics to dynamically adjust the optimization strategy, and can ensure the efficient communication service quality.

[0086] In some embodiments, an optimal path is determined from a plurality of feasible paths with a total latency, a total jitter, a total packet loss rate, a total bandwidth utilization, and a total predicted latency minimized, comprising:

[0087] A priority of each port is determined, each feasible path is coded into a chromosome according to the priority of each port, and a fitness function is constructed with the total latency, the total jitter, the total packet loss rate, the total bandwidth utilization, and the total predicted latency minimized;

[0088] An initial population is generated, and the initial population includes a plurality of chromosomes;

[0089] A fitness function value corresponding to each chromosome is calculated, and an initial ideal chromosome is determined from the plurality of chromosomes;

[0090] Two target chromosomes are selected from the plurality of chromosomes, a cross variation operation is performed based on the two target chromosomes, a new generation of chromosomes is generated, and a new ideal chromosome is determined;

[0091] It is determined whether a termination condition of iteration is reached, if yes, an optimal path is determined based on the new ideal chromosome, and if no, a loop iteration is performed starting from the calculation of the fitness function value corresponding to each chromosome until the termination condition is reached, and the optimal path is determined.

[0092] Optionally, the priority of each port is determined according to factors such as the importance of nodes or edges, the traffic situation of the path, and the like.

[0093] Optionally, the nodes or edges in each feasible path can be arranged in sequence according to the priority order of the nodes or edges to form a coding sequence of the chromosome.

[0094] Optionally, a weight vector is assigned to the five target indicators, and the fitness function value corresponding to each chromosome is calculated.

[0095] In some embodiments, two target chromosomes are selected from the plurality of chromosomes, comprising:

[0096] A weight vector sequence corresponding to the total latency, the total jitter, the total packet loss rate, the total bandwidth utilization, and the total predicted latency is determined;

[0097] A neighbor of the weight vector sequence is obtained, two indexes are selected from the neighbor of the weight vector sequence, and the two target chromosomes are selected from the plurality of chromosomes according to the two indexes.

[0098] Optionally, all candidate weight vector sequences are sorted in order from near to far from the weight vector sequence based on the Euclidean distance, to obtain the corresponding neighbor list.

[0099] It can be understood that by searching in the neighborhood of the weight vector sequence, different weight combinations can be tried, thereby exploring a wider solution space, helping to find more potential solutions and increasing the possibility of finding a global optimal solution.

[0100] It can be understood that by selecting two target chromosomes and generating a new solution, the diversity of solutions can be increased and the algorithm's ability to escape local extrema can be improved, helping to ensure that the solution found can perform robustly in different scenarios.

[0101] Figure 3 The second flowchart of the optimal path determination process provided by the embodiment of the application is shown in Figure 2. Figure 3 As shown in Figure 2, in some embodiments, the optimal path determination process includes the following steps: S301-S308.

[0102] S301, pruning the network topology.

[0103] Optionally, the source port and the target port are determined according to the routing request, and the network topology is pruned according to the source port and the target port.

[0104] S302, constructing a network topology graph and obtaining the adjacent ports of the source port.

[0105] S303, encoding each feasible path based on port priority.

[0106] Optionally, each feasible path is encoded as a chromosome.

[0107] S304, initializing the population to obtain a plurality of chromosomes.

[0108] S305, assigning a weight vector to each sub-problem.

[0109] Optionally, weight vectors are assigned to indicators such as latency, jitter, packet loss rate, bandwidth utilization, and predicted latency.

[0110] S306, crossbreeding based on neighbor individuals.

[0111] Optionally, the neighbors of the weight vector sequence are obtained, two indices are selected from the neighbors of the weight vector sequence, two target chromosomes are selected from the plurality of chromosomes according to the two indices, and crossbreeding is performed based on the two target chromosomes.

[0112] S307, calculating the aggregate function value and updating the parent population according to the aggregate function value.

[0113] Optionally, total latency, total jitter, total packet loss rate, total bandwidth utilization and total predicted latency of the path corresponding to the chromosome are calculated to obtain an aggregated function value.

[0114] S308, judging whether the termination condition of iteration is met or not;

[0115] If yes, the optimal path is output, and if no, the loop iteration is performed from assigning the weight vector to each sub-problem until the optimal path is output.

[0116] In the embodiments of the present application, the complexity of the network can be reduced and the path optimization efficiency can be improved by network topology pruning; the necessary information and foundation for subsequent path coding and optimization are provided by constructing the network topology graph and obtaining the adjacent port of the source port; the path information can be effectively represented by coding each feasible path based on the port priority; the diversity of the search space is increased by initializing the population and introducing multiple initial solutions, which helps to find the global optimal solution better; the multi-objective optimization problem is converted into a single-objective optimization problem by assigning the weight vector to multiple sub-problems, which simplifies the optimization process; the local optimal solution can be avoided by introducing new solutions and maintaining the diversity of the population through crossover and mutation operations; the adaptability of each solution can be evaluated by calculating the aggregated function value and updating the parent population, so as to promote the evolution of the population to the direction of better solutions.

[0117] Figure 4 A flowchart of the decoding process of the chromosome provided in the embodiments of the present application is shown in FIG. 3. Figure 4 As shown in FIG. 3, in some embodiments, the optimal path is determined based on the new ideal chromosome, which includes:

[0118] The current port is determined from the multiple ports, and it is judged whether the current port is the target port or not;

[0119] In the case where the current port is determined to be the target port, the optimal path is output;

[0120] In the case where the current port is determined to be not the target port, the adjacent port of the source port is obtained, and it is judged whether the adjacent port exists or not;

[0121] In the case where the adjacent port is determined to exist, the next port is selected according to the adjacent port priority, and it is judged whether the next port is in the selected path or not, if yes, the next port is deleted, and the new adjacent port is obtained, otherwise, the new current port is selected;

[0122] In the case where the adjacent port is determined to not exist, the adjacent port is deleted, and the new adjacent port is obtained.

[0123] It can be understood that path selection is performed according to the adjacent port of the source port, so that the algorithm has scalability, can adapt to network topologies of different scales and complexities, and enhances the applicability and flexibility of the algorithm; by gradually filtering and adjusting the path, the calculation complexity of path selection can be effectively reduced, the execution efficiency of the algorithm is improved, and the algorithm is suitable for path selection requirements in real-time or large-scale network environments.

[0124] In the embodiment of the application, by gradually selecting the optimal path, it can be ensured that the finally selected path meets the actual network environment and the routing request, and the accuracy and reliability of path selection are improved; by selecting the adjacent port based on the priority and adjusting according to the selected path, the selection of the path can be optimized, so that the final path has better performance indicators such as delay and bandwidth utilization; when selecting the next port, it is judged whether it is in the selected path, and when the adjacent port does not exist, a new adjacent port is obtained, which can effectively avoid the occurrence of loop and deadlock, and ensure the normal routing.

[0125] Figure 5 The flowchart of the determination process of the prediction model provided in the embodiment of the application is shown in FIG. 1, and in some embodiments, the determination process of the prediction model includes: Figure 5

[0126] Step 510, obtaining the sample delay of the sample link, and determining the prediction delay label of the sample link;

[0127] Step 520, performing feature extraction on the sample delay of the sample link to obtain a feature vector of the sample delay of the sample link;

[0128] Step 530, taking the feature vector of the sample delay of the sample link as sample data and taking the prediction delay label of the sample link as a sample label, training the initial prediction model;

[0129] Step 540, calculating the loss function value based on the cross-entropy loss function;

[0130] Step 550, based on the loss function value, optimizing and iterating the parameters of the initial prediction model to obtain the prediction model.

[0131] Optionally, the prediction model includes a graph neural network, which predicts the delay of the corresponding link by aggregating the link delays of the second-order neighbor nodes, and optimizes the parameters of the graph neural network according to the prediction data obtained by the graph neural network and the actual delay data of each link.

[0132] ​In the embodiment of the present application, feature extraction is performed on the sample link time delay, which helps to extract the most informative features from the original data, thereby improving the modeling capability of the model for the sample link time delay; by using the sample data and the corresponding time delay label to train the model, and optimizing and iterating the model parameters based on the loss function value, the model can gradually converge to the optimal solution, thereby improving the generalization capability and prediction accuracy of the model.

[0133] The network path optimization device provided by the embodiment of the present application is described below. The network path optimization device described below can be correspondingly referred to the network path optimization method described above.

[0134] Figure 6 A structural diagram of the network path optimization device provided by the embodiment of the present application is shown in FIG. 6, which includes the following components. Figure 6

[0135] The construction unit 610 is configured to construct a network topology structure with ports of routers in a communication network as nodes and links between the ports as edges, acquire a routing request, determine a source port and a target port based on the routing request, and prune the network topology structure to obtain a pruned network topology structure.

[0136] The prediction unit 620 is configured to acquire perception data of each link corresponding to the pruned network topology structure, the perception data including time delay, perform feature extraction on the time delay of each link, input a feature vector of the time delay of each link into a pre-constructed prediction model, and obtain a predicted time delay of each link output by the prediction model, the prediction model being trained based on a feature vector of a sample time delay of a sample link and a predicted time delay label of the sample link.

[0137] The determination unit 630 is configured to generate a network topology graph based on the pruned network topology structure, perform global path search in the network topology graph based on the perception data of each link and the predicted time delay of each link, and determine an optimal path from the source port to the target port.

[0138] Optionally, the perception data further includes jitter, packet loss rate, inflow rate, outflow rate and bandwidth.

[0139] Correspondingly, the global path search in the network topology graph based on the perception data of each link and the predicted time delay of each link to determine the optimal path from the source port to the target port includes:

[0140] Based on the inflow rate, the outflow rate and the bandwidth of each link, the bandwidth utilization rate of each link is calculated.

[0141] ​Based on the delay, the jitter, the packet loss rate, the bandwidth utilization rate and the predicted delay of each link, total delay, total jitter, total packet loss rate, total bandwidth utilization rate and total predicted delay of each feasible path are calculated;

[0142] An optimal path is determined from the multiple feasible paths with the total delay, the total jitter, the total packet loss rate, the total bandwidth utilization rate and the total predicted delay minimized.

[0143] Optionally, determining the optimal path from the multiple feasible paths with the total delay, the total jitter, the total packet loss rate, the total bandwidth utilization rate and the total predicted delay minimized comprises:

[0144] A priority of each port is determined, each feasible path is coded into a chromosome according to the priority of each port, and a fitness function is constructed with the total delay, the total jitter, the total packet loss rate, the total bandwidth utilization rate and the total predicted delay minimized.

[0145] An initial population is generated, and the initial population comprises multiple chromosomes;

[0146] A fitness function value corresponding to each chromosome is calculated, and an initial ideal chromosome is determined from the multiple chromosomes;

[0147] Two target chromosomes are selected from the multiple chromosomes, a cross variation operation is performed based on the two target chromosomes, a new generation of chromosomes is generated, and a new ideal chromosome is determined;

[0148] It is determined whether a termination condition of iteration is reached, if yes, the optimal path is determined based on the new ideal chromosome, and if no, a loop iteration is performed starting from the calculation of the fitness function value corresponding to each chromosome until the termination condition is reached, and the optimal path is determined.

[0149] Optionally, selecting the two target chromosomes from the multiple chromosomes comprises:

[0150] A weight vector sequence corresponding to the total delay, the total jitter, the total packet loss rate, the total bandwidth utilization rate and the total predicted delay is determined;

[0151] A neighbor of the weight vector sequence is obtained, two indexes are selected from the neighbor of the weight vector sequence, and the two target chromosomes are selected from the multiple chromosomes according to the two indexes.

[0152] Optionally, determining the optimal path based on the new ideal chromosome comprises:

[0153] A current port is determined from the multiple ports, and it is determined whether the current port is a target port;

[0154] In a case where it is determined that the current port is the target port, the optimal path is outputted;

[0155] In a case where it is determined that the current port is not the target port, an adjacent port of the source port is acquired, and it is determined whether the adjacent port exists;

[0156] In a case where it is determined that the adjacent port exists, a next port is selected according to a priority of the adjacent port, it is determined whether the next port is in the selected path, if yes, the next port is deleted, a new adjacent port is re-acquired, otherwise, a new current port is re-selected;

[0157] In a case where it is determined that the adjacent port does not exist, the adjacent port is deleted, and a new adjacent port is re-acquired.

[0158] Optionally, a network topology structure is constructed by taking ports of each router in the communication network as nodes and taking each link between the ports as an edge, and the network topology structure comprises:

[0159] The initial network topology structure is constructed based on communication links between different routers;

[0160] Based on the communication links inside the same router, an edge is added in the initial network topology structure to obtain the network topology structure.

[0161] Optionally, the determination process of the prediction model comprises:

[0162] A sample delay of a sample link is acquired, and a predicted delay label of the sample link is determined;

[0163] Feature extraction is performed on the sample delay of the sample link to obtain a feature vector of the sample delay of the sample link;

[0164] The initial prediction model is trained by taking the feature vector of the sample delay of the sample link as sample data and taking the predicted delay label of the sample link as a sample label;

[0165] Based on a cross-entropy loss function, a loss function value is calculated;

[0166] Based on the loss function value, parameters of the initial prediction model are iteratively optimized to obtain the prediction model.

[0167] It should be noted that the network path optimization device provided by the embodiment of the present application can realize all the method steps realized by the network path optimization method embodiment and achieve the same technical effects, and the same parts and beneficial effects in the embodiment as the method embodiment will not be described in detail.

[0168] Figure 7 The structural schematic diagram of the electronic device provided by the embodiment of the present application is as follows: Figure 7As shown, the electronic device can include a processor 710, a communications interface 720, a memory 730, and a communications bus 740, wherein the processor 710, the communications interface 720, and the memory 730 complete mutual communication through the communications bus 740. The processor 710 can invoke a logical instruction in the memory 730 to execute a network path optimization method, which includes: constructing a network topology by taking ports of routers in a communication network as nodes and taking links between the ports as edges, obtaining a routing request, determining a source port and a target port based on the routing request, pruning the network topology to obtain a pruned network topology; obtaining perception data of each link corresponding to the pruned network topology, the perception data including a time delay, performing feature extraction on the time delay of each link, inputting a feature vector of the time delay of each link into a pre-constructed prediction model to obtain a predicted time delay of each link output by the prediction model, the prediction model being trained based on a feature vector of a sample time delay of a sample link and a predicted time delay label of the sample link; generating a network topology graph based on the pruned network topology, performing global path search in the network topology graph based on the perception data of each link and the predicted time delay of each link, and determining an optimal path from the source port to the target port.

[0169] In addition, the logical instructions in the memory 730 described above can be implemented in the form of a software function unit and sold or used as an independent product, and can be stored in a computer-readable storage medium. Based on this understanding, the technical solutions of the present application essentially or the part that contributes to the prior art or part of the technical solutions can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a plurality of instructions to make a computer device (which can be a personal computer, a server, or a network device, etc.) execute all or part of the steps of the method described in various embodiments of the present application. The foregoing storage medium includes: a U disk, a mobile hard disk, a read-only memory (ROM, Read-Only Memory), a random access memory (RAM, Random Access Memory), a magnetic disk or an optical disk, and various program code storage media.

[0170] In another aspect, the present application also provides a computer program product comprising a computer program, which is stored in a non-transitory computer-readable storage medium, and when the computer program is executed by a processor, the computer can execute the network path optimization method provided by the above method, which comprises: constructing a network topology structure by taking ports of routers in a communication network as nodes and taking links between the ports as edges, obtaining a routing request, determining a source port and a target port based on the routing request, and pruning the network topology structure to obtain a pruned network topology structure; obtaining perception data of each link corresponding to the pruned network topology structure, the perception data comprising a time delay, performing feature extraction on the time delay of each link, inputting a feature vector of the time delay of each link into a pre-constructed prediction model to obtain a predicted time delay of each link output by the prediction model, the prediction model being trained based on a feature vector of a sample time delay of a sample link and a predicted time delay label of the sample link; generating a network topology graph based on the pruned network topology structure, performing global path search in the network topology graph based on the perception data of each link and the predicted time delay of each link, and determining an optimal path from the source port to the target port.

[0171] In another aspect, the present application also provides a non-transitory computer-readable storage medium having a computer program stored thereon, and when the computer program is executed by a processor, the computer program implements the network path optimization method provided by the above method, which comprises: constructing a network topology structure by taking ports of routers in a communication network as nodes and taking links between the ports as edges, obtaining a routing request, determining a source port and a target port based on the routing request, and pruning the network topology structure to obtain a pruned network topology structure; obtaining perception data of each link corresponding to the pruned network topology structure, the perception data comprising a time delay, performing feature extraction on the time delay of each link, inputting a feature vector of the time delay of each link into a pre-constructed prediction model to obtain a predicted time delay of each link output by the prediction model, the prediction model being trained based on a feature vector of a sample time delay of a sample link and a predicted time delay label of the sample link; generating a network topology graph based on the pruned network topology structure, performing global path search in the network topology graph based on the perception data of each link and the predicted time delay of each link, and determining an optimal path from the source port to the target port.

[0172] The device embodiments described above are only schematic, wherein the units shown as separate components can or can not be physically separate, and the components shown as units can or can not be physical units, i.e., can be located in one place or distributed on multiple network units. Part or all of the modules can be selected according to actual needs to achieve the purpose of the present embodiment scheme. Those skilled in the art can understand and implement it without creative labor.

[0173] Those skilled in the art can clearly understand the implementation of the various embodiments by means of software and necessary general hardware platforms through the description of the above embodiments, and of course, the embodiments can also be implemented by hardware. Based on such understanding, the above technical solutions, essentially or in other words, the part of the prior art that makes a contribution, can be embodied in the form of a software product, which can be stored in a computer readable storage medium, such as a ROM / RAM, a magnetic disk, an optical disk, etc., and includes a number of instructions to make a computer device (which can be a personal computer, a server, or a network device, etc.) execute the methods described in the various embodiments or some parts of the embodiments.

[0174] Finally, it should be noted that: the above examples are only used to illustrate the technical solutions of the present application, and not to limit them; although the present application has been described in detail with reference to the foregoing examples, those skilled in the art should understand that: it can still modify the technical solutions recorded in the foregoing examples, or make equivalent replacement for some of the technical features; and these modifications or replacements do not make the essence of the corresponding technical solutions deviate from the spirit and scope of the technical solutions of the various embodiments of the present application.

Claims

1. A network path optimization method, characterized in that, include: Using the ports of each router in the communication network as nodes and the links between the ports as edges, a network topology is constructed, routing requests are obtained, the source port and the destination port are determined based on the routing requests, and the network topology is pruned to obtain the pruned network topology. The perceptual data of each link corresponding to the pruned network topology is obtained. The perceptual data includes latency, jitter, packet loss rate, inflow rate, outflow rate, and bandwidth. Features of the latency of each link are extracted, and the feature vector of the latency of each link is input into a pre-built prediction model to obtain the predicted latency of each link output by the prediction model. The prediction model is trained based on the feature vector of the sample latency of the sample link and the predicted latency label of the sample link. Based on the inflow rate, outflow rate, and bandwidth of each link, calculate the bandwidth utilization of each link; Based on the latency, jitter, packet loss rate, bandwidth utilization and predicted latency of each link, calculate the total latency, total jitter, total packet loss rate, total bandwidth utilization and total predicted latency of each feasible path. Determine the priority of each port, and based on the priority of each port, encode each feasible path into a chromosome. Construct a fitness function with the goal of minimizing total latency, total jitter, total packet loss rate, total bandwidth utilization and total prediction latency. An initial population is generated, which comprises multiple chromosomes; Calculate the fitness function value for each chromosome, and determine the initial ideal chromosome from the plurality of chromosomes; Two target chromosomes are selected from the plurality of chromosomes, and crossover mutation is performed on the two target chromosomes to generate a new generation of chromosomes and determine the new ideal chromosome; Determine whether the termination condition of the iteration has been met. If so, determine the optimal path based on the new ideal chromosome. If not, start iterating from calculating the fitness function value corresponding to each chromosome until the termination condition is met and the optimal path is determined.

2. The network path optimization method according to claim 1, characterized in that, The step of selecting two target chromosomes from the plurality of chromosomes includes: Determine the weight vector sequence corresponding to the total latency, total jitter, total packet loss rate, total bandwidth utilization, and total predicted latency; Obtain the neighbors of the weight vector sequence, select two indices from the neighbors of the weight vector sequence, and select two target chromosomes from the plurality of chromosomes based on the two indices.

3. The network path optimization method according to claim 2, characterized in that, The determination of the optimal path based on the new ideal chromosome includes: Determine the current port from multiple ports, and determine whether the current port is the target port; If the current port is determined to be the target port, output the optimal path; If it is determined that the current port is not the target port, obtain the adjacent port of the source port and determine whether the adjacent port exists; If it is determined that the adjacent port already exists, the next port is selected according to the priority of the adjacent port. It is then determined whether the next port is in the selected path. If so, the next port is deleted and a new adjacent port is obtained. Otherwise, a new current port is selected. If it is determined that the adjacent port does not exist, the adjacent port is deleted and a new adjacent port is obtained.

4. The network path optimization method according to claim 1, characterized in that, The construction of a network topology using the ports of each router in the communication network as nodes and the links between the ports as edges includes: Construct the initial network topology based on the communication links between different routers; Based on the communication links within the same router, edges are added to the initial network topology to obtain the network topology.

5. The network path optimization method according to claim 1, characterized in that, The process of determining the prediction model includes: Obtain the sample delay of the sample link and determine the predicted delay label of the sample link; Feature extraction is performed on the sample delay of the sample link to obtain the feature vector of the sample delay of the sample link; The initial prediction model is trained using the feature vector of the sample delay of the sample link as sample data and the predicted delay label of the sample link as sample label. Calculate the loss function value based on the cross-entropy loss function; Based on the loss function value, the parameters of the initial prediction model are optimized and iterated to obtain the prediction model.

6. A network path optimization device, characterized in that, include: The construction unit is used to construct a network topology using the ports of each router in the communication network as nodes and the links between the ports as edges, obtain routing requests, determine the source port and the target port based on the routing requests, and prune the network topology to obtain a pruned network topology. The prediction unit is used to acquire the sensing data of each link corresponding to the pruned network topology. The sensing data includes latency, jitter, packet loss rate, inflow rate, outflow rate, and bandwidth. The unit extracts features of the latency of each link and inputs the feature vector of the latency of each link into a pre-built prediction model to obtain the predicted latency of each link output by the prediction model. The prediction model is trained based on the feature vector of the sample latency of the sample link and the predicted latency label of the sample link. Determine the unit, used for: Based on the inflow rate, outflow rate, and bandwidth of each link, calculate the bandwidth utilization of each link; Based on the latency, jitter, packet loss rate, bandwidth utilization and predicted latency of each link, calculate the total latency, total jitter, total packet loss rate, total bandwidth utilization and total predicted latency of each feasible path. Determine the priority of each port, and based on the priority of each port, encode each feasible path into a chromosome. Construct a fitness function with the goal of minimizing total latency, total jitter, total packet loss rate, total bandwidth utilization and total prediction latency. An initial population is generated, which comprises multiple chromosomes; Calculate the fitness function value for each chromosome, and determine the initial ideal chromosome from the plurality of chromosomes; Two target chromosomes are selected from the plurality of chromosomes, and crossover mutation is performed on the two target chromosomes to generate a new generation of chromosomes and determine the new ideal chromosome; Determine whether the termination condition of the iteration has been met. If so, determine the optimal path based on the new ideal chromosome. If not, start iterating from calculating the fitness function value corresponding to each chromosome until the termination condition is met and the optimal path is determined.

7. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the computer program, it implements the network path optimization method as described in any one of claims 1 to 5.

8. A non-transitory computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the network path optimization method as described in any one of claims 1 to 5.

9. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the network path optimization method as described in any one of claims 1 to 5.

Citation Information

Patent Citations

  • A computational method of multi-constrained routing optimization based on DAG

    CN109067648A

  • Algorithm model and path determination method, electronic equipment, SDN controller and medium

    CN114650249A