Network flow path allocation method and device, electronic equipment and storage medium

By constructing a path capacity matrix and a path capacity matrix for feature extraction network flows, and combining the information exchange between network flows and other network flows, path allocation is optimized, solving the problem of topology being ignored in computing power network architecture, improving network performance and reducing network congestion risk.

CN119052197BActive Publication Date: 2026-03-24PENG CHENG LAB
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-07-24
Publication Date
2026-03-24

AI Technical Summary

Technical Problem

In computing network architecture, existing machine learning methods do not fully consider the relationship between topology and traffic, leading to network congestion and performance degradation.

Method used

By constructing a path capacity matrix, feature extraction, message passing updates, and mapping processing are performed using a path allocation model. Combining the information exchange between network flows and other networks, feature extraction and mapping processing are performed through the path capacity matrix, and path allocation is optimized by considering the relationship between network flows and other network flows.

Benefits of technology

It enables adaptive optimization of network traffic allocation, improves network performance, and reduces the risk of network congestion.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119052197B_ABST
    Figure CN119052197B_ABST
Patent Text Reader

Abstract

The application discloses a path allocation method and device of a network flow, an electronic device and a storage medium. The traffic demand and a path capacity matrix are input into a path allocation model, so that the path allocation model can fully focus on a preconfigured transmission path, that is, a topology structure when processing. A predicted path allocation ratio is obtained through the path allocation model. When it is detected that a distribution of the predicted path allocation ratio meets a preset constraint condition, the predicted path allocation ratio is taken as a target path allocation ratio distribution of the network flow. The application combines the topology structure of network flow transmission and the relationship with other network flows. The obtained target path allocation ratio distribution can realize adaptive optimization of traffic allocation of the network, thereby improving the overall performance of the network and reducing the risk of network congestion.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of network multi-path transmission, and particularly relates to a path allocation method and device for network flow, an electronic device and a storage medium. BACKGROUND

[0002] With the emergence of computing power network architecture, centralized machine learning has become a powerful tool to solve the problem of multi-path transmission. The core idea of SDN is to decouple the control plane and data plane of the network, and introduce a centralized controller to effectively manage the entire network. This architecture enhances the flexibility and programmability of the network. The centralized control architecture of computing power network provides a unified interface for centralized machine learning, making it easier to integrate into network management. This centralized management mode eliminates the bottleneck of decentralized control in traditional networks, creating favorable conditions for the introduction of intelligent solutions. With the widespread adoption of SDN, network administrators can intuitively monitor and control the network, obtaining real-time traffic and device status information. This provides machine learning algorithms with richer and more real-time data sources, enabling them to more accurately model network states, predict traffic changes, and adjust network configurations as needed.

[0003] However, in current machine learning methods for solving multi-path transmission problems under the computing power network architecture, the topology, i.e. the transmission path of traffic, is often ignored, and the relationship between traffic and other traffic is not considered, which can lead to network congestion and performance degradation. SUMMARY

[0004] The present application aims to at least solve one of the technical problems existing in the prior art. To this end, the present application proposes a path allocation method and device for network flow, an electronic device and a storage medium, which can improve network performance and reduce the risk of network congestion.

[0005] To achieve the above-mentioned purpose, a first aspect embodiment of the present application provides a path allocation method for network flow, characterized by a multi-path scheduling controller applied in a computing power network system for multi-path transmission, wherein the computing power network system for multi-path transmission further comprises a plurality of network nodes, each of the network nodes is connected to each other, and the multi-path controller is connected to each of the network nodes.

[0006] The method comprises:

[0007] obtaining the traffic demand of the network flow;

[0008] determining a preset number of preconfigured transmission paths based on the source node and the destination node of the network flow; wherein the source node and the destination node are both one of the plurality of network nodes;

[0009] constructing a path capacity matrix of the preconfigured transmission path;

[0010] The traffic demand and the path capacity matrix are input into the path allocation model; the path allocation model includes a feature extraction layer, a message passing aggregation layer, and a readout layer.

[0011] The feature extraction layer performs feature extraction processing on the traffic demand and the path capacity matrix to obtain the first network flow feature;

[0012] The first network flow feature is updated by message passing through the message passing layer to obtain the second network flow feature;

[0013] The second network flow features are mapped through the readout layer to obtain the predicted path allocation ratio distribution of the network flow on each of the pre-configured transmission paths.

[0014] The system detects whether the predicted path allocation ratio meets the preset constraints. When the predicted path allocation ratio distribution meets the preset constraints, the predicted path allocation ratio is used as the target path allocation ratio distribution of the network flow.

[0015] According to some embodiments of this application, constructing the path capacity matrix of the pre-configured transmission path includes:

[0016] Determine the links traversed by each of the pre-configured transmission paths;

[0017] Obtain the link capacity of the route;

[0018] The path capacity matrix is ​​constructed based on the link capacity.

[0019] According to some embodiments of this application, the step of performing message passing update processing on the first network flow feature through the message passing layer to obtain the second network flow feature includes:

[0020] Based on the path links of the pre-configured transmission path of the network flow, neighboring network flows adjacent to the network flow are determined; wherein, the neighboring network flows have at least one path link that is the same as the network flow.

[0021] The first network flow feature and each first adjacent network flow feature are sequentially processed by message passing to obtain multiple message passing features; wherein, the first adjacent network flow feature is obtained by the feature extraction layer by performing feature extraction processing on the adjacent network flows;

[0022] The multiple message passing features are aggregated to obtain aggregated features;

[0023] The aggregated features are updated based on the gated loop unit to obtain the updated features;

[0024] Repeat the above steps until the number of iterations reaches the preset iteration threshold, and use the finally obtained updated feature as the second network flow feature.

[0025] According to some embodiments of this application, the step of mapping the second network flow features through the readout layer to obtain the predicted path allocation ratio distribution of the network flow on each of the pre-configured transmission paths includes:

