WO2022116957A1 - Algorithm model determining method, path determining method, electronic device, sdn controller, and medium - Google Patents

Algorithm model determining method, path determining method, electronic device, sdn controller, and medium Download PDF

Info

Publication number
WO2022116957A1
WO2022116957A1 PCT/CN2021/134270 CN2021134270W WO2022116957A1 WO 2022116957 A1 WO2022116957 A1 WO 2022116957A1 CN 2021134270 W CN2021134270 W CN 2021134270W WO 2022116957 A1 WO2022116957 A1 WO 2022116957A1
Authority
WO
WIPO (PCT)
Prior art keywords
service
deployed
network
multiple services
path
Prior art date
Application number
PCT/CN2021/134270
Other languages
French (fr)
Chinese (zh)
Inventor
房红强
胡道允
陆钱春
朱祖勍
Original Assignee
中兴通讯股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 中兴通讯股份有限公司 filed Critical 中兴通讯股份有限公司
Publication of WO2022116957A1 publication Critical patent/WO2022116957A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/14Routing performance; Theoretical aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0893Assignment of logical groups to network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0896Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/145Network analysis or design involving simulating, designing, planning or modelling of a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/16Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using machine learning or artificial intelligence
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks

Definitions

  • the present invention relates to the field of Software Defined Network (SDN, Software Defined Network).
  • SDN Software Defined Network
  • the SDN network includes a control plane and a data plane, wherein the control plane includes an SDN controller, and the data plane includes network nodes such as hosts and switches.
  • the SDN controller can obtain the global resource information of the network (for example, the entire network topology, link bandwidth, traffic, etc.), which provides an effective means to solve the routing optimization problem for the entire network for traffic engineering.
  • the global resource information of the network for example, the entire network topology, link bandwidth, traffic, etc.
  • the SDN controller can use a specific algorithm to calculate the service path of the service to be deployed according to the service requirements of the service to be deployed and the global information resources, and deliver the service path obtained by calculation to the data plane for deployment by the corresponding host business.
  • the present disclosure provides a method for determining a routing algorithm model, a method for determining a service target path, an SDN controller, an electronic device, and a computer-readable storage medium.
  • a method for determining a routing algorithm model including: acquiring a training sample, where an input vector in the training sample includes network resource information before deploying multiple services and service requirements of the multiple services information, the output vector of the training sample includes service path information of service paths traversed by the deployment of the multiple services, wherein the service paths traversed by the deployment of the multiple services meet a predetermined network optimization goal; Carry out deep learning on the training samples to obtain a routing algorithm model, wherein the routing algorithm model can take the business demand information of the business to be deployed and the network resource information of the current network as input vectors, and output the information of a plurality of preselected links , the preselected link is used to deploy the to-be-deployed service.
  • a method for determining a service target path including: inputting the service requirements of at least one service to be deployed and current network resources into a routing algorithm model as input vectors, A plurality of preselected links are obtained for the deployed services, wherein the routing algorithm model is a routing algorithm model obtained by the determination method provided in the first aspect of the present disclosure; and, for each to-be-deployed service, the The path that meets the predetermined condition is selected from the plurality of preselected links as the service target path of the service to be deployed.
  • an electronic device includes: one or more first processing modules; a first storage module on which a first executable program is stored, when the first When the executable program is executed by the one or more first processing modules, the one or more first processing modules implement the determination method according to the first aspect of the present disclosure.
  • an SDN controller includes: one or more second processing modules; a second storage module, on which a second executable program is stored, when the When the second executable program is executed by the one or more second processing modules, the one or more second processing modules implement the business target path determination method described in the second aspect of the fundamental disclosure.
  • a service deployment method including: sending service requirements of a service to be deployed and current network resources to the SDN controller; receiving a service target sent by the SDN controller path; and deploying the service according to the received service target path.
  • an electronic device includes: one or more third processing modules; a third storage module, on which a third executable program is stored, when the third When the executable program is executed by the one or more third processing modules, the one or more third processing modules implement the service deployment method according to the fourth aspect of the present disclosure.
  • a computer-readable storage medium on which a computer program is stored, and when the program is executed by a processor, implements at least one of the following methods: according to the first aspect of the present disclosure the determination method described above; the service target path determination method according to the second aspect of the present disclosure; and the service deployment method according to the fourth aspect of the present disclosure.
  • the routing algorithm model determined by the determination method provided by the first aspect of the present disclosure can be used in conjunction with the service target path determination method provided by the second aspect of the present disclosure. That is, after obtaining the information of the multiple preselected links for deploying the service to be deployed through the routing algorithm model (equivalent to pruning the network topology), the new network composed of the multiple preselected links is Calculate to obtain business paths that meet predetermined conditions.
  • Figure 1 is an SDN network architecture diagram
  • FIG. 2 is a flowchart of an embodiment of the determination method provided by the first aspect of the present disclosure
  • FIG. 3 is a flowchart of another implementation manner of the determination method provided by the first aspect of the present disclosure.
  • FIG. 4 is a flowchart of an embodiment of step S100 in FIG. 3;
  • Fig. 5 is a flowchart of another implementation manner of step S100 in Fig. 3;
  • Fig. 6 is the schematic diagram that the input vector, the output vector are encoded
  • FIG. 7 is a flowchart of an embodiment of step S120
  • FIG. 8 is a flowchart of an embodiment of a method for determining a business target path provided by the second aspect of the present disclosure
  • FIG. 9 is a flowchart of an implementation manner of a service deployment method provided by a fourth aspect of the present disclosure.
  • FIG. 10 is an architectural diagram of an implementation manner of an SDN network system provided by the present disclosure.
  • Figure 1 shows an SDN network architecture diagram.
  • the SDN network includes a control plane and a data plane
  • the control plane includes an SDN controller
  • the data plane includes multiple hosts and multiple switches.
  • the host sends the service requirement information of the service to be deployed (including the source node of the service and the target node of the service) to the SDN controller, and the SDN controller calculates service path information for the service to be deployed, and sends the service path information to the SDN controller. It is delivered to the corresponding host, and finally the host performs service deployment according to the received service path information.
  • a method for determining a routing algorithm model includes the following steps S110 and S120:
  • step S110 a training sample is obtained, the input vector in the training sample includes network resource information before the deployment of multiple services and the service requirement information of the multiple services, and the output vector of the training sample includes the deployment of the Service path information of service paths traversed by multiple services, wherein the service paths traversed by the deployment of the multiple services meet a predetermined network optimization goal;
  • step S120 deep learning is performed by using the training samples to obtain a routing algorithm model, wherein the routing algorithm model can take the business requirement information of the service to be deployed and the network resource information of the current network as input vectors, and output the routing algorithm model.
  • the service path includes a plurality of links arranged in a predetermined order, and the links are connected between two nodes in the network.
  • the output information of the multiple preselected links is not the service path information of the service, and the service path can be obtained only after the multiple preselected links are further sorted.
  • the routing algorithm model determined by the determination method provided by the present disclosure can be used in cooperation with the service target path determination method provided by the second aspect of the present disclosure. That is, after obtaining a plurality of preselected links for deploying the service to be deployed through the routing algorithm model, the information of the plurality of preselected links is calculated to obtain a service path that meets a predetermined condition.
  • the business in traffic engineering has dynamic properties, and the method for determining the routing algorithm model provided by the present disclosure can be oriented to traffic engineering.
  • the determination method is equivalent to determining the routing algorithm model through deep learning, and the network resources before deploying the service and the network optimization goal are considered when deep learning is performed. Therefore, the preselected link calculated by the routing algorithm model is used for During service deployment, the utilization of network resources can be improved.
  • the information of multiple preselected links is subsequently calculated, so that the final path information meets the predetermined conditions related to the real-time routing requirements of the service. It can be seen that, The routing algorithm model provided by the present disclosure can also meet the real-time routing requirements of dynamic services in combination with the service target path determination method.
  • the routing algorithm model determined by the present disclosure can be stored in the SDN controller, and when the SDN controller receives the service requirements of the service to be deployed sent by the host of the data plane, it stores the service requirements of the service to be deployed.
  • the business requirements and the current network resources are used as data vectors, which are input into the routing algorithm model to obtain the information of multiple links, and then calculate the information of multiple links, and finally obtain the business target path.
  • the host can follow the business target path to deploy the service.
  • the network optimization objective is not particularly limited.
  • the network optimization objective may be any one of load balancing in the entire network, lowest bandwidth occupation in the entire network, lowest latency in the entire network, and lowest blocking rate in the entire network.
  • the service paths for deploying the same service may also be different.
  • the device for executing the determination method is not particularly limited, for example, the determination method may be performed by a separate electronic device, or the determination method may be performed by an SDN controller, However, no matter what the device that executes the determination method is, the routing algorithm model obtained by the determination method needs to be sent to the SDN controller.
  • the training samples include not only network resource information before deployment of services, but also service path information of service paths through which the multiple services are deployed.
  • the determination method further includes the following step S100 .
  • step S100 service paths for deploying the multiple services are respectively generated according to the service requirements of the multiple services and the predetermined network optimization target, and corresponding service path information is acquired.
  • the training samples can be obtained by combining the network resource information before deploying the multiple services, the service requirement information of the multiple services, and the network optimization target information when the multiple services are deployed. .
  • step S100 is not particularly limited.
  • a heuristic algorithm can be used to generate and deploy multiple services according to multiple services and network optimization objectives corresponding to the multiple services. business path.
  • the heuristic algorithm is a network resource optimization algorithm based on global services, which can improve the utilization of network resources.
  • the heuristic algorithm is a genetic algorithm.
  • the following introduces an example of using the genetic algorithm to determine the business path.
  • the aforementioned step S100 may include the following steps S101a to S103a.
  • step S101a the initial deployment order of the multiple services is used as the chromosome of the genetic algorithm, and the initial deployment order is changed through the continuous mutation and crossover of chromosomes until the genetic algorithm converges, so as to obtain the target deployment order;
  • step S102a use the Dijkstra algorithm to perform deployment calculation for each of the multiple services, and obtain initial path information for each of the multiple services;
  • step S103a the multiple services are deployed according to the target deployment sequence and the initial path information of each service, and the service path information through which the multiple services are deployed is obtained.
  • the present disclosure is not limited thereto, and the heuristic algorithm may also be a simulated annealing algorithm.
  • the following introduces an example of using the simulated annealing algorithm to determine the business path.
  • the aforementioned step S100 may include the following steps S101b to S108b.
  • step S101b the multiple services are initially deployed according to the initial deployment sequence using the Dijkstra algorithm, wherein the initial weight of the Dijkstra algorithm is related to the predetermined network optimization goal ;
  • step S102b an evaluation function is calculated according to the predetermined network optimization objective
  • step S103b randomly remove a predetermined proportion of the initially deployed services from the network
  • step S104b use Dijkstra algorithm to redeploy the dismantled service
  • step S105b the evaluation function is calculated according to the quadratic weight of Dijkstra's algorithm used during redeployment
  • step S106b it is judged whether the evaluation function obtained by this calculation is better than the evaluation function used last time
  • step S107b the dismantled service is deployed according to the service path calculated by the Dijkstra algorithm corresponding to the evaluation function obtained by this calculation;
  • step S108b the service paths where the multiple services are finally deployed are taken as the service path information of the service paths where the multiple services are deployed.
  • the data storage form in the training samples is not particularly limited.
  • the data in the training samples may be stored in a vector manner.
  • the input vector includes network resource information before deploying multiple services and service requirement information of multiple services.
  • the network resource information before the deployment of multiple services can be represented by x (the network resource information can include the remaining bandwidth of each link in the network before the deployment of multiple services), and the network resource information can be represented by a one-dimensional vector with dimension E. .
  • the service requirement information can include the source node of the service, the destination node of the service and the service bandwidth
  • the vector of dimension (2V+1) can be used to represent the service requirement information, where V represents the node in the network
  • the number of , the source node and destination node of the service can be represented by one-hot code, the position of the node is coded as 1, and the rest of the positions are coded as 0.
  • the output can be represented by z.
  • the service path obtained for each service using a predetermined algorithm can represent the output z in the coding manner shown in FIG. 6 .
  • the output z is represented by a one-dimensional vector with dimension E, the value of the link passing through after the service is deployed is 1 (which can be called a preselected link), and the value of the remaining links is 0 (which can be called an excluded link). .
  • n links there are n links in the network, and the n links are numbered according to the addresses of the n links.
  • the bandwidth of the first link is B1
  • the bandwidth of the second link is B1.
  • the bandwidths are B2, ..., and the bandwidth of the nth link is Bn.
  • the bandwidth requirement of the service is B.
  • the inputs and outputs in the training samples can be stored in the form of vectors described above.
  • step S120 are not particularly limited, as long as the routing algorithm model can be obtained through step S120.
  • step S120 may include the following steps S121 to S123.
  • step S121 the network resources before deploying multiple services and the service requirements of multiple services in the training sample are used as input vectors, and multiple service paths for deploying multiple services are used as output vectors, which are input to in neural network;
  • step S122 the neural network is trained by using the training samples to obtain a trained neural network, which can output an initial output vector according to the input vector.
  • the initial output vector For each service corresponding to the input vector, the initial output vector
  • the elements in are the retention rates of each link in the network topology;
  • step S123 the trained neural network is processed to obtain the routing algorithm model.
  • the routing algorithm model can use 1 to denote links whose retention rate is greater than or equal to a predetermined threshold in the initial output vector, and set the In the initial output vector, the link whose retention rate is less than the predetermined threshold is represented by 0, and a final vector is output, wherein, in the final vector, the link represented by 1 is the preselected link.
  • step S122 may include: inputting the input vector x, the input vector y and the output vector z in the training sample into the neural network, forward propagation through multiple fully connected layers and batch regularization
  • the residual network structure composed of layers, the output result z' of the neural network is finally obtained through a fully connected layer, where the activation function in the residual network structure in the neural network can be the Relu activation function, and the last fully connected layer
  • the activation function is the sigmoid activation function. Since the sigmoid activation function maps the input value to a value between 0 and 1, z' is a one-dimensional vector with elements between 0 and 1, and the size of each element in the vector represents the probability of link selection (ie, retention rate above).
  • the loss function can be selected as the two-category cross-entropy loss function.
  • the calculation method of the loss function is:
  • step S123 is also not particularly limited.
  • threshold discretization is performed on the output result of the trained neural network, and a threshold is first set according to the network link retention rate (the link retention rate is the ratio of the value of the output vector of 1 to the total number in the training sample), if possible.
  • the link retention rate is set as the threshold, the value of the element less than the threshold is set to 1, and the value of the element greater than or equal to the threshold is set to 1, and a one-dimensional vector consisting of 0 and 1 can be obtained;
  • a link with a corresponding value of 1 in the network topology is set as a preselected link, and a link with a corresponding value of 0 in the network topology is set as an excluded link.
  • only the preselected links are calculated to determine the final traffic path.
  • a method for determining a service target path includes the following steps S210 to S220.
  • step S210 the service requirements of the service to be deployed and the current network resources are input into the routing algorithm model as input vectors, and multiple preselected links are obtained for each service to be deployed, wherein the routing algorithm model A routing algorithm model obtained by the determination method provided in the first aspect of the present disclosure;
  • step S220 for each service to be deployed, a path that meets a predetermined condition is selected from the plurality of preselected links calculated and obtained for each service to be deployed as a service target path of the service to be deployed.
  • the service target path determination method it is preferred to use a routing calculation model to prune the network topology, use qualified links (preselected links) to form a new network, and then prune the preselected links according to the current network conditions. At least a part of the paths is sorted, and the paths obtained by sorting are used as service target paths.
  • the method for determining the routing algorithm model provided by the present disclosure is equivalent to determining the routing algorithm model through deep learning, and the network resources before the deployment of the service and the network optimization goal are taken into account during deep learning. Therefore, the routing algorithm model is used.
  • the link information obtained by calculation is used for service deployment, the utilization rate of network resources can be improved.
  • the multiple link information is subsequently calculated so that the final path information satisfies the predetermined condition. It can be seen that the routing algorithm model provided in the present disclosure is similar to The combination of the service target path determination method can also meet the real-time routing requirements of dynamic services.
  • the business in traffic engineering has dynamic attributes.
  • the combination of the routing algorithm model provided by the present disclosure and the method for determining the business target path can also meet the real-time routing requirements of dynamic services, so that the method for determining the business path provided by the present disclosure is particularly applicable.
  • the predetermined condition is not particularly limited, and the predetermined condition may be determined according to a specific service type.
  • the predetermined condition is that the route is the shortest.
  • a greedy algorithm may be used to determine the service path with the shortest route.
  • the routing algorithm model After using the determination method provided by the first aspect of the present disclosure to complete the training of the training samples and obtain the routing algorithm model, when a new service or batch of services arrives, first determine the bandwidth of each link in the network at this time and The service requirement information of each service (ie, the source node, destination node and required bandwidth of each service) encodes the input vector including the above information, and then inputs the encoded input vector into the routing algorithm model. Through the routing algorithm model, a final vector of information of multiple links for deploying the to-be-deployed service can be finally obtained.
  • the service requirement information of each service ie, the source node, destination node and required bandwidth of each service
  • step S220 Through the calculation in step S220, the service target path of the service to be deployed can be obtained.
  • the service deployment method can be divided into two parts: offline training (which can be executed by the SDN controller) and online decision-making (which can be executed by the SDN controller).
  • offline training which can be executed by the SDN controller
  • online decision-making which can be executed by the SDN controller.
  • the training set can be generated through the heuristic algorithm, and the offline training of the routing algorithm model can be completed.
  • real-time optimization of traffic routing can be achieved by a greedy algorithm.
  • an electronic device includes: one or more first processing modules; and a first storage module on which a first executable program is stored, when the first When an executable program is executed by the one or more first processing modules, the one or more first processing modules implement the determination method provided by the first aspect of the present disclosure.
  • the electronic device may further include one or more first I/O interfaces, the first I/O interfaces are connected between the processor and the memory, and are configured to implement the first processing module and the memory. Information interaction of the first storage module.
  • the first processing module is a device with data processing capability, including but not limited to a central processing unit (CPU), etc.;
  • the first memory module is a device with data storage capability, including but not limited to random access memory (RAM) , more specifically such as SDRAM, DDR, etc.), read-only memory (ROM), electrified erasable programmable read-only memory (EEPROM), flash memory (FLASH);
  • the first I/O interface read-write interface
  • information exchange between the first processing module and the first storage module can be realized, which includes but is not limited to a data bus (Bus) and the like.
  • the first processing module, the first storage module, and the first I/O interface are connected to each other through a bus, and further connected to other components of the electronic device.
  • an SDN controller includes:
  • a second storage module on which a second executable program is stored, and when the second executable program is executed by the one or more second processing modules, the one or more second processing modules implement the present disclosure The business target path determination method provided by the second aspect.
  • the routing algorithm model is stored in the SDN controller, and the second executable program is called through the second processing module of the SDN controller,
  • the business target path can be calculated for the business to be deployed.
  • the SDN controller may further include one or more second I/O interfaces, where the second I/O interfaces are connected between the processor and the memory and configured to implement the second processing module information interaction with the second storage module.
  • the second processing module is a device with data processing capability, including but not limited to a central processing unit (CPU), etc.;
  • the second memory module is a device with data storage capability, including but not limited to random access memory (RAM) , more specifically such as SDRAM, DDR, etc.), read-only memory (ROM), electrified erasable programmable read-only memory (EEPROM), flash memory (FLASH);
  • the second I/O interface read and write interface
  • information exchange between the second processing module and the second storage module can be implemented, which includes but is not limited to a data bus (Bus) and the like.
  • the second processing module, the second storage module, and the second I/O interface are connected to each other through a bus, and further connected to other components of the SDN controller.
  • a service deployment method is provided. As shown in FIG. 9 , the service deployment method includes the following steps S310 to S330.
  • step S310 the service requirement information of the service to be deployed and the current network resource information are sent to the SDN controller provided by the third aspect of the present disclosure
  • step S320 receiving the service target path sent by the SDN controller
  • step S330 the service is deployed according to the received service target path.
  • the service deployment method provided by the fifth aspect of the present disclosure may be executed by a host of a data plane.
  • the SDN controller involved in this aspect may be the SDN controller according to the fourth aspect of the present disclosure.
  • an electronic device comprising:
  • a third storage module on which a third executable program is stored, and when the third executable program is executed by the one or more third processing modules, the one or more third processing modules implement the present disclosure The business deployment method provided by the fourth aspect.
  • the electronic device may further include one or more third I/O interfaces, the third I/O interfaces are connected between the processor and the memory, and are configured to implement the third processing module and the memory. Information interaction of the third storage module.
  • the third processing module is a device with data processing capability, including but not limited to a central processing unit (CPU), etc.;
  • the third memory module is a device with data storage capability, including but not limited to random access memory (RAM) , more specifically such as SDRAM, DDR, etc.), read-only memory (ROM), electrified erasable programmable read-only memory (EEPROM), flash memory (FLASH);
  • the third I/O interface read and write interface
  • the information exchange between the third processing module and the third storage module can be realized between the module and the third storage module, which includes but is not limited to a data bus (Bus) and the like.
  • the third processing module, the third storage module, and the third I/O interface are connected to each other through a bus, and further connected to other components of the electronic device.
  • a computer-readable storage medium on which a computer program is stored, and when the program is executed by a processor, implements at least one of the following methods:
  • a service deployment method according to a fourth aspect of the present disclosure.
  • FIG. 10 Shown in FIG. 10 is an architectural diagram of the SDN network system provided by the present disclosure.
  • an SDN controller 910 is arranged on the control plane of the SDN network system, and the SDN controller includes an information collection module 911, a storage module 912, a decision module 913, and a routing module 914.
  • the information acquisition module 911 is configured to acquire network resource information and service requirement information.
  • the network resource information includes the remaining bandwidth of the network link, the link load, and the link delay, etc.
  • the service demand information includes the source node of the service, the target node of the service, and the bandwidth required by the service.
  • the storage module 912 is configured to store the information collected by the information collection module 911 .
  • the decision module 913 is configured to deploy a path for the service through a heuristic algorithm according to the network optimization objective.
  • the routing module 914 is configured to receive the routing decision of the decision module, and to route the services of the data plane.
  • the decision module 913 is further configured to perform training according to the historical routing data in the storage module 912 on the one hand, and route the services that need to be routed in the storage module 912 after the training is completed.
  • the data plane of the SDN network includes multiple hosts 920 and multiple switches 930 .
  • Such software may be distributed on computer-readable storage media, which may include computer storage media (or non-transitory media) and communication media (or transitory media).
  • computer storage media includes both volatile and nonvolatile implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data flexible, removable and non-removable media.
  • Computer storage media include, but are not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disk (DVD) or other optical disk storage, magnetic cartridges, magnetic tape, magnetic disk storage or other magnetic storage devices, or may Any other medium used to store desired information and which can be accessed by a computer.
  • communication media typically embodies computer readable instructions, data structures, program modules, or other data in a modulated data signal such as a carrier wave or other transport mechanism, and can include any information delivery media, as is well known to those of ordinary skill in the art .

