Dynamic optimization network routing method, system, electronic device and storage medium
By constructing a network knowledge graph and using a temporal graph neural network for prediction, the problem of low routing planning efficiency in cross-domain networks is solved, and rapid response and improved stability are achieved in complex networks.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- CHINA TELECOM CORP LTD
- Filing Date
- 2025-03-12
- Publication Date
- 2026-08-04
AI Technical Summary
Existing network routing methods cannot dynamically analyze network status in real time in cross-domain networks, which affects network performance and stability. Furthermore, dynamic routing protocols have difficulty responding quickly in complex cross-domain networks, impacting routing efficiency.
By collecting network monitoring data with timestamps, a network knowledge graph is constructed and a time-series graph neural network is used for prediction, thus planning network routing paths in advance, including learning and predicting the time dependencies of nodes and relationships.
It improves the efficiency of route planning and network stability, enabling rapid response in complex cross-domain networks, optimizing routing paths, and enhancing user experience.
Smart Images

Figure CN119996286B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of network routing technology, and in particular to a method, system, electronic device and storage medium for dynamically optimizing network routing. Background Technology
[0002] With the rapid development of internet technology, the scale of networks is expanding daily, and the demand for cross-domain network connections and data transmission is increasing. Cross-domain networks refer to communication structures involving different autonomous systems or network organizations, commonly seen in connections between multiple operators or different network service providers. The need for cross-domain routing is becoming increasingly urgent in fields such as cross-border e-commerce, cloud computing, and big data.
[0003] Current network routing methods are typically based on statically configured routing protocols and dynamic routing protocols. Staticly configured protocols cannot dynamically analyze network conditions in real time and are ill-suited to complex cross-domain network structures, impacting network performance and stability. Dynamic routing protocols, in contrast, acquire network state information in real time and update network topology and related information using graph neural networks. They make real-time decisions based on the current network environment during route scheduling. However, scheduling speed depends on the algorithm's computational performance, making it difficult to respond quickly in complex cross-domain networks, thus affecting routing efficiency. Summary of the Invention
[0004] The main objective of this application is to propose a dynamic optimization network routing method, system, electronic device, and storage medium, aiming to improve routing planning efficiency.
[0005] To achieve the above objectives, one aspect of this application proposes a method for dynamically optimizing network routing, comprising the following steps:
[0006] Collect network monitoring data with timestamps;
[0007] The network monitoring data is parsed to create nodes and relationships in a network knowledge graph, wherein the attribute data of the nodes in the network knowledge graph includes timestamps;
[0008] A temporal graph neural network is used to predict the network knowledge graph to obtain the network state prediction graph for the next time step.
[0009] Network routing path planning is performed based on the network state prediction graph for the next time step.
[0010] In some embodiments, parsing the network monitoring data and mapping it to nodes and relationships in a network knowledge graph includes the following steps:
[0011] The target data is parsed from the network monitoring data according to the graph design rules, which are used to define the node types, node attributes, relationship types, and relationship attributes of the network knowledge graph.
[0012] Create a network knowledge graph and the relationships between nodes based on the target data;
[0013] The node types include network nodes, network path nodes, traffic nodes, and time nodes, and the relationship types include connection relationships, path relationships, traffic relationships, and time relationships.
[0014] In some embodiments, the step of using a temporal graph neural network to predict the network knowledge graph to obtain the network state prediction graph for the next time step includes the following steps:
[0015] The network knowledge graph is represented by node features, structural features, and temporal sequences to obtain network input data, which includes a node feature matrix, an adjacency matrix, and time sequence features.
[0016] Feature extraction is performed on the network input data to obtain node spatial features and node temporal features;
[0017] Based on the spatial and temporal characteristics of the nodes, feature prediction is performed to obtain the network state prediction map for the next time step.
[0018] In some embodiments, the step of extracting features from the network input data to obtain node spatial features and node temporal features includes the following steps:
[0019] The network input data is fed into a graph convolutional layer to aggregate neighbor node features, thereby obtaining node spatial features;
[0020] The network input data is fed into a temporal convolutional layer to aggregate node historical features, thereby obtaining node temporal features.
[0021] In some embodiments, the step of performing feature prediction based on the node spatial features and the node temporal features to obtain the network state prediction map for the next time step includes the following steps:
[0022] The spatial features and temporal features of the nodes are concatenated to obtain the fused features;
[0023] The fused features are input into a feedforward neural network for feature mapping to obtain network prediction information for the next time step. The network prediction information includes network structure information and node feature information.
[0024] The network state prediction graph is determined based on the network prediction information at the next time step.
[0025] In some embodiments, the dynamic network routing optimization method further includes the following steps:
[0026] Collect network monitoring data for the next moment, and determine the actual network information for the next moment based on the network monitoring data;
[0027] The prediction error of the time-series graph neural network is determined based on the actual network information and the network prediction information.
[0028] The parameters of the time-series graph neural network are updated based on the prediction error.
[0029] In some embodiments, the network routing path planning based on the network state prediction map at the next time step includes the following steps:
[0030] Obtain path planning requirement information, wherein the path planning requirement information includes source network nodes, target network nodes, and path optimization function, and the path optimization function includes multiple optimization objectives and their weights;
[0031] With the goal of optimizing the path optimization function, a path search is performed on the network state prediction graph at the next time step based on the source network node and the target network node to obtain the optimal routing path.
[0032] To achieve the above objectives, another aspect of this application proposes a dynamically optimized network routing system, comprising:
[0033] The first module is used to collect network monitoring data with timestamps.
[0034] The second module is used to parse the network monitoring data and create nodes and relationships in the network knowledge graph, wherein the attribute data of the nodes in the network knowledge graph includes timestamps;
[0035] The third module is used to predict the network knowledge graph using a temporal graph neural network to obtain the network state prediction graph for the next time step.
[0036] The fourth module is used to plan network routing paths based on the network state prediction map at the next time step.
[0037] To achieve the above objectives, another aspect of the present application provides an electronic device, which includes a memory, a processor, a program stored in the memory and executable on the processor, and a data bus for enabling communication between the processor and the memory. When the program is executed by the processor, it implements the method described in the above embodiments.
[0038] To achieve the above objectives, another aspect of the embodiments of this application proposes a storage medium, which is a computer-readable storage medium for computer-readable storage. The storage medium stores one or more programs that can be executed by one or more processors to implement the methods described in the above embodiments.
[0039] The dynamic network routing optimization method, system, electronic device, and storage medium proposed in this application collect network monitoring data with timestamps, parse the network monitoring data, and create nodes and relationships in a network knowledge graph. The attribute data of the nodes in the network knowledge graph includes timestamps, which can provide network state information at different times. Then, a temporal graph neural network is used to learn and predict the spatial and temporal dependencies of the network knowledge graph to obtain the network state prediction graph for the next time step. Based on the network state prediction graph for the next time step, network routing path planning is performed in advance, thereby improving routing planning efficiency. Attached Figure Description
[0040] Figure 1 This is a flowchart of the dynamic network routing optimization method provided in the embodiments of this application;
[0041] Figure 2 yes Figure 1 The flowchart of step S102 in the document;
[0042] Figure 3 yes Figure 1 The flowchart of step S103 in the process;
[0043] Figure 4 yes Figure 3 The flowchart of step S302 in the text;
[0044] Figure 5 yes Figure 3 The flowchart of step S303 in the process;
[0045] Figure 6 This is a flowchart of a dynamic network routing optimization method provided in another embodiment of this application;
[0046] Figure 7 yes Figure 1 The flowchart of step S104 in the process;
[0047] Figure 8 This is a schematic diagram of the dynamic optimization network routing system provided in the embodiments of this application;
[0048] Figure 9 This is a schematic diagram of the hardware structure of the electronic device provided in the embodiments of this application;
[0049] Figure 10This is a schematic diagram of a network node and its attribute information in the network knowledge graph provided in this application embodiment;
[0050] Figure 11 This is a schematic diagram of a relation node and its attribute information in a network knowledge graph provided in this application embodiment;
[0051] Figure 12 This is a schematic diagram of the structure of the temporal graph neural network provided in the embodiments of this application;
[0052] Figure 13 This is a schematic diagram of the optimization process of the time-series graph neural network model provided in the embodiments of this application; Detailed Implementation
[0053] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.
[0054] It should be noted that although the system is divided into functional modules and the flowchart shows a logical order, in some cases, the steps shown or described may be executed in a different order than the module division in the system or the order in the flowchart. The terms "first," "second," etc., in the specification, claims, and the aforementioned drawings are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence.
[0055] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application belongs. The terminology used herein is for the purpose of describing embodiments of this application only and is not intended to limit this application.
[0056] First, let's analyze some of the terms used in this application:
[0057] Natural Language Processing (NLP): NLP uses computers to process, understand, and utilize human language (such as Chinese and English). NLP is a branch of artificial intelligence and an interdisciplinary field of computer science and linguistics, often referred to as computational linguistics. NLP includes syntactic analysis, semantic analysis, and discourse understanding. It is commonly used in machine translation, handwritten and printed character recognition, speech recognition and text-to-speech conversion, intent recognition, information extraction and filtering, text classification and clustering, and opinion mining. It involves data mining, machine learning, knowledge acquisition, knowledge engineering, artificial intelligence research, and linguistic research related to language computation.
[0058] Information extraction is a text processing technique that extracts factual information such as entities, relationships, and events from natural language text and outputs it as structured data. Information extraction is a technique for extracting specific information from text data. Text data is composed of specific units, such as sentences, paragraphs, and chapters. Text information is composed of smaller, specific units, such as characters, words, phrases, sentences, paragraphs, or combinations of these units. Extracting noun phrases, names of people, and place names from text data is an example of text information extraction. Of course, text information extraction techniques can extract information of various types.
[0059] Cross-domain routing refers to the route data takes from one service provider's network domain to another service provider's network domain. This process is complex, mainly due to the involvement of multiple autonomous systems, multiple protocols, and multiple links.
[0060] Traditional network routing methods, such as statically configured routing protocols (e.g., RIP, OSPF, BGP) and dynamic routing protocols (e.g., EIGRP, OSPF), can provide basic network connectivity guarantees in some scenarios, but they often face numerous challenges. In cross-domain networks, routing calculations and data transmission need to consider factors beyond path latency and bandwidth; they also require comprehensive consideration of dynamic information from multiple dimensions, including network topology, inter-node load, latency jitter, and network traffic.
[0061] Especially as networks expand and collaboration between multiple autonomous systems or network service providers becomes increasingly complex, traditional routing calculation methods encounter problems such as high computational complexity, inability to adapt to real-time network state changes, and inability to achieve end-to-end optimization, severely impacting network performance and stability. Related technologies have proposed dynamic routing optimization methods based on network state monitoring. When facing cross-domain networks, these methods dynamically acquire and analyze network states (such as bandwidth, latency, and packet loss rate) in real time, thereby adaptively adjusting routing plans. In the dynamic optimization process of network routing, graph neural networks (GNNs) are typically used to model the relationships between nodes and edges in the network, and their powerful representation learning capabilities make them an ideal choice for handling dynamic network problems. However, routing scheduling requires real-time decision-making based on the current network environment, and the scheduling speed depends on the algorithm's computational performance, making real-time response impossible and affecting routing efficiency.
[0062] Based on this, embodiments of this application provide a method, system, electronic device, and storage medium for dynamically optimizing network routing, aiming to improve routing planning efficiency.
[0063] The dynamic network routing optimization method, system, electronic device, and storage medium provided in this application are specifically described through the following embodiments. First, the dynamic network routing optimization method in this application embodiment is described.
[0064] The dynamic network routing optimization method provided in this application relates to the field of network routing technology. This method can be applied to a terminal, a server, or software running on either a terminal or a server. In some embodiments, the terminal can be a smartphone, tablet, laptop, desktop computer, etc.; the server can be configured as an independent physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server providing basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, CDN, and big data and artificial intelligence platforms; the software can be an application implementing the dynamic network routing optimization method, but is not limited to the above forms.
[0065] This application can be used in a wide variety of general-purpose or special-purpose computer system environments or configurations. Examples include: personal computers, server computers, handheld or portable devices, tablet devices, multiprocessor systems, microprocessor-based systems, set-top boxes, programmable consumer electronics, network PCs, minicomputers, mainframe computers, and distributed computing environments including any of the above systems or devices. This application can be described in the general context of computer-executable instructions executed by a computer, such as program modules. Generally, program modules include routines, programs, objects, components, data structures, etc., that perform specific tasks or implement specific abstract data types. This application can also be practiced in distributed computing environments where tasks are performed by remote processing devices connected via a communication network. In distributed computing environments, program modules can reside in local and remote computer storage media, including storage devices.
[0066] Figure 1 This is an optional flowchart of the dynamic network routing optimization method provided in the embodiments of this application. Figure 1 The method may include, but is not limited to, steps S101 to S104.
[0067] Step S101: Collect network monitoring data carrying timestamps;
[0068] Step S102: parse the network monitoring data and create nodes and relationships in the network knowledge graph, wherein the attribute data of the nodes in the network knowledge graph includes timestamps;
[0069] Step S103: Use a temporal graph neural network to predict the network knowledge graph and obtain the network state prediction graph for the next time step.
[0070] Step S104: Perform network routing path planning based on the network state prediction map for the next time step.
[0071] Steps S101 to S104 as shown in the embodiments of this application involve collecting network monitoring data with timestamps, parsing the network monitoring data, and creating nodes and relationships in a network knowledge graph. The attribute data of the nodes in the network knowledge graph includes timestamps, which can provide network state information at different times. Then, a temporal graph neural network is used to learn and predict the spatial and temporal dependencies of the network knowledge graph to obtain the network state prediction graph for the next moment. Based on the network state prediction graph for the next moment, network routing path planning is performed in advance, thereby improving routing planning efficiency.
[0072] In step S101 of some embodiments, network monitoring data refers to timestamped monitoring data related to performance, traffic, and connection status collected in real time from various network devices. For example, network performance monitoring tools such as MTR and NetFlow can be deployed on network server devices from different operators, such as switches and routers, and scripts written in Python can be used to collect monitoring data from these network devices. MTR is a commonly used tool for network diagnostics, combining the functions of Traceroute and Ping. It can trace the network path from source to destination host, determine the path of data packets from the source address to the destination, and provide detailed information such as latency and packet loss rate between each node (router). NetFlow provides detailed network traffic statistics by analyzing traffic data from routers and switches, including but not limited to information such as the source IP, destination IP, and port number of each network flow, as well as the transmission latency information of each flow. This embodiment, by combining Python with MTR and NetFlow telemetry for cross-domain networks, can collect network status information in complex network environments in real time, and the collected network status information is relatively comprehensive.
[0073] Furthermore, after collecting network monitoring data, it can be stored in a MySQL database. Before constructing a network knowledge graph using the network monitoring data, preprocessing operations such as data cleaning are performed. Specifically, invalid, duplicate, or incorrectly formatted data is removed, and data from different sources is converted to a unified format, allowing data from different monitoring points (i.e., network devices) to be combined. After preprocessing the network monitoring data, a standardized API interface can be set for calling the network monitoring data. This ensures that when constructing the network knowledge graph or making predictions using a time-series neural network model, the timestamps of the data from different monitoring points are consistent, avoiding analytical errors caused by time differences.
[0074] This embodiment utilizes network telemetry tools to collect real-time performance data (including path latency, packet loss rate, jitter, traffic distribution, etc.) of multi-source heterogeneous networks, and uses scripts to automate data cleaning, format unification, and storage, supporting the acquisition of comprehensive and high-precision network status information in a short time.
[0075] In step S102 of some embodiments, a network knowledge graph is a graph-structured data used to represent network state information. It includes nodes and relationships between nodes, the meaning of which can be defined according to actual needs. After parsing network monitoring data to obtain the relevant content of nodes and relationships, a network knowledge graph is constructed based on the parsed nodes and relationships. In this embodiment, the attribute data of each node in the network knowledge graph includes a timestamp to record the node's state changes. Subsequently, time relationships can be used to associate data with time nodes to track the temporal changes of the data.
[0076] This embodiment uses a graph database to store, query, and manage network knowledge graphs. Graph databases use graph models to store data; for example, Neo4j can be used. Neo4j is a graph database specifically designed for storing, querying, and managing graph data, and it excels at handling relationships between nodes. Compared to traditional relational databases, graph databases can more naturally represent complex relationships between entities and support efficient graph traversal queries.
[0077] Please see Figure 2 In some embodiments, step S102 may include, but is not limited to, steps S201 to S202:
[0078] Step S201: Parse the target data from the network monitoring data according to the graph design rules. The graph design rules are used to define the node types, node attributes, relationship types, and relationship attributes of the network knowledge graph.
[0079] Step S202: Create the nodes and relationships between nodes of the network knowledge graph based on the target data.
[0080] In step S201 of some embodiments, the graph design rules are used to define the node types, node attributes, relationship types, and relationship attributes of the network knowledge graph. For example, the node types defined in the graph design rules of this application embodiment may include, but are not limited to, network nodes, network path nodes, traffic nodes, and time nodes; the relationship types may include, but are not limited to, connection relationships, path relationships, traffic relationships, and time relationships. This embodiment can use network devices, network paths, traffic information, etc., as the main nodes, and the node attribute design is as follows:
[0081] Network Node: Node types include routers, switches, and servers. Their attributes include node name, IP address, device type, geographical location (latitude and longitude), and carrier.
[0082] Network Path Node: The node type is a path that spans different network devices. Its attributes include the path start node, end node, path latency, packet loss rate, jitter, bandwidth, etc.
[0083] Traffic Node: The node type is network traffic information, and its attributes include source IP, destination IP, traffic size, protocol type, source port, destination port, etc.
[0084] Time Node: The node type is a time point, and its attributes include a timestamp, which is used to record real-time data.
[0085] For example, please refer to Figure 10 , Figure 10 This section describes a network node and its attributes within a network knowledge graph. The left-hand pane displays the network knowledge graph, where the selected node represents a WAN device with the IP address 219.158.xxx.xxx, belonging to a certain operator's backbone network. The right-hand pane displays the selected node's attribute information, including its ID, city, port, latitude and longitude.
[0086] The relationships between nodes in a network knowledge graph are represented as edges. Corresponding to the node type, the main types of edges are as follows:
[0087] Connection relationship (CONNECTED_TO): Represents the physical connection between two devices (such as routers, switches, etc.). Its attributes include connection bandwidth, connection status, etc.
[0088] Path relationships (TRAVELS_THROUGH): Represents the network path through which data packets travel, typically a path connecting multiple network nodes. Its attributes include path latency, packet loss rate, and path utilization.
[0089] Traffic flow (TRAFFIC_FLOWS_TO): Indicates the flow of network traffic from a source node to a destination node. Its attributes include traffic volume, protocol type, port, etc.
[0090] Time Relationship (RECORDED_AT): Represents a record of data or status at a specific point in time, and its attributes include a timestamp.
[0091] For example, please refer to Figure 11 , Figure 11 This section describes the relationships and attributes of a node in the network knowledge graph. The left-hand display shows the network knowledge graph, where the selected relationship represents the intermediate routing path from a WAN device with IP address 219.158.xxx.xxx to a WAN device with IP address 52.93.xxx.xx within a certain time period. The right-hand display shows the attribute information of the selected relationship, including latency, jitter, and packet loss rate.
[0092] To achieve real-time dynamic updates, the system periodically acquires network monitoring data from MTR and NetFlow tools and converts the collected network monitoring data into a specified data format through a preprocessing process. To enable real-time data processing, this embodiment employs data stream processing technology at the data receiving port. The data receiving port uses a Python script to periodically collect data from network devices via MTR and NetFlow, and then sends the data to the graph database for further processing via the HTTP protocol. The graph database includes a data parsing module. This model uses natural language processing technology, combined with graph design rules, to extract information from the network monitoring data, thereby obtaining target data. The target data consists of the node types, node attributes, relationship types, and relationship attributes defined in the graph design rules.
[0093] In step S202 of some embodiments, after parsing the original network monitoring data into nodes and relationships, the parsed data is mapped to a graph structure in Neo4j to obtain a network knowledge graph. The parsed nodes and relationships are then inserted into the graph database using the Cypher query language provided by Neo4j. If duplicate data exists (such as identical network paths or traffic information), it is updated using an appropriate merging strategy. To achieve real-time performance, data needs to be updated incrementally. After each data collection, timestamps and data changes are compared to determine which nodes and relationships need updating. Only the changed data is updated, rather than reconstructing the entire graph. This embodiment dynamically adds nodes and relationships. Based on real-time collected network monitoring data, new network nodes, path nodes, traffic nodes, etc., are dynamically created, and related relationships are established. When a new network path is discovered, a new path node is created, and the connection relationship is updated. A timestamp attribute is added to each node to record its state changes. Time relationships are used to associate data with time nodes to track the temporal changes of the data.
[0094] In step S103 of some embodiments, a Temporal Graph Neural Network (TGNN) is a neural network model used to process graph data with temporal dependencies. Unlike traditional Graph Neural Networks (GNNs), TGNN can learn the temporal features and structural evolution patterns between nodes under the influence of changes in nodes, edges, and time factors in the graph, thereby achieving prediction of graph structure data. When there is sufficient network monitoring data, the TGNN is trained using the network monitoring data so that it can accurately predict the network knowledge graph for the next time period. The core task of TGNN is to combine graph structure data with time series data, and process node features and temporal data through Graph Convolutional Networks (GCNs) and Temporal Convolutional Networks (TCNs) to achieve spatiotemporal modeling.
[0095] Please see Figure 3 In some embodiments, step S103 may include, but is not limited to, steps S301 to S303:
[0096] Step S301: Perform node feature representation, structural feature representation, and node temporal representation on the network knowledge graph to obtain network input data, wherein the network input data includes node feature matrix, adjacency matrix, and time series features;
[0097] Step S302: Extract features from the network input data to obtain node spatial features and node temporal features;
[0098] Step S303: Based on the spatial and temporal characteristics of the nodes, feature prediction is performed to obtain the network state prediction map for the next time step.
[0099] In this embodiment, please refer to Figure 12 The structure of a temporal graph neural network includes a connected input layer, a graph convolutional layer, a temporal convolutional layer, a fusion layer, a prediction layer, and an output layer. The input layer is used to represent the features of the network knowledge graph, including graph data structure feature representation, node feature representation, and node temporal feature representation. The graph convolutional layer is mainly used to extract spatial dependency features in the network knowledge graph. The temporal convolutional layer is mainly used to extract the state relationship features of nodes changing over time. The fusion layer is mainly used to fuse the features extracted by the graph convolutional layer and the temporal convolutional layer to obtain a fused spatiotemporal feature. The prediction layer is mainly used to predict the network topology and node features at the next time step based on the fused spatiotemporal feature. The output layer is mainly used to map the output of the prediction layer to a graph structure representation.
[0100] In step S301 of some embodiments, the feature representation of the network knowledge graph is implemented by the input layer. Specifically, IP nodes and routes are extracted from Neo4j, along with corresponding time-dimensional features such as traffic, bandwidth, latency, jitter, and packet loss. The data is then preprocessed and formatted. A feature matrix X of nodes is constructed based on the extracted data, where each row represents a multi-dimensional feature of the node (including traffic, bandwidth, latency, jitter, etc.). Time-series data processing is then performed, creating a time-series vector for each node. This represents the features of the node across multiple time steps. For data from time t to tK (where K is the size of the time window), the input to node i can be a multidimensional vector set: The graph structure data (adjacency matrix and edge information) is merged with the node feature matrix and historical data to form network input data conforming to the TGNN input format. The network data includes the graph's adjacency matrix A, node feature matrix X, and time series features.
[0101] In step S302 of some embodiments, feature extraction of network input data is mainly achieved by graph convolutional layers and temporal convolutional layers. Graph convolutional layers extract the spatial features of nodes in the network input data, and temporal convolutional layers extract the temporal features of nodes in the network input data.
[0102] Specifically, please refer to Figure 4 In some embodiments, step S302 may include, but is not limited to, steps S401 to S402:
[0103] Step S401: Input the network input data into the graph convolutional layer to aggregate the neighbor node features and obtain the node spatial features;
[0104] Step S402: Input the network input data into the temporal convolutional layer to aggregate the node historical features and obtain the node temporal features.
[0105] In step S401 of some embodiments, the purpose of the graph convolution operation is to capture the spatial dependencies between nodes through the network topology. In a graph neural network (GNN), the graph convolution operation updates the representation of each node by locally aggregating information from neighboring nodes. The state representation of a node depends on the state of its neighboring nodes and the network topology. This embodiment utilizes the graph convolution operation to capture the spatial dependencies between nodes in the network topology of a network knowledge graph, as follows:
[0106]
[0107] in, Let N(i) represent the spatial state representation of node i at time t (i.e., the spatial characteristics of the node), and let N(i) represent the set of neighboring nodes of node i. W represents the state identifier of node i at time t-1 (i.e., the node state at the previous moment). (t) and b (t) For model parameters, W (t) Here is the learning weight matrix at time t, used to adjust the contribution of neighbor node information, b (t) σ is the bias term at time t, which helps the model learn the offset. σ is the activation function, used to increase the nonlinearity of the model. The graph convolution operation aggregates the state information of all neighboring nodes N(i) of node i, and the new state of node i. It is a weighted sum of the states of its neighboring nodes plus a bias term b. (t) .
[0108] In step S402 of some embodiments, the temporal convolutional layer is used to model the change of node state over time. The temporal convolutional operation models the pattern of node state change over time, and the current node state is updated by aggregating the node's historical states at different time steps (i.e., the node feature matrix), as detailed below:
[0109]
[0110] in, This represents the temporal state of node i at time t (i.e., the node's temporal characteristic). Let represent the historical state of node i at time tk. The temporal convolution operation calculates the node state at the current time t by weighting and aggregating the states of node i over the past K time steps (tk to t). Temporal convolution operations can help models learn the dynamic changes of node states over time, allowing models to extract trends and patterns from historical information and capture long-term dependencies.
[0111] In step S303 of some embodiments, the feature prediction of node spatial features and node temporal features is mainly implemented by the prediction layer. The prediction layer predicts the network prediction information (including network structure information and node feature information) for the next time step based on the node spatial features and node temporal features, and the network prediction information can be represented as a graph structure through the output layer.
[0112] Specifically, please refer to Figure 5 In some embodiments, step S303 may also include, but is not limited to, steps S501 to S503:
[0113] Step S501: The spatial features and temporal features of the nodes are concatenated to obtain the fused features;
[0114] Step S502: Input the fused features into the feedforward neural network and perform feature mapping to obtain the network prediction information for the next time step. The network prediction information includes network structure information and node feature information.
[0115] Step S503: Determine the network state prediction map based on the network prediction information at the next moment.
[0116] In step S501 of some embodiments, a fusion layer is used to fuse the outputs of the graph convolutional layer and the temporal convolutional layer to obtain a fused feature. The fusion method can be implemented by concatenation. The fusion layer concatenates the spatial features and temporal features of nodes into a fused feature, which facilitates the processing of the subsequent prediction layer. The fusion layer is specifically represented as follows:
[0117] Z′=Fusion(Z,Y);
[0118] Where Z is the output of the graph convolutional layer and Y is the output of the temporal convolutional layer.
[0119] In step S502 of some embodiments, the fused features represent the spatiotemporal features of the network knowledge graph. The fused features are then predicted by a prediction layer to obtain network prediction information for the next time step. This network prediction information includes network structure information and node feature information for the next time step. The network structure information reflects changes in the network topology, and the node feature information includes traffic, bandwidth, latency, jitter, packet loss rate, etc. The prediction layer is implemented using a fully connected layer (FC) neural network, and is represented as follows:
[0120] FC(Z′)=W′Z′+b′;
[0121] Where W' and b' are model parameters, W' is the weight matrix of the output layer, and b' is the bias term.
[0122] In step S503 of some embodiments, the output layer can directly output the network prediction information output by the prediction layer, or it can map the vector representation of the network prediction information to a natural text representation. The TGNN model output includes the attribute data of each node at the next time step (such as traffic, bandwidth, latency, jitter, packet loss rate, etc.), as well as the node connection relationships and edge changes at the next time step. The network prediction information at the next time step represented by natural text is stored in a graph database to construct the network state prediction graph at the next time step.
[0123] According to some embodiments of this application, the TGNN model generally extracts network graph data and node feature data from the network knowledge graph, constructs the graph structure and time series data, then captures the spatial dependencies between nodes through graph convolutional layers (GCN) and the temporal dependencies of node states through temporal convolutional layers (TCN), fuses spatiotemporal features, performs feature prediction for the next time step, and finally outputs the prediction results, including node features (traffic, bandwidth, etc.) and changes in network topology. The structure of the spatiotemporal graph neural network can effectively process dynamic network data, capture spatiotemporal dependencies, and provide accurate predictions for network state prediction and topology evolution.
[0124] Please see Figure 6 In some embodiments, the dynamic network routing method of this application may also include, but is not limited to, steps S601 to S603:
[0125] Step S601: Collect network monitoring data for the next moment and determine the actual network information for the next moment based on the network monitoring data;
[0126] Step S602: Determine the prediction error of the time-series graph neural network based on the actual network information and the network prediction information;
[0127] Step S603: Update the parameters of the time series graph neural network based on the prediction error.
[0128] In this embodiment, after the prediction period arrives, the collected real-world network information often conflicts with the previously stored network prediction information. Specifically, the real-world network information comes from the actual network and is more accurate than the prediction data. The collected real-world network information needs to replace the network prediction data for the corresponding prediction time; that is, the node attributes and edge relationships in the graph database are updated over time. In other words, after the prediction period arrives, the real-time collected network data will overwrite the previously stored network prediction results, and the data in the graph database will always remain consistent with reality, reflecting the current actual state of the network.
[0129] Please refer to Figure 13After extracting real network data (i.e., network knowledge graphs) from telemetry data at different times, the network knowledge graphs are input into the TGNN model to obtain the predicted value for the next time period (i.e., network prediction data), and this predicted value is updated in the network state graph database. When the real network data for the corresponding time arrives, the predicted value for the corresponding time in the network state graph database is overwritten using real-time data. Furthermore, the real value (i.e., real network data) is compared with the predicted value. If the difference between the real data and the predicted result is large, it may indicate that the model's prediction is biased, or that it has failed to capture certain spatiotemporal changes or external factors. Therefore, after comparing the network prediction data with the real network data to obtain the prediction error, the model can be optimized. This can be achieved through the following methods:
[0130] Model tuning: This involves tuning the TGNN model based on the prediction error, including adjusting the model's parameters, hyperparameters, and optimization algorithms.
[0131] Feature adjustment: If certain unconsidered factors (such as changes in network topology, fluctuations in external network traffic, etc.) lead to large prediction errors, it is necessary to expand or adjust the features input to the model.
[0132] Iterative Updates: In graph neural networks, the network graph is constantly updated over time, with new network states, node features, and connection relationships. Therefore, the model undergoes periodic iterative training to ensure it can always adapt to dynamic changes in the network. After each training iteration, new prediction data is input into the graph database to enable network path planning in advance based on the predicted network states.
[0133] In step S104 of some embodiments, the Graph Convolutional Network (GCN) and Temporal Convolutional Network (TCN) in the TGNN model are used to fuse the spatiotemporal characteristics of the network topology, modeling and predicting the dynamic changes of the cross-domain network. This enables the prediction of node characteristics (latency, bandwidth, packet loss rate) and network topology evolution, obtaining a network state prediction map for the next time step. Then, network routing path planning is performed in advance based on this prediction map. Compared to collecting actual network state data before routing planning, this embodiment, when facing complex cross-domain network routing planning and computationally intensive tasks, improves network routing efficiency and stability, and enhances user experience by predicting the network topology and planning network paths in advance.
[0134] Please see Figure 7 In some embodiments, step S104 may include, but is not limited to, steps S701 to S702:
[0135] Step S701: Obtain path planning requirement information, wherein the path planning requirement information includes source network nodes, target network nodes and path optimization function, and the path optimization function includes multiple optimization objectives and their weights;
[0136] Step S702: With the goal of optimizing the path optimization function, a path search is performed on the network state prediction graph for the next time step based on the source network node and the target network node to obtain the optimal routing path.
[0137] In step S701 of some embodiments, before performing route planning, path planning requirement information of the source network node, the target network node, and the path optimization function is required. The path optimization function includes multiple optimization objectives and their weights. The optimization objectives can be network metrics such as latency, jitter, and packet loss. For example, the path optimization function is as follows:
[0138] Weight(i,j)=w1×Latency(i,j)+w2×Jitter(i,j)+w3×PacketLoss(i,j)+w4×Other(i,j);
[0139] Among them, w1, w2 and w3 are the weight parameters corresponding to latency, jitter and packet loss, and w4 corresponds to other weight parameters that may affect network access quality. The weight parameters represent the importance of each network metric to the calculation of the optimal path.
[0140] In step S702 of some embodiments, the objective of optimizing the routing optimization function can be to maximize or minimize its value. For a routing optimization function composed of negative network metrics (such as latency, jitter, and packet loss), the objective is to minimize its value; for a routing optimization function composed of positive network metrics (such as network speed), the objective is to maximize its value. With the optimization of the path optimization function as the objective, the optimal routing path from the source network node to the target network node is searched in the network state prediction graph at the next time step.
[0141] For example, an optimal path is calculated based on the network prediction graph for the prediction period, which maximizes network performance metrics (such as minimizing latency, jitter, packet loss, etc.) and considers the resource consumption between nodes and connections, as follows:
[0142] First, define the optimal path metrics:
[0143] Minimize latency: When selecting a path from the source node to the target node in the network, minimize the overall latency of the path as much as possible.
[0144] Minimize jitter: Jitter refers to the variation in packet transmission latency. Excessive jitter can affect network stability. Therefore, when selecting a path, avoid links with excessive fluctuations.
[0145] Minimize packet loss rate: Select paths with lower packet loss rates to improve network reliability.
[0146] In practical applications, multiple factors such as latency, jitter, and packet loss are considered to form a multi-objective optimization problem. The weight of each network metric is set by weighting to obtain the routing optimization function.
[0147] Secondly, finding the optimal path:
[0148] In Neo4j, the nodes and relationships in the network state prediction graph already contain all the network metrics that need to be evaluated. You only need to set different weights for different metrics and then find the path with the lowest cost.
[0149] Furthermore, this embodiment provides an interactive query interface, which includes a search area and a result display area. The search area is used to input the source IP address and the target IP address. After receiving the input from the search area, the backend combines the routing optimization function and generates the optimal path and alternative paths that meet the requirements by calling the Neo4j algorithm library. The result display area can display the optimal path and alternative paths.
[0150] Furthermore, this embodiment can use methods such as SDN to achieve optimal paths. The core advantage of SDN lies in centralized control and plane separation, enabling network routing decisions to be made uniformly on the control plane. The SDN controller can dynamically adjust the path of data flows to ensure that traffic always follows the optimal route. The calculated optimal path information is fed back to the SDN controller, which then issues flow table rules through the control plane to ensure that data flows are transmitted along the optimal path.
[0151] According to some embodiments of this application, traditional routing protocols are often based on static or simple dynamic calculation rules, which are difficult to cope with dynamic changes in complex cross-domain network environments. Embodiments of this application introduce a TGNN model, which can comprehensively analyze the multi-dimensional information and temporal changes of network nodes and edges to select the optimal path for each data packet. Specifically, in cross-domain network environments, network states change frequently (such as changes in network topology, latency jitter, bandwidth fluctuations, load, etc.). Embodiments of this application utilize TGNN to perform deep learning and analysis of the temporal characteristics of network states, thereby dynamically optimizing network routing, effectively reducing packet loss rate, improving transmission efficiency, and enhancing network stability. The method of this application can be applied not only to specific application scenarios such as cross-border e-commerce, but also to any network environment requiring cross-domain communication, including but not limited to cloud computing, data centers, the Internet of Things, big data transmission, and other scenarios.
[0152] The following describes in detail a specific embodiment, illustrating the process of collecting data using network monitoring tools such as MTR and NetFlow, the TGNN model construction process, and the process of using the TGNN model for cross-domain route optimization.
[0153] First, cross-domain network data is collected using network monitoring tools such as MTR and NetFlow. To ensure the collected data accurately reflects the real-time network status, the collection process needs to consider the distribution of multiple carrier networks and different geographical locations. The specific steps in the implementation process are as follows:
[0154] S11, MTR, and NetFlow tool configuration and data acquisition.
[0155] MTR tool configuration: The MTR tool can continuously trace the path from the source address to the destination address using Ping and Traceroute functions, recording network latency, packet loss rate, and other information for each hop. For cross-domain routing optimization, obtaining latency and packet loss rate data for all intermediate nodes (such as routers and switches) from the source to the destination is crucial. By calling MTR through Python scripts, regular network diagnostics can be performed and diagnostic reports can be automatically generated, obtaining these important network performance metrics.
[0156] NetFlow tools are configured to provide detailed network traffic data, including traffic, latency, packet loss, source / destination IP, and port information, through statistical analysis of router and switch traffic. In cross-domain routing optimization, NetFlow data helps analyze and identify network bottlenecks, abnormal traffic, and network load. Traffic statistics can be collected from NetFlow using Python scripts; the data includes transmission latency, bandwidth, and traffic for each flow.
[0157] S12, Data Cleaning and Formatting.
[0158] The collected MTR and NetFlow data may contain invalid, duplicate, or inconsistently formatted records, requiring cleaning and formatting. First, duplicate, invalid, or missing records are deleted. Second, sudden anomalies caused by network fluctuations, such as sudden packet loss or extremely high latency, are processed. This cleaning process improves data accuracy and consistency, preventing deviations in subsequent optimization results due to collection errors.
[0159] Data formatting is a prerequisite for ensuring that different data sources can be used together. MTR and NetFlow data are converted into a unified format to ensure that each data entry contains necessary timestamps, network device information, traffic information, latency, packet loss rate, etc.
[0160] S13, Data storage and management.
[0161] To process and analyze data more efficiently, all cleaned data will be stored in a MySQL database. The database management system allows for rapid querying, updating, and management of large-scale network data. Simultaneously, scripts are used to automate the data storage and processing workflow, facilitating data retrieval and subsequent analysis.
[0162] Secondly, the collected data is used to construct and update the network knowledge graph in real time.
[0163] S21, Graph database selection.
[0164] To more efficiently represent and manage the relationships between nodes and edges in cross-domain networks, graph databases (such as Neo4j) are used for data storage and retrieval. Graph databases are well-suited for handling multidimensional relationships in network devices, paths, traffic, and other data, and can efficiently support complex queries between nodes.
[0165] S22, Node Design.
[0166] Network nodes: These represent devices in a network, such as routers, switches, and servers. Each node has attributes such as node name, IP address, device type, geographical location, and ISP.
[0167] Network path nodes: Represent paths that cross different network devices. Each path has attributes such as start node, end node, path latency, packet loss rate, jitter, and bandwidth.
[0168] Traffic nodes: Represent traffic information in the network. Each traffic node contains information such as source IP, destination IP, port, transmission latency, bandwidth, etc.
[0169] S23, Construct a network knowledge graph.
[0170] Data collected via MTR and NetFlow is transformed into nodes in a graph database. Each network device (such as a router or switch) is considered a network node, each path traversing different devices is considered a path node, and each piece of network traffic is considered a traffic node. Relationships between nodes are established based on the collected data. For example, network nodes are connected through path nodes, while path nodes are connected through traffic nodes. All nodes and relationships constitute a knowledge graph for the cross-domain network. This network knowledge graph not only helps describe the network topology but also provides the necessary time-series data input for the TGNN model.
[0171] Then, the Temporal Graph Neural Network (TGNN) model is trained and optimized based on the network knowledge graph.
[0172] S31, Model initialization.
[0173] Temporal Graph Neural Network (TGNN) was chosen as the model architecture. TGNN is a deep learning model capable of handling graph data that varies over time. Unlike traditional Graph Neural Networks (GNN), TGNN learns the dynamic characteristics of nodes and edges in a graph over time, making it suitable for network routing optimization problems with temporal variations.
[0174] S32, Data Input and Preprocessing.
[0175] Input data: The input to the TGNN model is graph feature data constructed from a network knowledge graph, including time-series data of network nodes, paths, and traffic. Before being input into the TGNN, the data needs to be further processed into a format suitable for model training.
[0176] Temporal Feature Extraction: Network states (such as bandwidth, latency, packet loss rate, load, etc.) change over time, and TGNN needs to extract temporal features from this data. Time series data is divided into fixed time windows, and the data in each time window is standardized so that the model can learn the changing patterns of network performance.
[0177] S33, Model Training.
[0178] The main training focuses on the parameters of the graph convolutional layer, temporal convolutional layer, and prediction layer in the model.
[0179] Graph Convolutional Layers: TGNN uses Graph Convolutional Layers (GCNs) to operate on the network graph and learn the features of each node. In cross-domain routing optimization, GCNs help the model capture the relationships and interactions between nodes.
[0180] Temporal convolutional layers: In order to capture the dynamic features of network state changes over time, TGNN uses temporal modeling layers such as recurrent neural networks (RNN) or long short-term memory networks (LSTM) to learn the temporal dependencies of network state from time series.
[0181] Loss Function and Optimization: The mean squared error (MSE) is used as the loss function to optimize the routing performance metrics (such as latency and bandwidth) predicted by the model. The model is trained using the gradient descent algorithm, and the model parameters are continuously adjusted until the loss function converges.
[0182] S34, iterative update
[0183] In graph neural networks, the network graph is constantly updated over time, with new network states, node features, and connection relationships. Therefore, the model undergoes periodic iterative training to ensure it adapts to the network's dynamic changes. After each training iteration, new prediction data is fed back into the graph database to provide a foundation for future predictions.
[0184] Finally, routing control and implementation.
[0185] After the TGNN model is trained, the graph database contains the network state for the prediction period. Based on preset network performance metric weights (including latency, bandwidth, jitter, packet loss, load, and other multi-dimensional factors) combined with the shortest path algorithm, the optimal path is calculated, and the result is fed back to the network control system. In actual deployment, the optimal routing result is integrated into the SDN (Software-Defined Networking) controller. The SDN controller, through centralized management of network traffic and routing tables, can dynamically select paths based on the prediction results.
[0186] Please see Figure 8 This application also provides a dynamic network routing optimization system, including:
[0187] The first module is used to collect network monitoring data with timestamps.
[0188] The second module is used to parse network monitoring data and create nodes and relationships in a network knowledge graph. The attribute data of the nodes in the network knowledge graph includes timestamps.
[0189] The third module is used to predict the network knowledge graph using a temporal graph neural network to obtain the network state prediction graph for the next time step.
[0190] The fourth module is used to plan network routing paths based on the network state prediction map for the next time step.
[0191] It is understood that the content of the above-described dynamic network routing optimization method embodiments is applicable to this system embodiment. The specific functions implemented in this system embodiment are the same as those in the above-described dynamic network routing optimization method embodiments, and the beneficial effects achieved are also the same as those achieved in the above-described dynamic network routing optimization method embodiments.
[0192] This application also provides an electronic device, which includes: a memory, a processor, a program stored in the memory and executable on the processor, and a data bus for communication between the processor and the memory. When the program is executed by the processor, it implements the aforementioned dynamic network routing optimization method. This electronic device can be any smart terminal, including tablet computers, in-vehicle computers, etc.
[0193] Please see Figure 9 , Figure 9 The hardware structure of an electronic device according to another embodiment is illustrated. The electronic device includes:
[0194] The processor 901 can be implemented using a general-purpose CPU (Central Processing Unit), microprocessor, application-specific integrated circuit (ASIC), or one or more integrated circuits, and is used to execute relevant programs to implement the technical solutions provided in the embodiments of this application.
[0195] The memory 902 can be implemented as a read-only memory (ROM), static storage device, dynamic storage device, or random access memory (RAM). The memory 902 can store the operating system and other applications. When the technical solutions provided in the embodiments of this specification are implemented through software or firmware, the relevant program code is stored in the memory 902 and called and executed by the processor 901 using the dynamic optimized network routing method of the embodiments of this application.
[0196] The input / output interface 903 is used to implement information input and output;
[0197] The communication interface 904 is used to enable communication and interaction between this device and other devices. Communication can be achieved through wired means (such as USB, Ethernet cable, etc.) or wireless means (such as mobile network, WIFI, Bluetooth, etc.).
[0198] Bus 905 transmits information between various components of the device (e.g., processor 901, memory 902, input / output interface 903, and communication interface 904);
[0199] The processor 901, memory 902, input / output interface 903, and communication interface 904 are connected to each other within the device via bus 905.
[0200] This application also provides a storage medium, which is a computer-readable storage medium for computer-readable storage. The storage medium stores one or more programs, which can be executed by one or more processors to implement the above-described dynamic network routing optimization method.
[0201] Memory, as a non-transitory computer-readable storage medium, can be used to store non-transitory software programs and non-transitory computer-executable programs. Furthermore, memory may include high-speed random access memory, and may also include non-transitory memory, such as at least one disk storage device, flash memory device, or other non-transitory solid-state storage device. In some embodiments, memory may optionally include memory remotely located relative to the processor, and these remote memories can be connected to the processor via a network. Examples of such networks include, but are not limited to, the Internet, intranets, local area networks, mobile communication networks, and combinations thereof.
[0202] The embodiments described in this application are for the purpose of more clearly illustrating the technical solutions of the embodiments of this application, and do not constitute a limitation on the technical solutions provided by the embodiments of this application. As those skilled in the art will know, with the evolution of technology and the emergence of new application scenarios, the technical solutions provided by the embodiments of this application are also applicable to similar technical problems.
[0203] Those skilled in the art will understand that the technical solutions shown in the figures do not constitute a limitation on the embodiments of this application, and may include more or fewer steps than shown, or combine certain steps, or different steps.
[0204] The system embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs.
[0205] Those skilled in the art will understand that all or some of the steps in the methods disclosed above, as well as the functional modules / units in the systems and devices, can be implemented as software, firmware, hardware, or suitable combinations thereof.
[0206] The terms “first,” “second,” “third,” “fourth,” etc. (if present) in the specification and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this application described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms “comprising” and “having,” and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.
[0207] It should be understood that in this application, "at least one (item)" means one or more, and "more than" means two or more. "And / or" is used to describe the relationship between related objects, indicating that three relationships can exist. For example, "A and / or B" can represent three cases: only A exists, only B exists, and both A and B exist simultaneously, where A and B can be singular or plural. The character " / " generally indicates that the preceding and following related objects are in an "or" relationship. "At least one (item) of the following" or similar expressions refer to any combination of these items, including any combination of single or plural items. For example, at least one (item) of a, b, or c can represent: a, b, c, "a and b", "a and c", "b and c", or "a and b and c", where a, b, and c can be single or multiple.
[0208] In the embodiments provided in this application, it should be understood that the disclosed systems and methods can be implemented in other ways. For example, the system embodiments described above are merely illustrative; for instance, the division of the units described above is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between systems or units may be electrical, mechanical, or other forms.
[0209] The units described above as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0210] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.
[0211] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes multiple instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods of the various embodiments of this application. The aforementioned storage medium includes various media capable of storing programs, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0212] The preferred embodiments of the present application have been described above with reference to the accompanying drawings, but this does not limit the scope of the claims of the present application. Any modifications, equivalent substitutions, and improvements made by those skilled in the art without departing from the scope and substance of the embodiments of the present application shall be within the scope of the claims of the present application.
Claims
1. A method for dynamically optimizing network routing, characterized in that, Includes the following steps: Collect network monitoring data with timestamps. The network monitoring data includes packet path and path node delay, packet loss rate information, and network traffic statistics. The network traffic statistics include the source IP, destination IP, and transmission delay information of each network flow. The network monitoring data is parsed to create nodes and relationships in a network knowledge graph. The attribute data of nodes in the network knowledge graph includes timestamps. The node types in the network knowledge graph include network nodes, network path nodes, traffic nodes, and time nodes. The relationship types in the network knowledge graph include connection relationships, path relationships, traffic relationships, and time relationships. The time node type is a time point used to record real-time data. The time relationship is used to associate data with time nodes. The attribute data of network path nodes includes path start node, end node, path delay, packet loss rate, jitter, and bandwidth. A temporal graph neural network is used to predict the network knowledge graph to obtain the network state prediction graph for the next time step. The predicted network state prediction graph is then updated in the network state graph database. When real network data for the corresponding time step is collected, the network state prediction graph for the corresponding time step is overlaid in the network state graph database based on the real network data. The output of the temporal graph neural network includes the attribute data of each node for the next time step and the node connection relationship for the next time step. Network routing path planning is performed based on the network state prediction graph at the next time step; The step of using a temporal graph neural network to predict the network knowledge graph to obtain the network state prediction graph for the next time step includes the following steps: The network knowledge graph is represented by node features, structural features, and temporal sequences to obtain network input data. The network input data includes a node feature matrix, an adjacency matrix, and time-series features. The node feature matrix represents the multidimensional features of the nodes themselves. Feature extraction is performed on the network input data to obtain node spatial features and node temporal features; Based on the spatial and temporal characteristics of the nodes, feature prediction is performed to obtain the network state prediction map for the next time step.
2. The dynamic network routing optimization method according to claim 1, characterized in that, The process of parsing the network monitoring data and mapping it to nodes and relationships in a network knowledge graph includes the following steps: The target data is parsed from the network monitoring data according to the graph design rules, which are used to define the node types, node attributes, relationship types, and relationship attributes of the network knowledge graph. Create a network knowledge graph and the relationships between nodes based on the target data; The node types include network nodes, network path nodes, traffic nodes, and time nodes, and the relationship types include connection relationships, path relationships, traffic relationships, and time relationships.
3. The dynamic network routing optimization method according to claim 1, characterized in that, The step of extracting features from the network input data to obtain node spatial features and node temporal features includes the following steps: The network input data is fed into a graph convolutional layer to aggregate neighbor node features, thereby obtaining node spatial features; The network input data is fed into a temporal convolutional layer to aggregate node historical features, thereby obtaining node temporal features.
4. The dynamic network routing optimization method according to claim 1, characterized in that, The step of performing feature prediction based on the node spatial features and the node temporal features to obtain the network state prediction map for the next time step includes the following steps: The spatial features and temporal features of the nodes are concatenated to obtain the fused features; The fused features are input into a feedforward neural network for feature mapping to obtain network prediction information for the next time step. The network prediction information includes network structure information and node feature information. The network state prediction graph is determined based on the network prediction information at the next time step.
5. The dynamic network routing optimization method according to claim 4, characterized in that, The dynamic network routing optimization method further includes the following steps: Collect network monitoring data for the next moment, and determine the actual network information for the next moment based on the network monitoring data; The prediction error of the time-series graph neural network is determined based on the actual network information and the network prediction information. The parameters of the time-series graph neural network are updated based on the prediction error.
6. The dynamic network routing optimization method according to any one of claims 1 to 5, characterized in that, The process of planning network routing paths based on the predicted network state map at the next time step includes the following steps: Obtain path planning requirement information, wherein the path planning requirement information includes source network nodes, target network nodes, and path optimization function, and the path optimization function includes multiple optimization objectives and their weights; With the goal of optimizing the path optimization function, a path search is performed on the network state prediction graph at the next time step based on the source network node and the target network node to obtain the optimal routing path.
7. A dynamically optimized network routing system, characterized in that, include: The first module is used to collect network monitoring data with timestamps. The network monitoring data includes packet path and path node delay, packet loss rate information, and network traffic statistics. The network traffic statistics include the source IP, destination IP, and transmission delay information of each network flow. The second module is used to parse the network monitoring data and create nodes and relationships in a network knowledge graph. The attribute data of nodes in the network knowledge graph includes timestamps; the node types include network nodes, network path nodes, traffic nodes, and time nodes; the relationship types include connection relationships, path relationships, traffic relationships, and time relationships; the node type of time nodes is a time point used to record real-time data; the time relationships are used to associate data with time nodes; the attribute data of network path nodes includes path start node, end node, path delay, packet loss rate, jitter, and bandwidth. The third module is used to predict the network knowledge graph using a temporal graph neural network to obtain the network state prediction graph for the next time step, and update the predicted network state prediction graph to the network state graph database. When real network data for the corresponding time step is collected, the network state prediction graph for the corresponding time step is overlaid in the network state graph database based on the real network data. The output of the temporal graph neural network includes the attribute data of each node for the next time step and the node connection relationship for the next time step. The fourth module is used to plan network routing paths based on the network state prediction map at the next time step. The third module is specifically used to perform the following steps: The network knowledge graph is represented by node features, structural features, and temporal sequences to obtain network input data. The network input data includes a node feature matrix, an adjacency matrix, and time-series features. The node feature matrix represents the multidimensional features of the nodes themselves. Feature extraction is performed on the network input data to obtain node spatial features and node temporal features; Based on the spatial and temporal characteristics of the nodes, feature prediction is performed to obtain the network state prediction map for the next time step.
8. An electronic device, characterized in that, The electronic device includes a memory, a processor, a program stored in the memory and executable on the processor, and a data bus for enabling communication between the processor and the memory, wherein the program, when executed by the processor, implements the steps of the method as described in any one of claims 1 to 6.
9. A storage medium, said storage medium being a computer-readable storage medium for computer-readable storage, characterized in that, The storage medium stores one or more programs, which can be executed by one or more processors to implement the steps of the method according to any one of claims 1 to 6.