[0026] By establishing mapping associations between the second network flow features and a preset number of pre-configured transmission paths, a preset number of associated features are obtained;

[0027] The associated features are input into the reading function to obtain the predicted path allocation ratio distribution of the network flow on each of the pre-configured transmission paths.

[0028] According to some embodiments of this application, the preset constraint condition includes a first constraint condition, which is:

[0029]

[0030] Where, σ s,d (p) represents the allocation ratio of the pre-configured transmission path P; s represents the source node of the network flow; d represents the destination node of the network flow; p represents the pre-configured transmission path; P s,d V represents the set of pre-configured transmission paths from source node s to destination node d; V represents the set of network nodes.

[0031] According to some embodiments of this application, the preset constraint condition includes a second constraint condition, which is:

[0032]

[0033] Where, σ s,d (p) represents the allocation ratio of the pre-configured transmission path P; s represents the source node of the network flow; d represents the destination node of the network flow; p represents the pre-configured transmission path; P s,d V represents the set of pre-configured transmission paths from source node s to destination node d; V represents the set of network nodes.

[0034] According to some embodiments of this application, the preset constraint condition includes a third constraint condition, which is:

[0035]

[0036] Where, σ s,d(p) represents the allocation ratio of the pre-configured transmission path P; s represents the source node of the network flow; d represents the destination node of the network flow; p represents the pre-configured transmission path; P s,d The set of pre-configured transmission paths representing the path from source node s to destination node d; f represents the traffic demand of the network flow; F s,d c(e) represents the set of network flow demand from the source node to the destination node d; c(e) represents the link capacity of the path; E represents the set of path links.

[0037] To achieve the above objectives, a second aspect of this application provides a network flow path allocation device, which is applied to a multi-path scheduling controller in a computing power network system with multi-path transmission. The computing power network system with multi-path transmission further includes multiple network nodes, each of which is interconnected with the others, and the multi-path controller is connected to each of the network nodes respectively.

[0038] The device includes:

[0039] The acquisition module is used to acquire the network flow traffic demand.

[0040] The determining module is used to determine a preset number of pre-configured transmission paths based on the source node and destination node of the network flow; wherein the source node and the destination node are both one of the plurality of network nodes;

[0041] A construction module is used to construct the path capacity matrix of the pre-configured transmission path;

[0042] The input module is used to input the traffic demand and the path capacity matrix into the path allocation model; the path allocation model includes a feature extraction layer, a message passing aggregation layer, and a readout layer;

[0043] The feature extraction module is used to perform feature extraction processing on the traffic demand and the path capacity matrix through the feature extraction layer to obtain the first network flow features;

[0044] The message passing update module is used to perform message passing update processing on the first network flow feature through the message passing layer to obtain the second network flow feature;

[0045] The mapping module is used to map the second network flow features through the readout layer to obtain the predicted path allocation ratio distribution of the network flow on each of the pre-configured transmission paths;

[0046] The detection module is used to detect whether the predicted path allocation ratio meets the preset constraints. When the predicted path allocation ratio distribution is detected to meet the preset constraints, the predicted path allocation ratio is used as the target path allocation ratio distribution of the network flow.

[0047] To achieve the above objectives, a third aspect of this application provides an electronic device, which includes a memory and a processor. The memory stores a computer program, and the processor executes the computer program to implement the network flow path allocation method described in any one of the first aspects of the embodiment.

[0048] To achieve the above objectives, a fourth aspect of this application provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the network flow path allocation method described in any one of the first aspects of the embodiment.

[0049] This application discloses a network flow path allocation method, apparatus, electronic device, and storage medium. The method inputs a traffic demand and path capacity matrix into a path allocation model, enabling the model to fully consider pre-configured transmission paths, i.e., the topology, during processing. Within the path allocation model, a feature extraction layer extracts features from the traffic demand and path capacity matrix to obtain first network flow features. A message passing layer then updates these first network flow features to obtain second network flow features. During this message passing update process, information exchange between network flows and other network flows is achieved. This ensures that the predicted path allocation ratio distribution obtained through the readout layer fully considers the relationship between network flows and other network flows. When the predicted path allocation ratio distribution is found to meet preset constraints, it is used as the target path allocation ratio distribution for the network flow. Thus, this application's network flow path allocation method, combining the network flow transmission topology and its relationship with other network flows, achieves adaptive optimization of network traffic allocation, thereby improving overall network performance and reducing the risk of network congestion.

[0050] Additional aspects and advantages of this application will be set forth in part in the description which follows, and in part will be obvious from the description, or may be learned by practice of this application. Attached Figure Description

[0051] The present application will be further described below with reference to the accompanying drawings and embodiments, wherein:

[0052] Figure 1 This is a schematic diagram of the structure of a computing network system for multipath transmission according to an embodiment of this application;

[0053] Figure 2This is a flowchart illustrating the steps of a path allocation method for network flows according to an embodiment of this application.

[0054] Figure 3 This is a schematic diagram illustrating the processing procedure of the path allocation model in an embodiment of this application;

[0055] Figure 4 for Figure 2 A detailed flowchart of step S230;

[0056] Figure 5 for Figure 2 A detailed flowchart of step S260;

[0057] Figure 6 for Figure 2 A detailed flowchart of step S270;

[0058] Figure 7 This is a schematic diagram of the network flow path allocation device according to an embodiment of this application;

[0059] Figure 8 This is a schematic diagram of the structure of an electronic device according to an embodiment of this application. Detailed Implementation

[0060] The embodiments of this application are described in detail below. Examples of these embodiments are shown in the accompanying drawings, wherein the same or similar reference numerals denote the same or similar elements or elements having the same or similar functions throughout. The embodiments described below with reference to the accompanying drawings are exemplary and are only used to explain this application, and should not be construed as limiting this application.