Abstract

The present disclosure provides a method for determining a routing algorithm model, comprising: obtaining a training sample, an input vector in the training sample comprising network resource information before multiple services are deployed and service requirement information of the multiple services, and an output vector in the training sample comprising service path information of a service path used for deploying the multiple services, wherein the service path used for deploying the multiple services satisfies a predetermined network optimization target; using the training sample for deep learning to obtain a routing algorithm model, wherein the routing algorithm model can use service requirement information of a service to be deployed and network resource information of a current network as input vectors, and output information of multiple preselected links, wherein the preselected links are used for deploying the service to be deployed. The present disclosure further provides a service target path determining method, an electronic device, an SDN controller, and a computer readable storage medium.

Description

算法模型及路径的确定方法、电子设备、SDN控制器和介质Algorithm model and path determination method, electronic device, SDN controller and medium
相关申请的交叉引用CROSS-REFERENCE TO RELATED APPLICATIONS
本公开要求2020年12月2日提交给中国专利局的第2202011400354.7号专利申请的优先权,其全部内容通过引用合并于此。The present disclosure claims priority to Patent Application No. 2202011400354.7 filed with the China Patent Office on Dec. 2, 2020, the entire contents of which are hereby incorporated by reference.
技术领域technical field
本发明涉及软件定义网络(SDN,Software Defined Network)领域。The present invention relates to the field of Software Defined Network (SDN, Software Defined Network).
背景技术Background technique
近年来,随着网络接入方式的不断丰富、以及网络使用成本的不断下降,网络传输的流量逐年升高。面对***性的数据增长趋势,网络运营商一般通过升级交换机/路由器和扩大网络规模两种方式来增加网络的容量。然而,这种方式在增大网络容量的同时也增大了运营商的资本支出。除此之外,这种方式导致的大规模网络也给网络的管理和控制带来了更大的挑战。In recent years, with the continuous enrichment of network access methods and the continuous reduction of network use costs, the traffic transmitted by the network has increased year by year. Faced with the explosive data growth trend, network operators generally increase network capacity by upgrading switches/routers and expanding network scale. However, this approach increases the operator's capital expenditure while increasing the network capacity. In addition, the large-scale network caused by this method also brings greater challenges to the management and control of the network.
有鉴于此,SDN技术应运而生。SDN网络包括控制平面和数据平面,其中,控制平面包括SDN控制器,数据平面包括主机、交换机等网络节点。In view of this, SDN technology came into being. The SDN network includes a control plane and a data plane, wherein the control plane includes an SDN controller, and the data plane includes network nodes such as hosts and switches.
SDN控制器能够获取网络全局资源信息(例如,全网拓扑、链路带宽、流量等),为解决全网面向流量工程的路由优化问题提供了一种行之有效的手段。The SDN controller can obtain the global resource information of the network (for example, the entire network topology, link bandwidth, traffic, etc.), which provides an effective means to solve the routing optimization problem for the entire network for traffic engineering.
例如,SDN控制器可以根据待部署业务的业务需求、以及全局信息资源,利用特定的算法计算获得待部署业务的业务路径,并将计算获得的业务路径下发至数据平面,由相应的主机部署业务。For example, the SDN controller can use a specific algorithm to calculate the service path of the service to be deployed according to the service requirements of the service to be deployed and the global information resources, and deliver the service path obtained by calculation to the data plane for deployment by the corresponding host business.
提高网络资源利用率、以及满足业务的动态需求等,都是在部署业务时需要考虑的优化条件,在SND网络的基础上对业务进行部署也不例外。然而,目前的部署业务路径的算法,无法很好地满足上述优化条件。Improving the utilization of network resources and meeting the dynamic requirements of services are all optimization conditions that need to be considered when deploying services, and deploying services on the basis of SND networks is no exception. However, the current algorithm for deploying business paths cannot well satisfy the above optimization conditions.
因此,如何在SDN网络的基础上对业务的部署进行优化成为本领域亟待解决的技术问题。Therefore, how to optimize the deployment of services on the basis of the SDN network has become an urgent technical problem to be solved in this field.
发明内容SUMMARY OF THE INVENTION
本公开提供一种路由算法模型的确定方法、一种业务目标路径确定方法、一种SDN控制器、一种电子设备和一种计算机可读存储介质。The present disclosure provides a method for determining a routing algorithm model, a method for determining a service target path, an SDN controller, an electronic device, and a computer-readable storage medium.
作为本公开的一个方面,提供一种路由算法模型的确定方法,包括:获取训练样本,所述训练样本中的输入向量包括部署多个业务前的网络资源信息以及所述多个业务的业务需求信息,所述训练样本的输出向量包括部署所述多个业务所经过的业务路径的业务路径信息,其中,部署所述多个业务所经过的业务路径满足预定的网络优化目标;以及,利用所述训练样本进行深度学习,以获得路由算法模型,其中,所述路由算法模型能够以待部署的业务的 业务需求信息、以及当前网络的网络资源信息为输入向量,输出多个预选链路的信息,所述预选链路用于部署所述待部署的业务。As an aspect of the present disclosure, a method for determining a routing algorithm model is provided, including: acquiring a training sample, where an input vector in the training sample includes network resource information before deploying multiple services and service requirements of the multiple services information, the output vector of the training sample includes service path information of service paths traversed by the deployment of the multiple services, wherein the service paths traversed by the deployment of the multiple services meet a predetermined network optimization goal; Carry out deep learning on the training samples to obtain a routing algorithm model, wherein the routing algorithm model can take the business demand information of the business to be deployed and the network resource information of the current network as input vectors, and output the information of a plurality of preselected links , the preselected link is used to deploy the to-be-deployed service.
作为本公开的第二个方面,提供一种业务目标路径确定方法,包括:将至少一个待部署的业务的业务需求、以及当前的网络资源作为输入向量输入至路由算法模型中,为每一个待部署的业务获得多个预选链路,其中,所述路由算法模型为本公开第一个方面所提供的确定方法所得到的路由算法模型;以及,为每一个待部署的业务在为其计算获得的多个预选链路中选择符合预定条件的路径作为所述待部署的业务的业务目标路径。As a second aspect of the present disclosure, a method for determining a service target path is provided, including: inputting the service requirements of at least one service to be deployed and current network resources into a routing algorithm model as input vectors, A plurality of preselected links are obtained for the deployed services, wherein the routing algorithm model is a routing algorithm model obtained by the determination method provided in the first aspect of the present disclosure; and, for each to-be-deployed service, the The path that meets the predetermined condition is selected from the plurality of preselected links as the service target path of the service to be deployed.
作为本公开的第三个方面,提供一种电子设备,所述电子设备包括:一个或多个第一处理模块;第一存储模块,其上存储有第一可执行程序,当所述第一可执行程序被所述一个或多个第一处理模块执行时,所述一个或多个第一处理模块实现根据本公开第一个方面所述的确定方法。As a third aspect of the present disclosure, an electronic device is provided, the electronic device includes: one or more first processing modules; a first storage module on which a first executable program is stored, when the first When the executable program is executed by the one or more first processing modules, the one or more first processing modules implement the determination method according to the first aspect of the present disclosure.
作为本公开的第四个方面,提供一种SDN控制器,所述SDN控制器包括:一个或多个第二处理模块;第二存储模块,其上存储有第二可执行程序,当所述第二可执行程序被所述一个或多个第二处理模块执行时,所述一个或多个第二处理模块实现根本公开第二个方面所述的业务目标路径确定方法。As a fourth aspect of the present disclosure, an SDN controller is provided, the SDN controller includes: one or more second processing modules; a second storage module, on which a second executable program is stored, when the When the second executable program is executed by the one or more second processing modules, the one or more second processing modules implement the business target path determination method described in the second aspect of the fundamental disclosure.
作为本公开的第五个方面,提供一种业务部署方法,包括:将待部署的业务的业务需求、以及当前的网络资源发送至所述SDN控制器;接收所述SDN控制器发送的业务目标路径;以及按照接收到的业务目标路径对所述业务进行部署。As a fifth aspect of the present disclosure, a service deployment method is provided, including: sending service requirements of a service to be deployed and current network resources to the SDN controller; receiving a service target sent by the SDN controller path; and deploying the service according to the received service target path.
作为本公开的第六个方面,提供一种电子设备,所述电子设备包括:一个或多个第三处理模块;第三存储模块,其上存储有第三可执行程序,当所述第三可执行程序被所述一个或多个第三处理模块执行时,所述一个或多个第三处理模块实现根据本公开第四个方面所述的业务部署方法。As a sixth aspect of the present disclosure, an electronic device is provided, the electronic device includes: one or more third processing modules; a third storage module, on which a third executable program is stored, when the third When the executable program is executed by the one or more third processing modules, the one or more third processing modules implement the service deployment method according to the fourth aspect of the present disclosure.
作为本公开的第七个方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现以下方法中的至少一者:根据本公开第一个方面所述的确定方法;根据本公开第二个方面所述的业务目标路径确定方法;以及根据本公开第四个方面所述的业务部署方法。As a seventh aspect of the present disclosure, there is provided a computer-readable storage medium on which a computer program is stored, and when the program is executed by a processor, implements at least one of the following methods: according to the first aspect of the present disclosure the determination method described above; the service target path determination method according to the second aspect of the present disclosure; and the service deployment method according to the fourth aspect of the present disclosure.
本公开第一个方面所提供的确定方法确定的路由算法模型,可与根据本公开第二个方面所提供的业务目标路径确定方法配合使用。即,在通过所述路由算法模型获得用于部署所述待部署的业务的多个预选链路的信息(相当于对网络拓扑进行剪枝)后,对多个预选链路组成的新网络进行计算,获得符合预定条件的业务路径。The routing algorithm model determined by the determination method provided by the first aspect of the present disclosure can be used in conjunction with the service target path determination method provided by the second aspect of the present disclosure. That is, after obtaining the information of the multiple preselected links for deploying the service to be deployed through the routing algorithm model (equivalent to pruning the network topology), the new network composed of the multiple preselected links is Calculate to obtain business paths that meet predetermined conditions.
附图说明Description of drawings
图1是一种SDN网络架构图;Figure 1 is an SDN network architecture diagram;
图2是本公开第一个方面所提供的确定方法的一种实施方式的流程图;FIG. 2 is a flowchart of an embodiment of the determination method provided by the first aspect of the present disclosure;
图3是本公开第一个方面所提供的确定方法的另一种实施方式的流程图;3 is a flowchart of another implementation manner of the determination method provided by the first aspect of the present disclosure;
图4是图3中的步骤S100的一种实施方式的流程图;FIG. 4 is a flowchart of an embodiment of step S100 in FIG. 3;
图5是图3中的步骤S100的另一种实施方式的流程图;Fig. 5 is a flowchart of another implementation manner of step S100 in Fig. 3;
图6是对输入向量、输出向量进行编码的示意图;Fig. 6 is the schematic diagram that the input vector, the output vector are encoded;
图7是步骤S120的一种实施方式的流程图;FIG. 7 is a flowchart of an embodiment of step S120;
图8是本公开第二个方面所提供的业务目标路径确定方法的一种实施方式的流程图;8 is a flowchart of an embodiment of a method for determining a business target path provided by the second aspect of the present disclosure;
图9是本公开第四个方面提供的业务部署方法的一种实施方式的流程图;FIG. 9 is a flowchart of an implementation manner of a service deployment method provided by a fourth aspect of the present disclosure;
图10是本公开所提供的SDN网络***的一种实施方式的架构图。FIG. 10 is an architectural diagram of an implementation manner of an SDN network system provided by the present disclosure.
具体实施方式Detailed ways
为使本领域的技术人员更好地理解本公开的技术方案,下面结合附图对本公开提供的路由算法模型的确定方法、业务路径的确定方法、SDN控制器、电子设备和计算机可读存储介质进行详细描述。In order to make those skilled in the art better understand the technical solutions of the present disclosure, the following describes the method for determining the routing algorithm model, the method for determining the service path, the SDN controller, the electronic equipment and the computer-readable storage medium provided by the present disclosure with reference to the accompanying drawings. Describe in detail.
在下文中将参考附图更充分地描述示例实施例,但是所述示例实施例可以以不同形式来体现且不应当被解释为限于本文阐述的实施例。反之,提供这些实施例的目的在于使本公开透彻和完整,并将使本领域技术人员充分理解本公开的范围。Example embodiments are described more fully hereinafter with reference to the accompanying drawings, but which may be embodied in different forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the disclosure to those skilled in the art.
在不冲突的情况下,本公开各实施例及实施例中的各特征可相互组合。Various embodiments of the present disclosure and various features of the embodiments may be combined with each other without conflict.
如本文所使用的,术语“和/或”包括一个或多个相关列举条目的任何和所有组合。As used herein, the term "and/or" includes any and all combinations of one or more of the associated listed items.
本文所使用的术语仅用于描述特定实施例,且不意欲限制本公开。如本文所使用的,单数形式“一个”和“该”也意欲包括复数形式,除非上下文另外清楚指出。还将理解的是,当本说明书中使用术语“包括”时,指定存在所述特征、整体、步骤、操作、元件和/或组件,但不排除存在或添加一个或多个其它特征、整体、步骤、操作、元件、组件和/或其群组。The terminology used herein is used to describe particular embodiments only and is not intended to limit the present disclosure. As used herein, the singular forms "a" and "the" are intended to include the plural forms as well, unless the context clearly dictates otherwise. It will also be understood that when the term "comprising" is used in this specification, the stated features, integers, steps, operations, elements and/or components are specified to be present, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components and/or groups thereof.
除非另外限定,否则本文所用的所有术语(包括技术和科学术语)的含义与本领域普通技术人员通常理解的含义相同。还将理解,诸如那些在常用字典中限定的那些术语应当被解释为具有与其在相关技术以及本公开的背景下的含义一致的含义,且将不解释为具有理想化或过度形式上的含义,除非本文明确如此限定。Unless otherwise defined, all terms (including technical and scientific terms) used herein have the same meaning as commonly understood by one of ordinary skill in the art. It will also be understood that terms such as those defined in common dictionaries should be construed as having meanings consistent with their meanings in the context of the related art and the present disclosure, and will not be construed as having idealized or over-formal meanings, unless expressly so limited herein.
图1中所示的是SDN网络架构图,如图中所示,SDN网络包括控制平面和数据平面,控制平面包括SDN控制器,数据平面包括多个主机以及多个交换机。Figure 1 shows an SDN network architecture diagram. As shown in the figure, the SDN network includes a control plane and a data plane, the control plane includes an SDN controller, and the data plane includes multiple hosts and multiple switches.
为了部署业务,主机将待部署业务的业务需求信息(包括业务的源节点、业务的目标节点)发送至SDN控制器,由SDN控制器为待部署的业务计算业务路径信息,并将业务路径信息下发至相应的主机,最终由所述主机按照接收到的业务路径信息进行业务部署。In order to deploy the service, the host sends the service requirement information of the service to be deployed (including the source node of the service and the target node of the service) to the SDN controller, and the SDN controller calculates service path information for the service to be deployed, and sends the service path information to the SDN controller. It is delivered to the corresponding host, and finally the host performs service deployment according to the received service path information.
作为本公开的第一个方面,提供一种路由算法模型的确定方法,如图2所示,所述路由算法模型的确定方法包括以下步骤S110和S120:As a first aspect of the present disclosure, a method for determining a routing algorithm model is provided. As shown in FIG. 2 , the method for determining a routing algorithm model includes the following steps S110 and S120:
在步骤S110中,获取训练样本,所述训练样本中的输入向量包括部署多个业务前的网络资源信息以及所述多个业务的业务需求信息信息,所述训练样本的输出向量包括部署所述多个业务所经过的业务路径的业务路径信息,其中,部署所述多个业务所经过的业务路径满足预定的网络优化目标;In step S110, a training sample is obtained, the input vector in the training sample includes network resource information before the deployment of multiple services and the service requirement information of the multiple services, and the output vector of the training sample includes the deployment of the Service path information of service paths traversed by multiple services, wherein the service paths traversed by the deployment of the multiple services meet a predetermined network optimization goal;
在步骤S120中,利用所述训练样本进行深度学习,以获得路由算法模型,其中,所述路由算法模型能够以待部署的业务的业务需求信息、以及当前网络的网络资源信息为输入向量,输出多个预选链路的信息,所述预选链路用于部署所述待部署的业务。In step S120, deep learning is performed by using the training samples to obtain a routing algorithm model, wherein the routing algorithm model can take the business requirement information of the service to be deployed and the network resource information of the current network as input vectors, and output the routing algorithm model. Information about multiple preselected links, where the preselected links are used to deploy the to-be-deployed service.
需要指出的是,业务路径包括按照预定顺序排列的多个链路,所述链路连接在网络中的两个节点之间。利用所述确定方法获得的路由算法模型,输出的多个预选链路的信息还不是业务的业务路径信息,对多个预选链路进行进一步排序后,方可以获得所述业务路径。It should be noted that the service path includes a plurality of links arranged in a predetermined order, and the links are connected between two nodes in the network. Using the routing algorithm model obtained by the determining method, the output information of the multiple preselected links is not the service path information of the service, and the service path can be obtained only after the multiple preselected links are further sorted.
本公开所提供的确定方法确定的路由算法模型,可与本公开第二个方面所提供的业务目 标路径确定方法配合使用。即,在通过所述路由算法模型获得部署所述待部署的业务的多个预选链路后,对多个预选链路的信息进行计算,获得符合预定条件的业务路径。The routing algorithm model determined by the determination method provided by the present disclosure can be used in cooperation with the service target path determination method provided by the second aspect of the present disclosure. That is, after obtaining a plurality of preselected links for deploying the service to be deployed through the routing algorithm model, the information of the plurality of preselected links is calculated to obtain a service path that meets a predetermined condition.
流量工程中的业务具有动态属性,本公开所提供的路由算法模型的确定方法可以面向流量工程。所述确定方法相当于通过深度学习确定路由算法模型,并且,在进行深度学习时考虑到了部署业务前的网络资源、以及网络优化目标,因此,利用所述路由算法模型计算获得的预选链路进行业务部署时,可以提高网络资源的利用率。在本公开中,并非直接利用路由模型算法确定业务路径,而是在后续对多个预选链路的信息进行计算,使得最终的路径信息满足业务的实时路由需求相关的预定条件,由此可知,本公开所提供的路由算法模型与业务目标路径确定方法结合还可以满足动态业务的实时路由需求。The business in traffic engineering has dynamic properties, and the method for determining the routing algorithm model provided by the present disclosure can be oriented to traffic engineering. The determination method is equivalent to determining the routing algorithm model through deep learning, and the network resources before deploying the service and the network optimization goal are considered when deep learning is performed. Therefore, the preselected link calculated by the routing algorithm model is used for During service deployment, the utilization of network resources can be improved. In the present disclosure, instead of directly using the routing model algorithm to determine the service path, the information of multiple preselected links is subsequently calculated, so that the final path information meets the predetermined conditions related to the real-time routing requirements of the service. It can be seen that, The routing algorithm model provided by the present disclosure can also meet the real-time routing requirements of dynamic services in combination with the service target path determination method.
需要指出的是,可以将通过本公开所确定的路由算法模型存储至SDN控制器中,当SDN控制器接收到数据平面的主机发送的待部署业务的业务需求后,将所述待部署业务的业务需求、当前的网络资源作为数据向量,输入至所述路由算法模型中得到多个链路的信息后,对多个链路信息进行计算,并最终获得业务目标路径,主机可以按照该业务目标路径部署所述业务。It should be pointed out that the routing algorithm model determined by the present disclosure can be stored in the SDN controller, and when the SDN controller receives the service requirements of the service to be deployed sent by the host of the data plane, it stores the service requirements of the service to be deployed. The business requirements and the current network resources are used as data vectors, which are input into the routing algorithm model to obtain the information of multiple links, and then calculate the information of multiple links, and finally obtain the business target path. The host can follow the business target path to deploy the service.
在本公开中,对所述网络优化目标不做特殊的限定。可选地,所述网络优化目标可以是全网负载均衡、全网带宽占用最低、全网时延最低、全网阻塞率最低中的任意一者。In the present disclosure, the network optimization objective is not particularly limited. Optionally, the network optimization objective may be any one of load balancing in the entire network, lowest bandwidth occupation in the entire network, lowest latency in the entire network, and lowest blocking rate in the entire network.
当网络优化目标不同时,部署同一业务的业务路径也可能不同。When the network optimization goals are different, the service paths for deploying the same service may also be different.
需要指出的是,在本公开中,对执行所述确定方法的设备不做特殊的限定,例如,可以由单独的电子设备执行所述确定方法,也可以由SDN控制器执行所述确定方法,但是,无论执行所述确定方法的设备是什么,都需要将该确定方法获得的路由算法模型发送至SDN控制器。It should be pointed out that, in the present disclosure, the device for executing the determination method is not particularly limited, for example, the determination method may be performed by a separate electronic device, or the determination method may be performed by an SDN controller, However, no matter what the device that executes the determination method is, the routing algorithm model obtained by the determination method needs to be sent to the SDN controller.
如上文中所述,训练样本中不仅包括部署业务前的网络资源信息,还包括部署所述多个业务所经过的业务路径的业务路径信息。As described above, the training samples include not only network resource information before deployment of services, but also service path information of service paths through which the multiple services are deployed.
在本公开中,对如何获得所述业务路径信息不做特殊的限定。作为一种可选实施方式,如图3所示,在步骤S110之前,所述确定方法还包括以下步骤S100。In the present disclosure, there is no special limitation on how to obtain the service path information. As an optional implementation manner, as shown in FIG. 3 , before step S110 , the determination method further includes the following step S100 .
在步骤S100中,根据所述多个业务的业务需求以及所述预定的网络优化目标分别生成部署所述多个业务的业务路径、并获取相应的业务路径信息。In step S100, service paths for deploying the multiple services are respectively generated according to the service requirements of the multiple services and the predetermined network optimization target, and corresponding service path information is acquired.
确定了各个业务的业务路径之后,结合部署多个业务前的网络资源信息、多个所述业务的业务需求信息、以及部署多个所述业务时的网络优化目标信息即可获得所述训练样本。After the service paths of each service are determined, the training samples can be obtained by combining the network resource information before deploying the multiple services, the service requirement information of the multiple services, and the network optimization target information when the multiple services are deployed. .
在本公开中,对步骤S100的具体实现方式也不做特殊的限定,例如,可以利用启发式算法根据多个业务以及与多个业务相对应的网络优化目标分别生成部署多个所述业务的业务路径。In the present disclosure, the specific implementation of step S100 is not particularly limited. For example, a heuristic algorithm can be used to generate and deploy multiple services according to multiple services and network optimization objectives corresponding to the multiple services. business path.
启发式算法是基于全局业务的网络资源优化算法,能够提升网络资源的利用率。The heuristic algorithm is a network resource optimization algorithm based on global services, which can improve the utilization of network resources.
可选地,所述启发式算法为遗传算法。下面介绍利用遗传式算法确定业务路径的实例。根据本实例,如图4所示,前述步骤S100可以包括以下步骤S101a至S103a。Optionally, the heuristic algorithm is a genetic algorithm. The following introduces an example of using the genetic algorithm to determine the business path. According to this example, as shown in FIG. 4 , the aforementioned step S100 may include the following steps S101a to S103a.
在步骤S101a中,将所述多个业务的初始部署顺序作为所述遗传算法的染色体,通过染色体的不断变异和交叉对所述初始部署顺序进行改变,直到所述遗传算法收敛,以获得目标部署顺序;In step S101a, the initial deployment order of the multiple services is used as the chromosome of the genetic algorithm, and the initial deployment order is changed through the continuous mutation and crossover of chromosomes until the genetic algorithm converges, so as to obtain the target deployment order;
在步骤S102a中,利用迪杰斯特拉算法对所述多个业务中的每一个业务进行部署计算, 获得所述多个业务中的每一个业务的初始路径信息;In step S102a, use the Dijkstra algorithm to perform deployment calculation for each of the multiple services, and obtain initial path information for each of the multiple services;
在步骤S103a中,根据所述目标部署顺序以及每一个业务的初始路径信息对所述多个业务进行部署,并获得部署所述多个业务所经过的业务路径信息。In step S103a, the multiple services are deployed according to the target deployment sequence and the initial path information of each service, and the service path information through which the multiple services are deployed is obtained.
当然,本公开并不限于此,所述启发式算法还可以为模拟退火算法。下面介绍利用模拟退火算法确定业务路径的实例。根据本实例,如图5所示,前述步骤S100可以包括以下步骤S101b至S108b。Of course, the present disclosure is not limited thereto, and the heuristic algorithm may also be a simulated annealing algorithm. The following introduces an example of using the simulated annealing algorithm to determine the business path. According to this example, as shown in FIG. 5 , the aforementioned step S100 may include the following steps S101b to S108b.
在步骤S101b中,将所述多个业务按照初始部署顺序,利用迪杰斯特拉算法进行初始部署,其中,所述迪杰斯特拉算法的初始权值与所述预定的网络优化目标相关;In step S101b, the multiple services are initially deployed according to the initial deployment sequence using the Dijkstra algorithm, wherein the initial weight of the Dijkstra algorithm is related to the predetermined network optimization goal ;
在步骤S102b中,根据所述预定的网络优化目标计算评价函数;In step S102b, an evaluation function is calculated according to the predetermined network optimization objective;
在步骤S103b中,从网络中随机拆除预定比例的经过所述初始部署的业务;In step S103b, randomly remove a predetermined proportion of the initially deployed services from the network;
在步骤S104b中,利用迪杰斯特拉算法对经过拆除的业务进行重新部署;In step S104b, use Dijkstra algorithm to redeploy the dismantled service;
在步骤S105b中,根据重新部署时所使用的迪杰斯特拉算法的二次权值计算评价函数;In step S105b, the evaluation function is calculated according to the quadratic weight of Dijkstra's algorithm used during redeployment;
在步骤S106b中,判断此次计算获得的评价函数是否优于上一次使用的评价函数;In step S106b, it is judged whether the evaluation function obtained by this calculation is better than the evaluation function used last time;
若判断结果为是,则在步骤S107b中,根据此次计算获得的评价函数对应的迪杰斯特拉算法计算获得的业务路径对拆除的业务进行部署;If the judgment result is yes, then in step S107b, the dismantled service is deployed according to the service path calculated by the Dijkstra algorithm corresponding to the evaluation function obtained by this calculation;
反之,若断结果为否,则利用具有新的权值的迪杰斯特拉算法对经过拆除的业务进行重新部署,直至所述评价函数收敛为止,再执行步骤S107b;On the contrary, if the judgment result is no, then use Dijkstra's algorithm with new weights to redeploy the dismantled services until the evaluation function converges, and then execute step S107b;
在步骤S108b中,将最终部署所述多个业务的业务路径作为部署所述多个业务的业务路径的业务路径信息。In step S108b, the service paths where the multiple services are finally deployed are taken as the service path information of the service paths where the multiple services are deployed.
在本公开中,所述训练样本中的数据存储形式不做特殊的限定。In the present disclosure, the data storage form in the training samples is not particularly limited.
作为一种可选实施方式,可以利用向量的方式来存储训练样本中的数据。如上文中所述,所述训练样本中,输入向量包括部署多个业务前的网络资源信息以及多个业务的业务需求信息。可以用x表示部署多个业务前的网络资源信息(该网络资源信息可以包括部署多个业务前,网络中每条链路的剩余带宽),可以由维度为E的一维向量表示网络资源信息。用y表示业务需求信息(该业务需求信息可以包括业务的源节点、业务的目的节点以及业务带宽),可以利用维度为(2V+1)的向量表示业务需求信息,其中,V表示网络中节点的数量,可以按照独热码(one-hot code)表示业务的源节点和目的节点,将节点所在的位置编码为1,其余位置编码为0。可以利用z表示输出。As an optional implementation manner, the data in the training samples may be stored in a vector manner. As described above, in the training sample, the input vector includes network resource information before deploying multiple services and service requirement information of multiple services. The network resource information before the deployment of multiple services can be represented by x (the network resource information can include the remaining bandwidth of each link in the network before the deployment of multiple services), and the network resource information can be represented by a one-dimensional vector with dimension E. . Use y to represent the service requirement information (the service requirement information can include the source node of the service, the destination node of the service and the service bandwidth), and the vector of dimension (2V+1) can be used to represent the service requirement information, where V represents the node in the network The number of , the source node and destination node of the service can be represented by one-hot code, the position of the node is coded as 1, and the rest of the positions are coded as 0. The output can be represented by z.
利用预定算法为每个业务获得的业务路径都可以按照图6中所示的编码方式表示输出z。该输出z由维度为E的一维向量表示,业务部署后经过的链路的值为1(可称之为预选链路),其余链路的值为0(可称之为排除链路)。The service path obtained for each service using a predetermined algorithm can represent the output z in the coding manner shown in FIG. 6 . The output z is represented by a one-dimensional vector with dimension E, the value of the link passing through after the service is deployed is 1 (which can be called a preselected link), and the value of the remaining links is 0 (which can be called an excluded link). .
在图6中所示的实施方式中,网络中存在n个链路,根据n条链路的地址对n条链路进行编号,第一条链路的带宽为B1,第二条链路的带宽为B2,……,第n条链路的带宽为Bn。业务的带宽需求为B。In the embodiment shown in FIG. 6, there are n links in the network, and the n links are numbered according to the addresses of the n links. The bandwidth of the first link is B1, and the bandwidth of the second link is B1. The bandwidths are B2, ..., and the bandwidth of the nth link is Bn. The bandwidth requirement of the service is B.
可以按照上述向量的方式对训练样本中的输入和输出进行存储。The inputs and outputs in the training samples can be stored in the form of vectors described above.
在本公开中,对步骤S120的具体步骤不做特殊的限定,只要通过步骤S120能够获得所述路由算法模型即可。作为一种可选实施方式,如图7中所示,步骤S120可以包括以下步骤S121至S123。In the present disclosure, the specific steps of step S120 are not particularly limited, as long as the routing algorithm model can be obtained through step S120. As an optional implementation manner, as shown in FIG. 7 , step S120 may include the following steps S121 to S123.
在步骤S121中,将所述训练样本中部署多个业务前的网络资源、以及多个业务的业务需 求作为输入向量,并将部署多个所述业务的多个业务路径作为输出向量,输入至神经网络中;In step S121, the network resources before deploying multiple services and the service requirements of multiple services in the training sample are used as input vectors, and multiple service paths for deploying multiple services are used as output vectors, which are input to in neural network;
在步骤S122中,利用所述训练样本对所述神经网络进行训练,以获得训练后的神经网络,能够根据输入向量输出初始输出向量,针对输入向量对应的各个业务而言,所述初始输出向量中的元素分别为网络拓扑中各个链路的保留率;In step S122, the neural network is trained by using the training samples to obtain a trained neural network, which can output an initial output vector according to the input vector. For each service corresponding to the input vector, the initial output vector The elements in are the retention rates of each link in the network topology;
在步骤S123中,对训练后的神经网络进行处理,以获得所述路由算法模型,所述路由算法模型能够将所述初始输出向量中保留率大于或等于预定阈值的链路用1表示,将所述初始输出向量中保留率小于所述预定阈值的链路用0表示,并输出最终向量,其中,所述最终向量中,用1表示的链路为所述预选链路。In step S123, the trained neural network is processed to obtain the routing algorithm model. The routing algorithm model can use 1 to denote links whose retention rate is greater than or equal to a predetermined threshold in the initial output vector, and set the In the initial output vector, the link whose retention rate is less than the predetermined threshold is represented by 0, and a final vector is output, wherein, in the final vector, the link represented by 1 is the preselected link.
作为一种可选实施方式,步骤S122可以包括:将训练样本中的输入向量x、输入向量y和输出向量z输入到神经网络中,通过前向传播经过多个由全连接层和批量正则化层组成的残差网络结构,最终经过一层全连接层得到神经网络的输出结果z’,其中,神经网络中的残差网络结构中的激活函数可以为Relu激活函数,最后一层全连接层的激活函数为sigmoid激活函数。由于sigmoid激活函数会把输入值映射为0到1之间的值,因此z’是元素为0到1之间数值的一维向量,向量中各元素的大小代表链路选择的概率(即,上文中的保留率)。As an optional implementation manner, step S122 may include: inputting the input vector x, the input vector y and the output vector z in the training sample into the neural network, forward propagation through multiple fully connected layers and batch regularization The residual network structure composed of layers, the output result z' of the neural network is finally obtained through a fully connected layer, where the activation function in the residual network structure in the neural network can be the Relu activation function, and the last fully connected layer The activation function is the sigmoid activation function. Since the sigmoid activation function maps the input value to a value between 0 and 1, z' is a one-dimensional vector with elements between 0 and 1, and the size of each element in the vector represents the probability of link selection (ie, retention rate above).
将输出结果z’和对应的输出向量z结果求损失函数值,损失函数可以选用二分类交叉熵损失函数,损失函数计算方式为:Calculate the loss function value from the output result z' and the corresponding output vector z result. The loss function can be selected as the two-category cross-entropy loss function. The calculation method of the loss function is:
假设实际输出位z=[z 1,z 2,……,z i,……,z n-1,z n],神经网络的输出为z’=[z t 1,z t 2,……,z t i,……z t n-1,z t n],损失函数
Figure PCTCN2021134270-appb-000001
根据损失函数进行反向梯度传播,优化神经网络中每一层的权重值,直到损失值降低到一定阈值时停止训练,可以得到训练后的神经网络。
Assuming the actual output bits z=[z 1 , z 2 ,..., z i ,..., z n-1 , z n ], the output of the neural network is z'=[z t 1 , z t 2 ,... , z t i , ... z t n-1 , z t n ], loss function
Figure PCTCN2021134270-appb-000001
Carry out reverse gradient propagation according to the loss function, optimize the weight value of each layer in the neural network, and stop training until the loss value decreases to a certain threshold, and the trained neural network can be obtained.
在本公开中,对步骤S123也不做特殊的限定。可选地,将训练后的神经网络的输出结果进行阈值离散化,先根据网络链路保留率设置阈值(链路保留率为训练样本中输出向量为1的值占总数的比值),如可以将链路保留率设为阈值,小于阈值的元素的值设为1,大于或等于阈值的的元素的值设为1,可以得到一组0和1组成的一维向量;根据向量的位置将网络拓扑中对应值为1的链路设置为预选链路,将网络拓扑中对应值为0的链路设置为排除链路。In the present disclosure, step S123 is also not particularly limited. Optionally, threshold discretization is performed on the output result of the trained neural network, and a threshold is first set according to the network link retention rate (the link retention rate is the ratio of the value of the output vector of 1 to the total number in the training sample), if possible. The link retention rate is set as the threshold, the value of the element less than the threshold is set to 1, and the value of the element greater than or equal to the threshold is set to 1, and a one-dimensional vector consisting of 0 and 1 can be obtained; A link with a corresponding value of 1 in the network topology is set as a preselected link, and a link with a corresponding value of 0 in the network topology is set as an excluded link.
在本公开的第二个方面中,仅对所述预选链路进行计算,以确定最终的业务路径。In the second aspect of the present disclosure, only the preselected links are calculated to determine the final traffic path.
作为本公开的第二个方面,提供一种业务目标路径确定方法,如图8所示,所述业务目标路径确定方法包括以下步骤S210至S220。As a second aspect of the present disclosure, a method for determining a service target path is provided. As shown in FIG. 8 , the method for determining a service target path includes the following steps S210 to S220.
在步骤S210中,将待部署的业务的业务需求、以及当前的网络资源作为输入向量输入至路由算法模型中,为每一个待部署的业务获得多个预选链路,其中,所述路由算法模型为本公开第一个方面所提供的确定方法所得到的路由算法模型;In step S210, the service requirements of the service to be deployed and the current network resources are input into the routing algorithm model as input vectors, and multiple preselected links are obtained for each service to be deployed, wherein the routing algorithm model A routing algorithm model obtained by the determination method provided in the first aspect of the present disclosure;
在步骤S220中,为每一个待部署的业务在为其计算获得的多个预选链路中选择符合预定条件的路径作为所述待部署的业务的业务目标路径。In step S220, for each service to be deployed, a path that meets a predetermined condition is selected from the plurality of preselected links calculated and obtained for each service to be deployed as a service target path of the service to be deployed.
在本公开所提供的业务目标路径确定方法中,首选利用路由计算模型对网络拓扑进行剪枝,利用符合条件的链路(预选链路)形成一个新网络,然后再根据当前网络情况对预选链路中的至少一部分进行排序,将排序获得的路径作为业务目标路径。In the service target path determination method provided by the present disclosure, it is preferred to use a routing calculation model to prune the network topology, use qualified links (preselected links) to form a new network, and then prune the preselected links according to the current network conditions. At least a part of the paths is sorted, and the paths obtained by sorting are used as service target paths.
本公开所提供路由算法模型的确定方法,相当于通过深度学习确定路由算法模型,并且,在进行深度学习时考虑到了部署业务前的网络资源、以及网络优化目标,因此,利用所述路由算法模型计算获得的链路信息进行业务部署时,可以提高网络资源的利用率。在本公开中, 并非直接利用路由模型算法确定业务路径,而是在后续对多个链路信息进行计算,使得最终的路径信息满足预定条件,由此可知,本公开所提供的路由算法模型与业务目标路径确定方法结合还可以满足动态业务的实时路由需求。The method for determining the routing algorithm model provided by the present disclosure is equivalent to determining the routing algorithm model through deep learning, and the network resources before the deployment of the service and the network optimization goal are taken into account during deep learning. Therefore, the routing algorithm model is used. When the link information obtained by calculation is used for service deployment, the utilization rate of network resources can be improved. In the present disclosure, instead of directly using the routing model algorithm to determine the service path, the multiple link information is subsequently calculated so that the final path information satisfies the predetermined condition. It can be seen that the routing algorithm model provided in the present disclosure is similar to The combination of the service target path determination method can also meet the real-time routing requirements of dynamic services.
流量工程中的业务具有动态属性,如上所述,本公开所提供的路由算法模型与业务目标路径确定方法结合还可以满足动态业务的实时路由需求,使得本公开所提供的业务路径确定方法尤其适用于面向流量工程的业务。The business in traffic engineering has dynamic attributes. As mentioned above, the combination of the routing algorithm model provided by the present disclosure and the method for determining the business target path can also meet the real-time routing requirements of dynamic services, so that the method for determining the business path provided by the present disclosure is particularly applicable. For traffic engineering-oriented business.
在本公开中,对所述预定条件也不做特殊限定,可以根据具体业务类型来确定所述预定条件。可选地,所述预定条件为路由最短。相应地,在步骤S220中,可以利用贪婪算法确定路由最短的业务路径。In the present disclosure, the predetermined condition is not particularly limited, and the predetermined condition may be determined according to a specific service type. Optionally, the predetermined condition is that the route is the shortest. Correspondingly, in step S220, a greedy algorithm may be used to determine the service path with the shortest route.
具体地,在利用本公开第一个方面所提供的确定方法完成训练样本的训练、获得路由算法模型后,当新来一个或一批业务,首先确定此时网络中每条链路的带宽以及各个业务的业务需求信息信息(即,各个业务的源节点、目的节点以及所需带宽),对包括上述信息的输入向量进行编码,然后将编码后的输入向量输入至所述路由算法模型中。通过所述路由算法模型,可以最终获得部署所述待部署的业务的多个链路的信息的最终向量。Specifically, after using the determination method provided by the first aspect of the present disclosure to complete the training of the training samples and obtain the routing algorithm model, when a new service or batch of services arrives, first determine the bandwidth of each link in the network at this time and The service requirement information of each service (ie, the source node, destination node and required bandwidth of each service) encodes the input vector including the above information, and then inputs the encoded input vector into the routing algorithm model. Through the routing algorithm model, a final vector of information of multiple links for deploying the to-be-deployed service can be finally obtained.
经过步骤S220中的计算,可以获得所述待部署的业务的业务目标路径。Through the calculation in step S220, the service target path of the service to be deployed can be obtained.
通过上述描述可知,所述业务部署方法可分为离线训练(可以由SDN控制器执行)和在线决策(可以由SDN控制器执行)两部分。在离线训练的部分中,可通过启发式算法生成训练集,并完成路由算法模型的离线训练。在在线决策的部分中,可通过贪婪算法实现业务路由的实时优化。As can be seen from the above description, the service deployment method can be divided into two parts: offline training (which can be executed by the SDN controller) and online decision-making (which can be executed by the SDN controller). In the part of offline training, the training set can be generated through the heuristic algorithm, and the offline training of the routing algorithm model can be completed. In the part of online decision-making, real-time optimization of traffic routing can be achieved by a greedy algorithm.
作为本公开的第三个方面,提供一种电子设备,所述电子设备包括:一个或多个第一处理模块;以及第一存储模块,其上存储有第一可执行程序,当所述第一可执行程序被所述一个或多个第一处理模块执行时,所述一个或多个第一处理模块实现本公开第一个方面所提供的确定方法。As a third aspect of the present disclosure, an electronic device is provided, the electronic device includes: one or more first processing modules; and a first storage module on which a first executable program is stored, when the first When an executable program is executed by the one or more first processing modules, the one or more first processing modules implement the determination method provided by the first aspect of the present disclosure.
可选地,所述电子设备还可以包括一个或多个第一I/O接口,该第一I/O接口连接在所述处理器与存储器之间,配置为实现所述第一处理模块与所述第一存储模块的信息交互。Optionally, the electronic device may further include one or more first I/O interfaces, the first I/O interfaces are connected between the processor and the memory, and are configured to implement the first processing module and the memory. Information interaction of the first storage module.
其中,第一处理模块为具有数据处理能力的器件,其包括但不限于中央处理器(CPU)等;第一存储器模块为具有数据存储能力的器件,其包括但不限于随机存取存储器(RAM,更具体如SDRAM、DDR等)、只读存储器(ROM)、带电可擦可编程只读存储器(EEPROM)、闪存(FLASH);第一I/O接口(读写接口)连接在第一处理模块与第一存储模块间,能实现第一处理模块与第一存储模块的信息交互,其包括但不限于数据总线(Bus)等。Wherein, the first processing module is a device with data processing capability, including but not limited to a central processing unit (CPU), etc.; the first memory module is a device with data storage capability, including but not limited to random access memory (RAM) , more specifically such as SDRAM, DDR, etc.), read-only memory (ROM), electrified erasable programmable read-only memory (EEPROM), flash memory (FLASH); the first I/O interface (read-write interface) is connected to the first processing Between the module and the first storage module, information exchange between the first processing module and the first storage module can be realized, which includes but is not limited to a data bus (Bus) and the like.
在一些实施例中,第一处理模块、第一存储模块和第一I/O接口通过总线相互连接,进而与电子设备的其它组件连接。In some embodiments, the first processing module, the first storage module, and the first I/O interface are connected to each other through a bus, and further connected to other components of the electronic device.
作为本公开的第四个方面,提供一种SDN控制器,所述SDN控制器包括:As a fourth aspect of the present disclosure, an SDN controller is provided, and the SDN controller includes:
一个或多个第二处理模块;以及one or more second processing modules; and
第二存储模块,其上存储有第二可执行程序,当所述第二可执行程序被所述一个或多个第二处理模块执行时,所述一个或多个第二处理模块实现本公开第二个方面所提供的业务目标路径确定方法。A second storage module on which a second executable program is stored, and when the second executable program is executed by the one or more second processing modules, the one or more second processing modules implement the present disclosure The business target path determination method provided by the second aspect.
当利用本公开所提供的确定方法确定了路由算法模型后,将所述路由算法模型存储在SDN控制器中,并通过所述SDN控制器的第二处理模块调用所述第二可执行程序,可以为 待部署的业务计算业务目标路径。After the routing algorithm model is determined using the determination method provided by the present disclosure, the routing algorithm model is stored in the SDN controller, and the second executable program is called through the second processing module of the SDN controller, The business target path can be calculated for the business to be deployed.
可选地,所述SDN控制器还可以包括一个或多个第二I/O接口,该第二I/O接口连接在所述处理器与存储器之间,配置为实现所述第二处理模块与所述第二存储模块的信息交互。Optionally, the SDN controller may further include one or more second I/O interfaces, where the second I/O interfaces are connected between the processor and the memory and configured to implement the second processing module information interaction with the second storage module.
其中,第二处理模块为具有数据处理能力的器件,其包括但不限于中央处理器(CPU)等;第二存储器模块为具有数据存储能力的器件,其包括但不限于随机存取存储器(RAM,更具体如SDRAM、DDR等)、只读存储器(ROM)、带电可擦可编程只读存储器(EEPROM)、闪存(FLASH);第二I/O接口(读写接口)连接在第二处理模块与第二存储模块间,能实现第二处理模块与第二存储模块的信息交互,其包括但不限于数据总线(Bus)等。Wherein, the second processing module is a device with data processing capability, including but not limited to a central processing unit (CPU), etc.; the second memory module is a device with data storage capability, including but not limited to random access memory (RAM) , more specifically such as SDRAM, DDR, etc.), read-only memory (ROM), electrified erasable programmable read-only memory (EEPROM), flash memory (FLASH); the second I/O interface (read and write interface) is connected to the second processing Between the module and the second storage module, information exchange between the second processing module and the second storage module can be implemented, which includes but is not limited to a data bus (Bus) and the like.
在一些实施例中,第二处理模块、第二存储模块和第二I/O接口通过总线相互连接,进而与SDN控制器的其它组件连接。In some embodiments, the second processing module, the second storage module, and the second I/O interface are connected to each other through a bus, and further connected to other components of the SDN controller.
作为本公开的第五个方面,提供一种业务部署方法,如图9所示,所述业务部署方法包括以下步骤S310至S330。As a fifth aspect of the present disclosure, a service deployment method is provided. As shown in FIG. 9 , the service deployment method includes the following steps S310 to S330.
在步骤S310中,将待部署的业务的业务需求信息、以及当前的网络资源信息发送至本公开第三个方面所提供的SDN控制器;In step S310, the service requirement information of the service to be deployed and the current network resource information are sent to the SDN controller provided by the third aspect of the present disclosure;
在步骤S320中,接收所述SDN控制器发送的业务目标路径;In step S320, receiving the service target path sent by the SDN controller;
在步骤S330中,按照接收到的业务目标路径对所述业务进行部署。In step S330, the service is deployed according to the received service target path.
本公开的第五个方面所提供的业务部署方法可以由数据平面的主机所执行。该方面中所涉及的SDN控制器可以是根据本公开的第四个方面所述的SDN控制器。The service deployment method provided by the fifth aspect of the present disclosure may be executed by a host of a data plane. The SDN controller involved in this aspect may be the SDN controller according to the fourth aspect of the present disclosure.
作为本公开的第六个方面,提供一种电子设备,所述电子设备包括:As a sixth aspect of the present disclosure, an electronic device is provided, the electronic device comprising:
一个或多个第三处理模块;以及one or more third processing modules; and
第三存储模块,其上存储有第三可执行程序,当所述第三可执行程序被所述一个或多个第三处理模块执行时,所述一个或多个第三处理模块实现本公开第四个方面所提供的业务部署方法。A third storage module on which a third executable program is stored, and when the third executable program is executed by the one or more third processing modules, the one or more third processing modules implement the present disclosure The business deployment method provided by the fourth aspect.
可选地,所述电子设备还可以包括一个或多个第三I/O接口,该第三I/O接口连接在所述处理器与存储器之间,配置为实现所述第三处理模块与所述第三存储模块的信息交互。Optionally, the electronic device may further include one or more third I/O interfaces, the third I/O interfaces are connected between the processor and the memory, and are configured to implement the third processing module and the memory. Information interaction of the third storage module.
其中,第三处理模块为具有数据处理能力的器件,其包括但不限于中央处理器(CPU)等;第三存储器模块为具有数据存储能力的器件,其包括但不限于随机存取存储器(RAM,更具体如SDRAM、DDR等)、只读存储器(ROM)、带电可擦可编程只读存储器(EEPROM)、闪存(FLASH);第三I/O接口(读写接口)连接在第三处理模块与第三存储模块间,能实现第三处理模块与第三存储模块的信息交互,其包括但不限于数据总线(Bus)等。Wherein, the third processing module is a device with data processing capability, including but not limited to a central processing unit (CPU), etc.; the third memory module is a device with data storage capability, including but not limited to random access memory (RAM) , more specifically such as SDRAM, DDR, etc.), read-only memory (ROM), electrified erasable programmable read-only memory (EEPROM), flash memory (FLASH); the third I/O interface (read and write interface) is connected to the third processing The information exchange between the third processing module and the third storage module can be realized between the module and the third storage module, which includes but is not limited to a data bus (Bus) and the like.
在一些实施例中,第三处理模块、第三存储模块和第三I/O接口通过总线相互连接,进而与电子设备的其它组件连接。In some embodiments, the third processing module, the third storage module, and the third I/O interface are connected to each other through a bus, and further connected to other components of the electronic device.
作为本公开的第七个方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现以下方法中的至少一者:As a seventh aspect of the present disclosure, there is provided a computer-readable storage medium on which a computer program is stored, and when the program is executed by a processor, implements at least one of the following methods:
根据本公开第一个方面的确定方法;A determination method according to the first aspect of the present disclosure;
根据本公开第二个方面的业务目标路径确定方法;以及The business target path determination method according to the second aspect of the present disclosure; and
根据本公开第四个方面的业务部署方法。A service deployment method according to a fourth aspect of the present disclosure.
上文中已经对上述各个方面的原理以及有意效果进行了详细描述,这里不再赘述。The principles and intended effects of the above aspects have been described in detail above, and will not be repeated here.
图10中所示的是本公开所提供的SDN网络***的架构图。如图所示,所述SDN网络系 统的控制平面布置有SDN控制器910,该SDN控制器包括信息采集模块911、存储模块912、决策模块913、路由模块914。Shown in FIG. 10 is an architectural diagram of the SDN network system provided by the present disclosure. As shown in the figure, an SDN controller 910 is arranged on the control plane of the SDN network system, and the SDN controller includes an information collection module 911, a storage module 912, a decision module 913, and a routing module 914.
其中,信息采集模块911配置为获取网络资源信息和业务需求信息。网络资源信息包括网络链路剩余带宽、链路负载、链路时延等,业务需求信息包括业务的源节点、业务的目标节点、业务所需带宽等。The information acquisition module 911 is configured to acquire network resource information and service requirement information. The network resource information includes the remaining bandwidth of the network link, the link load, and the link delay, etc., and the service demand information includes the source node of the service, the target node of the service, and the bandwidth required by the service.
存储模块912配置为存储信息采集模块911所搜集到的信息。The storage module 912 is configured to store the information collected by the information collection module 911 .
决策模块913配置为根据网络优化目标通过启发式算法为业务部署路径。The decision module 913 is configured to deploy a path for the service through a heuristic algorithm according to the network optimization objective.
路由模块914配置为接收决策模块的路由决策,对数据平面的业务进行路由。The routing module 914 is configured to receive the routing decision of the decision module, and to route the services of the data plane.
此外,决策模块913还配置为一方面根据存储模块912里的历史路由数据进行训练,另一方面,训练完成后,对存储模块912中需要路由的业务进行路由。In addition, the decision module 913 is further configured to perform training according to the historical routing data in the storage module 912 on the one hand, and route the services that need to be routed in the storage module 912 after the training is completed.
所述SDN网络的数据平面包括多个主机920和多个交换机930。The data plane of the SDN network includes multiple hosts 920 and multiple switches 930 .
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、***、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读存储介质上,计算机可读存储介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其它数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其它存储器技术、CD-ROM、数字多功能盘(DVD)或其它光盘存储、磁盒、磁带、磁盘存储或其它磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其它的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其它传输机制之类的调制数据信号中的其它数据,并且可包括任何信息递送介质。Those of ordinary skill in the art can understand that all or some of the steps in the methods disclosed above, functional modules/units in the systems, and devices can be implemented as software, firmware, hardware, and appropriate combinations thereof. In a hardware implementation, the division between functional modules/units mentioned in the above description does not necessarily correspond to the division of physical components; for example, one physical component may have multiple functions, or one function or step may be composed of several physical components Components execute cooperatively. Some or all physical components may be implemented as software executed by a processor, such as a central processing unit, digital signal processor or microprocessor, or as hardware, or as an integrated circuit, such as an application specific integrated circuit . Such software may be distributed on computer-readable storage media, which may include computer storage media (or non-transitory media) and communication media (or transitory media). As is known to those of ordinary skill in the art, the term computer storage media includes both volatile and nonvolatile implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data flexible, removable and non-removable media. Computer storage media include, but are not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disk (DVD) or other optical disk storage, magnetic cartridges, magnetic tape, magnetic disk storage or other magnetic storage devices, or may Any other medium used to store desired information and which can be accessed by a computer. In addition, communication media typically embodies computer readable instructions, data structures, program modules, or other data in a modulated data signal such as a carrier wave or other transport mechanism, and can include any information delivery media, as is well known to those of ordinary skill in the art .
本文已经公开了示例实施例,并且虽然采用了具体术语,但它们仅用于并仅应当被解释为一般说明性含义,并且不用于限制的目的。在一些实例中,对本领域技术人员显而易见的是,除非另外明确指出,否则可单独使用与特定实施例相结合描述的特征、特性和/或元素,或可与其它实施例相结合描述的特征、特性和/或元件组合使用。因此,本领域技术人员将理解,在不脱离由所附的权利要求阐明的本公开的范围的情况下,可进行各种形式和细节上的改变。Example embodiments have been disclosed herein, and although specific terms are employed, they are used and should only be construed in a general descriptive sense and not for purposes of limitation. In some instances, it will be apparent to those skilled in the art that features, characteristics and/or elements described in connection with a particular embodiment may be used alone or in combination with other embodiments, unless expressly stated otherwise. Features and/or elements are used in combination. Accordingly, it will be understood by those of ordinary skill in the art that various changes in form and details may be made therein without departing from the scope of the present disclosure as set forth in the appended claims.

