Method and system for dynamically optimizing network routing, electronic equipment and storage medium
By building a network knowledge graph and using a timing graph neural network to predict network states and performing network routing path planning in advance, the problem that existing technology is difficult to achieve rapid response and efficient routing planning in complex cross-domain networks is solved, and network performance and stability are improved.
Patent Information
- Application Number
- CN202510290326.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-03-12
- Publication Date
- 2025-05-13
- Estimated Expiration
- 2045-03-12
AI Technical Summary
When facing complex cross-domain networks, existing network routing methods are difficult to achieve rapid response and efficient routing planning, affecting network performance and stability.
By collecting network monitoring data carrying timestamps, building a network knowledge graph, and using the timing graph neural network to predict network status, and performing network routing path planning in advance.
It improves the efficiency and accuracy of routing planning, can better adapt to the dynamic changes of complex cross-domain networks, and improves the performance and stability of the network.
Smart Images

Figure CN119996286A_ABST
Abstract
Description
Technical Field
[0001] The present 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 Art
[0002] With the rapid development of Internet technology, the scale of the network is expanding, and the demand for cross-domain network connections and data transmission is increasing. Cross-domain networks refer to communication structures involving different autonomous domains or network organizations, which are commonly seen in connections between multiple operators or different network service providers. The demand for cross-domain routing is becoming more urgent in cross-border e-commerce, cloud computing, big data and other fields.
[0003] Current network routing methods are usually based on statically configured routing protocols and dynamic routing protocols. Routing protocols based on static configuration cannot dynamically analyze network status in real time and cannot adapt to complex cross-domain network structures, which affects network performance and stability. The dynamic routing protocol method in related technologies obtains network status information in real time and combines graph neural networks to update network topology and network-related information. When scheduling routing, it makes real-time decisions based on the current network environment. The scheduling speed depends on the algorithm calculation performance. It is difficult to respond quickly when facing complex cross-domain networks, which affects routing efficiency. Summary of the invention
[0004] The main purpose of the embodiments of the present application is to propose a method, system, electronic device and storage medium for dynamically optimizing network routing, aiming to improve routing planning efficiency.
[0005] To achieve the above object, an embodiment of the present application provides a method for dynamically optimizing network routing, comprising the following steps:
[0006] Collect network monitoring data with timestamps;
[0007] Parsing the network monitoring data and creating nodes and relationships of a network knowledge graph, wherein the attribute data of the nodes in the network knowledge graph includes a timestamp;
[0008] A time-series graph neural network is used to predict the network knowledge graph to obtain a network state prediction graph at the next moment;
[0009] The network routing path is planned according to the network status prediction graph at the next moment.
[0010] In some embodiments, the parsing of the network monitoring data and mapping to nodes and relationships of a network knowledge graph comprises the following steps:
[0011] Parsing target data from the network monitoring data according to graph design rules, wherein the graph design rules are used to define node types, node attributes, relationship types, and relationship attributes of the network knowledge graph;
[0012] Creating nodes and relationships between nodes of a network knowledge graph according to the target data;
[0013] Among them, the node types include network nodes, network path nodes, flow nodes and time nodes, and the relationship types include connection relationships, path relationships, flow relationships and time relationships.
[0014] In some embodiments, the method of using a time-series graph neural network to predict the network knowledge graph to obtain a network state prediction graph at the next moment includes the following steps:
[0015] Performing node feature representation, structural feature representation and node time series representation on the network knowledge graph respectively to obtain network input data, wherein the network input data includes a node feature matrix, an adjacency matrix and time series features;
[0016] Extracting features from the network input data to obtain node spatial features and node temporal features;
[0017] Feature prediction is performed based on the node spatial features and the node temporal features to obtain a network status prediction graph at the next moment.
[0018] In some embodiments, extracting features from the network input data to obtain node spatial features and node temporal features comprises the following steps:
[0019] Inputting the network input data into the graph convolution layer to aggregate neighbor node features to obtain node spatial features;
[0020] The network input data is input into the time convolution layer to aggregate node historical features to obtain node time series features.
[0021] In some embodiments, performing feature prediction based on the node spatial features and the node temporal features to obtain a network state prediction graph at the next moment includes the following steps:
[0022] The node spatial feature and the node temporal feature are concatenated to obtain a fusion feature;
[0023] Inputting the fused features into a feedforward neural network for feature mapping to obtain network prediction information at the next moment, wherein the network prediction information includes network structure information and node feature information;
[0024] A network status prediction map is determined based on the network prediction information at the next moment.
[0025] In some embodiments, the method for dynamically optimizing network routing further includes the following steps:
[0026] Collecting network monitoring data at the next moment, and determining the real network information at the next moment based on the network monitoring data;
[0027] Determine the prediction error of the timing graph neural network according to the real network information and the network prediction information;
[0028] The parameters of the timing graph neural network are updated according to the prediction error.
[0029] In some embodiments, the network routing path planning according to the network status prediction graph at the next moment includes the following steps:
[0030] Acquire path planning requirement information, wherein the path planning requirement information includes a source network node, a target network node, and a 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 moment according to the source network node and the target network node to obtain an optimal routing path.
[0032] To achieve the above object, another aspect of the embodiment of the present application provides a dynamic optimization network routing system, including:
[0033] The first module is used to collect network monitoring data with timestamps;
[0034] A second module is used to parse the network monitoring data and create nodes and relationships of a network knowledge graph, wherein the attribute data of the nodes in the network knowledge graph includes a timestamp;
[0035] The third module is used to predict the network knowledge graph using a time-series graph neural network to obtain a network state prediction graph at the next moment;
[0036] The fourth module is used to plan the network routing path according to the network status prediction map at the next moment.
[0037] To achieve the above-mentioned purpose, another aspect of an embodiment of the present application proposes 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 realizing connection and communication between the processor and the memory, and the program implements the method described in the above embodiment when executed by the processor.
[0038] To achieve the above-mentioned purpose, another aspect of an embodiment of the present application proposes a storage medium, which is a computer-readable storage medium used for computer-readable storage, and the storage medium stores one or more programs, and the one or more programs can be executed by one or more processors to implement the method described in the above embodiment.
[0039] The present application proposes a method, system, electronic device and storage medium for dynamically optimizing network routing, which collects network monitoring data with timestamps, parses the network monitoring data and creates nodes and relationships of a network knowledge graph. The attribute data of the nodes in the network knowledge graph includes timestamps, which can provide network status information at different times. Then, a time-series graph neural network is used to learn and predict spatial dependencies and time dependencies of the network knowledge graph to obtain a predicted graph of the network status at the next moment. Network routing path planning is performed in advance according to the predicted graph of the network status at the next moment, thereby improving routing planning efficiency. BRIEF DESCRIPTION OF THE DRAWINGS
[0040] Figure 1 is a flow chart of a method for dynamically optimizing network routing provided by an embodiment of the present application;
[0041] Figure 2 yes Figure 1 Flow chart of step S102 in FIG.
[0042] Figure 3 yes Figure 1 Flow chart of step S103 in FIG.
[0043] Figure 4 yes Figure 3 Flow chart of step S302 in FIG.
[0044] Figure 5 yes Figure 3 Flow chart of step S303 in FIG.
[0045] Figure 6 is a flow chart of a method for dynamically optimizing network routing provided by another embodiment of the present application;
[0046] Figure 7 yes Figure 1 Flow chart of step S104 in FIG.
[0047] Figure 8 is a schematic diagram of a dynamic optimization network routing system provided by an embodiment of the present application;
[0048] Fig. 9 is a schematic diagram of the hardware structure of an electronic device provided in an embodiment of the present application;
[0049] Fig.10It is a schematic diagram of a network node and its attribute information in the network knowledge graph provided in an embodiment of the present application;
[0050] Fig.11 It is a schematic diagram of a relationship node and its attribute information in the network knowledge graph provided in an embodiment of the present application;
[0051] Fig.12 It is a schematic diagram of the structure of the timing graph neural network provided in the embodiment of the present application;
[0052] Fig.13 It is a schematic diagram of the optimization process of the timing graph neural network model provided in the embodiment of the present application; DETAILED DESCRIPTION
[0053] In order to make the purpose, technical solution and advantages of the present application more clearly understood, the present application is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.
[0054] It should be noted that, although the functional modules are divided in the system and the logical order is shown in the flowchart, in some cases, the steps shown or described may be performed 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 above 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 those commonly understood by those skilled in the art to which this application belongs. The terms used herein are only for the purpose of describing the embodiments of this application and are not intended to limit this application.
[0056] First, some nouns involved in this application are analyzed:
[0057] Natural language processing (NLP): NLP uses computers to process, understand and apply human languages (such as Chinese, English, etc.). NLP is a branch of artificial intelligence and an interdisciplinary subject between computer science and linguistics. It is often referred to as computational linguistics. Natural language processing includes grammatical analysis, semantic analysis, and text comprehension. Natural language processing is often used in technical fields such as machine translation, handwritten and printed character recognition, speech recognition and text-to-speech conversion, information intent recognition, information extraction and filtering, text classification and clustering, and opinion mining. It involves data mining related to language processing, machine learning, knowledge acquisition, knowledge engineering, artificial intelligence research, and linguistic research related to language computing.
[0058] Information Extraction: A text processing technology that extracts specified types of entity, relationship, event and other factual information from natural language text and forms structured data output. Information extraction is a technology that extracts specific information from text data. Text data is composed of some specific units, such as sentences, paragraphs, and chapters. Text information is composed of some small specific units, such as characters, words, phrases, sentences, paragraphs, or a combination of these specific units. Extracting noun phrases, names, place names, etc. from text data are all text information extraction. Of course, the information extracted by text information extraction technology can be various types of information.
[0059] Cross-domain routing, the route that data takes when it is transmitted from one service provider's network domain to another service provider's network domain, is somewhat complex, mainly reflected in multiple autonomous domains, multiple protocols, and multiple links.
[0060] Traditional network routing methods, such as statically configured routing protocols (such as RIP, OSPF, BGP, etc.) and dynamic routing protocols (such as EIGRP, OSPF), can provide basic network connectivity in some scenarios, but they often face many challenges. In cross-domain networks, factors that need to be considered in routing calculation and data transmission are not limited to path latency and bandwidth, but also need to comprehensively consider multi-dimensional dynamic information such as network topology, load between nodes, latency jitter, network traffic, etc.
[0061] Especially when the network scale expands and the coordination between multiple autonomous domains or network service providers becomes more and more complex, the traditional routing calculation method will encounter problems such as high computational complexity, inability to adapt to changes in network status in real time, and inability to achieve end-to-end optimization, which seriously affects the performance and stability of the network. In related technologies, a dynamic routing optimization method based on network status monitoring is proposed. When facing a cross-domain network, the network status (such as bandwidth, delay, packet loss rate, etc.) is obtained and analyzed in real time and dynamically, so as to adaptively adjust the routing planning. In the process of dynamic optimization of network routing, graph neural networks (GNNs) are usually used to model the relationship between nodes and edges in the network, and their powerful representation learning ability makes them an ideal choice for dealing with dynamic network problems. However, in routing scheduling, real-time decisions need to be made based on the current network environment. The scheduling speed depends on the algorithm computing performance, and it is impossible to respond in real time, which affects the routing efficiency.
[0062] Based on this, the embodiments of the present application provide a method, system, electronic device and storage medium for dynamically optimizing network routing, aiming to improve routing planning efficiency.
[0063] The dynamic optimization network routing method, system, electronic device and storage medium provided in the embodiments of the present application are specifically described through the following embodiments. First, the dynamic optimization network routing method in the embodiments of the present application is described.
[0064] The method for dynamically optimizing network routing provided in the embodiment of the present application relates to the field of network routing technology. The method for dynamically optimizing network routing provided in the embodiment of the present application can be applied to a terminal, can be applied to a server side, or can be software running in a terminal or a server side. In some embodiments, the terminal can be a smart phone, a tablet computer, a laptop computer, a desktop computer, etc.; the server side can be configured as an independent physical server, or can be configured as a server cluster or a distributed system composed of multiple physical servers, or can be configured as a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, CDN, and big data and artificial intelligence platforms; the software can be an application that implements a method for dynamically optimizing network routing, etc., but is not limited to the above forms.
[0065] The present application can be used in many general or special computer system environments or configurations. For example: 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, distributed computing environments including any of the above systems or devices, etc. The present 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. The present application can also be practiced in distributed computing environments, in which tasks are performed by remote processing devices connected through a communication network. In a distributed computing environment, program modules can be located in local and remote computer storage media including storage devices.
[0066] Figure 1 is an optional flowchart of the method for dynamically optimizing network routing provided in an embodiment of the present application. Figure 1 The method may include but is not limited to steps S101 to S104.
[0067] Step S101, collecting network monitoring data with timestamps;
[0068] Step S102, parsing the network monitoring data and creating nodes and relationships of a network knowledge graph, wherein the attribute data of the nodes in the network knowledge graph includes a timestamp;
[0069] Step S103, using a time-series graph neural network to predict the network knowledge graph to obtain a network state prediction graph for the next moment;
[0070] Step S104, performing network routing path planning based on the network status prediction graph at the next moment.
[0071] Steps S101 to S104 shown in the embodiment of the present application collect network monitoring data with timestamps, parse the network monitoring data and create nodes and relationships of a network knowledge graph. The attribute data of the nodes in the network knowledge graph include timestamps, which can provide network status information at different times. Then, a time-series graph neural network is used to learn and predict spatial dependencies and time dependencies of the network knowledge graph to obtain a predicted graph of the network status at the next moment. Network routing path planning is performed in advance according to the predicted graph of the network status at the next moment, thereby improving routing planning efficiency.
[0072] In step S101 of some embodiments, network monitoring data refers to performance, traffic, connection status and other related monitoring data with timestamps collected in real time from various network devices. Exemplarily, network performance monitoring tools such as MTR and NetFlow can be deployed on network server devices of different operators such as switches and routers, and Python scripts can be used to collect monitoring data from network devices. MTR is a tool commonly used for network diagnosis. It combines the functions of Traceroute and Ping, and can track the network path from the source to the target host, determine the path of the data packet from the source address to the destination, and provide detailed information such as the delay and packet loss rate between each node (router). NetFlow provides detailed network traffic statistics by analyzing the traffic data of routers and switches, including but not limited to the source IP, target IP, port number and other information of each network flow and the transmission delay information of each flow. This embodiment combines Python with MTR and NetFlow to telemeter cross-domain networks, and can collect network status information of complex network environments in real time, and the collected network status information is relatively comprehensive.
[0073] Furthermore, after the network monitoring data is collected, it can be stored in a MySQL database. Before using the network monitoring data to construct a network knowledge graph, the network monitoring data is first preprocessed such as data cleaning. Specifically, invalid, duplicate or incorrectly formatted data in the network monitoring data is removed, and then data from different sources is converted into a unified format so that data from different monitoring points (i.e., network devices) can be used in combination. After the network monitoring data is preprocessed, a standard format API interface can be set for calling the network monitoring data, so that when constructing the network knowledge graph or predicting the time series graph neural network model, the data timestamps of different monitoring points called are consistent, avoiding analysis errors caused by time differences.
[0074] This embodiment uses network telemetry tools to collect real-time performance data of multi-source heterogeneous networks (including path delay, packet loss rate, jitter, traffic distribution, etc.), and uses scripts to achieve automated data cleaning, format unification and storage, supporting the acquisition of comprehensive and high-precision network status information in a short period of time.
[0075] In step S102 of some embodiments, the network knowledge graph is a graph structure data used to characterize network status information, which includes the relationship between nodes, and the meaning of the relationship between nodes can be defined according to actual needs. After parsing the network monitoring data to obtain the relevant content of the nodes and relationships, the network knowledge graph is constructed based on the parsed nodes and relationships. The attribute data of each node in the network knowledge graph in this embodiment includes a timestamp, which is used to record the state change of the node. The time relationship can be used to associate the data with the time node in order to track the temporal changes of the data.
[0076] In this embodiment, a graph database can be used to implement the storage, query and management of the network knowledge graph. The graph database uses a graph model to store data, for example, Neo4j can be used. Neo4j is a graph database that is specifically used to store, query and manage graph data, and is particularly good at processing the relationship between nodes. Compared with traditional relational databases, graph databases can more naturally represent complex relationships between entities and support efficient graph traversal queries.
[0077] See also Figure 2 In some embodiments, step S102 may include but is not limited to steps S201 to S202:
[0078] Step S201, parsing target data from network monitoring data according to graph design rules, where graph design rules are used to define node types, node attributes, relationship types, and relationship attributes of a network knowledge graph;
[0079] Step S202, creating nodes and relationships between nodes of a network knowledge graph based on 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 the embodiments of the present application may include but are not limited to network nodes, network path nodes, flow nodes and time nodes, and the relationship types may include but are not limited to connection relationships, path relationships, flow relationships and time relationships. In this embodiment, network devices, network paths, flow information, etc. can be used as main nodes, and the node attributes are designed as follows:
[0081] Network Node: The node type is router, switch, or server. Its attributes include node name, IP address, device type, geographic location (latitude and longitude), operator, etc.
[0082] Network Path Node: The node type is a path across different network devices. Its attributes include the path start node, end node, path delay, 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 Fig.10 , Fig.10 It is a network node and its attribute description in the network knowledge graph. The left display box displays the network knowledge graph, where the selected node represents a wide area network device with an IP of 219.158.xxx.xxx, which belongs to the backbone network of a certain operator. The right display box displays the attribute information of the selected node, including ID, city, port, longitude and latitude, etc.
[0086] The relationship between nodes in the network knowledge graph is represented by the relationship (edge) in the graph. Corresponding to the node type, the relationship type mainly has the following types:
[0087] Connection relationship (CONNECTED_TO): Indicates the physical connection between two devices (such as routers, switches, etc.). Its properties include connection bandwidth, connection status, etc.
[0088] Path relationship (TRAVELS_THROUGH): Indicates that the data packet passes through a certain network path, usually a path connected by multiple network nodes. Its attributes include path delay, packet loss rate, path utilization, etc.
[0089] Traffic relationship (TRAFFIC_FLOWS_TO): indicates that a network traffic flows from a source node to a target node. Its attributes include traffic size, protocol type, port, etc.
[0090] Time relation (RECORDED_AT): represents the record of a certain data or state at a specific point in time, and its attributes include a timestamp.
[0091] For example, please refer to Fig.11 , Fig.11 It is a description of a node relationship and its attributes in the network knowledge graph. The left display box displays the network knowledge graph, where the selected relationship represents the intermediate routing path relationship from the WAN device with IP 219.158.xxx.xxx to the WAN device with IP 52.93.xxx.xx in a certain period of time, and the right display box displays the attribute information of the selected relationship, including latency, jitter, packet loss rate, etc.
[0092] In order to achieve real-time dynamic updates, the system regularly obtains network detection data from MTR and NetFlow tools, and converts the collected network monitoring data into a specified data format through a preprocessing process. In order to achieve real-time data processing, the embodiment of the present application adopts data stream processing technology in the data receiving port. The data receiving port uses a Python script to periodically collect data from MTR and NetFlow from network devices, and then sends the data to the graph database through the HTTP protocol for subsequent processing. A data parsing module is provided in the graph database. This model is used to extract information from network monitoring data using natural language processing technology combined with graph design rules to obtain target data. The target data is related to the node type, node attribute, relationship type and relationship attribute defined in the graph design rules.
[0093] In step S202 of some embodiments, after the original network monitoring data is parsed into nodes and relationships, the parsed data is mapped to the graph structure in Neo4j to obtain a network knowledge graph, and the parsed nodes and relationships are inserted into the graph database using the Cypher query language provided by Neo4j. If there is duplicate data (such as the same network path or traffic information), it is updated through a suitable merging strategy. In order to achieve real-time performance, the data needs to be updated incrementally. After each data collection, the nodes and relationships that need to be updated are determined by comparing the timestamp and data changes, and only the changed data is updated instead of rebuilding the entire graph. This embodiment dynamically adds nodes and relationships, dynamically creates new network nodes, path nodes, traffic nodes, etc. based on the real-time collection of network monitoring data, and establishes related relationships. 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 the state change of the node, and the time relationship is used to associate the data with the time node 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 for processing graph data with time dependencies. Unlike traditional graph neural networks (GNNs), TGNNs can learn the temporal characteristics and structural evolution laws between nodes under the influence of changes in nodes, changes in edges, and time factors in the graph, thereby realizing the prediction of graph structure data. When the network monitoring data is sufficient, the TGNN is trained using the network monitoring data so that the TGNN 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 to process node features and time series data through graph convolutional networks (GCNs) and temporal convolutional networks (TCNs) to realize spatiotemporal modeling.
[0095] See also Figure 3 In some embodiments, step S103 may include but is not limited to steps S301 to S303:
[0096] Step S301, performing node feature representation, structural feature representation and node time series representation on the network knowledge graph to obtain network input data, wherein the network input data includes a node feature matrix, an adjacency matrix and time series features;
[0097] Step S302, extracting features from network input data to obtain node spatial features and node temporal features;
[0098] Step S303, perform feature prediction based on the node spatial features and the node temporal features to obtain a network status prediction graph for the next moment.
[0099] In this embodiment, please refer to Fig.12 The structure of the temporal graph neural network includes a connected input layer, a graph convolution layer, a temporal convolution layer, a fusion layer, a prediction layer and an output layer. The input layer is used to represent the characteristics of the network knowledge graph, including the graph data structure feature representation, the node feature representation and the node temporal feature representation; the graph convolution layer is mainly used to extract the spatial dependency relationship features in the network knowledge graph; the temporal convolution layer is mainly used to extract the state relationship features of the nodes changing over time; the fusion layer is mainly used to fuse the features extracted by the graph convolution layer and the temporal convolution layer to obtain a fused spatiotemporal feature; the prediction layer is mainly used to predict the network topology and node features at the next moment based on the fused spatiotemporal features; 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 extracting IP nodes and routes from Neo4j, as well as the corresponding feature data related to traffic, bandwidth, delay, jitter, and packet loss in the time dimension, and preprocessing and formatting the data. Construct the node feature matrix X based on the extracted data, where each row represents a multidimensional feature of the node (including traffic, bandwidth, delay, jitter, etc.). Perform time series data processing and create a time series vector for each node. Represents the characteristics of the node at multiple time steps. For data from time t to tK (K is the time window size), the input of node i can be a multidimensional vector set: The graph structure data (adjacency matrix and edge information) is combined with the node feature matrix and historical data to form network input data that conforms to the TGNN input format. The network data includes the graph adjacency matrix A, the node feature matrix X, and the time series feature matrix X.
[0101] In step S302 of some embodiments, feature extraction of network input data is mainly implemented by a graph convolution layer and a temporal convolution layer. The spatial features of nodes in the network input data are extracted by the graph convolution layer, and the temporal features of nodes in the network input data are extracted by the temporal convolution layer.
[0102] Specifically, see Figure 4 In some embodiments, step S302 may include but is not limited to steps S401 to S402:
[0103] Step S401, inputting the network input data into the graph convolution layer to aggregate neighbor node features to obtain node spatial features;
[0104] Step S402: input the network input data into the time convolution layer to aggregate the node historical features to obtain the node time series features.
[0105] In step S401 of some embodiments, the purpose of the graph convolution operation is to capture the spatial dependency 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 the information of neighboring nodes. The state representation of a node depends on the state of its neighboring nodes and the network topology. This embodiment uses the graph convolution operation to capture the spatial dependency between nodes in the network topology in the network knowledge graph, as follows:
[0106]
[0107] in, represents the spatial state representation of node i at time t (i.e., the node spatial feature), and Ν(i) represents the set of neighbor nodes of node i. Represents the state identifier of node i at time t-1 (i.e., the node state at the previous moment). (t) and b (t) is the model parameter, W (t) is the learning weight matrix at time t, which is 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, which is used to increase the nonlinearity of the model. The graph convolution operation aggregates the state information of all neighboring nodes Ν(i) of node i. The new state of node i is is the weighted sum of the states of its neighboring nodes plus a bias term b (t) .
[0108] In step S402 of some embodiments, the temporal convolution layer is used to model the change of node state over time. The temporal convolution operation is used to model the law of node state change over time, and the current node state is updated by aggregating the states of the node at different time steps in history (i.e., the node feature matrix), as follows:
[0109]
[0110] in, represents the time state representation of node i at time t (i.e., node time feature), is the historical state representation 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 in the past K time steps (tk to t). Temporal convolution operations can help the model learn the dynamic changes of node states over time, allowing the model to obtain trends and rules from historical information and capture long-term dependencies.
[0111] In step S303 of some embodiments, feature prediction of node spatial features and node temporal features is mainly implemented by the prediction layer, which predicts the network prediction information (including network structure information and node feature information) at the next moment based on the node spatial features and node temporal features, and can represent the network prediction information in the form of a graph structure through the output layer.
[0112] Specifically, see Figure 5 In some embodiments, step S303 may also include but is not limited to steps S501 to S503:
[0113] Step S501, concatenating the node spatial features and the node temporal features to obtain fused features;
[0114] Step S502, inputting the fused features into a feedforward neural network for feature mapping to obtain network prediction information at the next moment, wherein the network prediction information includes network structure information and node feature information;
[0115] Step S503, determining a network status prediction graph according to 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 convolution layer and the temporal convolution layer to obtain a fusion feature. The fusion method can be implemented in a splicing manner. The node spatial feature and the node temporal feature are spliced into a fusion feature through the fusion layer to facilitate the processing of the subsequent prediction layer. The fusion layer is specifically represented as follows:
[0117] Z′=Fusion(Z,Y);
[0118] Among them, Z is the output of the graph convolution layer, and Y is the output of the temporal convolution layer.
[0119] In step S502 of some embodiments, the fused features represent the spatiotemporal features of the network knowledge graph, and the fused features are predicted by the prediction layer to obtain the network prediction information at the next moment, which includes the network structure information at the next moment and the node feature information at the next moment. The network structure information reflects the change of the network topology, and the node feature information includes traffic, bandwidth, delay, jitter, packet loss rate, etc. The prediction layer is implemented by a feedforward neural network (Fully Connected Layer, FC), and the prediction layer is expressed as follows:
[0120] FC(Z′)=W′Z′+b′;
[0121] Among them, 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 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 moment (such as traffic, bandwidth, latency, jitter, packet loss rate, etc.), as well as the node connection relationship at the next moment, the change of the edge, etc. The network prediction information at the next moment represented by the natural text is stored in the graph database to construct the network status prediction map at the next moment.
[0123] According to some embodiments of the present application, the TGNN model generally extracts network graph data and node feature data from the network knowledge graph, constructs a graph structure and time series data, and then captures the spatial dependencies between nodes through a graph convolution layer (GCN), captures the temporal dependencies of node states through a temporal convolution layer (TCN), fuses spatiotemporal features, performs feature predictions at the next moment, and finally outputs 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 topological evolution.
[0124] See also Figure 6 In some embodiments, the dynamic network routing method of the embodiment of the present application may also include but is not limited to steps S601 to S603:
[0125] Step S601, collecting network monitoring data at the next moment, and determining the real network information at the next moment according to the network monitoring data;
[0126] Step S602, determining the prediction error of the time series graph neural network according to the real network information and the network prediction information;
[0127] Step S603, updating the parameters of the timing graph neural network according to the prediction error.
[0128] In this embodiment, after the prediction period arrives, the collected real network information will usually conflict with the previously stored network prediction information. Specifically, the real network information comes from the actual network and is more accurate than the prediction data. The collected real network information needs to replace the network prediction data of 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 network data collected in real time will overwrite the previously stored network prediction results. The data in the graph database always remains consistent with reality and can reflect the actual status of the current network.
[0129] Please refer to Fig.13, after extracting the real network data at different times (i.e., network knowledge graph) based on the telemetry data at different times, the network knowledge graph is input into the TGNN model to obtain the predicted value for the next time (i.e., network prediction data), and the predicted value is updated to the network status graph database. When the real network data of the corresponding time arrives, the predicted value of the corresponding time in the network status graph database is overwritten with real-time data. And compare the real value (i.e., the real network data) with the predicted value. If the real data differs greatly from the predicted result, it may indicate that the model's prediction is biased, or that some spatiotemporal changes or external factors are not captured. Therefore, after comparing the network prediction data with the real network data to obtain the prediction error, the model can be optimized, which can be achieved in the following ways:
[0130] Model tuning: that is, tuning the TGNN model according to the prediction error, including adjusting the model parameters, hyperparameters and optimization algorithms.
[0131] Feature adjustment: that is, if some unconsidered factors (such as changes in network topology, fluctuations in external network traffic, etc.) lead to large prediction errors, the features of the model input need to be expanded or adjusted.
[0132] Iterative update: In graph neural networks, as time goes by, the network graph is constantly updated, and new network states, node features, connection relationships, etc. are also updated. Therefore, the model will be iteratively trained regularly to ensure that it can always adapt to dynamic changes in the network. After each model training is completed, the new prediction data will be input into the graph database again so that network path planning can be carried out in advance based on the predicted network state prediction graph.
[0133] In step S104 of some embodiments, the graph convolutional network (GCN) and the temporal convolutional network (TCN) in the TGNN model are used to integrate the spatiotemporal characteristics of the network topology, model and predict the dynamic changes of the cross-domain network, realize the prediction of node characteristics (delay, bandwidth, packet loss rate) and network topology evolution, obtain the network status prediction map at the next moment, and then plan the network routing path in advance according to the network status prediction map at the next moment. Compared with the method of collecting the actual network status data and then planning the route, this embodiment can improve the network routing efficiency and network stability and improve the user experience for users by predicting the network topology and planning the network path in advance when facing the route planning of complex cross-domain networks and the calculation time.
[0134] See also Figure 7 In some embodiments, step S104 may include but is not limited to steps S701 to S702:
[0135] Step S701, obtaining path planning requirement information, wherein the path planning requirement information includes a source network node, a target network node and a path optimization function, and the path optimization function includes multiple optimization objectives and their weights;
[0136] Step S702 , with the optimization of the path optimization function as the goal, a path search is performed on the network state prediction graph at the next moment according to 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 may be network indicators such as latency, jitter, and packet loss. Exemplarily, 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 weight parameters corresponding to latency, jitter, and packet loss. w4 corresponds to other weight parameters that may affect network access quality. The weight parameters indicate the importance of each network indicator to the optimal path calculation.
[0140] In step S702 of some embodiments, the goal of optimizing the routing optimization function may refer to maximizing the value of the routing optimization function or minimizing the value of the routing optimization function. For a routing optimization function composed of negative network indicators (such as delay, jitter, and packet loss), the goal is to minimize the value of the routing optimization function; for a routing optimization function composed of positive network indicators (such as network speed), the goal is to maximize the value of the routing optimization function. With the optimization of the path optimization function as the goal, the optimal routing path from the source network node to the target network node is searched in the network state prediction map at the next moment.
[0141] Exemplarily, an optimal path is calculated based on the network prediction graph of the prediction period, which can maximize network performance indicators (such as minimizing delay, jitter, packet loss, etc.) and consider resource consumption between each node and connection, as follows:
[0142] First, clarify the optimal path indicators:
[0143] Minimize latency: When selecting a path from a source node to a destination node in the network, minimize the overall latency of the path.
[0144] Minimize jitter: Jitter refers to the delay variation of data packet transmission. Excessive jitter will affect the stability of the network. Therefore, when selecting a path, avoid links with excessive fluctuations.
[0145] Minimize packet loss rate: Select a path with a lower packet loss rate to improve network reliability.
[0146] In practical applications, multiple factors such as delay, jitter and packet loss are comprehensively considered to form a multi-objective optimization problem. The weight of each network indicator is set in a weighted manner to obtain the routing optimization function.
[0147] Secondly, the optimal path is solved:
[0148] In neo4j, the nodes and relationships of the network status prediction graph already contain all the network indicators that need to be evaluated. You only need to set different weights for different indicators 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 obtaining the input in 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 algorithm library of neo4j. The result display area can display the optimal path and the alternative paths.
[0150] Furthermore, this embodiment can use methods such as SDN to achieve the optimal path. The core advantage of SDN lies in centralized control and plane separation, so that the network routing decision can be made uniformly on the control plane. The SDN controller can dynamically adjust the path of the data flow to ensure that the traffic always takes the optimal route. The calculated optimal path information is fed back to the SDN controller, and the SDN controller sends down the flow table rules through the control plane to ensure that the data flow is transmitted along the optimal path.
[0151] According to some embodiments of the present 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. The embodiment of the present application introduces the TGNN model, which can comprehensively analyze the multi-dimensional information and timing changes of network nodes and edges, and select the optimal path for each data packet. Specifically, in a cross-domain network environment, the network state changes frequently (such as changes in network topology, delay jitter, bandwidth fluctuations, load, etc.). The embodiment of the present application uses TGNN to perform deep learning and analysis on the timing characteristics of the network state, so that the network routing can be dynamically optimized, effectively reducing the packet loss rate, improving transmission efficiency and network stability. The method of the embodiment of the present application can be applied not only to specific application scenarios such as cross-border e-commerce, but also to any network environment that requires cross-domain communication, including but not limited to cloud computing, data centers, the Internet of Things, big data transmission and other scenarios.
[0152] A specific embodiment will be described in detail below, illustrating the process of collecting data by combining network monitoring tools such as MTR and NetFlow, the process of building a TGNN model, and the process of cross-domain routing optimization using the TGNN model.
[0153] First, collect data from cross-domain networks through network monitoring tools such as MTR and NetFlow. In order to ensure that the collected data can accurately reflect the real-time status of the network, the collection process needs to consider the distribution of multiple operator networks and different geographical locations. The following are the specific steps in the implementation process:
[0154] S11, MTR and NetFlow tool configuration and data collection.
[0155] MTR tool configuration, MTR tool can continuously track the path from the source address to the destination address through Ping and Traceroute functions, and record the network delay, packet loss rate and other information of each hop. For cross-domain routing optimization, it is very important to obtain the delay and packet loss rate data of all intermediate nodes (such as routers, switches, etc.) from the source to the destination. Call MTR through Python scripts, perform network diagnosis regularly and automatically generate diagnostic reports to obtain these important network performance indicators.
[0156] NetFlow tool configuration, NetFlow provides detailed network traffic data including traffic, delay, packet loss, source / destination IP, port information, etc. through statistical analysis of router and switch traffic. In cross-domain routing optimization, NetFlow data helps to analyze and identify network bottlenecks, abnormal traffic and network load. Collect traffic statistics from NetFlow through Python scripts, including transmission delay, bandwidth, traffic, etc. of each flow.
[0157] S12, data cleaning and formatting.
[0158] The collected MTR and NetFlow data may contain invalid, duplicate or inconsistently formatted records, which need to be cleaned and formatted. First, delete duplicate, invalid or missing records. Second, process sudden abnormal data caused by network fluctuations, such as sudden packet loss or extremely high latency. Through the cleaning process, the accuracy and consistency of the data are improved to avoid deviations in subsequent optimization results due to collection errors.
[0159] Data formatting is the prerequisite for ensuring that different data sources can be used in conjunction with each other. Convert MTR and NetFlow data into a unified format to ensure that each piece of data contains the necessary timestamp, network device information, traffic information, latency, packet loss rate, etc.
[0160] S13, data storage and management.
[0161] In order to process and analyze data more efficiently, all cleaned data will be stored in a MySQL database. Through the database management system, large-scale network data can be quickly queried, updated, and managed. At the same time, scripts are used to automate the data storage and processing process, facilitating data retrieval and subsequent analysis.
[0162] Secondly, use the collected data to construct and update the network knowledge graph in real time.
[0163] S21, graph database selection.
[0164] In order to more efficiently represent and manage the node and edge relationships in the cross-domain network, a graph database (such as Neo4j) is used for data storage and query. Graph databases are very suitable for processing multi-dimensional relationships of network devices, paths, traffic, and other data, and can efficiently support complex queries between nodes.
[0165] S22, node design.
[0166] Network node: represents the devices in the network, such as routers, switches, servers, etc. Each node has attributes, such as node name, IP address, device type, geographic location, operator, etc.
[0167] Network path node: represents the path across different network devices. Each path has attributes such as starting node, ending node, path delay, packet loss rate, jitter, bandwidth, etc.
[0168] Traffic node: represents traffic information in the network. Each traffic node contains information such as source IP, destination IP, port, transmission delay, bandwidth, etc.
[0169] S23, construct a network knowledge graph.
[0170] The data collected by MTR and NetFlow are converted into nodes in the graph database. Each network device (such as routers and switches) is regarded as a network node, each path across different devices is regarded as a path node, and each network flow is regarded as a flow node. According to the collected data, the relationship between nodes is established. For example, network nodes are connected through path nodes, and path nodes are connected through flow nodes. All nodes and relationships constitute the knowledge graph of the cross-domain network. The network knowledge graph not only helps to describe the network topology, but also provides the required 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] The Temporal Graph Neural Network (TGNN) is selected as the model architecture. The Temporal Graph Neural Network is a deep learning model that can process graph data with time changes. Unlike traditional graph neural networks (GNN), TGNN can learn the dynamic characteristics of nodes and edges in the graph that change over time, and is suitable for network routing optimization problems with time changes.
[0174] S32, data input and preprocessing.
[0175] Input data: The input of the TGNN model is the graph feature data after the network knowledge graph is constructed, including the time series data of network nodes, paths, and traffic. Before the data is input into TGNN, it needs to be further processed into a format suitable for model training.
[0176] Time series feature extraction: The state of the network (such as bandwidth, latency, packet loss rate, load, etc.) will change over time, and TGNN needs to extract time series features from this data. The time series data is divided into fixed time windows, and the data of each time window is standardized so that the model can learn the changing laws of network performance.
[0177] S33, model training.
[0178] The parameters of the graph convolution layer, temporal convolution layer, and prediction layer in the main training model.
[0179] Graph convolution layer: TGNN operates on the network graph through the graph convolution layer (GCN) to learn the characteristics of each node. In cross-domain routing optimization, GCN can help the model capture the relationship and mutual influence between nodes.
[0180] Temporal convolutional layer: In order to capture the dynamic characteristics of network states changing over time, TGNN uses a temporal modeling layer such as a recurrent neural network (RNN) or a long short-term memory network (LSTM), which can learn the temporal dependencies of network states from time series.
[0181] Loss function and optimization: The mean square error (MSE) is used as the loss function to optimize the routing performance indicators (such as latency, bandwidth, etc.) 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 a graph neural network, as time goes by, the network graph is constantly updated, and new network states, node features, connection relationships, etc. are also updated. Therefore, the model is regularly iterated and trained to ensure that it can always adapt to dynamic changes in the network. After each model training is completed, the new prediction data will be input into the graph database again to provide a basis for future predictions.
[0184] Finally, routing control and implementation.
[0185] After the TGNN model training is completed, the graph database contains the network status of the predicted period. According to the preset network performance indicator weights (including latency, bandwidth, jitter, packet loss, load and other multi-dimensional factors) combined with the shortest path algorithm, the best path is calculated and the results are fed back to the network control system. In actual deployment, the optimal routing results will be integrated into the SDN (software defined network) controller. The SDN controller can dynamically select paths based on the predicted results by centrally managing network traffic and routing tables.
[0186] See also Figure 8 The embodiment of the present application also provides a dynamic optimization network routing system, including:
[0187] The first module is used to collect network monitoring data with timestamps;
[0188] The second module is used to parse the network monitoring data and create nodes and relationships of the network knowledge graph, wherein the attribute data of the nodes in the network knowledge graph includes a timestamp;
[0189] The third module is used to predict the network knowledge graph using a time-series graph neural network to obtain a predicted network state graph at the next moment;
[0190] The fourth module is used to plan the network routing path based on the network status prediction graph at the next moment.
[0191] It can be understood that the contents of the above-mentioned dynamic optimization network routing method embodiment are all applicable to the present system embodiment, the functions specifically implemented by the present system embodiment are the same as those in the above-mentioned dynamic optimization network routing method embodiment, and the beneficial effects achieved are also the same as those achieved by the above-mentioned dynamic optimization network routing method embodiment.
[0192] The embodiment of the present application also provides an electronic device, the electronic device comprising: a memory, a processor, a program stored in the memory and executable on the processor, and a data bus for realizing connection and communication between the processor and the memory, and the program is executed by the processor to realize the above-mentioned dynamic optimization network routing method. The electronic device can be any intelligent terminal including a tablet computer, a car computer, etc.
[0193] See also Fig. 9 , Fig. 9 The hardware structure of an electronic device of another embodiment is illustrated, and the electronic device includes:
[0194] The processor 901 may be implemented by a general-purpose CPU (Central Processing Unit), a microprocessor, an 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 the present application;
[0195] The memory 902 can be implemented in the form of a read-only memory (ROM), a static storage device, a dynamic storage device, or a random access memory (RAM). The memory 902 can store an operating system and other application programs. When the technical solution provided in the embodiment of this specification is implemented by software or firmware, the relevant program code is stored in the memory 902, and the processor 901 calls and executes the dynamic optimization network routing method of the embodiment of the present application;
[0196] Input / output interface 903, used to implement information input and output;
[0197] Communication interface 904, used to realize communication interaction between the device and other devices, which can be realized by wired mode (such as USB, network cable, etc.) or wireless mode (such as mobile network, WIFI, Bluetooth, etc.);
[0198] A bus 905 that transmits information between various components of the device (e.g., the processor 901, the memory 902, the input / output interface 903, and the communication interface 904);
[0199] The processor 901 , the memory 902 , the input / output interface 903 and the communication interface 904 are connected to each other in communication within the device via a bus 905 .
[0200] An embodiment of the present application also provides a storage medium, which is a computer-readable storage medium used for computer-readable storage. The storage medium stores one or more programs, and the one or more programs can be executed by one or more processors to implement the above-mentioned dynamic optimization network routing method.
[0201] The memory, as a non-transient computer-readable storage medium, can be used to store non-transient software programs and non-transient computer executable programs. In addition, the memory may include a high-speed random access memory, and may also include a non-transient memory, such as at least one disk storage device, a flash memory device, or other non-transient solid-state storage device. In some embodiments, the memory may optionally include a memory remotely disposed relative to the processor, and these remote memories may be connected to the processor via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.
[0202] The embodiments described in the embodiments of the present application are intended to more clearly illustrate the technical solutions of the embodiments of the present application and do not constitute a limitation on the technical solutions provided in the embodiments of the present application. Those skilled in the art will appreciate that with the evolution of technology and the emergence of new application scenarios, the technical solutions provided in the embodiments of the present application are also applicable to similar technical problems.
[0203] Those skilled in the art will appreciate that the technical solutions shown in the figures do not constitute a limitation on the embodiments of the present application, and may include more or fewer steps than shown in the figures, or a combination of certain steps, or different steps.
[0204] The system embodiments described above are merely illustrative, and the units described as separate components may or may not be physically separated, that is, they may be located in one place or distributed on multiple network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the present embodiment.
[0205] Those skilled in the art will appreciate that all or some of the steps in the methods disclosed above, and the functional modules / units in the systems and devices may be implemented as software, firmware, hardware, or a suitable combination thereof.
[0206] The terms "first", "second", "third", "fourth", etc. (if any) in the specification of the present application and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchangeable where appropriate, so that the embodiments of the present application described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any of their variations are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device comprising a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.
[0207] It should be understood that in the present application, "at least one (item)" means one or more, and "plurality" means two or more. "And / or" is used to describe the association relationship of associated objects, indicating that three relationships may exist. For example, "A and / or B" can mean: only A exists, only B exists, and A and B exist at the same time, where A and B can be singular or plural. The character " / " generally indicates that the objects associated before and after are in an "or" relationship. "At least one of the following" or similar expressions refers to any combination of these items, including any combination of single or plural items. For example, at least one of a, b or c can mean: a, b, c, "a and b", "a and c", "b and c", or "a and b and c", where a, b, c can be single or multiple.
[0208] In the several embodiments provided in the present 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 only schematic. For example, the division of the above units is only a logical function division. There may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of systems or units, which can be electrical, mechanical or other forms.
[0209] The units described above as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0210] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.
[0211] If the integrated unit is implemented in the form of 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 the present application, 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, and the computer software product is stored in a storage medium, including multiple instructions to enable a computer device (which can be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods of various embodiments of the present application. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (Read-Only Memory, referred to as ROM), random access memory (Random Access Memory, referred to as RAM), disk or optical disk and other media that can store programs.
[0212] The preferred embodiments of the present application are described above with reference to the accompanying drawings, but the scope of the rights of the present application is not limited thereto. Any modification, equivalent substitution and improvement made by a person skilled in the art without departing from the scope and essence of the present application should be within the scope of the rights of the present application.
Claims
1. A method for dynamically optimizing network routing, characterized in that: The following steps are involved: Collect network monitoring data with timestamps; Parsing the network monitoring data and creating nodes and relationships of a network knowledge graph, wherein the attribute data of the nodes in the network knowledge graph includes a timestamp; A time-series graph neural network is used to predict the network knowledge graph to obtain a network state prediction graph at the next moment; The network routing path is planned according to the network status prediction graph at the next moment.
2. The method for dynamically optimizing network routing according to claim 1, characterized in that: The parsing of the network monitoring data and mapping to nodes and relationships of a network knowledge graph comprises the following steps: Parsing target data from the network monitoring data according to graph design rules, wherein the graph design rules are used to define node types, node attributes, relationship types, and relationship attributes of the network knowledge graph; Creating nodes and relationships between nodes of a network knowledge graph according to the target data; Among them, the node types include network nodes, network path nodes, flow nodes and time nodes, and the relationship types include connection relationships, path relationships, flow relationships and time relationships.
3. The method for dynamically optimizing network routing according to claim 1, characterized in that: The method of using a time-series graph neural network to predict the network knowledge graph to obtain a network state prediction graph at the next moment includes the following steps: Performing node feature representation, structural feature representation and node time series representation on the network knowledge graph respectively to obtain network input data, wherein the network input data includes a node feature matrix, an adjacency matrix and time series features; Extracting features from the network input data to obtain node spatial features and node temporal features; Feature prediction is performed based on the node spatial features and the node temporal features to obtain a network status prediction graph at the next moment.
4. The method for dynamically optimizing network routing according to claim 3, characterized in that: The feature extraction of the network input data to obtain node spatial features and node temporal features includes the following steps: Inputting the network input data into the graph convolution layer to aggregate neighbor node features to obtain node spatial features; The network input data is input into the time convolution layer to aggregate node historical features to obtain node time series features.
5. The method for dynamically optimizing network routing according to claim 3, characterized in that: The step of performing feature prediction based on the node spatial features and the node temporal features to obtain a network state prediction graph at the next moment includes the following steps: The node spatial feature and the node temporal feature are concatenated to obtain a fusion feature; Inputting the fused features into a feedforward neural network for feature mapping to obtain network prediction information at the next moment, wherein the network prediction information includes network structure information and node feature information; A network status prediction map is determined based on the network prediction information at the next moment.
6. The method for dynamically optimizing network routing according to claim 5, characterized in that: The method for dynamically optimizing network routing also includes the following steps: Collecting network monitoring data at the next moment, and determining the real network information at the next moment based on the network monitoring data; Determine the prediction error of the timing graph neural network according to the real network information and the network prediction information; The parameters of the timing graph neural network are updated according to the prediction error.
7. The method for dynamically optimizing network routing according to any one of claims 1 to 6, characterized in that: The network routing path planning according to the network state prediction graph at the next moment includes the following steps: Acquire path planning requirement information, wherein the path planning requirement information includes a source network node, a target network node, and a 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 moment according to the source network node and the target network node to obtain an optimal routing path.
8. A dynamic optimization network routing system, characterized in that: include: The first module is used to collect network monitoring data with timestamps; A second module is used to parse the network monitoring data and create nodes and relationships of a network knowledge graph, wherein the attribute data of the nodes in the network knowledge graph includes a timestamp; The third module is used to predict the network knowledge graph using a time-series graph neural network to obtain a network state prediction graph at the next moment; The fourth module is used to plan the network routing path according to the network status prediction map at the next moment.
9. 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 realizing connection and communication between the processor and the memory. When the program is executed by the processor, the steps of the method described in any one of claims 1 to 7 are realized.
10. A storage medium, the storage medium being a computer-readable storage medium, used for computer-readable storage, characterized in that: The storage medium stores one or more programs, and the one or more programs can be executed by one or more processors to implement the steps of any one of claims 1 to 7.
Citation Information
Patent Citations
Self-adaptive routing method, system and equipment oriented to high-dynamic network topology
CN114124823A
Method, system and equipment for graph neural network training and wireless cell fault prediction
CN115426671A
DDoS (Distributed Denial of Service) attack detection method and device in SDN (Software Defined Network) environment
CN117834291A
Network routing mechanism vulnerability analysis method based on knowledge graph
CN117834508A
Traffic flow prediction method and system, storage medium, computer equipment and terminal
CN118411825A
Cited By
Mobile ad hoc network multipath routing method and device, storage medium and communication method
CN120151978A