[0061] In the description of this application, it should be understood that the orientation descriptions, such as up, down, front, back, left, right, etc., indicate the orientation or positional relationship based on the orientation or positional relationship shown in the accompanying drawings. They are only for the convenience of describing this application and simplifying the description, and do not indicate or imply that the device or element referred to must have a specific orientation, or be constructed and operated in a specific orientation. Therefore, they should not be construed as limitations on this application.

[0062] In the description of this application, "several" means one or more, "multiple" means two or more, "greater than," "less than," and "exceeding" are understood to exclude the stated number, while "above," "below," and "within" are understood to include the stated number. The use of "first" and "second" in the description is merely for distinguishing technical features and should not be construed as indicating or implying relative importance, or implicitly indicating the number of indicated technical features, or implicitly indicating the order of the indicated technical features.

[0063] In the description of this application, unless otherwise expressly defined, terms such as "setup," "installation," and "connection" should be interpreted broadly, and those skilled in the art can reasonably determine the specific meaning of the above terms in this application in conjunction with the specific content of the technical solution.

[0064] In the description of this application, the terms "one embodiment," "some embodiments," "illustrative embodiment," "example," "specific example," or "some examples," etc., refer to specific features, structures, materials, or characteristics described in connection with that embodiment or example, which are included in at least one embodiment or example of this application. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in one or more embodiments or examples.

[0065] First, let's analyze some of the terms used in this application:

[0066] In-band Network Telemetry (INT) is a hybrid measurement technology that uses data plane traffic to collect, carry, organize, and report network status information, without using separate control plane management traffic. INT typically comprises three main functional nodes: INT Source, INTSink, and INT Transit Hop. INT Source: Responsible for indicating the traffic requiring information collection and the type of information to be collected. When a data packet arrives at the INT Source, an INT header is added, containing an instruction set (INT Instruction) specifying the type of information to be collected. INT Transit Hop: All devices on the line that support INT telemetry. When packets are forwarded to these nodes, the devices collect the corresponding information (INTMetadata) according to the instruction set in the INT header and insert it into the INT packet. INT Sink: Responsible for organizing the received information and reporting it to monitoring equipment. When a packet arrives at the INT Sink, all INT information is popped out and forwarded to the telemetry server via an appropriate method (such as gRPC).

[0067] Message Passing Neural Network (MPNN): A graph neural network model based on a message-passing mechanism. Its core idea is to update the feature representation of nodes by passing messages between nodes in the graph. This message-passing process is essentially a local-to-global aggregation process, modeling the local information of each node through a neural network and then integrating it with global information. The MPNN framework mainly consists of two steps: message passing and node updating. Message Passing: In this step, each node receives information from its neighboring nodes and constructs a message. This message can be computed based on the features of the node and its neighbors. All messages passed from neighboring nodes are aggregated to obtain the aggregated message for the current node. The aggregation method can be summation, averaging, or other forms of weighted aggregation. Node Updating: During node updating, MPNN updates the node's representation based on its own features and the aggregated message. Typically, the node's feature representation and the aggregated message are concatenated or added to obtain a new feature representation. This new feature representation is then processed by a neural network module (such as a fully connected layer) to obtain the updated feature representation of the node.

[0068] A Gated Recurrent Unit (GRU) is a variant of a Recurrent Neural Network (RNN) used to process sequential data. Compared to traditional RNNs, GRUs perform better at capturing long-term dependencies in sequential data, while also offering higher efficiency and faster training speeds. GRUs address the vanishing and exploding gradient problems that traditional RNNs often encounter when processing long sequences by introducing two key mechanisms: the Update Gate and the Reset Gate. These gating mechanisms allow GRU units to selectively retain and update information at each time step of the sequence, effectively capturing long-term dependencies.

[0069] The centralized control architecture of computing networks provides a unified interface for centralized machine learning, making it easier to integrate into network management. This centralized management model eliminates the bottleneck of decentralized control in traditional networks, creating favorable conditions for the introduction of intelligent solutions. With the widespread adoption of SDN, network administrators can intuitively monitor and control the network, obtaining real-time traffic and device status information. This provides machine learning algorithms with richer and more real-time data sources, enabling them to more accurately model network conditions, predict traffic changes, and adjust network configurations as needed.

[0070] However, current machine learning methods for solving multipath transmission problems within computing network architectures have a significant oversight: topology is often ignored, and other traffic attributes and topology (connection information between nodes) are not considered, such as the capacity of the links the traffic needs to traverse and the end-to-end hop count. This makes these methods ineffective in addressing the challenges posed by link failures. This leads to network congestion, performance degradation, and an inability to meet users' evolving computing power service demands. For example, when a specific computing power demand suddenly increases, the demand of other traffic sharing the same public link will be affected accordingly. When traffic fluctuates significantly, this can result in poor performance.

[0071] Based on this, this application proposes a method, apparatus, electronic device, and storage medium for network flow path allocation, which can improve network performance and reduce the risk of network congestion.

[0072] The network flow path allocation method of this application embodiment can be applied to a terminal or a server. In some embodiments, the terminal can be a smartphone, tablet computer, laptop computer, desktop computer, router, programmable switch, network card, etc.; the server can be configured as an independent physical server, or as a server cluster or distributed system composed of multiple physical servers, or 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 communication, middleware services, domain name services, security services, CDN, and big data and artificial intelligence platforms; the software can be an application that implements the network flow path allocation method, etc., but is not limited to the above forms.

[0073] 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 business operations or implement specific abstract data types. This application can also be practiced in distributed computing environments where business operations are performed by remote processing devices connected via communication networks. In distributed computing environments, program modules can reside in local and remote computer storage media, including storage devices.

[0074] Reference Figure 1 , Figure 1This is a schematic diagram of the structure of a multi-path transmission computing network system according to an embodiment of this application. The multi-path transmission computing network system includes a multi-path scheduling controller, a network information collector, multiple computing clusters, and multiple switches. Each computing cluster is connected to a switch, and each switch connects to multiple other switches, thus forming a computing network. Each switch acts as a network node; typically, the source and destination nodes are the switches directly connected to the computing clusters. The network information collector is connected to each switch, and the multi-path scheduling controller is also connected to each switch, as well as to the network information collector. The network information collector collects data information from the switches. The multi-path scheduling controller executes the network flow path allocation method according to the embodiments of this application.