Claims (14)

  1. 一种路由算法模型的确定方法,包括:A method for determining a routing algorithm model, comprising:
    获取训练样本,所述训练样本中的输入向量包括部署多个业务前的网络资源信息以及所述多个业务的业务需求信息,所述训练样本的输出向量包括部署所述多个业务所经过的业务路径的业务路径信息,其中,部署所述多个业务所经过的业务路径满足预定的网络优化目标;以及A training sample is obtained, the input vector in the training sample includes network resource information before deploying multiple services and the service requirement information of the multiple services, and the output vector of the training sample includes the information on the network resources before the multiple services are deployed. Service path information of service paths, wherein the service paths through which the plurality of services are deployed satisfy a predetermined network optimization objective; and
    利用所述训练样本进行深度学习,以获得路由算法模型,其中,所述路由算法模型能够以待部署的业务的业务需求信息、以及当前网络的网络资源信息为输入向量,输出多个预选链路的信息,所述预选链路用于部署所述待部署的业务。Perform deep learning by using the training samples to obtain a routing algorithm model, wherein the routing algorithm model can take the service requirement information of the service to be deployed and the network resource information of the current network as input vectors, and output a plurality of preselected links information, the preselected link is used to deploy the to-be-deployed service.
  2. 根据权利要求1所述的确定方法,其中,在获取所述训练样本之前,所述确定方法还包括:The determination method according to claim 1, wherein, before acquiring the training sample, the determination method further comprises:
    根据所述多个业务的业务需求以及所述预定的网络优化目标分别生成部署所述多个业务的业务路径、并获取相应的业务路径信息。According to the service requirements of the multiple services and the predetermined network optimization target, the service paths for deploying the multiple services are respectively generated, and corresponding service path information is acquired.
  3. 根据权利要求2所述的确定方法,其中,在根据所述多个业务的业务需求以及所述预定的网络优化目标分别生成所述业务路径的业务路径信息的步骤中,利用启发式算法根据所述多个业务的业务需求以及所述预定的网络优化目标分别生成部署所述多个业务的业务路径的业务路径信息。The determination method according to claim 2, wherein in the step of respectively generating the service path information of the service path according to the service requirements of the plurality of services and the predetermined network optimization objective, a heuristic algorithm is used according to the The service path information of the service paths for deploying the multiple services is generated respectively according to the service requirements of the multiple services and the predetermined network optimization target.
  4. 根据权利要求3所述的确定方法,其中,所述启发式算法包括遗传算法,根据所述多个业务的业务需求以及所述预定的网络优化目标分别生成部署所述多个业务的业务路径的业务路径信息的步骤包括:The determination method according to claim 3, wherein the heuristic algorithm comprises a genetic algorithm, and according to the service requirements of the multiple services and the predetermined network optimization objective, the service paths for deploying the multiple services are respectively generated. The steps of business path information include:
    将所述多个业务的初始部署顺序作为所述遗传算法的染色体,通过染色体的不断变异和交叉对所述初始部署顺序进行改变,直到所述遗传算法收敛,以获得目标部署顺序;The initial deployment sequence of the multiple services is used as the chromosome of the genetic algorithm, and the initial deployment sequence is changed through continuous mutation and crossover of chromosomes until the genetic algorithm converges, so as to obtain the target deployment sequence;
    利用迪杰斯特拉算法对所述多个业务中的每一个业务进行部署计算,获得所述多个业务中的每一个业务的初始路径信息;以及Perform deployment calculation on each of the multiple services by using the Dijkstra algorithm to obtain initial path information of each of the multiple services; and
    根据所述目标部署顺序以及每一个业务的初始路径信息对所述多个业务进行部署,并获得部署所述多个业务所经过的业务路径的业务路径信息。The multiple services are deployed according to the target deployment sequence and the initial path information of each service, and the service path information of the service paths through which the multiple services are deployed is obtained.
  5. 根据权利要求3所述的确定方法,其中,所述启发式算法包括模拟退火算法,根据所述多个业务的业务需求以及所述预定的网络优化目标分别生成部署所述多个业务的业务路径的业务路径信息的步骤包括:The determination method according to claim 3, wherein the heuristic algorithm comprises a simulated annealing algorithm, and the service paths for deploying the plurality of services are respectively generated according to the service requirements of the plurality of services and the predetermined network optimization objective The steps of the business path information include:
    将所述多个业务按照初始部署顺序,利用迪杰斯特拉算法进行初始部署,其中,所述迪杰斯特拉算法的初始权值与所述预定的网络优化目标相关;Perform initial deployment of the multiple services according to the initial deployment sequence using the Dijkstra algorithm, wherein the initial weight of the Dijkstra algorithm is related to the predetermined network optimization goal;
    根据所述预定的网络优化目标计算评价函数;Calculate the evaluation function according to the predetermined network optimization objective;
    从网络中随机拆除预定比例的经过所述初始部署的业务;Randomly remove a predetermined proportion of the initially deployed services from the network;
    利用迪杰斯特拉算法对经过拆除的业务进行重新部署;Re-deployment of dismantled services using Dijkstra's algorithm;
    根据重新部署时所使用的迪杰斯特拉算法的二次权值计算评价函数;Calculate the evaluation function according to the quadratic weight of Dijkstra's algorithm used in redeployment;
    判断此次计算获得的评价函数是否优于上一次使用的评价函数;若判断结果为是,则根据此次计算获得的评价函数对应的迪杰斯特拉算法计算获得的业务路径对拆除的业务进行部署;若判断结果为否,则利用具有新的权值的迪杰斯特拉算法对经过拆除的业务进行重新部署,直至所述评价函数收敛为止;以及Judging whether the evaluation function obtained by this calculation is better than the evaluation function used last time; if the judgment result is yes, the service path calculated according to the Dijkstra algorithm corresponding to the evaluation function obtained by this calculation is used for the dismantled service. deploying; if the judgment result is no, redeploy the dismantled service using Dijkstra's algorithm with new weights until the evaluation function converges; and
    将最终部署所述多个业务的业务路径作为部署所述多个业务的业务路径的业务路径信息。Taking the service paths where the multiple services are finally deployed as the service path information of the service paths where the multiple services are deployed.
  6. 根据权利要求1至5中任意一项所述的确定方法,其中,利用所述训练样本进行深度学习的步骤包括:The determination method according to any one of claims 1 to 5, wherein the step of using the training samples for deep learning comprises:
    将所述训练样本输入至神经网络中;inputting the training samples into the neural network;
    利用所述训练样本对所述神经网络进行训练,以使得训练后的神经网络能够根据输入向量输出初始输出向量,针对输入向量对应的各个业务而言,所述初始输出向量中的元素分别为网络拓扑中各个链路的保留率;以及The neural network is trained by using the training samples, so that the trained neural network can output an initial output vector according to the input vector. For each service corresponding to the input vector, the elements in the initial output vector are the network the retention rates of individual links in the topology; and
    对训练后的神经网络进行处理,以获得所述路由算法模型,所述路由算法模型能够将所述初始输出向量中保留率大于或等于预定阈值的链路用1表示,将所述初始输出向量中保留率小于所述预定阈值的链路用0表示,并输出最终向量,其中,所述最终向量中,用1表示的链路为所述预选链路。The trained neural network is processed to obtain the routing algorithm model, the routing algorithm model can use 1 to represent the link whose retention rate is greater than or equal to a predetermined threshold in the initial output vector, and the initial output vector A link whose retention rate is less than the predetermined threshold is represented by 0, and a final vector is output, wherein, in the final vector, the link represented by 1 is the preselected link.
  7. 根据权利要求1至5中任意一项所述的确定方法,其中,所述优化目标包括以下目标中的至少一者:The determination method according to any one of claims 1 to 5, wherein the optimization objective includes at least one of the following objectives:
    全网负载均衡、全网带宽占用最低、全网时延最低、全网阻塞率最低。Network-wide load balancing, the lowest network bandwidth occupation, the lowest network-wide delay, and the lowest network-wide blocking rate.
  8. 一种业务目标路径确定方法,包括:A business target path determination method, comprising:
    将至少一个待部署的业务的业务需求、以及当前的网络资源作为输入向量输入至路由算法模型中,为每一个待部署的业务获得多个预选链路,其中,所述路由算法模型为权利要求1至7中任意一项所述的确定方法所得到的路由算法模型;以及The service requirements of at least one service to be deployed and the current network resources are input into the routing algorithm model as input vectors, and multiple preselected links are obtained for each service to be deployed, wherein the routing algorithm model is the claim The routing algorithm model obtained by the determination method described in any one of 1 to 7; and
    为每一个待部署的业务在为其计算获得的多个预选链路中选择符合预定条件的路径作为所述待部署的业务的业务目标路径。For each to-be-deployed service, a path that meets a predetermined condition is selected from the plurality of preselected links calculated and obtained for each service to be deployed as a service target path of the to-be-deployed service.
  9. 根据权利要求8所述的业务目标路径确定方法,其中,所述预定条件为路由最短。The method for determining a service target path according to claim 8, wherein the predetermined condition is that the route is the shortest.
  10. 一种电子设备,所述电子设备包括:An electronic device comprising:
    一个或多个第一处理模块;以及one or more first processing modules; and
    第一存储模块,其上存储有第一可执行程序,当所述第一可执行程序被所述一个或多个第一处理模块执行时,所述一个或多个第一处理模块实现根据权利要求1至7中任意一项所述的确定方法。a first storage module on which a first executable program is stored, when the first executable program is executed by the one or more first processing modules, the one or more first processing modules The determination method described in any one of claims 1 to 7 is required.
  11. 一种SDN控制器,所述SDN控制器包括:An SDN controller, the SDN controller comprising:
    一个或多个第二处理模块;以及one or more second processing modules; and
    第二存储模块,其上存储有第二可执行程序,当所述第二可执行程序被所述一个或多个第二处理模块执行时,所述一个或多个第二处理模块实现根据权利要求8或9所述的业务目标路径确定方法。A second storage module on which a second executable program is stored, when the second executable program is executed by the one or more second processing modules, the one or more second processing modules The business target path determination method described in claim 8 or 9.
  12. 一种业务部署方法,包括:A business deployment method, including:
    将待部署的业务的业务需求、以及当前的网络资源发送至权利要求11所述的SDN控制器;sending the service requirements of the service to be deployed and the current network resources to the SDN controller according to claim 11;
    接收所述SDN控制器发送的业务目标路径;以及receiving the service target path sent by the SDN controller; and
    按照接收到的业务目标路径对所述业务进行部署。The service is deployed according to the received service target path.
  13. 一种电子设备,所述电子设备包括:An electronic device comprising:
    一个或多个第三处理模块;以及one or more third processing modules; and
    第三存储模块,其上存储有第三可执行程序,当所述第三可执行程序被所述一个或多个第三处理模块执行时,所述一个或多个第三处理模块实现根据权利要求12所述的业务部署方法。A third storage module on which a third executable program is stored, when the third executable program is executed by the one or more third processing modules, the one or more third processing modules realize the The service deployment method described in requirement 12 is required.
  14. 一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现以下方法中的至少一者:A computer-readable storage medium having a computer program stored thereon, the program implementing at least one of the following methods when executed by a processor:
    根据权利要求1至7中任意一项所述的确定方法;The determination method according to any one of claims 1 to 7;
    根据权利要求8或9所述的业务目标路径确定方法;The business target path determination method according to claim 8 or 9;
    根据权利要求12所述的业务部署方法。The service deployment method according to claim 12.
