Rout planning method and related apparatus
By building a high-dimensional network knowledge graph and training a link prediction model based on deep learning, the high packet loss rate and delay problems caused by routing planning in complex network environments are solved, and more efficient and reliable network communication is achieved.
Patent Information
- Application Number
- PCT/CN2023/122965
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-09-28
- Publication Date
- 2025-04-03
AI Technical Summary
The existing routing planning methods lead to higher packet loss rate and delay in complex network environments, reducing the reliability of the network.
Build a high-dimensional network knowledge graph, including network topology features, fault features and user demand features, and train the preset deep learning-based link prediction model to obtain the routing planning model. This model reduces packet loss rate and delay by intelligently selecting the optimal or suboptimal path.
Through intelligent selection of paths, the packet loss rate and delay of data packet transmission in complex network environments are significantly reduced, and the quality of network communication is improved.
Smart Images

Figure CN2023122965_03042025_PF_FP_ABST
Abstract
Description
Route planning method and related device Technical Field
[0001] The present application relates to the field of network communication technology, and in particular to a routing planning method and related devices. Background Art
[0002] During network communication, when a data packet is transmitted from a starting node to a destination node, there are multiple different transmission paths between the starting node and the destination node. To ensure network reliability, routing planning is required to select a suitable transmission path for the data packet in the communication network.
[0003] One routing planning method extracts node and link information from a software-defined network (SDN) topology. Using nodes, node attributes, links, and link attributes as entities, and connections between entities as relationships, this topology information is expressed using a relationship triplet (head entity, relationship, tail entity). Multiple triplets can be used to construct a network topology knowledge graph. After learning the network topology knowledge graph using an artificial intelligence (AI) routing model, the transmission path from the starting node to the destination node can be obtained based on the AI routing model and routing request information.
[0004] However, the above routing planning methods have high packet loss rates and delays, which may reduce network reliability.
[0005] Summary of the Invention
[0006] The present application provides a routing planning method and related devices, which aim to select a transmission path that meets the requirements from multiple optional paths for a data packet to be transmitted, reduce the packet loss rate and delay during data packet transmission in a complex network environment, and improve the quality of network communication.
[0007] In a first aspect, the present application provides a route planning method, the method comprising:
[0008] Obtain first information, where the first information is used to indicate a source point of the data packet to be transmitted in the first network, a destination point of the data packet to be transmitted in the first network, and attributes of the data packet to be transmitted, where the attributes of the data packet to be transmitted include resource requirements and a maximum acceptable delay when the data packet to be transmitted is transmitted; determine a target route based on the first information and a routing planning model, where the target route is a transmission path of the data packet to be transmitted from the source point to the destination point, and the routing planning model is a deep learning-based link prediction model trained according to a network knowledge graph, and the network knowledge graph includes topological features and fault features of the first network.
[0009] During the training process, the routing planning model extracts and learns the topological characteristics and fault characteristics of the first network. Through the routing planning model, the routing planning problem in the data domain can be transformed into a link prediction problem in the knowledge domain, avoiding faulty paths and congested paths, and intelligently selecting the optimal or suboptimal path to transmit data packets, thereby reducing packet loss rate and latency.
[0010] In some implementations, determining the target route based on the first information and the routing planning model includes:
[0011] Step 1: Set the source point as the node to be processed and the path to be processed as the source point. The path to be processed is used to record the nodes on the path from the source point to the destination point.
[0012] Step 2: Construct a triplet to be processed, with the node to be processed as the head entity.
[0013] Step 3: Input the triplet to be processed into the routing planning model to obtain at least one score, wherein the at least one score corresponds one-to-one to at least one node in the first network, and each score in the at least one score is a score of the corresponding node as the next hop of the node to be processed.
[0014] Step 4: Select a target next hop from at least one node according to at least one score, and use the target next hop as the next hop of the node to be processed.
[0015] Step 5: Update the path to be processed. Compared with the path to be processed before the update, the updated path to be processed has a target next hop added after the node to be processed.
[0016] Step 6: Determine whether the target next hop and the destination are the same node.
[0017] Step 7: If the target next hop and the sink are not the same node, update the node to be processed to the target next hop and restart from step 2.
[0018] Step 8: If the target next hop and the sink are the same node, the path to be processed is determined as the target route.
[0019] In some implementations, inputting a triplet to be processed into a routing planning model to obtain at least one score includes:
[0020] Input the triplet to be processed into the routing planning model to obtain an initial score of each node in at least one node as the next hop of the node to be processed; modify the initial score of each node as the next hop of the node to be processed based on the real-time network topology information to obtain a score of each node as the next hop of the node to be processed. The score of each node as the next hop of the node to be processed satisfies the following relationship:
[0021] Among them, s(nj ,l j ) is the initial score of each node as the next hop of the node to be processed, α is the weight parameter, is the resource requirement of the data packet to be transmitted, The amount of resources corresponding to each node at the current moment, is the resource amount of the link from the node to be processed to each node at the current moment, is the processing delay of the node to be processed, Link l j The transmission delay, is the maximum acceptable delay for a data packet to be transmitted.
[0022] By combining the dynamic information of the real-time network topology in the first network, the routing planning results can be dynamically corrected to adapt to the dynamic changes and uncertainties in the first network, realize adaptive routing planning, and avoid the problems of increased packet loss rate and increased latency.
[0023] In some implementations, the network knowledge graph further includes user demand features, where the user demand features include historical demands of users when transmitting data in the first network.
[0024] When the network knowledge graph contains user demand characteristics, the routing planning model can learn the user's historical needs and preferences from the network knowledge graph, thereby specifically meeting user preferences and improving routing planning effects.
[0025] In a second aspect, the present application provides a route planning device, which includes various functional modules for implementing any of the route planning methods mentioned in the above implementations. In some implementations, each module can be implemented by software and / or hardware.
[0026] In a third aspect, the present application provides a route planning device, comprising: a processor, and a memory in communication with the processor; the memory storing computer-executable instructions. The processor executes the computer-executable instructions stored in the memory to implement the operations performed by the route planning device in the first aspect.
[0027] In a fourth aspect, the present application provides a computer-readable medium storing program code for execution by a device, the program code including instructions for executing the operations performed by the routing planning apparatus in the first aspect.
[0028] In a fifth aspect, the present application provides a model training method, the method comprising:
[0029] A training sample set is obtained, where the training sample set includes triplets for constructing a network knowledge graph, where the network knowledge graph includes topological features and fault features in the first network; a link prediction model based on deep learning is trained based on the training sample set to obtain a routing planning model, where the routing planning model is used to determine the route of the data packet to be transmitted from the source point to the destination point based on the source point information of the data packet to be transmitted in the first network, the destination point information of the data packet to be transmitted in the first network, and the attribute information of the data packet to be transmitted, where the source point information is used to indicate the source point, the destination point information is used to indicate the destination point, and the attribute information of the data packet to be transmitted is used to indicate the resource requirement and the maximum acceptable delay when the data packet to be transmitted is transmitted.
[0030] The routing planning model can extract and learn the network topology features and network fault features in the first network from the high-dimensional network knowledge graph. The routing planning model can make full use of the high-dimensional feature information and topology structure information in the above knowledge domain to realize routing planning.
[0031] In some implementations, training a link prediction model based on a training sample set includes:
[0032] Step 1: Obtain multiple training samples, where each training sample in the multiple training samples comes from a training sample set.
[0033] Step 2: Generate a sampling path based on each training sample. The sampling path includes the nodes and links passed from the sampling start point to the sampling end point. The sampling start point is the starting node of the sampling path, and the sampling end point is the ending node of the sampling path.
[0034] Step 3: Set the sampling starting point as the node to be processed and the path to be processed as the sampling starting point. The path to be processed is used to record the nodes on the path from the sampling starting point to the sampling end point.
[0035] Step 4: Construct a triplet to be processed, with the node to be processed as the head entity.
[0036] Step 5: Input the triplet to be processed into a preset link prediction model to obtain at least one score, wherein the at least one score corresponds one-to-one to at least one node in the first network, and each score in the at least one score is a score of the corresponding node as the next hop of the node to be processed.
[0037] Step 6: Select a target next hop from at least one node according to at least one score, and use the target next hop as the next hop of the node to be processed.
[0038] Step 7: Update the path to be processed. Compared with the path to be processed before the update, the updated path to be processed has a target next hop added after the node to be processed.
[0039] Step 8: Determine whether the target next hop and the sampling end point are the same node.
[0040] Step 9: If the target next hop is not the same node as the sampling end point, update the node to be processed to the target next hop and restart from step 4.
[0041] Step 10: If the target next hop and the sampling end point are the same node, the path to be processed is determined as the target path.
[0042] Step 11: Calculate the loss function value based on the sampling path and the target path, and calculate the training error based on the loss function value.
[0043] Step 12: Update the link prediction model parameters based on the training error.
[0044] Step 13: If the training error does not converge or the training does not reach the maximum number of iterations, repeat from step 1.
[0045] Step 14: If the training error converges or the training reaches the maximum number of iterations, the link prediction model is determined to be the routing planning model.
[0046] The link prediction model is trained based on a network knowledge graph containing the topological features and fault features of the first network. Multiple path information can be used to calculate the similarity between nodes, and the path selection mechanism can be used to filter out irrelevant or noisy paths, thereby improving prediction accuracy and interpretability.
[0047] In some implementations, before obtaining the training sample set, the method further includes:
[0048] A network topology triple is constructed. The network topology triple is used to describe the topological characteristics in the first network. The topological characteristics in the first network include the structure and attributes between nodes and links in the first network. The attributes of the nodes include forwarding delay and maximum buffer resources, and the attributes of the links include transmission delay and maximum bandwidth resources. A fault distribution triple is constructed. The fault distribution triple is used to describe the fault characteristics in the first network. The fault characteristics in the first network include the attributes of link failures in the first network. The attributes of link failures include failure probability and fault repair time. A network knowledge graph is constructed. The network knowledge graph includes the network topology triple and the fault distribution triple.
[0049] In some implementations, the method further includes:
[0050] Construct a user demand triplet. The user demand triplet is used to describe the user demand characteristics. The user demand characteristics include the user's historical demand when transmitting data in the first network. The historical demand includes the type of data packet to be transmitted, the resource requirement of the data packet to be transmitted, and the maximum acceptable delay of the data packet to be transmitted. The network knowledge graph also includes the user demand triplet.
[0051] In some implementations, the preset deep learning-based link prediction model is a neural Bellman-Ford network model, which includes an initialization function component, an information transfer function component, and an aggregation function component.
[0052] The neural Bellman-Ford network model, as a general graph neural network framework, parameterizes the generalized Bellman-Ford algorithm and has the advantages of traditional path-based methods and modern graph neural networks, including generalization ability in inductive settings, interpretability, high model capacity and scalability.
[0053] In some implementations, the information transfer function component is a RotatE function.
[0054] As a knowledge graph embedding function based on complex number operations, the RotatE function can effectively capture semantic patterns such as symmetry, antisymmetry, inverse relations and combination relations between relations, and has stronger feature representation capabilities. BRIEF DESCRIPTION OF THE DRAWINGS
[0055] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present application and, together with the description, serve to explain the principles of the present application.
[0056] Figure 1 is a schematic diagram of the software-defined network architecture;
[0057] FIG2 is a schematic diagram of an architecture for training a preset link prediction model based on a network knowledge graph according to an embodiment of the present application;
[0058] FIG3 is a system model architecture diagram of NBFNet provided in one embodiment of the present application;
[0059] FIG4 is a flowchart of a training process based on the NBFNet model provided in one embodiment of the present application;
[0060] FIG5 is a schematic diagram of a process for performing route planning according to a route planning model according to an embodiment of the present application;
[0061] FIG6 is a schematic diagram of a process for implementing route planning based on the NBFNet model according to an embodiment of the present application;
[0062] FIG7 is a schematic diagram of the structure of a routing planning device provided by an embodiment of the present application;
[0063] FIG8 is a schematic structural diagram of a route planning device provided in another embodiment of the present application.
[0064] The above drawings illustrate specific embodiments of the present application, which will be described in more detail below. These drawings and the textual description are not intended to limit the scope of the present application in any way, but rather to illustrate the concepts of the present application to those skilled in the art by reference to specific embodiments. DETAILED DESCRIPTION
[0065] Exemplary embodiments will be described in detail herein, with examples illustrated in the accompanying drawings. In the following description, when referring to the drawings, identical numerals in different figures represent identical or similar elements, unless otherwise indicated. The embodiments described in the following exemplary embodiments are not intended to represent all embodiments consistent with the present application. Rather, they are merely examples of apparatus and methods consistent with certain aspects of the present application, as detailed in the appended claims.
[0066] Route planning is a critical issue in network communications. It involves selecting the optimal path within a complex network topology to achieve efficient data packet transmission. In traditional network architectures, routers transmit and forward packets according to preconfigured protocols. This architecture makes it difficult to monitor network traffic in real time, leading to congestion during busy periods and thus affecting network transmission efficiency. To achieve intelligent infrastructure management and control and reduce network operating costs, software-defined networking (SDN) technology has emerged.
[0067] Figure 1 is a schematic diagram of the software-defined network (SDN) architecture. As shown in Figure 1, in an SDN architecture, the network consists of three layers: the application layer, the control layer, and the forwarding layer. The application layer primarily includes various upper-layer business applications that reflect user intent. The control layer is the control center of the network system, responsible for network services such as generating internal business routes. The forwarding layer, also known as the infrastructure layer, primarily consists of physical devices and links in the network, forming the basic forwarding network and responsible for forwarding packets. In an SDN architecture, the control layer and forwarding layer are separated. Network administrators can use the control layer to monitor data transmission, dynamically issue flow tables to configure routers, and control the forwarding paths of network packets, thereby achieving flexible routing.
[0068] To achieve more flexible, intelligent, and efficient routing planning, existing technologies introduce knowledge graphs. In the control layer of the SDN architecture, AI routing models are used to model and reason about network status, thereby obtaining the optimal path. Specifically, the following are achieved:
[0069] First, the network node information and network link information within the first network range in the infrastructure layer are extracted. Taking the network nodes and network links as entities, the attributes of the network nodes and the attributes of the network links are converted into relationships. A network topology knowledge graph is constructed in the form of triples (head entity, relationship, tail entity) to describe the topological characteristics of the first network. This knowledge graph is equivalent to a network topology knowledge domain. Based on the above network knowledge graph, the knowledge graph embedding model TransH is trained. The TransH model is equivalent to an AI routing model. The TransH model can be used to extract and learn the semantic information and structural information implicit in the network topology characteristics. After the TransH model training is completed, the routing request information containing the source point information, the destination point information and the attributes of the data packet to be transmitted is input into the TransH model for routing planning. The path output by the TransH model is the target path from the source node to the target node.
[0070] However, the knowledge graph used in the above routing planning methods only contains network topology features, and the feature dimensions of the entities and relationships involved are relatively few. It does not consider factors other than network topology features, such as failures, attacks, and changes in network equipment, and it is difficult to describe more complex network environments. This limits the content that the TransH model can extract and learn from the knowledge graph, resulting in the TransH model being unable to avoid paths with a high probability of failure. When a network link fails, it may cause a sudden increase in packet loss rate and latency, and the routing selection effect is not ideal.
[0071] On the other hand, the TransH model, as a knowledge graph embedding model, represents the relationship between entities in a triple as a hyperplane and projects each entity onto the hyperplane. When the dimension of the entity or relationship vector is high, the TransH model needs to calculate a large number of projection matrices. The projected vector may lose the original information, which ultimately affects the routing selection results.
[0072] To solve the above technical problems, the present application provides a routing planning method and related devices, which aim to select a transmission path that meets the requirements from multiple optional paths for the data packet to be transmitted, reduce the packet loss rate and delay during data packet transmission in a complex network environment, and improve the quality of network communication.
[0073] The technical concept of this application is to construct a high-dimensional network knowledge graph that not only includes network topology features but also network fault characteristics and / or user demand characteristics. This high-dimensional network knowledge graph can fully reflect the diversity and dynamic nature of each node and link in the network. Based on this high-dimensional knowledge graph, a preset deep learning-based link prediction model is trained to obtain a routing planning model. The routing planning model is equivalent to an AI routing model. Based on the routing request information and the routing planning model, candidate paths between the source and destination nodes can be obtained, and the optimal or near-optimal path can be selected as the final routing result.
[0074] In order to use a preset deep learning-based link prediction model to learn complex features in real-world networks, an embodiment of the present application constructs a high-dimensional network knowledge graph, which includes network topology features and network fault features in the first network.
[0075] Among them, since the data packets to be transmitted are transmitted from the source point to the destination point through the nodes and links in the network, the network topology characteristics are characteristics that must be considered in the routing calculation. In the embodiment of the present application, it is assumed that the network topology structure in the first network is G1=(V,E), V represents the set of nodes in the network, and a node is a connection point or device in the network for sending, receiving or forwarding data. It can be a hardware device such as a computer, server, router, switch, or a software entity such as a network application, service or process. E represents the set of links in the network. A link is a communication line between a node and an adjacent node, and there is no other switching node in the middle. The above two sets are large sample sets, which are sufficient to characterize the network topology.
[0076] As an example, each network node v i ∈V has two attributes: forward delay (forwardDelay) and maximum buffer resources (bufferResources). Each network link l i ∈E has two attributes: transmission delay (transmissionDelay) and maximum bandwidth resources (bandwidthResources). The topological structure of the network is equivalent to a strongly connected graph, so any two network nodes can be connected. The attributes corresponding to the above nodes and the attributes corresponding to the links can all be converted into relationships. Therefore, based on the nodes, links and corresponding attributes in the set, the association relationship between nodes and links in the network topology can be constructed in the form of triples. The obtained triples are equivalent to forming a network topology knowledge domain, which is used to describe the topological characteristics of the network. It can be understood that the knowledge graph is essentially a structured semantic network that describes entities (or concepts) in the objective world and their relationships in symbolic form. The nodes represent entities in the objective world, and the edges represent various relationships between entities.
[0077] Table 1 shows the network topology knowledge domain that includes six entity types and four relationship types:
[0078] Table 1
[0079] Link failures in the network also affect the routing results, so network failure characteristics need to be considered in the high-dimensional network knowledge graph. As an example, the failure frequency and the time required to discover and repair the failure of the link prone to failure in the network topology of the first network can be counted. i ∈E also has two attributes: failure probability and fault repair time. This allows us to construct the association between links and faults in the network topology in the form of triples. The resulting triples constitute a fault distribution knowledge domain, which is used to describe the characteristics of faults in the network. Table 2 shows the fault distribution knowledge domain, which contains three entity types and two relationship types:
[0080] Table 2
[0081] In some implementations, in order to improve the effectiveness of routing planning, the high-dimensional network knowledge graph can also include user demand characteristics. As an example, the user's routing requests can be divided into real-time request packets and non-real-time request packets. Considering the attributes such as the resource class required for the request packet and the maximum acceptable delay, the user's demand preference can also be manifested as the user being more inclined to choose a low-latency or high-success-rate or load-balanced path when making routing selections. Similarly, the association relationship between user requests and network topology is constructed in the form of triples. The obtained triples are equivalent to forming a user request knowledge domain, which is used to describe the user's demand characteristics. Table 3 shows the user request knowledge domain containing three entity types and four relationship types:
[0082] Table 3
[0083] It can be understood that since the fault distribution knowledge domain and the user request knowledge domain both describe the network based on the nodes and links in the network topology, the above three knowledge domains are interrelated. For example, the network topology knowledge domain and the fault distribution knowledge domain share the entity of link, and the network topology knowledge domain and the user request knowledge domain share the entities of node and link. The three interrelated knowledge domains constitute a complex network system.
[0084] Based on the high-dimensional network knowledge graph constructed above, the preset link prediction model can be trained to obtain a routing planning model. As an example, Figure 2 is an architectural diagram of training a preset link prediction model based on a network knowledge graph provided by an embodiment of the present application. As shown in Figure 2, the user domain provides user domain features, namely user demand features, and the network domain provides network domain features, namely network topology features and network fault features. The network knowledge graph contains user demand features, network topology features, and network fault features. The routing planning module contains a preset link prediction model and a path selection and path integration module. The preset link prediction model can be trained based on the network knowledge graph and the routing calculation module.
[0085] It can be understood that the forwarding layer in the SDN architecture includes the above user domain and network domain, and the control layer includes the routing planning module and the network controller shown in Figure 2. The network controller is used to manage the policies and traffic of the entire network.
[0086] In some implementations, a neural Bellman-Ford network (NBFNet) is selected as the default link prediction model framework. The following describes how to train an NBFNet model based on a high-dimensional network knowledge graph, using Figures 2 and 3. Figure 3 shows the system model architecture of NBFNet, as provided in one embodiment of the present application.
[0087] As shown in Figure 3, NBFNet, a general graph neural network (GNN) model framework, parameterizes the generalized Bellman-Ford algorithm. The NBFNet framework includes three neural network components: the initialization function (INDICATOR), the message transfer function (MESSAGE), and the aggregation function (AGGREGATE). The INDICATOR function corresponds to the boundary conditions, the MESSAGE function corresponds to the multiplication operator, and the AGGREGATE function corresponds to the summation operator.
[0088] Among them, the INDICATOR function is used to convert the knowledge graph in the form of triples input into NBFNet into a binary vector and initialize it.
[0089] The MESSAGE function is used to calculate the information transfer between nodes, that is, to transfer the output of a node to an adjacent node. In NBFNet, the MESSAGE function is usually implemented using knowledge representation functions, such as TransE and RotatE.
[0090] The AGGREGATE function is used to aggregate the information passed by adjacent nodes to obtain the final output of the node.
[0091] FIG4 is a flowchart of a training process based on the NBFNet model provided in one embodiment of the present application. As shown in FIG4 , the training process proposed in the embodiment of the present application includes the following steps:
[0092] S401, obtaining multiple training samples, each of the multiple training samples is a triple in the network knowledge graph.
[0093] According to the above method of constructing a high-dimensional network knowledge graph, triples are the basic components of the knowledge graph. All the triplets that constitute the high-dimensional network knowledge graph are equivalent to a training sample set containing a large amount of data. A batch of triplets is randomly selected from the training sample set. The multiple triplets contained in the batch are multiple training samples. Since these triplets come from the high-dimensional network knowledge graph, the triplets in this batch are positive triplets that reflect the real network characteristics, that is, positive node pairs.
[0094] In some implementations, for each positive triplet, a certain number of negative triplets can also be generated according to the sample generator. The number of these negative triplets is in a certain proportion to the positive triplets, which is used to reflect features that do not exist in the network. Positive and negative triplets can be used as multiple training samples in this step to avoid the batch of training samples becoming a biased training sample batch, which is conducive to NBFNet learning the real network features.
[0095] S402 : Generate a sampling path according to each training sample, where the sampling path includes nodes and links passed from the sampling start point to the sampling end point.
[0096] In a batch of training samples extracted in step S401, each training sample is in the form of a triple. In this step, the triple relationship in each training sample is normalized into a low-dimensional vector. For the low-dimensional vector corresponding to each training sample, a path sampler can be used to perform sampling to obtain sampling paths of different lengths. Each sampling path has a sampling start point and a sampling end point. The sampling start point is equivalent to the starting node of the sampling path, and the sampling end point is equivalent to the ending node of the sampling path. The sampling path is one of the multiple feasible paths from the sampling start point to the sampling end point. The sampling path includes all nodes and links on the path from the sampling start point to the sampling end point.
[0097] S403 , setting the sampling starting point as the node to be processed, and setting the path to be processed as the sampling starting point, where the path to be processed is used to record the nodes on the path from the sampling starting point to the sampling end point.
[0098] During the NBFNet model training process, each training sample needs to obtain the complete path from the sampling start point to the sampling end point, and the vector result output by the NBFNet model is the score of multiple candidate nodes. Therefore, the routing planning module needs to use the sampling start point as the initial node, record each node on the path to be processed, and splice the selected nodes according to the links between each node from the sampling start point to obtain the complete path from the sampling start point to the sampling end point. Usually, a routing list is used to store the nodes to be processed and the paths to be processed.
[0099] S404: Construct a triplet to be processed, where the triplet to be processed has the node to be processed as the head entity.
[0100] During the NBFNet model training process, the model input is a triplet, and the node to be processed cannot be directly used as input. Therefore, it is necessary to construct a triplet to be processed with the node to be processed as the head entity. That is to say, each training sample is converted into a triplet to be processed with the node to be processed as the head entity.
[0101] S405: Input the triplet to be processed into the NBFNet model to obtain at least one score, where the at least one score corresponds one-to-one to at least one node in the first network, and each score in the at least one score is a score of the corresponding node as the next hop of the node to be processed.
[0102] In step S405, the triplet to be processed is input into the NBFNet model. As shown in FIG3 , the triplet to be processed is first input into the initialization function component. The “INDICATOR” function converts the input triplet into a binary vector and initializes it.
[0103] Optionally, as shown in Figure 3, the RotatE function is used as the information transfer function component in the NBFNet layer (NBFNet Layer) of the NBFNet model. As a knowledge graph embedding function based on complex operations, the RotatE function can effectively capture semantic patterns such as symmetry, antisymmetry, inverse relations, and combination relations between relations, and realize message passing through the RotatE function.
[0104] In some implementations, a Sum function is used as an aggregation function component in the NBFNet layer to aggregate information passed by the Rotate function to obtain at least one candidate node, where the candidate node is a node in the first network.
[0105] In an embodiment of the present application, the NBFNet model framework also includes a multilayer perceptron (MLP), which performs multi-layer processing on at least one candidate node output by the Sum function to obtain a vector result, which is a score. The score corresponds one-to-one to the candidate node in the first network. The score of each candidate node is actually the score of the link between the node to be processed and the candidate node, which can reflect the stability and quality of the link.
[0106] S406 : Select a target next hop from at least one node according to at least one score, and use the target next hop as the next hop of the node to be processed.
[0107] As shown in Figure 3, the vector result output by step S405 is input to the path selection and path integration module. According to step S405, a higher score represents a more stable and reliable link between the node to be processed and the candidate node. Therefore, the node with the highest corresponding score is selected from at least one node as the target next hop, and the target next hop is used as the next hop node of the node to be processed.
[0108] S407: Update the path to be processed. Compared with the path to be processed before the update, the updated path to be processed has a target next hop added after the node to be processed.
[0109] As shown in Figure 2, in step S406, after the path selection and path integration module determines the next hop node of the node to be processed, the routing planning module transmits the next hop node as the routing planning result to the network controller. The network controller updates the flow table of the network domain according to the next hop node, that is, adds the next hop node to the routing list. Accordingly, the routing list updates the path to be processed, and the tail node of the updated path to be processed is spliced with the newly added next hop node. Therefore, the updated path to be processed adds the target next hop after the node to be processed compared with the path to be processed before the update.
[0110] S408: Determine whether the target next hop and the sampling end point are the same node.
[0111] If the target next hop and the sampling end point are the same node, it indicates that the path to be processed has determined the path from the sampling start point to the sampling end point, and the path to be processed is the target path, and the process jumps to step S410. Otherwise, it indicates that the tail node of the path to be processed has not yet reached the sampling end point, and the process jumps to step S409.
[0112] S409: Update the node to be processed as the target next hop.
[0113] In this step, the routing list updates the target next hop to the node to be processed. Since the tail node of the path to be processed has not yet reached the sampling end point, it is necessary to jump back to step S404.
[0114] S410, calculating a loss function value based on the sampling path and the target path, calculating a training error according to the loss function value, and updating the NBFNet model parameters according to the training error.
[0115] As shown in Figure 3, once the path to be processed is determined to be the target path, a scoring function is used to calculate the similarity between the sampled path and the target path. Common scoring functions include inner product scoring functions, dot product scoring functions, and neural network-based scoring functions. After obtaining the similarity, the cross-entropy loss function is used to calculate the training error, and the preset parameters in the NBFNet model are reversely adjusted using the gradient descent method.
[0116] S411, determining whether the training error has converged or whether the training has reached the maximum number of iterations.
[0117] When the training error converges or the training reaches the maximum number of iterations, it indicates that the training is completed and the routing planning model is obtained. Otherwise, jump back to step S401 and repeat the above steps.
[0118] In this embodiment, route planning is performed by continuously selecting the next hop node for each training sample until the next hop node is the sampled path determined based on the sampled path. The next hop nodes obtained during this repeated execution are then concatenated into the target path. The training error is calculated based on the target path and the sampled path, and the NBFNet model is trained. Because each training sample is derived from a high-dimensional network knowledge graph, this training process is equivalent to the NBFNet model extracting and learning the network topology features, network fault characteristics, and user demand characteristics of the first network from the high-dimensional network knowledge graph. The NBFNet model can fully utilize the high-dimensional feature information and topology structure information in this knowledge domain.
[0119] The above embodiment trains a preset link prediction model to obtain a routing planning model. Essentially, the routing planning model is still a link prediction model, but through this training, it extracts and learns the network topology characteristics, network fault characteristics, and user demand characteristics of complex network systems from a high-dimensional network knowledge graph. Using this routing planning model, the routing calculation problem can be transformed into a link prediction problem. The routing planning model can use information from multiple paths to calculate the similarity between nodes and, through a path selection mechanism, can filter out irrelevant or noisy paths, improving prediction accuracy and interpretability. The following describes a method for implementing routing planning using the routing planning model.
[0120] FIG5 is a flow chart of a route planning process according to a route planning model provided by an embodiment of the present application. As shown in FIG5 , the trained NBFNet model in FIG3 is used as the route planning model, and the route planning method includes the following steps:
[0121] S501: Acquire first information, where the first information is used to indicate a source point of a data packet to be transmitted in a first network, a destination point of the data packet to be transmitted in the first network, and attributes of the data packet to be transmitted.
[0122] In this step, when a service in the application layer of the SDN architecture needs to transmit a data packet, a first message is sent to the control layer. The first message is equivalent to a routing request message, which is input into the routing planning module of the control layer. The routing request message includes the source and destination of the data packet to be transmitted in the first network, as well as the attributes of the data packet to be transmitted. The attributes of the data packet to be transmitted include the amount of data required for the data packet to be transmitted and the maximum acceptable delay during the transmission process. The source point indicates the node in the first network corresponding to the starting point of the path for the data packet to be transmitted, and the destination point indicates the node in the first network corresponding to the end point of the path for the data packet to be transmitted.
[0123] S502: Set the source point as the node to be processed, and set the path to be processed as the source point. The path to be processed is used to record the nodes on the path from the source point to the destination point.
[0124] In this step, the starting node for transmitting the data packet to be transmitted can be determined according to the source point in the first information.
[0125] Setting the source point as the node to be processed and the path to be processed as the source point is equivalent to initializing the routing list. The routing list is used to store the data structure of the nodes that have been visited and the corresponding path representation vectors. When initializing the routing list, the nodes and data structures stored before this routing planning are cleared so that the nodes visited during the routing planning process and the representation vectors of the corresponding paths composed of the visited nodes can be recorded starting from the starting node. After the initialization is completed, the routing list is stored in the source point, and the latest node stored in the routing list is the node to be processed.
[0126] S503: Construct a triplet to be processed, where the triplet to be processed has the node to be processed as the head entity.
[0127] In this step, a triplet to be processed is constructed, with the node to be processed as the head entity and the neighboring nodes of the node to be processed as the tail entities. The triplet to be processed is the route request triplet. Because the node to be processed includes multiple neighboring nodes in the first network, the route request triplet typically includes multiple triplets. It is understood that after the routing list is initialized, if the node to be processed is the source node, the tail entity within the triplet in the route request triplet is the neighboring node of the source node.
[0128] S504: Input the triplet to be processed into a routing planning model to obtain at least one score, where the at least one score corresponds one-to-one to at least one node in the first network.
[0129] During the NBFNet model training process, after the triples converted from the training samples are input into the NBFNet model, the vector result output by the NBFNet model is the score of at least one candidate node.
[0130] Therefore, after the triplet to be processed is input into the NBFNet model, the output of the NBFNet model is also the score of at least one candidate node. The candidate node is the optional next hop node in the process from the node to be processed to the destination. The score of each candidate node is actually the score of the link between the node to be processed and the candidate node, which can reflect the stability and quality of the link.
[0131] S505 : Select a target next hop from at least one node according to at least one score, and use the target next hop as the next hop of the node to be processed.
[0132] A higher score indicates a more stable and reliable link between the node to be processed and the candidate node. Therefore, the node with the highest corresponding score is selected from at least one node as the target next hop, and the target next hop is used as the next hop node of the node to be processed.
[0133] S506: Determine whether the target next hop is feasible.
[0134] The next hop node has forwarding delay and maximum buffer resource attributes. The data volume required for the data packet to be transmitted during transmission and the maximum acceptable delay indicated by the attributes of the data packet to be transmitted in the first information are compared with the two attributes of the next hop node. If they match the attributes of the data packet to be transmitted in the first information, it indicates that the next hop node is a feasible node, and jumps to step S507. Otherwise, it is equivalent to not finding a feasible route, the route planning fails, and the process ends.
[0135] S507: Update the path to be processed. Compared with the path to be processed before the update, the updated path to be processed has a target next hop added after the node to be processed.
[0136] After determining that the next hop node is feasible, the next hop node is added to the routing list. Accordingly, the routing list is updated for the pending path. The tail node of the updated pending path is spliced with the newly added next hop node. Therefore, compared with the pending path before the update, the updated pending path adds the target next hop after the pending node.
[0137] S508: Determine whether the target next hop and the destination are the same node.
[0138] If the target next hop and the destination are the same node, it indicates that the path to be processed has determined the path from the source to the destination, and the path to be processed is the target route, and the process jumps to step S509; otherwise, the process jumps to step S510.
[0139] S509: Output the path to be processed.
[0140] After the routing planning module outputs the path to be processed, the control layer under the SDN architecture can control the data packets to be transmitted from the source point to the destination point according to the instructions of the path to be processed.
[0141] S510: Update the node to be processed as the target next hop.
[0142] In this step, the routing list updates the target next hop to the node to be processed. Since the tail node of the path to be processed has not yet reached the source point, it is necessary to jump back to step S503.
[0143] In some implementations, the at least one score obtained in step 504 is an initial score of the candidate node as the next hop node of the node to be processed. The present application also proposes a method for revising the initial score based on real-time network topology information, where the revised candidate node score satisfies the following relationship:
[0144] Among them, s(n j ,l j ) is the initial score of each candidate node as the next hop of the node to be processed, α is the weight parameter, is the resource requirement of the data packet to be transmitted, is the amount of resources corresponding to each candidate node at the current moment, is the resource amount of the link from the node to be processed to each candidate node at the current moment, is the processing delay of the node to be processed, Link l j The transmission delay, is the maximum acceptable delay for a data packet to be transmitted.
[0145] By combining the dynamic information of the real-time network topology in the first network, the routing planning results can be dynamically corrected to adapt to the dynamic changes and uncertainties in the first network, realize adaptive routing planning, and avoid the problems of increased packet loss rate and increased latency.
[0146] The specific process of performing route planning based on route request information and a route planning model will be described below in conjunction with FIG6 . FIG6 is a flow chart of implementing route planning based on the NBFNet model provided in one embodiment of the present application.
[0147] As shown in Figure 6, the routing calculation module receives routing request information, which indicates that the data packet to be transmitted is a real-time request packet N, the node indicated by the source point information is "Node2", "Node2" is the starting node, and the node indicated by the destination point information is "Node7", "Node7" is the destination node. According to the routing request information, it can be known that the request packet N needs to be transmitted from "Node2" to "Node7", the routing list is initialized, "Node2" is added to the routing list, and the starting node of the path to be processed is set to "Node2".
[0148] As shown in Figure 6, a routing request triple (N1, L1, N2) is constructed with the request packet N as the head entity. In triple 1, the head entity N1 corresponds to the request packet N (Packet N), the relationship L1 corresponds to the node pass (NodePassedBy), and the tail entity N2 corresponds to the adjacent node "Node3" of "Node2". Therefore, triple 1 can be expressed as (Packet N, NodePassedBy, Node3). Similarly, in triple N, the head entity N1 corresponds to the request packet N (Packet N), the relationship L1 corresponds to the node pass (NodePassedBy), and the tail entity N2 corresponds to the adjacent node "Node4" of "Node2". Therefore, triple N can be expressed as (Packet N, NodePassedBy, Node4).
[0149] The above routing request triple is input into the NBFNet model. It first enters the INDICATOR function component of the NBFNet model, where it is converted into a binary vector and initialized. The head entity N1 in the triple (N1, L1, N2) is converted into a high-dimensional vector P(N1), and the relation L1 is converted into a high-dimensional vector P(L1). The high-dimensional vector P(N1) corresponding to the head entity and the high-dimensional vector P(L1) corresponding to the relation L1 are concatenated into a single vector and input into the NBFNet layer.
[0150] In the NBFNet layer, the M(P(N1), P(L1)) vector is output by calculating the MESSAGE function. Since the NBFNet model usually uses the RotatE function as the MESSAGE function, the M(P(N1), P(L1)) vector is the feature vector calculated using the RotatE function.
[0151] In the NBFNet layer, the M(P(N1), P(L1)) vector output by the MESSAGE function is input to the AGGREGATE function. Through the aggregation effect of the Sum function, the vector sum of the M(P(N1), P(L1)) vector can be obtained from the adjacent nodes of the node "Node2".
[0152] In the form of triples (N1, L1, N2), each tail entity N2 is equivalent to a candidate node for the next hop node of the head entity N1. Through MLP, the vector and Process and obtain vector result S1 This is the score of candidate node N2. As shown in Figure 6, for node Node2, the candidate next-hop nodes are Node3 and Node4. Node3 has a score of 14.6931, and Node4 has a score of 21.5468. A higher score indicates a more stable and reliable link between the node to be processed and the candidate node. Therefore, Node4 is selected as the next-hop node for Node2.
[0153] In some implementations, the candidate node scores output by the MLP are initial scores, which can be modified based on real-time network topology information. The modified scores of each candidate node satisfy the following relationship:
[0154] As an example, n3 is the candidate node "Node3", l3 is the link between the node to be processed and the candidate node "Node3", s(n3,l3) is the initial score of the candidate node "Node3", α is the weight parameter, is the resource requirement of request package N, is the resource amount corresponding to the candidate node "Node3" at the current moment, is the resource amount of link l3 at the current moment, is the processing delay of the node to be processed, is the transmission delay of link l3, is the maximum acceptable delay of request packet N.
[0155] According to the above formula, the corresponding initial scores of candidate nodes "Node3" and "Node4" are revised. As shown in Figure 6, the score of candidate node "Node3" is revised to 17.7891, and the score of candidate node "Node4" is revised to 23.4439. Node "Node4" with the higher score is selected as the next hop node of node "Node2".
[0156] Compare the forwarding delay of node "Node4" with the maximum acceptable delay of real-time request packet N, and compare the maximum buffer resource capacity of node "Node4" with the required resource capacity of real-time request packet N. When the above attributes match, it can be determined that node "Node4" is a feasible next-hop node.
[0157] The node "Node4" is added to the routing list. Accordingly, the routing list updates the pending path. The updated pending path has the node "Node4" added after the node "Node2".
[0158] Since the node "Node4" and the node "Node7" indicated by the destination information are not the same node, the node "Node4" is taken as the node to be processed, and a new route request triplet with "Node4" as the head entity is constructed. The above link prediction process is repeated until the next hop node is the node "Node7" indicated by the destination information. When the target next hop is the node "Node7", it can be determined that the node to be processed is the target route.
[0159] Based on target routing and load balancing technology, reasonable distribution of network traffic can be achieved during data packet transmission, and the network service quality can be evaluated through the Quality of Service (QoS) indicator. The routing planning method of this embodiment has a lower packet loss rate and transmission delay.
[0160] In this embodiment, high-dimensional features are mapped to low-dimensional features through the routing planning model, which can reduce the computational complexity and storage overhead of routing planning. In addition, the routing planning problem in the data domain is transformed into a link prediction problem in the knowledge domain by relying on the routing planning model, thereby increasing the transparency of the AI routing model, making the entire routing planning process more credible, and improving the interpretability of routing planning.
[0161] It should be noted that the above embodiments are mainly used to solve the routing planning problem in the communication network. The idea of the present application solution is to use the AI model to extract and learn high-dimensional network features. This idea is also applicable to other application fields of the network, such as:
[0162] Network embedding: Network embedding represents nodes or links in a network as low-dimensional vectors, facilitating subsequent analysis or mining tasks. Because network embedding involves converting high-dimensional features into low-dimensional features, the NBFNet model described in the preceding examples maps nodes or links in a high-dimensional feature knowledge domain into a low-dimensional latent variable space. This is achieved by utilizing a message passing mechanism to obtain the embedding vectors for these nodes or links.
[0163] Network alignment: Network alignment refers to the problem of finding correspondences between nodes in different but related networks. For example, local area network A and local area network B, which contain common nodes, are different but related networks. The NBFNet model can use shared or similar information between different networks in the high-dimensional feature knowledge domain to build cross-domain links, thereby achieving network alignment.
[0164] Network generation: Network generation refers to the problem of generating new network structures or attributes based on a partial or complete existing network. The NBFNet model can use the information contained or missing in existing networks in the high-dimensional feature knowledge domain to construct new domain links, obtain information such as the existence and attribute values of new domain links, and thus realize network generation.
[0165] FIG7 is a schematic diagram of the structure of a routing planning device provided by an embodiment of the present application. As shown in FIG7 , the device 700 of this embodiment may include: a communication module 701 and a processing module 702. It should be understood that the device 700 is embodied in the form of a functional module. The term "module" may refer to a software module, or may refer to an application-specific integrated circuit, an electronic circuit, a processor (such as a shared processor, a dedicated processor, or a group processor, etc.) and memory for executing one or more software or firmware programs, a combined logic circuit, and / or other suitable components that support the described functions.
[0166] The apparatus 700 has the function of implementing the various processes and / or steps implemented by the SDN network control layer in any of the aforementioned method embodiments. The aforementioned functions may be implemented by software or by hardware executing the corresponding software. The hardware or software includes one or more modules corresponding to the aforementioned functions.
[0167] Figure 8 is a schematic diagram of the structure of a route planning device provided by another embodiment of the present application. The device 800 shown in Figure 8 can be used to execute any of the aforementioned methods performed by the first terminal device, the third terminal device, or the fourth terminal device.
[0168] As shown in Figure 8 , the apparatus 800 of this embodiment includes a memory 801, a processor 802, a communication interface 803, and a bus 804. The memory 801, the processor 802, and the communication interface 803 are connected to each other via the bus 804.
[0169] The memory 801 may be a read-only memory (ROM), a static storage device, a dynamic storage device, or a random access memory (RAM). The memory 801 may store a program. When the program stored in the memory 801 is executed by the processor 802, the processor 802 is configured to execute any of the aforementioned methods.
[0170] The processor 802 may be a general-purpose central processing unit (CPU), a microprocessor, an application-specific integrated circuit, or one or more integrated circuits for executing related programs.
[0171] The processor 802 may also be an integrated circuit chip with signal processing capabilities. In the implementation process, the various related steps in the embodiment of the present application may be completed by hardware integrated logic circuits in the processor 802 or software instructions.
[0172] The processor 802 may also be a general-purpose processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA), or other programmable logic device, a discrete gate or transistor logic device, or a discrete hardware component. The processor 802 may implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of the present application. The general-purpose processor may be a microprocessor or any conventional processor.
[0173] The steps of the method disclosed in conjunction with the embodiments of the present application can be directly implemented as being executed by a hardware decoding processor, or can be implemented by a combination of hardware and software modules in the decoding processor. The software module can be located in a storage medium mature in the art, such as random access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, registers, etc. The storage medium is located in memory 801, and processor 802 reads the information in memory 801 and, in combination with its hardware, completes the functions required to be performed by the units included in the device of the present application.
[0174] The communication interface 803 may use, but is not limited to, a transceiver or other transceiver device to implement communication between the apparatus 800 and other devices or apparatuses.
[0175] The bus 804 may include a path for transmitting information between various components of the device 800 (eg, the memory 801 , the processor 802 , and the communication interface 803 ).
[0176] An embodiment of the present application further provides a computer-readable storage medium, in which computer instructions are stored. When a processor executes the computer instructions, each step of the method in the above embodiment is implemented.
[0177] An embodiment of the present application further provides a computer program product, including computer instructions, which, when executed by a processor, implement the various steps of the method in the above embodiment.
[0178] Those skilled in the art will readily appreciate other embodiments of the present application after considering the specification and practicing the invention disclosed herein. This application is intended to cover any variations, uses, or adaptations of the present application that follow the general principles of the present application and include common knowledge or customary techniques in the art not disclosed herein. The description and examples are to be considered as exemplary only, and the true scope and spirit of the present application are indicated by the following claims.
[0179] It should be understood that the present application is not limited to the exact structure described above and shown in the drawings, and that various modifications and changes may be made without departing from the scope thereof. The scope of the present application is limited only by the appended claims.
Claims
1. A routing planning method, characterized in that: The method comprises: Acquire first information, where the first information is used to indicate a source point of a data packet to be transmitted in the first network, a destination point of the data packet to be transmitted in the first network, and attributes of the data packet to be transmitted, where the attributes of the data packet to be transmitted include a resource requirement and a maximum acceptable delay when the data packet to be transmitted is transmitted; A target route is determined based on the first information and a routing planning model, wherein the target route is a transmission path of the data packet to be transmitted from the source point to the destination point, and the routing planning model is a deep learning-based link prediction model trained according to a network knowledge graph, wherein the network knowledge graph includes topological features and fault features of the first network.
2. The method according to claim 1, characterized in that The determining the target route based on the first information and the route planning model includes: Step 1: setting the source point as the node to be processed, setting the path to be processed as the source point, and the path to be processed is used to record the nodes on the path from the source point to the destination point; Step 2: construct a triplet to be processed, wherein the triplet to be processed has the node to be processed as a head entity; Step 3: inputting the triplet to be processed into the routing planning model to obtain at least one score, wherein the at least one score corresponds to at least one node in the first network, and each score in the at least one score is a score of the corresponding node as the next hop of the node to be processed; Step 4: selecting a target next hop from the at least one node according to the at least one score, the target next hop being used as the next hop of the node to be processed; Step 5: updating the path to be processed, wherein the updated path to be processed is compared with the path to be processed before the update, and the target next hop is added after the node to be processed; Step 6: Determine whether the target next hop and the destination are the same node; Step 7: If the target next hop and the sink are not the same node, update the node to be processed to the target next hop, and restart from step 2; Step 8: If the target next hop and the destination are the same node, the path to be processed is determined as the target route.
3. The method according to claim 2, characterized in that The step of inputting the triplet to be processed into the routing planning model to obtain at least one score comprises: Inputting the to-be-processed triplet into the routing planning model, obtaining an initial score of each node in the at least one node as a next hop of the to-be-processed node; The initial score of each node as the next hop of the node to be processed is corrected according to the real-time network topology information to obtain the score of each node as the next hop of the node to be processed. The score of each node as the next hop of the node to be processed satisfies the following relationship: Among them, s(n j ,l j ) is the initial score of each node as the next hop of the node to be processed, α is the weight parameter, is the resource requirement of the data packet to be transmitted, is the amount of resources corresponding to each node at the current moment, is the resource amount of the link from the node to be processed to each node at the current moment, is the processing delay of the node to be processed, For the link 1 j The transmission delay of is the maximum acceptable delay of the data packet to be transmitted.
4. The method according to any one of claims 1 to 3, characterized in that The network knowledge graph also includes user demand features, and the user demand features include historical demands of users when transmitting data in the first network.
5. A route planning device, characterized in that: The device comprises a functional module for implementing the routing planning method according to any one of claims 1 to 4.
6. A route planning device, characterized in that: include: Processor and memory; The memory stores computer-executable instructions; The processor executes the computer-executable instructions stored in the memory, so that the device performs the routing planning method according to any one of claims 1 to 4.
7. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer-executable instructions, and the computer-executable instructions are used to implement the routing planning method according to any one of claims 1 to 4 when executed by a processor.
8. A model training method, characterized in that: The method comprises: Acquire a training sample set, wherein the training sample set includes triples for constructing a network knowledge graph, wherein the network knowledge graph includes topological features and fault features in the first network; A link prediction model based on deep learning is trained based on the training sample set to obtain a routing planning model, wherein the routing planning model is used to determine the route of the data packet to be transmitted from the source point to the destination point based on the source point information of the data packet to be transmitted in the first network, the destination point information of the data packet to be transmitted in the first network, and the attribute information of the data packet to be transmitted, wherein the source point information is used to indicate the source point, the destination point information is used to indicate the destination point, and the attribute information of the data packet to be transmitted is used to indicate the resource requirement and the maximum acceptable delay when the data packet to be transmitted is transmitted.
9. The method according to claim 8, characterized in that The step of training the deep learning-based link prediction model based on the training sample set includes: Step 1: obtaining a plurality of training samples, wherein each training sample in the plurality of training samples comes from the training sample set; Step 2: Generate a sampling path according to each training sample, wherein the sampling path includes nodes and links passed from a sampling starting point to a sampling end point, wherein the sampling starting point is the starting node of the sampling path, and the sampling end point is the ending node of the sampling path; Step 3: setting the sampling starting point as the node to be processed, and setting the path to be processed as the sampling starting point, wherein the path to be processed is used to record the nodes on the path from the sampling starting point to the sampling end point; Step 4: construct a triplet to be processed, wherein the triplet to be processed has the node to be processed as the head entity; Step 5: Input the triple to be processed into a preset link prediction model to obtain at least one score, wherein the at least one score corresponds to at least one node in the first network, and each score in the at least one score is a score of the corresponding node as the next hop of the node to be processed; Step 6: selecting a target next hop from the at least one node according to the at least one score, and the target next hop is used as the next hop of the node to be processed; Step 7: updating the path to be processed, and the updated path to be processed is added with the target next hop after the node to be processed compared with the path to be processed before the update; Step 8: Determine whether the target next hop and the sampling end point are the same node; Step nine: if the target next hop and the sampling end point are not the same node, update the node to be processed to the target next hop, and restart from step four; Step 10: If the target next hop and the sampling end point are the same node, determine the path to be processed as the target path; Step 11: Calculate a loss function value based on the sampling path and the target path, and calculate a training error according to the loss function value; Step 12: updating the link prediction model parameters according to the training error; Step 13: If the training error does not converge or the training does not reach the maximum number of iterations, repeat from step 1; Step 14: If the training error converges or the training reaches a maximum number of iterations, the link prediction model is determined to be a routing planning model.
10. The method according to claim 8 or 9, characterized in that: Before obtaining the training sample set, the method further includes: Constructing a network topology triplet, where the network topology triplet is used to describe the topology characteristics in the first network, where the topology characteristics in the first network include the structure and attributes between nodes and links in the first network, where the attributes of the nodes include forwarding delay and maximum buffer resources, and where the attributes of the links include transmission delay and maximum bandwidth resources; Constructing a fault distribution triplet, where the fault distribution triplet is used to describe a fault feature in the first network, where the fault feature in the first network includes attributes of a link fault in the first network, where the attributes of the link fault include a fault probability and a fault repair time; The network knowledge graph is constructed, wherein the network knowledge graph includes the network topology triples and the fault distribution triples.
11. The method according to claim 10, characterized in that The method further comprises: Constructing a user demand triplet, wherein the user demand triplet is used to describe user demand characteristics, wherein the user demand characteristics include historical demands of the user when transmitting data in the first network, and the historical demands include the type of the data packet to be transmitted, the resource demand amount of the data packet to be transmitted, and the maximum acceptable delay of the data packet to be transmitted; The network knowledge graph also includes the user demand triples.
12. The method according to any one of claims 8 to 11, characterized in that The preset deep learning-based link prediction model is a neural Bellman-Ford network model, which includes an initialization function component, an information transfer function component and an aggregation function component.
13. The method according to claim 12, characterized in that The information transfer function component is a RotatE function.
Citation Information
Patent Citations
Software defined network routing method and system based on knowledge graph
CN112333102A
Information system fault prediction method based on knowledge graph and related equipment
CN114580263A
Weight setting using inverse optimization
US20180324082A1
Cited By
Electric power communication system circuit route planning method and system and computer equipment
CN120075127A
Remote replication link detection method and system
CN120110959A
Routing optimization method and device, computer equipment, readable storage medium and program product
CN120434167A
Intelligent calculation method and system for network reliability of logic decision diagram
CN121585567A
Information transmission method and system based on secure network
CN121619283A