[0075] Reference Figure 2 ,based on Figure 1 In a multi-path transmission computing network system, the first aspect of this application proposes a path allocation method for network flows. This path allocation method for network flows is applied to... Figure 1 A multi-path transmission computing network system with a multi-path scheduling controller. Figure 2 The illustrated method flow includes, but is not limited to, steps S210 to S280.

[0076] Step S210: Obtain the network flow traffic demand;

[0077] It's important to note that in networking, a network flow typically refers to a series of data packets transmitted over a period of time between a source IP address and port combination and a destination IP address and port combination. These packets share the same five-tuple information: source IP address, destination IP address, source port number, destination port number, and transport layer protocol (such as TCP or UDP). A flow is an abstract description of this ordered, continuous, and directional data transmission process.

[0078] It is worth noting that it can be done through Figure 1 The network information collector in the model determines the traffic demand of network flows based on in-band network telemetry. Traffic demand refers to the capacity required of the link for the network flow to be transmitted. The capacity requirement of the link is the traffic demand of the network flow. In one embodiment, the traffic demand of the network flow is measured in bits per second (bps) or data packets per second.

[0079] Step S220: Determine a preset number of pre-configured transmission paths based on the source node and destination node of the network flow; wherein, the source node and the destination node are both one of multiple network nodes;

[0080] It is worth noting that for network flows, there are multiple transmission paths from the source node to the destination node. This application determines a preset number of transmission paths from multiple transmission paths as pre-configured transmission paths, which can reduce the complexity of the traffic demand matrix subsequently constructed and improve processing efficiency.

[0081] In one embodiment, the pre-configured transmission path is determined by the following steps:

[0082] Determine all transmission paths from the source node to the destination node;

[0083] Determine the number of links along each transmission path; where two adjacent network nodes constitute a link, and a link along a transmission path refers to the links along which the transmission path passes, and each transmission path includes at least one link along a transmission path.

[0084] The transmission paths are sorted in ascending order of the number of links, and the top-ranked transmission paths (a preset number) are selected as pre-configured paths.

[0085] This embodiment obtains a pre-configured transmission path through the above steps. Since the pre-configured transmission path has few links, the transmission latency will be shorter when transmitting through the pre-configured transmission path, thereby improving transmission efficiency and network performance.

[0086] Step S230: Construct the path capacity matrix of the pre-configured transmission path;

[0087] It is worth noting that the path capacity matrix of the transmission path includes information on the pre-configured transmission paths, so that when the subsequent path allocation model makes predictions, it can simultaneously focus on the network flow's traffic demand and the pre-configured transmission paths, thereby optimizing the prediction results of the path allocation model.

[0088] Step S240: Input the traffic demand and path capacity matrix into the path allocation model; the path allocation model has a feature extraction layer, a message passing aggregation layer and a readout layer;

[0089] Step S250: The feature extraction layer performs feature extraction processing on the traffic demand and path capacity matrix to obtain the first network flow features;

[0090] Step S260: The first network flow feature is updated by message passing through the message passing layer to obtain the second network flow feature;

[0091] Step S270: The second network flow features are mapped through the readout layer to obtain the predicted path allocation ratio distribution of the network flow on each pre-configured transmission path.

[0092] It is worth noting that, referring to Figure 3 , Figure 3This diagram illustrates the processing steps of the path allocation model. Based on a message-passing neural network, the model uses the input layer of this network as its feature extraction layer, transforming the traffic demand and path flow matrices into processable neural network inputs. The feature extraction layer processes these traffic demand and path capacity matrices to obtain the first network flow features. The message-passing layer of the message-passing network then serves as the message-passing aggregation layer of the path allocation model. This layer updates the first network flow features through message passing, enabling a comprehensive understanding of the dynamic changes in the overall network topology and traffic distribution. This results in the second network flow features containing richer information, providing a more accurate reference for subsequent predictions. Finally, the output layer of the message-passing neural network is used as the reading layer of the path allocation model. This reading layer maps the second network flow features to obtain the predicted path allocation ratio distribution of the network flow on each pre-configured transmission path.

[0093] Step S280: Detect whether the predicted path allocation ratio meets the preset constraints. When the predicted path allocation ratio distribution meets the preset constraints, the predicted path allocation ratio is used as the target path allocation ratio distribution of the network flow.

[0094] It is worth noting that the target path allocation ratio distribution includes the allocation ratio of each pre-configured transmission path. The allocation ratio refers to the traffic proportion of the network flow. For example, if the allocation ratio of a pre-configured transmission path is 30%, then during transmission, the pre-configured transmission path is used to transmit 30% of the traffic in the network flow.

[0095] It is worth noting that if the distribution of the predicted path allocation ratio is detected to not meet the preset constraints, steps S210 to S270 are re-executed until the distribution of the predicted path allocation ratio meets the preset constraints.

[0096] In this embodiment, steps S210 to S280 input the traffic demand and path capacity matrix into the path allocation model. This allows the path allocation model to fully consider the pre-configured transmission path, i.e., the topology, during processing. Then, within the path allocation model, a feature extraction layer extracts features from the traffic demand and path capacity matrix to obtain first network flow features. A message passing layer then updates these first network flow features to obtain second network flow features. During this message passing update process, information exchange between network flows and other network flows is achieved. This ensures that the predicted path allocation ratio distribution obtained through the readout layer fully considers the relationship between network flows and other network flows. Finally, when the predicted path allocation ratio distribution meets preset constraints, it is used as the target path allocation ratio distribution for the network flow. Thus, the network flow path allocation method of this application combines the network flow transmission topology and the relationship with other network flows. The resulting target path allocation ratio distribution enables adaptive optimization of network traffic allocation, thereby improving overall performance and reducing the risk of network congestion.