PCT/CN2021/134270 2020-12-02 2021-11-30 Algorithm model determining method, path determining method, electronic device, sdn controller, and medium WO2022116957A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202011400354.7 2020-12-02
CN202011400354.7A CN114650249A (en) 2020-12-02 2020-12-02 Algorithm model and path determination method, electronic device, SDN controller and medium

Publications (1)

Publication Number Publication Date
WO2022116957A1 true WO2022116957A1 (en) 2022-06-09

Family

ID=81852943

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2021/134270 WO2022116957A1 (en) 2020-12-02 2021-11-30 Algorithm model determining method, path determining method, electronic device, sdn controller, and medium

Country Status (2)

Country Link
CN (1) CN114650249A (en)
WO (1) WO2022116957A1 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115834466A (en) * 2022-12-01 2023-03-21 中国联合网络通信集团有限公司 Calculation force network path analysis method, device, equipment, system and storage medium
CN115866626A (en) * 2023-02-23 2023-03-28 安徽思高智能科技有限公司 NSGA-II and simulated annealing based service deployment method under edge environment
CN116156592A (en) * 2022-12-27 2023-05-23 深圳市宇通联发科技有限公司 Low-delay wireless transmission method, device, communication management equipment and storage medium
CN116805926A (en) * 2023-08-21 2023-09-26 上海飞旗网络技术股份有限公司 Network service type identification model training method and network service type identification method
WO2024037136A1 (en) * 2022-08-15 2024-02-22 南京邮电大学 Graph structure feature-based routing optimization method and system

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115905624B (en) * 2022-10-18 2023-06-16 支付宝(杭州)信息技术有限公司 Method, device and equipment for determining user behavior state

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108076158A (en) * 2018-01-08 2018-05-25 苏州大学 Minimum load route selection method and system based on Naive Bayes Classifier
CN108667734A (en) * 2018-05-18 2018-10-16 南京邮电大学 It is a kind of that the through street with LSTM neural networks is learnt by decision making algorithm based on Q
US20190349287A1 (en) * 2018-05-10 2019-11-14 Dell Products L. P. System and method to learn and prescribe optimal network path for sdn
CN110505154A (en) * 2019-07-26 2019-11-26 北京工业大学 A kind of interchanger moving method based on improved Dijkstra's algorithm
US20200136957A1 (en) * 2018-10-25 2020-04-30 Ca, Inc. Efficient machine learning for network optimization

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107016065A (en) * 2017-03-16 2017-08-04 陕西科技大学 It is customizable to rely on semantic effective origin filter method
CN108494601B (en) * 2018-04-04 2020-02-21 西安电子科技大学 Multi-constraint double-path routing method in hierarchical determination network
CN110891021B (en) * 2018-09-11 2022-08-26 中兴通讯股份有限公司 Path calculation method and device and computer readable storage medium
CN109818865B (en) * 2019-03-11 2020-09-18 江苏君英天达人工智能研究院有限公司 SDN enhanced path boxing device and method
CN110493131B (en) * 2019-09-24 2021-06-01 大连大学 Design method of spatial information network routing strategy under SDN architecture
CN111106999A (en) * 2019-12-27 2020-05-05 国网江苏省电力公司信息通信分公司 IP-optical network communication service joint distribution method and device

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108076158A (en) * 2018-01-08 2018-05-25 苏州大学 Minimum load route selection method and system based on Naive Bayes Classifier
US20190349287A1 (en) * 2018-05-10 2019-11-14 Dell Products L. P. System and method to learn and prescribe optimal network path for sdn
CN108667734A (en) * 2018-05-18 2018-10-16 南京邮电大学 It is a kind of that the through street with LSTM neural networks is learnt by decision making algorithm based on Q
US20200136957A1 (en) * 2018-10-25 2020-04-30 Ca, Inc. Efficient machine learning for network optimization
CN110505154A (en) * 2019-07-26 2019-11-26 北京工业大学 A kind of interchanger moving method based on improved Dijkstra's algorithm

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024037136A1 (en) * 2022-08-15 2024-02-22 南京邮电大学 Graph structure feature-based routing optimization method and system
CN115834466A (en) * 2022-12-01 2023-03-21 中国联合网络通信集团有限公司 Calculation force network path analysis method, device, equipment, system and storage medium
CN115834466B (en) * 2022-12-01 2024-04-16 中国联合网络通信集团有限公司 Method, device, equipment, system and storage medium for analyzing path of computing power network
CN116156592A (en) * 2022-12-27 2023-05-23 深圳市宇通联发科技有限公司 Low-delay wireless transmission method, device, communication management equipment and storage medium
CN116156592B (en) * 2022-12-27 2023-08-22 深圳市宇通联发科技有限公司 Low-delay wireless transmission method, device, communication management equipment and storage medium
CN115866626A (en) * 2023-02-23 2023-03-28 安徽思高智能科技有限公司 NSGA-II and simulated annealing based service deployment method under edge environment
CN115866626B (en) * 2023-02-23 2023-05-12 安徽思高智能科技有限公司 Service deployment method based on NSGA-II and simulated annealing in edge environment
CN116805926A (en) * 2023-08-21 2023-09-26 上海飞旗网络技术股份有限公司 Network service type identification model training method and network service type identification method
CN116805926B (en) * 2023-08-21 2023-11-17 上海飞旗网络技术股份有限公司 Network service type identification model training method and network service type identification method

Also Published As

Publication number Publication date
CN114650249A (en) 2022-06-21

Similar Documents

Publication Publication Date Title
WO2022116957A1 (en) Algorithm model determining method, path determining method, electronic device, sdn controller, and medium
CN109818865B (en) SDN enhanced path boxing device and method
CN108900419B (en) Routing decision method and device based on deep reinforcement learning under SDN framework
CN112437020B (en) Data center network load balancing method based on deep reinforcement learning
WO2017219890A1 (en) Method for generating routing control action in software defined network and related device
CN110601973B (en) Route planning method, system, server and storage medium
CN106470168B (en) data transmission method, switch using the method and network control system
US10187291B2 (en) Path planning method and controller
CN107317697B (en) Route configuration method of OSPF (open shortest Path first) and SDN (software defined network) hybrid network
CN112087329B (en) Network service function chain deployment method
US20200344154A1 (en) Method, device and computer program product for path optimization
CN111800352B (en) Service function chain deployment method and storage medium based on load balancing
US10983828B2 (en) Method, apparatus and computer program product for scheduling dedicated processing resources
CN113518035B (en) Route determining method and device
Wang et al. A reinforcement learning approach for online service tree placement in edge computing
CN113472671B (en) Method, device and computer readable storage medium for determining multicast route
CN111181792A (en) SDN controller deployment method and device based on network topology and electronic equipment
Zhou et al. Multi-task deep learning based dynamic service function chains routing in SDN/NFV-enabled networks
JP6389811B2 (en) Physical resource allocation device, physical resource allocation method, and program
CN114422453B (en) Method, device and storage medium for online planning of time-sensitive stream
Pham et al. Multi-domain non-cooperative VNF-FG embedding: A deep reinforcement learning approach
Hoang et al. Lstm-based server and route selection in distributed and heterogeneous sdn network
Perepelkin et al. Intelligent Adaptive Routing Algorithm in Software Defined Networks with Quality of Service
CN112333102A (en) Software defined network routing method and system based on knowledge graph
Martin et al. Q-Routing with Multiple Soft Requirements

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21899988

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21899988

Country of ref document: EP

Kind code of ref document: A1

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 02/11/2023)