[0097] It should be noted that steps S210 to S280 are executed periodically. For example, steps S210 to S280 can be executed every 5 minutes. In this way, the network status can be monitored in real time, and the network flow can be allocated in real time. The dynamic allocation effect can be achieved, which can effectively improve the utilization rate of network resources.

[0098] In one embodiment, reference is made to Figure 4 , Figure 4 for Figure 2 A schematic diagram of a specific process in step S230. Figure 4 The illustrated steps include, but are not limited to, steps S410 to S430.

[0099] Step S410: Determine the links traversed by each pre-configured transmission path;

[0100] It is worth noting that by determining the network nodes traversed by each pre-configured transmission path, where adjacent network nodes constitute a path link, it is possible to determine the path link traversed by each pre-configured transmission path.

[0101] Step S420: Obtain the link capacity of the routed links;

[0102] It is worth noting that after determining the route, through Figure 1 The network information collector in the system determines the link capacity of the traversed links based on in-band network telemetry.

[0103] Step S430: Construct a path capacity matrix based on link capacity.

[0104] It is worth noting that the embodiments of this application also construct a traffic demand matrix based on traffic demand. (Refer to...) Figure 3 , Figure 3 The diagram illustrates the structures of the traffic demand matrix and the path capacity matrix. The traffic demand matrix has only one column, with each element representing a traffic demand. Each pre-configured transmission path corresponds to one path capacity matrix, and each traffic demand corresponds to a preset number of path capacity matrices. The path capacity matrix has only one row. In the path capacity matrix, each element represents a link. When the value of an element is not 0, it indicates that the link is a transit link, and the value of the element is the link capacity of that transit link. When the value of an element is 0, it indicates that the link is not a transit link of the pre-configured transmission path.

[0105] In this embodiment, a path capacity matrix is ​​constructed through steps S410 to S430. In step S250, the feature extraction layer concatenates a traffic demand with its corresponding pre-configured transmission path to obtain a first network flow feature corresponding to the traffic demand. The first network flow feature includes the traffic demand of the network flow and relevant information of a preset number of pre-configured transmission paths, so that when the subsequent path allocation model makes predictions, it can simultaneously focus on the traffic demand of the network flow and the pre-configured transmission paths, thereby optimizing the prediction results of the path allocation model.

[0106] In one embodiment, reference is made to Figure 5 , Figure 5 for Figure 2 A schematic diagram of a specific process in step S260. Figure 5 The illustrated process includes, but is not limited to, steps S510 to S550.

[0107] Step S510: Based on the path links of the pre-configured transmission path of the network flow, determine the adjacent network flows that are adjacent to the network flow; wherein, the adjacent network flows have at least one path link that is the same as the network flow.

[0108] It is worth noting that multiple network flows exist in a multi-path transmission computing network system. The process involves identifying adjacent network flows from among these current flows. Adjacent network flows are those that share the same path link as the current network flow. During message passing, the rule is that message passing only occurs when two network flows share the same link, allowing the current network flow to exchange information with other interacting network flows.

[0109] Step S520: Message passing processing is performed sequentially on the first network flow feature and each first adjacent network flow feature to obtain multiple message passing features; wherein, the first adjacent network flow feature is obtained by the feature extraction layer performing feature extraction processing on the adjacent network flows;

[0110] Specifically, message passing can be represented as:

[0111]

[0112] Here, Passing represents the message passing function. Characterize the message passing feature of the j-th message. The first network flow feature characterizing the current network flow; The first neighboring network flow characteristic represents the j-th neighboring network flow; t represents the time step t. Message passing processing can capture the dynamic relationships between network flows, especially their mutual influence, enhancing the path allocation model's understanding of the network state and improving its prediction accuracy.

[0113] Step S530: Aggregate multiple message passing features to obtain aggregated features;

[0114] Step S540: Update the aggregated features based on the gated recurrent unit to obtain the updated features;

[0115] Specifically, the update process can be represented as:

[0116]

[0117] Among them, at this time The update features are represented by t, the time step t is represented by Aggregation, and the aggregation function is represented by Aggregation. The `j`-th message passing feature is represented by `Update`, which represents the update function. This embodiment of the application aggregates message passing features to achieve a comprehensive understanding of the dynamic changes in the overall network topology and traffic distribution, providing a more accurate reference for subsequent decisions. The aggregation process integrates information from each network flow, paying particular attention to the dynamic relationship between the capacity of the traversed links and the traffic demand. This detailed capture of the relationship helps to better understand how traffic propagates in the network. Furthermore, using a gated recurrent unit (GRU) to update the aggregated features better captures time-series information, enabling the path allocation model to adapt to the evolution of network conditions, fully utilize previous information and current message passing results, accurately capture the dynamic evolution of traffic demand in the network, and improve the ability to model time dynamics. This allows for a more comprehensive understanding of the network state, thereby enabling more intelligent decision adjustments to meet real-time network needs.

[0118] Step S550: Repeat the above steps until the number of iterations reaches the preset iteration threshold, and use the final updated feature as the second network flow feature.

[0119] It is worth noting that steps S510 to S540 are repeated until the number of iterations reaches a preset iteration threshold, and the finally obtained updated features are used as the second network flow features; the preset iteration threshold is T, that is, iterates T times, and then... As a second network flow feature, t is 1, ..., 2...T. This facilitates the gradual transmission and aggregation of information, capturing the dynamic relationships between flows in the network.

[0120] In this embodiment, steps S510 to S550 implement message passing between the current network flow and other network flows, obtaining message passing features. These features are then aggregated to obtain aggregated features, which are updated by a gated recurrent unit (GRU) to obtain second network flow features. This allows the path allocation model to adapt to network state evolution, fully utilizing previous information and current message passing results to accurately capture the dynamic evolution of traffic demand in the network, improving its ability to model temporal dynamics. A more comprehensive understanding of the network state is achieved, enhancing the predictive performance of the path allocation model.

[0121] In one embodiment, reference is made to Figure 6 , Figure 6 for Figure 2 A detailed flowchart of step S270. Figure 6 The illustrated process includes, but is not limited to, steps S610 to S620.

[0122] Step S610: Establish mapping associations between the second network flow features and a preset number of pre-configured transmission paths respectively to obtain a preset number of associated features;

[0123] It is worth noting that, referring to Figure 3 The reading layer includes a fully connected layer. Within this layer, the second network flow features are mapped to a preset number of pre-configured transmission paths, resulting in a preset number of associated features. The mapping process within the fully connected layer is as follows:

[0124]

[0125] in, Characterizing the second network flow features, The association feature represents the association between the second network flow feature and the i-th pre-configured transmission path. The fully_connected function represents the fully connected mapping and is used to map and associate the second network flow feature with the pre-configured transmission path.

[0126] Step S620: Input the associated features into the reading function to obtain the predicted path allocation ratio distribution of the network flow on each pre-configured transmission path.

[0127] It is worth noting that, referring to Figure 3 In the fully connected layer, the read function uses the softmax mapping method to ensure... The values ​​in the equation are converted into a probability distribution, representing the proportional allocation of network flow f to pre-configured path i. Step S620 is represented as follows:

[0128]

[0129] Where, σ s,d (p i The ) character represents the allocation ratio of the pre-configured transmission path Pi, and read represents the read function. The association features that characterize the second network flow features and the i-th pre-configured transmission path.

[0130] In one embodiment, the preset constraint includes a first constraint, which is:

[0131]

[0132] Where, σ s,d (p) represents the allocation ratio of the pre-configured transmission path P; s represents the source node of the network flow; d represents the destination node of the network flow; p represents the pre-configured transmission path; P s,d V represents the set of pre-configured transmission paths from source node s to destination node d; V represents the set of network nodes. In the first constraint, the allocation ratio of each pre-configured transmission path is restricted to non-negative to simulate a realistic network environment.

[0133] The preset constraints include a second constraint, which is:

[0134]

[0135] Where, σ s,d (p) represents the allocation ratio of the pre-configured transmission path P; s represents the source node of the network flow; d represents the destination node of the network flow; p represents the pre-configured transmission path; P s,d V represents the set of pre-configured transmission paths from source node s to destination node d; V represents the set of network nodes. In the second constraint, the sum of the allocation ratios on the predefined paths must equal 1.

[0136] The preset constraints include a third constraint, which is:

[0137]

[0138] Where, σ s,d (p) represents the allocation ratio of the pre-configured transmission path P; s represents the source node of the network flow; d represents the destination node of the network flow; p represents the pre-configured transmission path; Ps,d The set of pre-configured transmission paths from source node s to destination node d; f represents the network flow; F s,d c(e) represents the set of network flows from the source node to the destination node d; c(e) represents the link capacity of the traversed links; E represents the set of traversed links. The third constraint is used to ensure that traffic is allocated within the capacity range of the traversed links.

[0139] In one embodiment, based on Figure 1 The path allocation model for a multi-path transmission computing network system is trained through the following steps:

[0140] Obtain the training traffic requirement for the training network stream; the method for obtaining the training traffic requirement is the same as the method for obtaining the traffic requirement.

[0141] A preset number of pre-configured transmission training paths are determined based on the source and destination nodes of the training network flow; wherein, the source and destination nodes are each one of multiple network nodes; the method for determining the pre-configured transmission training paths is the same as the method for determining the pre-configured transmission paths.

[0142] Construct a path capacity training matrix for pre-configured transmission training paths; specifically, the path capacity training matrix is ​​constructed in the same way as the path capacity matrix.

[0143] Input the training matrix of traffic demand and path capacity into the initial path allocation model;

[0144] The first network flow training features are obtained by performing feature extraction processing on the training matrix of training traffic demand and path capacity through the feature extraction layer; specifically, the feature extraction process on the training matrix of training traffic demand and path capacity is the same as the feature extraction process on the matrix of traffic demand and path capacity.

[0145] The training features of the first network stream are updated by message passing through the message passing layer to obtain the training features of the second network stream. Specifically, the process of updating the training features of the first network stream by message passing is the same as the process of updating the training features of the first network stream by message passing.

[0146] The training features of the second network stream are mapped by the readout layer to obtain the distribution of the training path allocation ratio of the network stream on each pre-configured transmission training path; specifically, the process of mapping the training features of the second network stream is the same as the process of mapping the features of the second network stream.

[0147] The system checks whether the training path allocation ratio meets the preset constraints. When the training path allocation ratio distribution meets the preset constraints, the system calculates the loss value based on the training path allocation ratio and the loss function.

[0148] The loss function is:

[0149]

[0150] Where, σ s,d (p) represents the allocation ratio of the pre-configured transmission training path P; s represents the source node of the network flow; d represents the destination node of the network flow; p represents the pre-configured transmission training path; P s,d The set of pre-configured transmission training paths from source node s to destination node d; f represents the training network flow; F s,d The set representing the training network flow from the source node d to the destination node d.

[0151] After calculating the loss value, the model parameters of the path allocation model are optimized based on the loss value. The above steps are repeated iteratively until the loss value is greater than the preset threshold or the loss value converges, thus obtaining the trained path allocation model.

[0152] It is worth noting that in the path allocation model of this application, the loss function aims to maximize network traffic. Therefore, the predicted path allocation ratio distribution obtained through the path allocation model can achieve adaptive optimization of network traffic allocation, thereby improving overall performance and reducing the risk of network congestion.

[0153] Reference Figure 7 The second aspect of this application provides a path allocation device for network flows, applied to... Figure 1 Multipath scheduling controller in computing power network systems with multipath transmission;

[0154] The device includes:

[0155] The acquisition module 710 is used to acquire the network flow traffic demand.

[0156] The determination module 720 is used to determine a preset number of pre-configured transmission paths based on the source node and destination node of the network flow; wherein the source node and the destination node are both one of multiple network nodes;

[0157] Module 730 is used to construct the path capacity matrix of the pre-configured transmission paths;

[0158] The input module 740 is used to input the traffic demand and path capacity matrix into the path allocation model; the path allocation model has a feature extraction layer, a message passing aggregation layer and a readout layer.

[0159] The feature extraction module 750 is used to perform feature extraction processing on the traffic demand and path capacity matrix through the feature extraction layer to obtain the first network flow features;

[0160] The message passing update module 760 is used to perform message passing update processing on the first network flow feature through the message passing layer to obtain the second network flow feature;

[0161] The mapping module 770 is used to map the features of the second network flow through the readout layer to obtain the predicted path allocation ratio distribution of the network flow on each pre-configured transmission path.

[0162] The detection module 780 is used to detect whether the predicted path allocation ratio meets the preset constraints. When the predicted path allocation ratio distribution is detected to meet the preset constraints, the predicted path allocation ratio is used as the target path allocation ratio distribution of the network flow.

[0163] The network flow path allocation device is used to execute the network flow path allocation method of the first aspect embodiment of this application. When executing the method, the traffic demand and path capacity matrix are input into the path allocation model, enabling the path allocation model to fully consider the pre-configured transmission path, i.e., the topology, during processing. Then, in the path allocation model, a feature extraction layer performs feature extraction processing on the traffic demand and path capacity matrix to obtain a first network flow feature. A message passing layer performs message passing update processing on the first network flow feature to obtain a second network flow feature. During the message passing update process, information exchange between the network flow and other network flows is realized, ensuring that the relationship between the network flow and other network flows is fully considered when obtaining the predicted path allocation ratio distribution through the readout layer. Then, when it is detected that the predicted path allocation ratio distribution meets preset constraints, the predicted path allocation ratio is used as the target path allocation ratio distribution of the network flow. Thus, when the network flow path allocation device of this application is used, it combines the network flow transmission topology and the relationship with other network flows to obtain a target path allocation ratio distribution that enables adaptive optimization of network traffic allocation, thereby improving overall performance and reducing the risk of network congestion.

[0164] In one embodiment, the construction module 730 includes a first determining submodule, an obtaining submodule, and a construction submodule.

[0165] The first determining submodule is used to determine the links traversed by each pre-configured transmission path;

[0166] The acquisition submodule is used to obtain the link capacity of the path.

[0167] The construction submodule is used to construct the path capacity matrix based on the link capacity.

[0168] In one embodiment, the message passing update module 760 includes a second determination submodule, a message passing processing submodule, an aggregation submodule, an update submodule, and an iteration submodule.

[0169] The second determining submodule is used to determine the path links of the pre-configured transmission path of the network flow, and to determine the adjacent network flows that are adjacent to the network flow; wherein, the adjacent network flows have at least one path link that is the same as the network flow.

[0170] The message passing processing submodule is used to sequentially perform message passing processing on the first network flow feature and each first adjacent network flow feature to obtain multiple message passing features; wherein, the first adjacent network flow features are obtained by the feature extraction layer performing feature extraction processing on the adjacent network flows;

[0171] The aggregation submodule is used to aggregate multiple message passing features to obtain aggregated features;

[0172] The update submodule is used to update the aggregated features based on the gated loop unit to obtain the updated features;

[0173] The iterative submodule is used to repeat the above steps until the number of iterations reaches the preset iteration threshold, and the final updated feature is used as the second network flow feature.

[0174] In one embodiment, the mapping module 770 includes an association submodule and a reading submodule.

[0175] The association submodule is used to establish mapping associations with a preset number of pre-configured transmission paths based on the second network flow characteristics, thereby obtaining a preset number of association characteristics;

[0176] The read submodule is used to input associated features into the read function to obtain the predicted path allocation ratio distribution of the network flow on each pre-configured transmission path.

[0177] Reference Figure 8 , Figure 8 This is a schematic diagram of the structure of an electronic device according to an embodiment of a third aspect of this application. The electronic device includes:

[0178] The processor 801 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.

[0179] The memory 802 can be implemented as a read-only memory (ROM), a static storage device, a dynamic storage device, or a random access memory (RAM). The memory 802 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 802 and is called and executed by the processor 801 to execute the network flow path allocation method of the embodiments of this application.

[0180] The 803 input / output interface is used to implement information input and output.

[0181] The communication interface 804 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.).

[0182] Bus 805 transmits information between various components of the device (e.g., processor 801, memory 802, input / output interface 803, and communication interface 804);

[0183] The processor 801, memory 802, input / output interface 803, and communication interface 804 are connected to each other within the device via bus 805.

[0184] A fourth aspect of this application provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements a path allocation method for network flows according to any one of the first aspects of this application.

[0185] 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.

[0186] 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.

[0187] 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.

[0188] The device 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.

[0189] 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.

[0190] 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.

[0191] It should be understood that in this application, "at least one (item)" means one or more, and "more than one" means two or more. "And / or" is used to describe the mapping relationship between the mapped 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 mapped 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.

[0192] 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 an indirect coupling or communication connection through some interfaces, devices, or units, and may be electrical, mechanical, or other forms.

[0193] 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.

[0194] 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.

[0195] 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.

[0196] 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 path allocation of network flows, characterized in that, A multi-path scheduling controller is applied to a computing power network system for multi-path transmission. The computing power network system for multi-path transmission also includes multiple network nodes, each of which is interconnected, and the multi-path scheduling controller is connected to each of the network nodes respectively. The method includes: Obtain the network flow traffic demand; A preset number of pre-configured transmission paths are determined based on the source node and destination node of the network flow; wherein, the source node and the destination node are both one of the plurality of network nodes; Construct the path capacity matrix of the pre-configured transmission path; The traffic demand and the path capacity matrix are input into the path allocation model; the path allocation model includes a feature extraction layer, a message passing aggregation layer, and a readout layer. The feature extraction layer performs feature extraction processing on the traffic demand and the path capacity matrix to obtain the first network flow feature; The first network flow feature is updated by message passing through the message passing aggregation layer to obtain the second network flow feature; The second network flow features are mapped through the readout layer to obtain the predicted path allocation ratio distribution of the network flow on each of the pre-configured transmission paths. Detect whether the predicted path allocation ratio meets the preset constraints. When it is detected that the predicted path allocation ratio distribution meets the preset constraints, the predicted path allocation ratio is used as the target path allocation ratio distribution of the network flow. The construction of the path capacity matrix for the pre-configured transmission path includes: Determine the links traversed by each of the pre-configured transmission paths; Obtain the link capacity of the path; The path capacity matrix is ​​constructed based on the link capacity. In the path capacity matrix, each element represents a link. When the value of an element is not 0, it indicates that the link is a transit link, and the value of the element is the link capacity of the transit link. When the value of an element is 0, it indicates that the link is not a transit link of the pre-configured transmission path.

2. The path allocation method for network flows according to claim 1, characterized in that, The step of updating the first network flow features through the message passing aggregation layer to obtain the second network flow features includes: Based on the path links of the pre-configured transmission path of the network flow, neighboring network flows adjacent to the network flow are determined; wherein, the neighboring network flows have at least one path link that is the same as the network flow. The first network flow feature and each first adjacent network flow feature are sequentially processed by message passing to obtain multiple message passing features; wherein, the first adjacent network flow feature is obtained by the feature extraction layer by performing feature extraction processing on the adjacent network flows; The multiple message passing features are aggregated to obtain aggregated features; The aggregated features are updated based on the gated loop unit to obtain the updated features; Repeat the above steps until the number of iterations reaches the preset iteration threshold, and use the finally obtained updated feature as the second network flow feature.

3. The path allocation method for network flows according to claim 1, characterized in that, The step of mapping the second network flow features through the readout layer to obtain the predicted path allocation ratio distribution of the network flow on each of the pre-configured transmission paths includes: By establishing mapping associations between the second network flow feature and a preset number of pre-configured transmission paths, a preset number of association features are obtained; The associated features are input into the reading function to obtain the predicted path allocation ratio distribution of the network flow on each of the pre-configured transmission paths.

4. The path allocation method for network flows according to claim 1, characterized in that, The preset constraint includes a first constraint, which is: in, The pre-configured transmission path P represents the allocation ratio; s represents the source node of the network flow; d represents the destination node of the network flow; p represents the pre-configured transmission path. V represents the set of pre-configured transmission paths from source node s to destination node d; V represents the set of network nodes.

5. The path allocation method for network flows according to claim 1, characterized in that, The preset constraint includes a second constraint, which is: ; in, The pre-configured transmission path P represents the allocation ratio; s represents the source node of the network flow; d represents the destination node of the network flow; p represents the pre-configured transmission path. V represents the set of pre-configured transmission paths from source node s to destination node d; V represents the set of network nodes.

6. The path allocation method for network flows according to claim 1, characterized in that, The preset constraint condition includes a third constraint condition, which is: in, The pre-configured transmission path P represents the allocation ratio; s represents the source node of the network flow; d represents the destination node of the network flow; p represents the pre-configured transmission path. The set of pre-configured transmission paths representing the path from source node s to destination node d; f Characterizes the network flow; c(e) represents the set of network flows from the source node to the destination node d; c(e) represents the link capacity of the path; E represents the set of path links.

7. A path allocation device for network flows, characterized in that, A multi-path scheduling controller is applied to a computing power network system for multi-path transmission. The computing power network system for multi-path transmission also includes multiple network nodes, each of which is interconnected, and the multi-path scheduling controller is connected to each of the network nodes respectively. The device includes: The acquisition module is used to acquire the network flow traffic demand. The determining module is used to determine a preset number of pre-configured transmission paths based on the source node and destination node of the network flow; wherein the source node and the destination node are both one of the plurality of network nodes; A construction module is used to construct the path capacity matrix of the pre-configured transmission path; The input module is used to input the traffic demand and the path capacity matrix into the path allocation model; the path allocation model includes a feature extraction layer, a message passing aggregation layer, and a readout layer; The feature extraction module is used to perform feature extraction processing on the traffic demand and the path capacity matrix through the feature extraction layer to obtain the first network flow features; The message passing update module is used to perform message passing update processing on the first network flow feature through the message passing aggregation layer to obtain the second network flow feature; The mapping module is used to map the second network flow features through the readout layer to obtain the predicted path allocation ratio distribution of the network flow on each of the pre-configured transmission paths; The detection module is used to detect whether the predicted path allocation ratio meets the preset constraints. When the predicted path allocation ratio distribution is detected to meet the preset constraints, the predicted path allocation ratio is used as the target path allocation ratio distribution of the network flow. The construction of the path capacity matrix for the pre-configured transmission path includes: Determine the links traversed by each of the pre-configured transmission paths; Obtain the link capacity of the path; The path capacity matrix is ​​constructed based on the link capacity. In the path capacity matrix, each element represents a link. When the value of an element is not 0, it indicates that the link is a transit link, and the value of the element is the link capacity of the transit link. When the value of an element is 0, it indicates that the link is not a transit link of the pre-configured transmission path.

8. An electronic device, characterized in that, The electronic device includes a memory and a processor, the memory storing a computer program, and the processor executing the computer program to implement the path allocation method for network flows according to any one of claims 1 to 6.

9. A computer-readable storage medium storing a computer program, characterized in that, When the computer program is executed by a processor, it implements the path allocation method for network flows according to any one of claims 1 to 6.

Citation Information

Patent Citations

  • Flow control method and device for hybrid SDN network

    CN111147387A