WO2023078150A1 - Path calculation method, route calculation device, electronic device, and computer storage medium - Google Patents

Path calculation method, route calculation device, electronic device, and computer storage medium Download PDF

Info

Publication number
WO2023078150A1
WO2023078150A1 PCT/CN2022/127910 CN2022127910W WO2023078150A1 WO 2023078150 A1 WO2023078150 A1 WO 2023078150A1 CN 2022127910 W CN2022127910 W CN 2022127910W WO 2023078150 A1 WO2023078150 A1 WO 2023078150A1
Authority
WO
WIPO (PCT)
Prior art keywords
path
target
path calculation
calculation request
information
Prior art date
Application number
PCT/CN2022/127910
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 WO2023078150A1 publication Critical patent/WO2023078150A1/en

Links

Images

Classifications

    • 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
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/125Shortest path evaluation based on throughput or bandwidth
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/08Load balancing or load distribution

Definitions

  • the present disclosure relates to the field of communication technologies.
  • SR Policy Segment Routing Policy
  • SR-TE Segment Routing Traffic Engineering
  • the present disclosure aims at the above-mentioned deficiencies in the prior art, and provides a route calculation method, a route calculation device, an electronic device, and a computer storage medium.
  • An embodiment of the present disclosure provides a path calculation method, which includes: determining a target path corresponding to the path calculation request based on network topology information and path configuration information corresponding to the path calculation request; The information is pre-processed to update the network topology information; judge whether the determined target path meets the target condition, and repeat the steps of determining a target path corresponding to the path calculation request and updating the network topology until the determined target path meets the target condition , and determine all the different target paths corresponding to the path calculation request.
  • An embodiment of the present disclosure provides a routing computing device, which includes: a computing module configured to determine a target path corresponding to the path computing request based on network topology information and path configuration information corresponding to the path computing request;
  • the processing module is configured to update the network topology information by performing preset processing on the network topology information based on the determined target path;
  • the decision module is configured to judge whether the determined target path satisfies the target condition, so that the calculation module repeatedly determines and The operation of one target path corresponding to the path calculation request and the operation of causing the processing module to repeatedly update the network topology information until the determined target path satisfies the target condition, and determine all the different target paths corresponding to the path calculation request.
  • An embodiment of the present disclosure provides an electronic device, including: one or more processors; and a memory on which one or more programs are stored; when the one or more programs are executed by the one or more processors When , one or more processors are made to implement the above path calculation method.
  • An embodiment of the present disclosure provides a computer storage medium on which a computer program is stored, wherein any path calculation method in the embodiments of the present disclosure is implemented when the program is executed.
  • Fig. 1 is a schematic structural diagram of an SR Policy according to an embodiment of the present disclosure
  • FIG. 2 is a flowchart of a path calculation method according to an embodiment of the present disclosure
  • FIG. 3 is a flowchart of a method for updating network topology information according to an embodiment of the present disclosure
  • Fig. 4a is a schematic diagram of network topology information according to an embodiment of the present disclosure.
  • Fig. 4b is a schematic diagram of network topology information according to an embodiment of the present disclosure.
  • FIG. 5 is a flowchart of a path calculation method according to an embodiment of the present disclosure.
  • FIG. 6 is a flowchart of a path calculation method according to an embodiment of the present disclosure.
  • FIG. 7 is a schematic diagram of network topology information according to an embodiment of the present disclosure.
  • FIG. 8 is a schematic diagram of network topology information according to an embodiment of the present disclosure.
  • FIG. 9 is a schematic structural diagram of a route computing device according to an embodiment of the present disclosure.
  • FIG. 10 is a schematic structural diagram of a system for managing and controlling products according to an embodiment of the present disclosure.
  • FIG. 11 is a compositional block diagram of an electronic device according to an embodiment of the present disclosure.
  • Embodiments described herein may be described with reference to plan views and/or cross-sectional views by way of idealized schematic illustrations of the present disclosure. Accordingly, the example illustrations may be modified according to manufacturing techniques and/or tolerances. Therefore, the embodiments are not limited to the ones shown in the drawings but include modifications of configurations formed based on manufacturing processes. Accordingly, the regions illustrated in the figures have schematic properties, and the shapes of the regions shown in the figures illustrate the specific shapes of the regions of the elements, but are not intended to be limiting.
  • the SDN controller has the characteristics of separating forwarding and control. Through the SDN controller, functions such as network topology collection, path calculation, flow table generation and distribution can be realized. Among them, Path Computation Element (PCE) is an important module in the SDN controller.
  • PCE Path Computation Element
  • SR Policy Segment Routing Policy
  • SR-TE Segment Routing Traffic Engineering
  • FIG. 1 is a schematic structural diagram of an SR Policy according to an embodiment of the present disclosure.
  • an SR Policy's candidate paths represent specific ways to deliver traffic from the SR Policy's headend to its endpoints.
  • Each candidate path (Candidate Path, Cpath) corresponds to a preference value (Preference). The higher the preference value of the candidate path is, the better the candidate path is. Among them, the candidate path with the highest preference value is the active candidate path.
  • the SR Policy service When the SR Policy service is opened on a large-scale network, it is necessary to load balance the SR Policy traffic through multiple segment lists (Segment List, SL).
  • SL Segment List
  • one SR Policy can be configured with up to 16 SLs for traffic load sharing.
  • multiple sets of candidate paths are required for backup.
  • the candidate paths of the SR Policy in Figure 1 include Cpath1 to CpathN, and their corresponding preference values are p1 to pN, where the preference value p1> px, x ⁇ [2,N], that is, the candidate path Cpath1 is the active candidate path.
  • Each candidate path can have one or more SLs.
  • Cpath1 in FIG. 1 has m SLs (S11, S12...S1m)
  • Cpath2 has m SLs (S21, S22...S2m)
  • CpathN has k SLs (SN1, SN2...SNk).
  • SL load-balanced paths
  • "As much as possible” means: when selecting SL, if there is a path that is completely disjoint with the selected SL, then determine the path that is completely disjoint with the selected SL as the next SL; To a path completely disjoint with the selected SL, find the path with the least number of intersections with the selected SL as the next SL. Separate the load balancing paths as much as possible so that if any SL is damaged, all SLs will not fail to work.
  • an embodiment of the present disclosure provides a route calculation method, which is applied to a route calculation device.
  • Fig. 2 is a flowchart of a path calculation method according to an embodiment of the present disclosure. As shown in FIG. 2, the method includes: step S201 to step S203.
  • a target path corresponding to the path calculation request is determined based on network topology information and path configuration information corresponding to the path calculation request.
  • Network topology information includes network node information, link information, routing costs corresponding to each link, and available resource information for each link.
  • a link refers to a path between any node and an adjacent node in the network topology.
  • the link information may be a unique identifier of the link.
  • the routing cost corresponding to the link is an index used to evaluate the quality of the link. For example, in the case where the routing cost is only related to the delay, the greater the delay of the link, the corresponding route of the link The greater the price.
  • the available resource information of the link includes bandwidth information of the link and the like.
  • the path configuration information corresponding to the path calculation request includes information of the source node and information of the destination node.
  • the information of the source node may include information such as the identifier and address of the source node
  • the information of the destination node may include information such as the identifier and address of the destination node.
  • the destination path is the path with the least routing cost from the source node to the destination node in the network topology information.
  • a path calculation request is a request for calculating a candidate path from a source node to a destination node.
  • the path calculation request includes path configuration information of a corresponding candidate path, and the path configuration information of the candidate path is a performance parameter that the candidate path needs to have.
  • the path configuration information of the candidate path includes the information of the source node, the information of the destination node, the number of corresponding segment lists, the preset bandwidth, and path calculation constraint information.
  • the candidate path includes at least one section list, and a target path determined in step S201 can be used as a section list of the candidate path.
  • the preset bandwidth is the minimum bandwidth that a candidate path needs to have. It should be noted that the multiple segment lists of the candidate path are used for load sharing. For example, when the preset bandwidth is 50Mpbs, the total bandwidth corresponding to the multiple segment lists included in the candidate path needs to be no less than 50Mpbs.
  • the path calculation constraint is a special path requirement that needs to be met when calculating the path, for example, at least one of delay, hop count, bandwidth utilization and routing cost.
  • step S202 the network topology information is updated by performing preset processing on the network topology information based on the determined target path.
  • the preset processing is to update the network topology information by modifying and/or clearing the path information of the target path in the network topology information, so that when determining the next target path, if there are other optional target paths , to effectively prevent the previously determined target path from being selected again, so that in the step of determining a target path corresponding to the path calculation request based on the updated network topology information and the path configuration information corresponding to the path calculation request, it can be Effectively filter out the paths that are completely disjoint with all the previously determined target paths, or effectively filter out the paths with the least intersecting times with all the previously determined target paths, and then realize all paths from the source node to the destination node Separate as much as possible.
  • the path information of the target path includes, but is not limited to: the routing cost of each link of the target path, the parent-child relationship of the nodes passed by the target path, and the parent-child relationship of the child nodes corresponding to the passed nodes.
  • the target path determined by the path configuration information corresponding to the path request will be the same path as any previously determined target path.
  • the target condition includes: the determined target path is the same as the previously determined target path, or all the determined target paths are different from each other and the accumulated quantity of all the determined target paths is a preset quantity.
  • judging whether the determined target path satisfies the target condition includes: judging whether the determined target path is the same as the previously determined target path.
  • the link IDs of the links are all the same.
  • the determined target path is the same as any previously determined target path, it is determined that the determined target path satisfies the target condition.
  • the determined target route is different from the previously determined target route, it is further determined whether the accumulated quantity of all determined target paths is a preset quantity.
  • the preset number may be the corresponding segment list number in the path configuration information included in the path calculation request, that is, the preset number represents one of the requirements of the path configuration.
  • the cumulative quantity of all determined target paths is the preset quantity, it is determined that the determined target path meets the target condition; when the cumulative quantity of all determined target paths is less than the preset quantity, it is determined that the determined The target path does not meet the target condition.
  • step S203 it is judged whether the determined target route satisfies the target condition, and steps S201 and S202 are repeated until the determined target route meets the target condition, and all different target routes corresponding to the path calculation request are determined.
  • the target condition includes: the determined target path is the same as the previously determined target path.
  • the determined target path is the same as the previously determined target path, it means that the paths that are completely disjoint with all the previously determined target paths and the paths that are not completely intersected with all the previously determined target paths have been screened out, even if this At this time, the cumulative number of all determined target paths does not meet the path configuration requirements, and the new target path corresponding to the path calculation request cannot be determined. Therefore, in the case where the determined target route is the same as the previously determined target route, all different target routes corresponding to the path calculation request have been determined.
  • the currently determined target path is the target path 5
  • the previously determined target paths are the target path 1 , the target path 2 , the target path 3 and the target path 4 .
  • the target route 5 is the same as the target route 3
  • all different target routes corresponding to the path calculation request are determined as the target route 1 , the target route 2 , the target route 3 and the target route 4 .
  • the target condition includes: all determined target paths are different from each other and the cumulative number is a preset number.
  • all the determined target paths are different from each other and the cumulative amount is a preset number, it means that paths that are completely disjoint from all previously determined target paths and paths that are not completely intersected from all previously determined target paths may not have all
  • the accumulated quantity of all determined target paths has reached the requirement of the path configuration, and there is no need to acquire new target paths. Therefore, in the case that all determined target routes are different from each other and the cumulative number is a preset number, all different target routes corresponding to the path calculation request have also been determined.
  • the currently determined target path is target path 5
  • the previously determined target paths are target path 1, target path 2, target path 3, and target path 4, and the preset number is five.
  • the target path 5 is different from the target paths 1-4, and the cumulative number (there are 5 target paths 1-5) is equal to the preset number, it is determined that all different target paths corresponding to the path calculation request are Goal paths 1-5.
  • each determination of the target path is based on different network topology information (that is, updated network topology information)
  • the updated network topology information is based on the determined target path pair network topology information Obtained after preset processing, therefore, compared with the link separation algorithm in the prior art, in this embodiment, not only can effectively avoid multiple repeated calculations in the process of determining all different target paths corresponding to the path calculation request , it can also reduce the complexity of path calculation and shorten the time-consuming path calculation, so as to speed up the separation of all paths from the source node to the destination node as much as possible.
  • the path calculation method provided in this embodiment can reduce the complexity of path calculation and shorten the time-consuming path calculation, so as to achieve the effect of accelerating the separation of paths as much as possible, and can meet the current large-scale network scale and performance requirements for batch business creation and recovery under ultra-large network scale.
  • An embodiment of the present disclosure provides a path calculation method. First, based on network topology information and path configuration information corresponding to the path calculation request, a target path corresponding to the path calculation request is determined, and then, based on the target path, the network topology information is Preset processing to update the network topology information, and determine whether the determined target path meets the target condition, and then repeat the above steps of determining a target path corresponding to the path calculation request, updating network information, and judging whether the determined target path meets the target condition , until the determined target path satisfies the target condition, and determine all the different target paths corresponding to the path calculation request, which can accelerate the separation of all paths from the source node to the destination node as much as possible.
  • the step of determining a target path corresponding to the path calculation request includes: based on the path configuration information and network topology information, using The target path calculation algorithm determines a target path corresponding to the path calculation request, and the target path is the path with the minimum routing cost corresponding to the source node to the destination node in the network topology information.
  • the target path calculation algorithm includes a two-way Dijkstra algorithm, a one-way Dijkstra algorithm, or an A* algorithm.
  • Fig. 3 is a flowchart of a method for updating network topology information according to an embodiment of the present disclosure. The method includes steps S2021 to S2022.
  • step S2021 the routing cost of each link of the target path in the network topology information is increased by a preset value.
  • the preset value is at least twice the value corresponding to the largest routing cost among the routing costs of each link in the network topology information. For example, if the value corresponding to the largest routing cost among the routing costs of each link in the network topology information is 100, the preset value may be a positive integer multiple of 100, that is, 100, 200, 300, or 400. The preset value can be set according to a specific application scenario, and is not specifically limited here.
  • the routing cost of each link of the target path in the network topology information is increased by a preset value, the routing cost of each link of the target path is greater than each link of the original network topology information The largest routing cost among the routing costs.
  • the target path selected each time is the path with the least routing cost corresponding to the source node to the destination node in the network topology information, so after the target path is selected, each link corresponding to the target path If the routing cost of the path is increased by the preset value, it can effectively prevent the target path from being selected again when the target path is selected next time, so as to achieve the effect of "separation as much as possible".
  • step S2022 the parent-child relationship between the nodes passed by the target path in the network topology information and the child nodes corresponding to the passed nodes is pruned.
  • Pruning refers to clearing the parent-child relationship between the nodes passed by the target path and the child nodes corresponding to the passed nodes in the network topology information stored in the cache.
  • the target path is the path with the least routing cost corresponding to the source node to the destination node in the network topology information
  • the target path is currently known in the network topology information from the source node to the destination node the best path selection. If the path search is continued in the network topology information, it is impossible to find a better option than the known target path, so it is necessary to stop continuing the path search in the network topology information.
  • the method for stopping the path search in the network topology information includes the above-mentioned pruning.
  • the target path after the target path is selected, by pruning the parent-child relationship between the nodes passed by the target path in the network topology information and the child nodes corresponding to the passed nodes, it can effectively prevent the target path from being selected next time.
  • the target path is selected again, so as to achieve the effect of "separation as much as possible".
  • the routing cost of each link corresponding to the determined target path has increased by the preset value. Therefore, in the updated network In the case that there are paths different from the determined target paths in the topology information, these determined target paths will no longer be the routes with the least cost corresponding to the source node to the destination node in the updated network topology information path. Moreover, after updating the network topology information, in the subsequent step S203, when re-determining the target path, the link with the lowest inter-node routing cost will be selected, that is, the link whose inter-node routing cost has not been increased by the preset value will be preferentially selected .
  • the paths that are completely disjoint with all previously determined target paths will be preferentially screened out, and then the paths that are not completely intersected with all previously determined Calculate all the different target paths corresponding to the path request.
  • Fig. 4a is a schematic diagram of network topology information according to an embodiment of the present disclosure.
  • the network topology information includes network node information (A, B, C, D, F), link information (the connection between each node), and the corresponding Routing cost (data on the link), etc.
  • the obtained path calculation request sent by the path calculation client includes: path calculation request 1, the source node in the path configuration information of the corresponding candidate path is A, the destination node is B, and the number of corresponding segment lists is 3, then according to the figure.
  • the method for calculating the path based on the network topology information shown in 4a includes the following steps.
  • Step 1 Determine a target path corresponding to the path calculation request based on the network topology information and the path configuration information corresponding to the path calculation request.
  • the single Dijkstra algorithm is used to calculate the path. After reaching the destination node B from the source node A, a path with the minimum routing cost is obtained as the target path, and the parent-child relationship from the source node A to other nodes is obtained at the same time.
  • the path with the minimum routing cost is A---B, and the parent-child relationship from source node A to other nodes is the parent-child relationship from A to C and the parent-child relationship from A to D.
  • Step 2 updating the network topology information by performing preset processing on the network topology information based on the target path, and judging whether the determined target path satisfies the target condition.
  • the preset processing includes: increasing the routing cost of each link of the target path in the network topology information to a preset value, cutting the parent-child relationship between the node passed by the target path in the network topology information and the child node corresponding to the passed node branch.
  • Fig. 4b is a schematic diagram of network topology information according to an embodiment of the present disclosure.
  • the routing cost of the A---B path increases by 98, from the original 2 to 100.
  • the parent-child relationship from A to B, the parent-child relationship from A to C, and the parent-child relationship from A to D are pruned, that is, the parent-child relationship from A to B, the parent-child relationship from A to C, and the parent-child relationship from A to D are saved from the cache information is cleared.
  • Step 3 repeat the above steps 1 and 2, and continue to obtain the path with the minimum routing cost from the source node A to the destination node B based on the updated network topology information as the next target path, that is, A---C---B.
  • Step 1 and Step 2 in this embodiment are repeated again to continuously obtain the next target path A---D---F---B from the source node A to the destination node B.
  • it further includes: generating routing information corresponding to the path calculation request based on all the determined different target paths, and sending the routing information to the forwarding device , for the forwarding device to perform routing and forwarding operations based on the routing information.
  • the routing information includes candidate paths, and the candidate paths include at least one section list, and one section list corresponds to one determined target path.
  • Fig. 5 is a flowchart of a path calculation method according to an embodiment of the present disclosure.
  • the path calculation method before determining a target path corresponding to the path calculation request based on the network topology information and the path configuration information corresponding to the path calculation request, the path calculation method further includes steps S501 to S503.
  • step S501 at least one path calculation request sent by a path calculation client is acquired.
  • the path calculation request includes the path configuration information of the corresponding candidate path, and the path configuration information is the performance parameter that the candidate path needs to have.
  • the path configuration information includes source node information, destination node information, the number of corresponding segment lists, preset bandwidth and path calculation constraint information.
  • the preset bandwidth is the minimum bandwidth required by the candidate path, that is, the required bandwidth of each target path is the ratio of the preset bandwidth to the number of corresponding segment lists.
  • Path calculation constraints are special requirements that need to be met when calculating paths, for example, at least one of delay, hop count, bandwidth utilization, and routing cost.
  • a path calculation client is a device used to send path calculation requests.
  • the path calculation client can be used to configure the SR Policy path calculation unit, such as adding the source node and destination node of the SR Policy, the number of candidate paths, the priority of candidate paths, the number of segment lists corresponding to each candidate path, and path calculation constraints information etc.
  • the route calculation client After the user configures the route calculation data on the operation interface of the route calculation client, the route calculation client generates at least one route calculation request based on the route calculation data, and sends the route calculation request to the route calculation device.
  • Each path calculation request requires the calculation of a candidate path.
  • step S502 when the quantity of at least one path calculation request is multiple, based on the path configuration information corresponding to each path calculation request, a plurality of path calculation requests satisfying a predetermined condition among at least one path calculation request are combined For a combined path calculation request.
  • the predetermined condition refers to that the information of the source node, the information of the destination node, and the number of corresponding segment lists in the path configuration information corresponding to any number of path calculation requests are all corresponding to the same, the difference between the preset bandwidth is less than the first preset threshold, and the calculation The difference between the constraint values included in the road constraint information is smaller than the second preset threshold.
  • the first preset threshold and the second preset threshold may be set according to specific implementation scenarios, and are not specifically limited in this embodiment of the present disclosure.
  • step S503 according to the path configuration information corresponding to each of the plurality of path calculation requests satisfying the predetermined condition, the path configuration information corresponding to the merged path calculation request is determined.
  • the source node and destination node correspond to the same source node and destination node of any one of the multiple route calculation requests that meet the predetermined conditions, and the number of corresponding segment lists is satisfied The sum of the number of corresponding segment lists included in multiple path calculation requests that meet the predetermined conditions.
  • the preset bandwidth is the largest preset bandwidth among the preset bandwidths included in the multiple path calculation requests that meet the predetermined conditions.
  • the path calculation constraint information is Among the route calculation constraint information included in the plurality of route calculation requests with predetermined conditions, the route calculation constraint information has the minimum constraint value, or the route calculation constraint information is a union of multiple route calculation constraints.
  • multiple path calculation requests that meet the predetermined conditions include: path calculation request 1, the source node in the corresponding path configuration information is A1, the destination node is A2, the corresponding segment list number is 2, the preset bandwidth is 30Mbps, and the path calculation The constraint information is the minimum delay constraint; path calculation request 2, the source node in the corresponding path configuration information is A1, the destination node is A2, the corresponding segment list number is 2, the preset bandwidth is 40Mbps, and the path calculation constraint information is the minimum extension constraints.
  • the source node is A1
  • the destination node is A2
  • the number of corresponding segment lists is 4
  • the preset bandwidth is 40Mbps
  • the path calculation constraint information is the minimum delay constraint.
  • step S201 to step S203 are executed to determine all different target paths corresponding to each path calculation request.
  • Fig. 6 is a flowchart of a path calculation method according to an embodiment of the present disclosure. As shown in FIG. 6 , in one embodiment, when the path calculation request is a combined path calculation request obtained by combining multiple path calculation requests, all different target paths corresponding to the combined path calculation request are determined Afterwards, the path calculation method further includes steps S601 to S604.
  • step S601 the merged route calculation request is divided into multiple route calculation requests before being merged.
  • each path calculation request After splitting into multiple path calculation requests before merging, each path calculation request corresponds to its own path configuration information.
  • step S602 based on the path configuration information corresponding to each of the multiple path calculation requests obtained by splitting, assign a corresponding number of target paths to each of the multiple path calculation requests obtained by splitting.
  • the route calculation request is a combined route calculation request obtained by combining multiple route calculation requests
  • the number of segment lists corresponding to the combined route calculation request is the number of segment lists included in each of the multiple route calculation requests Therefore, after splitting the combined path calculation request into multiple path calculation requests before merging, based on the determined number of different target paths and the number of corresponding segment lists included in each path calculation request, it is Each path calculation request is assigned a corresponding number of target paths.
  • the number of all different target paths determined is the sum of the number of segment lists included in each of multiple path calculation requests
  • when assigning a corresponding number of target paths to each path calculation request, for any calculation request The number of target paths allocated by the path request is the number of segment lists included in the path calculation request.
  • the allocation will be Minimize the number of path calculation requests with target paths whose number is less than the number of corresponding segment lists.
  • the number of target paths assigned to as few path calculation requests as possible is smaller than the number of segment lists corresponding to the path calculation requests.
  • the combined path calculation request is split into three path calculation requests before merging, the number of segment lists corresponding to each of the three path calculation requests is 3, and the number of all different target paths determined is 7 , then, when assigning a corresponding number of target paths to each path calculation request, the number of target paths allocated to two path calculation requests is 3, and the number of target paths allocated to the other path calculation request is 1.
  • the path calculation method further includes: If the number of target paths corresponding to any path calculation request obtained by splitting is less than the number of segment lists corresponding to the path calculation request, determine the path corresponding to the path calculation request based on the network topology information and the path configuration information corresponding to the path calculation request. Other target paths corresponding to the request.
  • the path calculation request is a combined path calculation request obtained by combining multiple path calculation requests, and in the path configuration information corresponding to the combined path calculation request, the preset bandwidth is the combined path calculation request that meets the predetermined conditions.
  • the largest preset bandwidth among the included preset bandwidths, and the path calculation constraint information is the path calculation constraint information with the smallest constraint value among the path calculation constraint information included in the multiple path calculation requests that meet the predetermined condition.
  • the preset bandwidth is smaller than the preset bandwidth and the preset bandwidth corresponding to the combined path calculation request /or the condition that the constraint value of the path calculation constraint information is greater than the constraint value of the path calculation constraint information corresponding to the merged path calculation request.
  • the target path does not satisfy the path configuration information corresponding to the merged path calculation request, but satisfies the path configuration information corresponding to the path calculation request.
  • Determining other target paths corresponding to the path calculation request can filter out target paths that do not satisfy the path configuration information corresponding to the merged path calculation request but satisfy the path configuration information corresponding to the path calculation request, so as to achieve path separation as much as possible.
  • Step S603 based on the target route corresponding to each route calculation request obtained by splitting, generate routing information corresponding to each route calculation request obtained by splitting.
  • the routing information includes candidate paths, where the candidate paths include at least one segment list, and each segment list corresponds to a determined target path.
  • the routing information corresponding to the path calculation request when the number of target paths corresponding to any path calculation request obtained by splitting is less than the number of segment lists corresponding to the path calculation request and other target paths corresponding to the path calculation request are determined, when generating The routing information corresponding to the path calculation request also includes other determined target paths.
  • step S604 the routing information is sent to the forwarding device for the forwarding device to perform routing and forwarding operations based on the routing information.
  • a route calculation method provided by an embodiment of the present disclosure combines multiple route calculation requests that meet predetermined conditions into one merged route calculation request, and after combining multiple route calculation requests that meet predetermined conditions, sequentially path calculation requests (including combined route calculation requests and other route calculation requests except for multiple route calculation requests that meet predetermined conditions), execute the above steps S201 to S203 to determine the remaining All the different target paths corresponding to each route calculation request. Finally, for the merged route calculation request, split the merged route calculation request into multiple route calculation requests before merging.
  • Path configuration information which allocates a corresponding number of target paths for each path calculation request obtained by splitting, and can determine the target corresponding to each path calculation request that meets the predetermined conditions only by performing a path calculation process on the merged path calculation request
  • the path reduces the complexity of path calculation, shortens the time-consuming path calculation, and can accelerate the best-effort separation of paths.
  • FIG. 7 is a schematic diagram of network topology information according to an embodiment of the disclosure.
  • Network topology information includes network node information (A, B, C, D, E, F), link information (the connection between each node), and the routing cost corresponding to each link (the first link in parentheses on the link One data represents the delay cost of the link) and the available resource information of each link (the second data in brackets on the link represents the bandwidth of the link), etc.
  • the method for calculating the path according to the network topology information shown in FIG. 7 includes the following steps.
  • step 1 at least one path calculation request sent by the acquired path calculation client is obtained.
  • the obtained path calculation request sent by the path calculation client includes: path calculation request 1, the source node in the path configuration information of the corresponding candidate path is A, the destination node is F, the corresponding segment list number is 2, and the preset bandwidth is 30Mbps ,
  • the route calculation constraint information is the minimum delay constraint;
  • the route calculation request 2 in the path configuration information of the corresponding candidate path, the source node is A, the destination node is F, the corresponding segment list number is 2, the preset bandwidth is 40Mbps, and the calculation The path constraint information is the minimum delay constraint.
  • step 2 when at least one path calculation request includes multiple path calculation requests, based on the path configuration information corresponding to each path calculation request, multiple path calculation requests that meet the predetermined conditions are combined into one merged path calculation request , and determine the path configuration information corresponding to the combined path calculation request.
  • route calculation request 1 and route calculation request 2 determine the path configuration information corresponding to the merged route calculation request, the source node is A, the destination node is F, the corresponding segment list number is 4, the preset bandwidth is 40Mbps, and the route calculation
  • the constraint information is the minimum delay constraint.
  • the bandwidth shared by each segment list is 15 Mbps; for route calculation request 2, the bandwidth shared by each segment list is 20 Mbps. Therefore, when multiple route calculation requests that meet the predetermined conditions After being merged into one merged path calculation request, the calculation is performed based on the largest bandwidth among the bandwidth shared by each segment list. Since the bandwidth shared by each segment list is 20 Mbps, in any target path determined in the subsequent path calculation process, the bandwidth corresponding to each link needs to be greater than the 20 Mbps.
  • step 3 all different target paths corresponding to the combined path calculation request are determined based on the network topology information and the path configuration information corresponding to the combined path calculation request.
  • All the different target paths determined corresponding to the combined path calculation request include: A---B---F, A---C---F, A---D---F, A--- E---F.
  • the bandwidth check may also be performed on all the different target paths determined corresponding to the combined path calculation request, so as to ensure that in any determined target path, the bandwidth corresponding to each link is greater than the each segment list Shared bandwidth.
  • step 4 split the merged route calculation request into multiple route calculation requests before merging, and allocate corresponding number of target paths.
  • the merged route calculation request is split into route calculation request 1 and route calculation request 2 before merging, and the target paths assigned to route calculation request 1 are A---B---F and A--- C---F, the target paths assigned to path calculation request 2 are A---D---F and A---E---F.
  • the path calculation request is a request for calculating the candidate path from the source node to the destination node, therefore, in this embodiment, two candidate paths from the source node to the destination node are determined, and each candidate path includes 2 segment lists , the segment list corresponding to the determined candidate path of path calculation request 1 is A---B---F and A---C---F, and the segment list corresponding to the determined candidate path of path calculation request 2 is A ---D---F and A---E---F.
  • the network topology information is as shown in FIG. 7 .
  • Network topology information includes network node information (A, B, C, D, E, F), link information (the connection between each node), and the routing cost corresponding to each link (the first link in parentheses on the link One data represents the delay cost of the link) and the available resource information of each link (the second data in brackets on the link represents the bandwidth of the link), etc.
  • the method for calculating the path according to the network topology information shown in FIG. 7 includes the following steps.
  • step 1 at least one path calculation request sent by the acquired path calculation client is obtained.
  • the obtained path calculation request sent by the path calculation client includes: path calculation request 1, the source node in the path configuration information of the corresponding candidate path is A, the destination node is F, the corresponding segment list number is 2, and the preset bandwidth is 90Mbps ,
  • the route calculation constraint information is the minimum delay constraint; the route calculation request 2, the source node in the path configuration information of the corresponding candidate path is A, the destination node is F, the corresponding segment list number is 2, the preset bandwidth is 90Mbps, and the calculation The path constraint information is the minimum delay constraint.
  • step 2 when at least one path calculation request includes multiple path calculation requests, based on the path configuration information corresponding to each path calculation request, multiple path calculation requests that meet the predetermined conditions are combined into one merged path calculation request , and determine the path configuration information corresponding to the combined path calculation request.
  • route calculation request 1 and route calculation request 2 determine the route configuration information corresponding to the merged route calculation request, the source node is A, the destination node is F, the corresponding segment list number is 4, the preset bandwidth is 90Mbps, and the route calculation
  • the constraint information is the minimum delay constraint.
  • the bandwidth shared by each segment list is 45 Mbps; for route calculation request 2, the bandwidth shared by each segment list is 45 Mbps. After the road request, the bandwidth shared by each segment list is 45Mbps.
  • step 3 all different target paths corresponding to the merged path calculation request are determined based on the network topology information and the path configuration information corresponding to the path calculation request.
  • All determined different target paths corresponding to the merged path calculation request include: A---B---F, A---C---F, and A---E---F.
  • the bandwidth check may also be performed on all the different target paths determined corresponding to the combined path calculation request, so as to ensure that in any determined target path, the bandwidth corresponding to each link is greater than the each segment list Shared bandwidth.
  • step 4 split the merged route calculation request into multiple route calculation requests before merging, and assign a corresponding Number of target paths.
  • the merged route calculation request is split into route calculation request 1 and route calculation request 2 before merging, and the target path allocated for route calculation request 1 is A---B---F, A--- C---F, the target path assigned to path calculation request 2 is A---E---F. Since the path calculation request is a request for calculating the candidate path from the source node to the destination node, therefore, in this embodiment, two candidate paths from the source node to the destination node are determined, and the determined candidate path of the path calculation request 1 corresponds to There are 2 segment lists, and the determined candidate path of path calculation request 2 can only correspond to 1 segment list.
  • Fig. 8 is a schematic diagram of network topology information according to an embodiment.
  • the network topology information includes network node information (A, B, C, D, E), link information (the connection between each node), and the route corresponding to each link. Cost (data on the link), etc.
  • the obtained path calculation request sent by the path calculation client includes: path calculation request 1, the source node in the path configuration information of the corresponding candidate path is A, the destination node is F, the corresponding segment list number is 2, and the preset bandwidth is 40Mbps ,
  • the route calculation constraint information is the minimum delay constraint; the route calculation request 2, in the path configuration information of the corresponding candidate path, the source node is A, the destination node is F, the corresponding segment list number is 2, the preset bandwidth is 40Mbps, and the calculation The path constraint information is the minimum delay constraint.
  • the two segment lists corresponding to the first candidate path are both A- --E---F
  • the two segment lists corresponding to the second candidate path are also A---E---F.
  • Fig. 9 is a schematic structural diagram of a route computing device according to an embodiment of the present disclosure.
  • the route calculation device includes: a calculation module 91 , a processing module 92 and a decision module 93 .
  • the calculation module 91 is configured to determine a target path corresponding to the path calculation request based on network topology information and path configuration information corresponding to the path calculation request.
  • Network topology information includes network node information, link information, routing costs corresponding to each link, and available resource information for each link.
  • a link refers to a path between any node and an adjacent node in the network topology.
  • the link information may be a unique identifier of the link.
  • the routing cost corresponding to the link is an index used to evaluate the quality of the link. For example, in the case where the routing cost is only related to the delay, the greater the delay of the link, the corresponding routing cost of the link bigger.
  • the available resource information of the link includes bandwidth information of the link and the like.
  • the path configuration information corresponding to the path calculation request includes information on the source node and information on the destination node, where the information on the source node may include information such as an identifier and an address of the source node.
  • the information of the destination node may include information such as the identifier and address of the destination node.
  • the destination path is the path with the least routing cost from the source node to the destination node in the network topology information.
  • a path calculation request is a request for calculating a candidate path from a source node to a destination node, and the path calculation request includes path configuration information of a corresponding candidate path, and the path configuration information is a performance parameter that the candidate path needs to have.
  • the path configuration information includes the information of the source node, the information of the destination node, the number of corresponding segment lists, the preset bandwidth and the path calculation constraint information.
  • the processing module 92 is configured to update the network topology information by performing preset processing on the network topology information based on the determined target path.
  • the decision-making module 93 is used to judge whether the determined target path satisfies the target condition, so that the calculation module 91 repeats the operation of determining a target path corresponding to the path calculation request and makes the processing module 93 repeat the operation of updating the network topology information until the determined target path The path satisfies the goal condition, and all the different goal paths corresponding to the routing request are determined.
  • the target condition includes: the determined target path is the same as the previously determined target path, or all the determined target paths are different from each other and the accumulated quantity of all the determined target paths is a preset quantity.
  • the route calculation device further includes: a route generating module and a sending module (not shown).
  • the route generation module is used to generate route information corresponding to the path calculation request based on the determined target paths.
  • the sending module is used to send the routing information to the forwarding device, so that the forwarding device can perform routing and forwarding operations based on the routing information.
  • the routing computing device further includes: an obtaining module, a merging module and a splitting module (not shown).
  • the acquiring module is configured to acquire at least one path calculation request sent by the path calculation client, each of the at least one path calculation request includes path configuration information of candidate paths.
  • the merging module is configured to combine multiple route calculation requests satisfying predetermined conditions into one merged route calculation request based on path configuration information corresponding to each route calculation request; Configuration information, to determine the path configuration information corresponding to the merged path calculation request.
  • the splitting module is used to split the merged route calculation request into multiple route calculation requests before merging; based on the path configuration information corresponding to each route calculation request obtained by splitting, assign the corresponding number to each route calculation request obtained by splitting target path.
  • the calculation module 91 is further configured to: if the number of target paths corresponding to any path calculation request obtained by splitting is less than the number of segment lists corresponding to the path calculation request, based on the network topology information and the The path configuration information corresponding to the path calculation request determines other target paths corresponding to the path calculation request.
  • the route generating module is further configured to generate routing information corresponding to each split route calculation request based on the target path corresponding to each split route calculation request.
  • the sending module is also used to send the routing information to the forwarding device, so that the forwarding device can perform routing and forwarding operations based on the routing information.
  • An embodiment of the present disclosure provides a route calculation device.
  • the calculation module is used to determine a target path corresponding to the route calculation request based on the network topology information and the path configuration information corresponding to the route calculation request.
  • the network topology information is pre-processed to update the network topology information, and the decision-making module is used to judge whether the determined target path meets the target condition, so that the calculation module 91 repeats the operation of determining a target path corresponding to the path calculation request and makes the processing module 93 repeat
  • the operation of updating network topology information until the determined target path satisfies the target condition, and determining all the different target paths corresponding to the path calculation request can speed up the best-effort separation of all paths from the source node to the destination node.
  • the route computing device provided by the present disclosure is applied to management and control products.
  • Fig. 10 is a schematic diagram of a system structure of a management and control product according to an embodiment of the present disclosure, for example, the management and control product is an SDN controller.
  • the system of the management and control product includes: IP (Internet Protocol, Internet Interconnection Protocol) network device 1000, southbound interface 1001, topology resource module 1002, path calculation unit (Path Calculate Element, PCE) 1003 and northbound Interface 1004.
  • IP Internet Protocol, Internet Interconnection Protocol
  • PCE path calculation unit
  • the IP network device 100 includes routers, switches, and the like.
  • the southbound interface 1001 is a module for controlling the interaction between the product and the IP network equipment, and adopts the protocol so that the SDN controller can collect the information of the application equipment, for example, the information of the optical equipment.
  • the southbound interface is also used to collect network topology information.
  • the topology resource module 1002 is used to receive and store the network topology information sent by the southbound interface.
  • Path Calculate Element (PCE) 1003 actually includes many sub-modules, which itself is a complex system.
  • the PCE includes the above routing computing device provided by the embodiments of the present disclosure.
  • the PCE also includes a resource management module, a graph management module, and the like.
  • PCE achieves the purpose of routing calculation by coordinating and scheduling the interaction between modules.
  • the northbound interface 1004 mainly interacts with upper-layer application modules, for example, a path calculation client.
  • a path calculation client is a device used to send path calculation requests.
  • the path calculation client can be used to configure the SR Policy path calculation unit, such as adding the source node and destination node of the SR Policy, the number of candidate paths, the priority of candidate paths, the number of segment lists corresponding to each candidate path, and path calculation constraints information etc.
  • the route calculation client After the user configures the route calculation data on the operation interface of the route calculation client, the route calculation client generates at least one route calculation request based on the route calculation data, and sends the route calculation request to the route calculation device.
  • Each path calculation request requires the calculation of a candidate path.
  • FIG. 11 is a compositional block diagram of an electronic device according to an embodiment of the present disclosure. As shown in FIG. 11 , the electronic device includes: one or more processors 1101 , a memory 1102 and one or more I/O interfaces 1103 .
  • One or more programs are stored in the memory 1102, and when the one or more programs are executed by one or more processors, the one or more processors implement any one of the above path calculation methods.
  • the I/O interface 1103 is connected between the processor 1101 and the memory 1102, and is configured to realize information exchange between the processor and the memory.
  • the processor 1101 is a device with data processing capability, which includes but not limited to a central processing unit (CPU), etc.
  • the memory 1102 is a device with data storage capability, which includes but not limited to a 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); I/O interface (read-write interface) 1103 is connected between processor 1101 and memory 1102 , can realize information interaction between the processor 1101 and the memory 1102, which includes but not limited to a data bus (Bus) and the like.
  • RAM random access memory
  • ROM read-only memory
  • EEPROM electrified erasable programmable read-only memory
  • FLASH flash memory
  • I/O interface (read-write interface) 1103 is connected between processor 1101 and memory 1102 , can realize information interaction between the processor 1101 and the memory 1102, which includes but not limited to a data bus (Bus) and the
  • the processor 1101, the memory 1102 and the I/O interface 1103 are connected to each other through a bus, and further connected to other components of the computing device.
  • An embodiment of the present disclosure also provides a computer storage medium on which a computer program is stored, wherein any one of the path calculation methods is implemented when the program is executed.
  • 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 cooperate to execute.
  • Some or all of the 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 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 media implemented in any method or technology for storage of information, such as computer readable instructions, data structures, program modules, or other data. permanent, removable and non-removable media.
  • Computer storage media includes, but is 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, tape, magnetic disk storage or other magnetic storage devices, or can 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 may include any information delivery media .

Abstract

The present disclosure provides a path calculation method, a route calculation device, an electronic device, and a computer storage medium. The path calculation method comprises: determining a target path corresponding to a path calculation request, on the basis of network topology information and path configuration information corresponding to the path calculation request; updating the network topology information by means of performing preset processing on the network topology information on the basis of the determined target path; determining whether the determined target path meets a target condition, repeating the step of determining a target path corresponding to a path calculation request and the step of updating the network topology information until the determined target path meets the target condition, and determining all different target paths corresponding to the path calculation request.

Description

算路方法、路由计算设备、电子设备和计算机存储介质Route calculation method, route calculation device, electronic device and computer storage medium
相关申请的交叉引用Cross References to Related Applications
该专利申请要求于2021年11月4日在中国国家知识产权局提交的中国专利申请202111300379.4的优先权,该中国专利申请的公开以引用方式全文并入本文中。This patent application claims priority to Chinese Patent Application 202111300379.4, filed with the State Intellectual Property Office of China on November 4, 2021, the disclosure of which is incorporated herein by reference in its entirety.
技术领域technical field
本公开涉及通信技术领域。The present disclosure relates to the field of communication technologies.
背景技术Background technique
作为新一代分段路由流量工程体系(Segment Routing Traffic Engineering,SR-TE)的分段路由策略(Segment Routing Policy,SR Policy)是全新设计的一套体系架构。SR Policy由(头端,颜色,端点)三元组进行标识。在给定头端节点的前提下,SR Policy由(颜色,端点)二元组标识。Segment Routing Policy (SR Policy), a new generation of Segment Routing Traffic Engineering (SR-TE), is a newly designed system architecture. SR Policy is identified by (head end, color, endpoint) triplet. Under the premise of a given head-end node, SR Policy is identified by a (color, endpoint) two-tuple.
大规模网络的SR Policy的业务开通时,需要将SR Policy的流量通过多个段列表(Segment List,SL)进行负载均衡。同时,为了防止主路径损坏影响业务,需有多组候选路径(Candidate Path,Cpath)备用,每条候选路径可以具有一个或者多个SL。为了尽可能减小路径损坏对业务带来的冲击,往往需要将负载均衡的链路尽可能分离。When the SR Policy service is opened on a large-scale network, it is necessary to load balance the SR Policy traffic through multiple segment lists (Segment List, SL). At the same time, in order to prevent the damage of the main path from affecting the service, multiple sets of candidate paths (Candidate Path, Cpath) are required for backup, and each candidate path can have one or more SLs. In order to minimize the impact of path damage on services, it is often necessary to separate load-balanced links as much as possible.
发明内容Contents of the invention
本公开针对现有技术中存在的上述不足,提供一种算路方法、路由计算设备、电子设备和计算机存储介质。The present disclosure aims at the above-mentioned deficiencies in the prior art, and provides a route calculation method, a route calculation device, an electronic device, and a computer storage medium.
本公开实施例提供一种算路方法,该方法包括:基于网络拓扑信息和与算路请求对应的路径配置信息,确定与算路请求对应的一条 目标路径;通过基于确定的目标路径对网络拓扑信息进行预设处理来更新网络拓扑信息;判断确定的目标路径是否满足目标条件,重复确定与算路请求对应的一条目标路径的步骤和更新网络拓扑结构的步骤,直到确定的目标路径满足目标条件,并确定与算路请求对应的所有不同的所述目标路径。An embodiment of the present disclosure provides a path calculation method, which includes: determining a target path corresponding to the path calculation request based on network topology information and path configuration information corresponding to the path calculation request; The information is pre-processed to update the network topology information; judge whether the determined target path meets the target condition, and repeat the steps of determining a target path corresponding to the path calculation request and updating the network topology until the determined target path meets the target condition , and determine all the different target paths corresponding to the path calculation request.
本公开实施例提供一种路由计算设备,该路由计算设备包括:计算模块,其被配置为基于网络拓扑信息和与算路请求对应的路径配置信息,确定与算路请求对应的一条目标路径;处理模块,其被配置为通过基于确定的目标路径对网络拓扑信息进行预设处理来更新网络拓扑信息;决策模块,其被配置为判断确定的目标路径是否满足目标条件,使计算模块重复确定与算路请求对应的一条目标路径的操作和使处理模块重复更新网络拓扑信息的操作,直到确定的目标路径满足目标条件,并确定与算路请求对应的所有不同的所述目标路径。An embodiment of the present disclosure provides a routing computing device, which includes: a computing module configured to determine a target path corresponding to the path computing request based on network topology information and path configuration information corresponding to the path computing request; The processing module is configured to update the network topology information by performing preset processing on the network topology information based on the determined target path; the decision module is configured to judge whether the determined target path satisfies the target condition, so that the calculation module repeatedly determines and The operation of one target path corresponding to the path calculation request and the operation of causing the processing module to repeatedly update the network topology information until the determined target path satisfies the target condition, and determine all the different target paths corresponding to the path calculation request.
本公开实施例提供一种电子设备,包括:一个或多个处理器;以及存储器,其上存储有一个或多个程序;当所述一个或多个程序被所述一个或多个处理器执行时,使得一个或多个处理器实现上述算路方法。An embodiment of the present disclosure provides an electronic device, including: one or more processors; and a memory on which one or more programs are stored; when the one or more programs are executed by the one or more processors When , one or more processors are made to implement the above path calculation method.
本公开实施例提供一种计算机存储介质,其上存储有计算机程序,其中,所述程序被执行时实现本公开实施例中任一项算路方法。An embodiment of the present disclosure provides a computer storage medium on which a computer program is stored, wherein any path calculation method in the embodiments of the present disclosure is implemented when the program is executed.
附图说明Description of drawings
图1为根据本公开的实施例的SR Policy的结构示意图;Fig. 1 is a schematic structural diagram of an SR Policy according to an embodiment of the present disclosure;
图2为根据本公开的实施例的算路方法的流程图;FIG. 2 is a flowchart of a path calculation method according to an embodiment of the present disclosure;
图3为根据本公开的实施例的更新网络拓扑信息的方法的流程图;3 is a flowchart of a method for updating network topology information according to an embodiment of the present disclosure;
图4a为根据本公开的实施例的网络拓扑信息的示意图;Fig. 4a is a schematic diagram of network topology information according to an embodiment of the present disclosure;
图4b为根据本公开的实施例的网络拓扑信息的示意图;Fig. 4b is a schematic diagram of network topology information according to an embodiment of the present disclosure;
图5为根据本公开的实施例的算路方法的流程图;5 is a flowchart of a path calculation method according to an embodiment of the present disclosure;
图6为根据本公开的实施例的算路方法的流程图;FIG. 6 is a flowchart of a path calculation method according to an embodiment of the present disclosure;
图7为根据本公开的实施例的网络拓扑信息的示意图;FIG. 7 is a schematic diagram of network topology information according to an embodiment of the present disclosure;
图8为本根据本公开的实施例的网络拓扑信息的示意图;FIG. 8 is a schematic diagram of network topology information according to an embodiment of the present disclosure;
图9为根据本公开的实施例的路由计算设备的结构示意图;FIG. 9 is a schematic structural diagram of a route computing device according to an embodiment of the present disclosure;
图10为根据本公开的实施例的管控产品的系统结构示意图;FIG. 10 is a schematic structural diagram of a system for managing and controlling products according to an embodiment of the present disclosure;
图11为根据本公开的实施例的电子设备的组成框图。FIG. 11 is a compositional block diagram of an electronic device according to an embodiment of the present disclosure.
具体实施方式Detailed ways
在下文中将参考附图更充分地描述示例实施例,但是所述示例实施例可以以不同形式来体现且不应当被解释为限于本文阐述的实施例。反之,提供这些实施例的目的在于使本公开透彻和完整,并将使本领域技术人员充分理解本公开的范围。Example embodiments will be described more fully hereinafter with reference to the accompanying drawings, but 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.
如本文所使用的,术语“和/或”包括一个或多个相关列举条目的任何和所有组合。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 for describing 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 terms "comprising" and/or "consisting of" are used in this specification, the stated features, integers, steps, operations, elements and/or components are specified to be present but not excluded to be present or Add one or more other features, integers, steps, operations, elements, components and/or groups thereof.
本文所述实施例可借助本公开的理想示意图而参考平面图和/或截面图进行描述。因此,可根据制造技术和/或容限来修改示例图示。因此,实施例不限于附图中所示的实施例,而是包括基于制造工艺而形成的配置的修改。因此,附图中例示的区具有示意性属性,并且图中所示区的形状例示了元件的区的具体形状,但并不旨在是限制性的。Embodiments described herein may be described with reference to plan views and/or cross-sectional views by way of idealized schematic illustrations of the present disclosure. Accordingly, the example illustrations may be modified according to manufacturing techniques and/or tolerances. Therefore, the embodiments are not limited to the ones shown in the drawings but include modifications of configurations formed based on manufacturing processes. Accordingly, the regions illustrated in the figures have schematic properties, and the shapes of the regions shown in the figures illustrate the specific shapes of the regions of the elements, but are not intended to be limiting.
除非另外限定,否则本文所用的所有术语(包括技术和科学术语)的含义与本领域普通技术人员通常理解的含义相同。还将理解,诸如那些在常用字典中限定的那些术语应当被解释为具有与其在相关技术以及本公开的背景下的含义一致的含义,且将不解释为具有理想化或过度形式上的含义,除非本文明确如此限定。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 commonly used dictionaries should be interpreted as having meanings consistent with their meanings in the context of the relevant art and the present disclosure, and will not be interpreted as having idealized or excessive formal meanings, Unless expressly so limited herein.
近年来,软件定义网络(Software Define Network,SDN)技术 受到了广泛关注。SDN控制器具备转发与控制相分离的特点,通过SDN控制器可以实现全网拓扑的采集、路径计算、流表生成与下发等功能。其中,路径计算单元(Path Computation Element,PCE)是SDN控制器中的一个重要模块。In recent years, software-defined network (Software Define Network, SDN) technology has received extensive attention. The SDN controller has the characteristics of separating forwarding and control. Through the SDN controller, functions such as network topology collection, path calculation, flow table generation and distribution can be realized. Among them, Path Computation Element (PCE) is an important module in the SDN controller.
作为新一代分段路由流量工程体系(Segment Routing Traffic Engineering,SR-TE)的分段路由策略(Segment Routing Policy,SR Policy)是全新设计的一套体系架构。SR Policy由(头端,颜色,端点)三元组进行标识。在给定的头端节点的前提下,SR Policy由(颜色,端点)二元组标识。Segment Routing Policy (SR Policy), a new generation of Segment Routing Traffic Engineering (SR-TE), is a newly designed system architecture. SR Policy is identified by (head end, color, endpoint) triplet. Under the premise of a given head-end node, SR Policy is identified by a (color, endpoint) two-tuple.
图1为根据本公开的实施例的SR Policy的结构示意图。如图1所示,SR Policy的候选路径代表将流量从SR Policy的头端传送到端点的特定方式。每条候选路径(Candidate Path,Cpath)对应一个偏好值(Preference),候选路径的偏好值越高则该候选条路径越优选,其中,具有最高偏好值的候选路径是活动候选路径。FIG. 1 is a schematic structural diagram of an SR Policy according to an embodiment of the present disclosure. As shown in Figure 1, an SR Policy's candidate paths represent specific ways to deliver traffic from the SR Policy's headend to its endpoints. Each candidate path (Candidate Path, Cpath) corresponds to a preference value (Preference). The higher the preference value of the candidate path is, the better the candidate path is. Among them, the candidate path with the highest preference value is the active candidate path.
大规模网络的SR Policy的业务开通时,需要将SR Policy的流量通过多个段列表(Segment List,SL)进行负载均衡。通常一个SR Policy最多可配置16个SL进行流量负荷分担。同时,为了防止路径损坏影响业务,需有多组候选路径备用,例如,图1中的SR Policy的候选路径包括Cpath1至CpathN,其分别对应的偏好值为p1至pN,其中,偏好值p1>px,x∈[2,N],即候选路径Cpath1为活动候选路径。When the SR Policy service is opened on a large-scale network, it is necessary to load balance the SR Policy traffic through multiple segment lists (Segment List, SL). Usually, one SR Policy can be configured with up to 16 SLs for traffic load sharing. At the same time, in order to prevent path damage from affecting services, multiple sets of candidate paths are required for backup. For example, the candidate paths of the SR Policy in Figure 1 include Cpath1 to CpathN, and their corresponding preference values are p1 to pN, where the preference value p1> px, x∈[2,N], that is, the candidate path Cpath1 is the active candidate path.
每条候选路径可以具有一个或者多个SL。例如,图1中的Cpath1具有m个SL(S11,S12…S1m)、Cpath2具有m个SL(S21,S22…S2m),以及CpathN具有k个SL(SN1,SN2…SNk)。为了尽力减小路径损坏带来的对业务的冲击,往往需要将负载均衡的路径(SL)尽可能分离。“尽可能”指的是:在选择SL时,如果存在与已经选定的SL完全不相交的路径,则将该与已经选定的SL完全不相交的路径确定为下一条SL;如果找不到与已经选定的SL完全不相交的路径,则找到与已经选定的SL相交次数最少的路径,作为下一条SL。将负载均衡的路径尽可能地分离,能够在任意一条SL损坏的情况下,不会导致所有 的SL都无法工作。但是,利用当前主流的链路分离算法,一个SR Policy业务往往需要串行重复计算,导致达到尽可能分离的效果的过程复杂,路径计算耗时长,无法满足当前的大规模网络规模和超大网络规模下对批量业务创建和恢复的性能要求。Each candidate path can have one or more SLs. For example, Cpath1 in FIG. 1 has m SLs (S11, S12...S1m), Cpath2 has m SLs (S21, S22...S2m), and CpathN has k SLs (SN1, SN2...SNk). In order to minimize the impact on services caused by path damage, it is often necessary to separate the load-balanced paths (SL) as much as possible. "As much as possible" means: when selecting SL, if there is a path that is completely disjoint with the selected SL, then determine the path that is completely disjoint with the selected SL as the next SL; To a path completely disjoint with the selected SL, find the path with the least number of intersections with the selected SL as the next SL. Separate the load balancing paths as much as possible so that if any SL is damaged, all SLs will not fail to work. However, using the current mainstream link separation algorithm, an SR Policy service often needs to be serially and repeatedly calculated, resulting in a complicated process to achieve the effect of separation as much as possible, and the path calculation takes a long time, which cannot meet the current large-scale network scale and ultra-large network scale. The following performance requirements for batch business creation and recovery.
为了解决上述难题,本公开实施例提供一种算路方法,应用于路由计算设备。In order to solve the above problems, an embodiment of the present disclosure provides a route calculation method, which is applied to a route calculation device.
图2为根据本公开的实施例的算路方法的流程图。如图2所示,该方法包括:步骤S201至步骤S203。Fig. 2 is a flowchart of a path calculation method according to an embodiment of the present disclosure. As shown in FIG. 2, the method includes: step S201 to step S203.
在步骤S201,基于网络拓扑信息和与算路请求对应的路径配置信息确定与算路请求对应的一条目标路径。In step S201, a target path corresponding to the path calculation request is determined based on network topology information and path configuration information corresponding to the path calculation request.
网络拓扑信息包括网络的节点信息、链路信息、与各链路对应的路由代价和各链路的可用资源信息等。本实施例中,链路指的是网络拓扑中任意一个节点与相邻节点之间的路径。该链路信息可以是链路的唯一标识。与链路对应的路由代价是用于评估该链路的优劣的指标,例如,在路由代价仅与时延相关的情况下,该链路的时延越大,则该链路对应的路由代价越大。链路的可用资源信息包括该链路的带宽信息等。Network topology information includes network node information, link information, routing costs corresponding to each link, and available resource information for each link. In this embodiment, a link refers to a path between any node and an adjacent node in the network topology. The link information may be a unique identifier of the link. The routing cost corresponding to the link is an index used to evaluate the quality of the link. For example, in the case where the routing cost is only related to the delay, the greater the delay of the link, the corresponding route of the link The greater the price. The available resource information of the link includes bandwidth information of the link and the like.
与算路请求对应的路径配置信息包括源节点的信息和目的节点的信息,源节点的信息可以包括源节点的标识、地址等信息,目的节点的信息可以包括目的节点的标识、地址等信息。目标路径是在网络拓扑信息中的从源节点到目的节点的路由代价最小的路径。The path configuration information corresponding to the path calculation request includes information of the source node and information of the destination node. The information of the source node may include information such as the identifier and address of the source node, and the information of the destination node may include information such as the identifier and address of the destination node. The destination path is the path with the least routing cost from the source node to the destination node in the network topology information.
算路请求是用于请求计算从源节点到目的节点的候选路径的请求,算路请求包括对应的候选路径的路径配置信息,该候选路径的路径配置信息是该候选路径需要具有的性能参数。候选路径的路径配置信息包括源节点的信息、目的节点的信息、对应的段列表数量、预设带宽和算路约束信息。A path calculation request is a request for calculating a candidate path from a source node to a destination node. The path calculation request includes path configuration information of a corresponding candidate path, and the path configuration information of the candidate path is a performance parameter that the candidate path needs to have. The path configuration information of the candidate path includes the information of the source node, the information of the destination node, the number of corresponding segment lists, the preset bandwidth, and path calculation constraint information.
候选路径包括至少一个段列表,步骤S201中确定的一条目标路径可作为该候选路径的一个段列表。预设带宽是候选路径需要具有的最小带宽。需要说明的是,候选路径的多个段列表用于进行负荷分担,例如,在预设带宽为50Mpbs的情况下,该候选路径包括的多个段列 表对应的总带宽需要不小于50Mpbs。算路约束是在计算路径时需要满足的特殊路径要求,例如,时延、跳数、带宽利用率和路由代价中的至少一种。The candidate path includes at least one section list, and a target path determined in step S201 can be used as a section list of the candidate path. The preset bandwidth is the minimum bandwidth that a candidate path needs to have. It should be noted that the multiple segment lists of the candidate path are used for load sharing. For example, when the preset bandwidth is 50Mpbs, the total bandwidth corresponding to the multiple segment lists included in the candidate path needs to be no less than 50Mpbs. The path calculation constraint is a special path requirement that needs to be met when calculating the path, for example, at least one of delay, hop count, bandwidth utilization and routing cost.
在步骤S202,通过基于确定的目标路径对网络拓扑信息进行预设处理来更新网络拓扑信息。In step S202, the network topology information is updated by performing preset processing on the network topology information based on the determined target path.
预设处理是为了通过对网络拓扑信息中目标路径的路径信息进行修改和/或清除,以更新网络拓扑信息,从而可以在确定下一条目标路径时,在有其他可选的目标路径的情况下,有效避免之前已确定的目标路径再次被选择,如此,使得在基于更新后的网络拓扑信息和与算路请求对应的路径配置信息,确定与算路请求对应的一条目标路径的步骤中,能够有效地将与之前确定的所有目标路径完全不相交的路径筛选出来,或者,有效地将与之前确定的所有目标路径相交次数最少的路径筛选出来,进而实现从源节点到目的节点的所有路径的尽可能分离。The preset processing is to update the network topology information by modifying and/or clearing the path information of the target path in the network topology information, so that when determining the next target path, if there are other optional target paths , to effectively prevent the previously determined target path from being selected again, so that in the step of determining a target path corresponding to the path calculation request based on the updated network topology information and the path configuration information corresponding to the path calculation request, it can be Effectively filter out the paths that are completely disjoint with all the previously determined target paths, or effectively filter out the paths with the least intersecting times with all the previously determined target paths, and then realize all paths from the source node to the destination node Separate as much as possible.
在本实施例中,目标路径的路径信息包括但不限于:该目标路径的各链路的路由代价、目标路径经过的节点的父子关系以及与经过的节点对应的子节点的父子关系。In this embodiment, the path information of the target path includes, but is not limited to: the routing cost of each link of the target path, the parent-child relationship of the nodes passed by the target path, and the parent-child relationship of the child nodes corresponding to the passed nodes.
在一个实施方式中,在与之前确定的所有目标路径完全不相交的路径,以及与之前确定的所有目标路径不完全相交的路径均已经被筛选出来的情况下,再次基于网络拓扑信息和与算路请求对应的路径配置信息确定的目标路径将会是与之前确定的任一目标路径相同的路径。In one embodiment, in the case that paths that are completely disjoint with all previously determined target paths and paths that are not completely intersected with all previously determined target paths have been screened out, again based on the network topology information and the algorithm The target path determined by the path configuration information corresponding to the path request will be the same path as any previously determined target path.
因此,为实现上述“尽可能分离”,在每次确定一条目标路径之后,均需进行目标条件的判断。目标条件包括:确定的目标路径与之前确定的目标路径相同,或者,已确定的所有目标路径互不相同且已确定的所有目标路径的累计数量为预设数量。Therefore, in order to realize the above-mentioned "separation as much as possible", after each determination of a target path, it is necessary to judge the target condition. The target condition includes: the determined target path is the same as the previously determined target path, or all the determined target paths are different from each other and the accumulated quantity of all the determined target paths is a preset quantity.
在一些实施例中,判断确定的目标路径是否满足目标条件,包括:判断确定的目标路径与之前确定的目标路径是否相同,路径的相同指是两条路径从源节点到目的节点所经过的各链路的链路标识均相同。In some embodiments, judging whether the determined target path satisfies the target condition includes: judging whether the determined target path is the same as the previously determined target path. The link IDs of the links are all the same.
在确定的目标路径与之前确定的任一目标路径相同的情况下,则判定确定的目标路径满足目标条件。If the determined target path is the same as any previously determined target path, it is determined that the determined target path satisfies the target condition.
在一些实施例中,在确定的目标路径与之前确定的目标路径不同的情况下,进一步判断已确定的所有目标路径的累计数量是否为预设数量。In some embodiments, if the determined target route is different from the previously determined target route, it is further determined whether the accumulated quantity of all determined target paths is a preset quantity.
在确定的所有目标路径互不相同的情况下,进一步判断已确定的所有目标路径的累计数量是否为预设数量。预设数量可以为算路请求包括的路径配置信息中对应的段列表数量,即该预设数量代表了路径配置的要求之一。In the case that all determined target paths are different from each other, it is further judged whether the accumulated quantity of all determined target paths is a preset quantity. The preset number may be the corresponding segment list number in the path configuration information included in the path calculation request, that is, the preset number represents one of the requirements of the path configuration.
在已确定的所有目标路径的累计数量为预设数量的情况下,则判定确定的目标路径满足目标条件;在已确定的所有目标路径的累计数量小于预设数量的情况下,则判定确定的目标路径不满足目标条件。When the cumulative quantity of all determined target paths is the preset quantity, it is determined that the determined target path meets the target condition; when the cumulative quantity of all determined target paths is less than the preset quantity, it is determined that the determined The target path does not meet the target condition.
在步骤S203,判断确定的目标路径是否满足目标条件,重复步骤S201和S202,直到确定的目标路径满足目标条件,并确定与算路请求对应的所有不同的目标路径。In step S203, it is judged whether the determined target route satisfies the target condition, and steps S201 and S202 are repeated until the determined target route meets the target condition, and all different target routes corresponding to the path calculation request are determined.
在一些实施例中,目标条件包括:确定的目标路径与之前确定的目标路径相同。在确定的目标路径与之前确定的目标路径相同的情况下,说明与之前确定的所有目标路径完全不相交的路径以及与之前确定的所有目标路径不完全相交的路径均已经被筛选出来,即使此时已确定的所有目标路径的累计数量未达到路径配置的要求,也无法再确定与算路请求对应的新的目标路径。因此,在确定的目标路径与之前确定的目标路径相同的情况下,已经确定与算路请求对应的所有不同的目标路径。In some embodiments, the target condition includes: the determined target path is the same as the previously determined target path. In the case that the determined target path is the same as the previously determined target path, it means that the paths that are completely disjoint with all the previously determined target paths and the paths that are not completely intersected with all the previously determined target paths have been screened out, even if this At this time, the cumulative number of all determined target paths does not meet the path configuration requirements, and the new target path corresponding to the path calculation request cannot be determined. Therefore, in the case where the determined target route is the same as the previously determined target route, all different target routes corresponding to the path calculation request have been determined.
例如,当前确定的目标路径为目标路径5,之前确定的目标路径为目标路径1、目标路径2、目标路径3和目标路径4。在该目标路径5与目标路径3相同的情况下,确定与算路请求对应的所有不同的目标路径为目标路径1、目标路径2、目标路径3和目标路径4。For example, the currently determined target path is the target path 5 , and the previously determined target paths are the target path 1 , the target path 2 , the target path 3 and the target path 4 . In the case that the target route 5 is the same as the target route 3 , all different target routes corresponding to the path calculation request are determined as the target route 1 , the target route 2 , the target route 3 and the target route 4 .
在一些实施例中,目标条件包括:已确定的所有目标路径互不相同且累计数量为预设数量。在已确定的所有目标路径互不相同且累计数量为预设数量的情况下,说明与之前确定的所有目标路径完全不 相交的路径以及与之前确定的所有目标路径不完全相交的路径可能没有全部被筛选出来,但是,已确定的所有目标路径的累计数量已经达到路径配置的要求,无需再获取新的目标路径。因此,在已确定的所有目标路径互不相同且累计数量为预设数量的情况下,也同样已经确定了与算路请求对应的所有不同的目标路径。In some embodiments, the target condition includes: all determined target paths are different from each other and the cumulative number is a preset number. In the case where all the determined target paths are different from each other and the cumulative amount is a preset number, it means that paths that are completely disjoint from all previously determined target paths and paths that are not completely intersected from all previously determined target paths may not have all However, the accumulated quantity of all determined target paths has reached the requirement of the path configuration, and there is no need to acquire new target paths. Therefore, in the case that all determined target routes are different from each other and the cumulative number is a preset number, all different target routes corresponding to the path calculation request have also been determined.
例如,当前确定的目标路径为目标路径5,之前确定的目标路径为目标路径1、目标路径2、目标路径3和目标路径4,预设数量为5。则在该目标路径5与目标路径1-4均不相同、且累计数量(目标路径1-5共5条)等于预设数量的情况下,确定与算路请求对应的所有不同的目标路径为目标路径1-5。For example, the currently determined target path is target path 5, the previously determined target paths are target path 1, target path 2, target path 3, and target path 4, and the preset number is five. Then, in the case that the target path 5 is different from the target paths 1-4, and the cumulative number (there are 5 target paths 1-5) is equal to the preset number, it is determined that all different target paths corresponding to the path calculation request are Goal paths 1-5.
在本实施例中,由于每一次确定目标路径时都是基于不同的网络拓扑信息(即每一次被更新的网络拓扑信息),且更新后的网络拓扑信息是基于确定的目标路径对网络拓扑信息进行预设处理后获得,因此,相比于现有技术中的链路分离算法,本实施例中在确定与算路请求对应的所有不同的目标路径的过程中不仅能够有效避免多次重复计算,还能够降低路径计算的复杂度,缩短路径计算耗时,从而加快达到对从源节点到目的节点的所有路径尽可能分离的效果。In this embodiment, since each determination of the target path is based on different network topology information (that is, updated network topology information), and the updated network topology information is based on the determined target path pair network topology information Obtained after preset processing, therefore, compared with the link separation algorithm in the prior art, in this embodiment, not only can effectively avoid multiple repeated calculations in the process of determining all different target paths corresponding to the path calculation request , it can also reduce the complexity of path calculation and shorten the time-consuming path calculation, so as to speed up the separation of all paths from the source node to the destination node as much as possible.
在一个SR Policy业务场景中,本实施例提供的算路方法能够降低路径计算的复杂度,缩短路径计算耗时,从而能够达到加快实现路径尽可能分离的效果,能够满足当前的大规模网络规模和超大网络规模下对批量业务创建和恢复的性能要求。In an SR Policy business scenario, the path calculation method provided in this embodiment can reduce the complexity of path calculation and shorten the time-consuming path calculation, so as to achieve the effect of accelerating the separation of paths as much as possible, and can meet the current large-scale network scale and performance requirements for batch business creation and recovery under ultra-large network scale.
本公开实施例提供一种算路方法,首先,基于网络拓扑信息和与算路请求对应的路径配置信息,确定与算路请求对应的一条目标路径,然后,通过基于目标路径对网络拓扑信息进行预设处理来更新网络拓扑信息,并判断确定的目标路径是否满足目标条件,然后重复执行上述确定与算路请求对应的一条目标路径、更新网络信息和判断确定的目标路径是否满足目标条件的步骤,直到确定的目标路径满足目标条件,并确定与算路请求对应的所有不同的目标路径,能够加快实现从源节点到目的节点的所有路径的尽可能分离的效果。An embodiment of the present disclosure provides a path calculation method. First, based on network topology information and path configuration information corresponding to the path calculation request, a target path corresponding to the path calculation request is determined, and then, based on the target path, the network topology information is Preset processing to update the network topology information, and determine whether the determined target path meets the target condition, and then repeat the above steps of determining a target path corresponding to the path calculation request, updating network information, and judging whether the determined target path meets the target condition , until the determined target path satisfies the target condition, and determine all the different target paths corresponding to the path calculation request, which can accelerate the separation of all paths from the source node to the destination node as much as possible.
在一个实施方式中,基于网络拓扑信息和与算路请求对应的路 径配置信息,确定与算路请求对应的一条目标路径的步骤(步骤S201),包括:基于路径配置信息和网络拓扑信息,利用目标路径计算算法,确定与算路请求对应的一条目标路径,目标路径为在网络拓扑信息中从源节点到目的节点对应的路由代价最小的路径。In one embodiment, based on network topology information and path configuration information corresponding to the path calculation request, the step of determining a target path corresponding to the path calculation request (step S201) includes: based on the path configuration information and network topology information, using The target path calculation algorithm determines a target path corresponding to the path calculation request, and the target path is the path with the minimum routing cost corresponding to the source node to the destination node in the network topology information.
目标路径计算算法包括双向迪杰斯特拉(Dijkstra)算法、单向迪杰斯特拉算法或A*算法。The target path calculation algorithm includes a two-way Dijkstra algorithm, a one-way Dijkstra algorithm, or an A* algorithm.
图3为根据本公开的实施例的更新网络拓扑信息的方法的流程图。该方法包括步骤S2021至步骤S2022。Fig. 3 is a flowchart of a method for updating network topology information according to an embodiment of the present disclosure. The method includes steps S2021 to S2022.
在步骤S2021,将网络拓扑信息中的目标路径的各链路的路由代价增大预设值。In step S2021, the routing cost of each link of the target path in the network topology information is increased by a preset value.
预设值是网络拓扑信息的各链路的路由代价中最大的路由代价对应的值的至少一倍。例如,网络拓扑信息的各链路的路由代价中最大的路由代价对应的值为100,则预设值可以为100的正整数倍,即100、200、300或400等。该预设值可以根据具体应用场景进行设置,此处不进行具体限定。The preset value is at least twice the value corresponding to the largest routing cost among the routing costs of each link in the network topology information. For example, if the value corresponding to the largest routing cost among the routing costs of each link in the network topology information is 100, the preset value may be a positive integer multiple of 100, that is, 100, 200, 300, or 400. The preset value can be set according to a specific application scenario, and is not specifically limited here.
在本实施例中,将网络拓扑信息中的目标路径的各链路的路由代价增大预设值之后,该目标路径的各链路的路由代价,均大于最初的网络拓扑信息的各链路的路由代价中最大的路由代价。In this embodiment, after the routing cost of each link of the target path in the network topology information is increased by a preset value, the routing cost of each link of the target path is greater than each link of the original network topology information The largest routing cost among the routing costs.
在本实施例中,每次选择的目标路径为在网络拓扑信息中从源节点到目的节点对应的路由代价最小的路径,因此在选择出目标路径后,通过将该与目标路径对应的各链路的路由代价增大预设值,可以有效避免该目标路径在下次选择目标路径时再次被选择,从而达到“尽可能分离”的效果。In this embodiment, the target path selected each time is the path with the least routing cost corresponding to the source node to the destination node in the network topology information, so after the target path is selected, each link corresponding to the target path If the routing cost of the path is increased by the preset value, it can effectively prevent the target path from being selected again when the target path is selected next time, so as to achieve the effect of "separation as much as possible".
在步骤S2022,将网络拓扑信息中的目标路径经过的节点以及与经过的节点对应的子节点的父子关系进行剪枝。In step S2022, the parent-child relationship between the nodes passed by the target path in the network topology information and the child nodes corresponding to the passed nodes is pruned.
剪枝指的是清除缓存中存储的网络拓扑信息中的目标路径经过的节点以及与经过的节点对应的子节点的父子关系。Pruning refers to clearing the parent-child relationship between the nodes passed by the target path and the child nodes corresponding to the passed nodes in the network topology information stored in the cache.
在本实施例中,由于目标路径是在网络拓扑信息中从源节点到目的节点对应的路由代价最小的路径,因此,该目标路径是当前已知的在网络拓扑信息中从源节点到目的节点的最好的路径选择。如果在 网络拓扑信息中继续进行路径搜索,不可能找到比已知的目标路径更好的选择,因此需要停止在该网络拓扑信息中继续进行路径搜索。其中,停止在网络拓扑信息中继续进行路径搜索的方法包括上述剪枝。In this embodiment, since the target path is the path with the least routing cost corresponding to the source node to the destination node in the network topology information, the target path is currently known in the network topology information from the source node to the destination node the best path selection. If the path search is continued in the network topology information, it is impossible to find a better option than the known target path, so it is necessary to stop continuing the path search in the network topology information. Wherein, the method for stopping the path search in the network topology information includes the above-mentioned pruning.
在本实施例中,在选择出目标路径后,通过将网络拓扑信息中的目标路径经过的节点以及与经过的节点对应的子节点的父子关系进行剪枝,可以有效避免该目标路径在下次选择目标路径时再次被选择,从而达到“尽可能分离”的效果。In this embodiment, after the target path is selected, by pruning the parent-child relationship between the nodes passed by the target path in the network topology information and the child nodes corresponding to the passed nodes, it can effectively prevent the target path from being selected next time. The target path is selected again, so as to achieve the effect of "separation as much as possible".
需要说明的是,在经过上述步骤S2021和步骤S2022被更新的网络拓扑信息中,与已经确定的目标路径对应的各链路的路由代价均增大了预设值,因此,在更新后的网络拓扑信息中存在与已经确定的目标路径均不相同的路径的情况下,这些已经确定的目标路径,在更新后的网络拓扑信息中将不再是从源节点到目的节点对应的路由代价最小的路径。并且,在更新网络拓扑信息后,在后续的步骤S203中,重新确定目标路径时将选择节点间路由代价小的链路,即会优先选择节点间路由代价没有被增大预设值的链路。基于此,根据选择路由代价最小的路径的原则,与之前确定的所有目标路径完全不相交的路径将被优先筛选出来,进而筛选出与之前确定的所有目标路径不完全相交的路径,直至确定与算路请求对应的所有不同的目标路径。It should be noted that in the network topology information updated through the above steps S2021 and S2022, the routing cost of each link corresponding to the determined target path has increased by the preset value. Therefore, in the updated network In the case that there are paths different from the determined target paths in the topology information, these determined target paths will no longer be the routes with the least cost corresponding to the source node to the destination node in the updated network topology information path. Moreover, after updating the network topology information, in the subsequent step S203, when re-determining the target path, the link with the lowest inter-node routing cost will be selected, that is, the link whose inter-node routing cost has not been increased by the preset value will be preferentially selected . Based on this, according to the principle of selecting the path with the least routing cost, the paths that are completely disjoint with all previously determined target paths will be preferentially screened out, and then the paths that are not completely intersected with all previously determined Calculate all the different target paths corresponding to the path request.
图4a为根据本公开的实施例的网络拓扑信息的示意图。Fig. 4a is a schematic diagram of network topology information according to an embodiment of the present disclosure.
在一个实施场景中,如图4a所示,网络拓扑信息包括网络的节点信息(A、B、C、D、F)、链路信息(各节点之间的连线)、各链路对应的路由代价(链路上的数据)等。获取的路径计算客户端发送的算路请求包括:算路请求1,对应的候选路径的路径配置信息中源节点为A、目的节点为B、对应的段列表数量为3,则根据该如图4a所示的网络拓扑信息进行算路的方法包括以下步骤。In one implementation scenario, as shown in Figure 4a, the network topology information includes network node information (A, B, C, D, F), link information (the connection between each node), and the corresponding Routing cost (data on the link), etc. The obtained path calculation request sent by the path calculation client includes: path calculation request 1, the source node in the path configuration information of the corresponding candidate path is A, the destination node is B, and the number of corresponding segment lists is 3, then according to the figure The method for calculating the path based on the network topology information shown in 4a includes the following steps.
步骤一,基于网络拓扑信息和与算路请求对应的路径配置信息,确定与算路请求对应的一条目标路径。Step 1: Determine a target path corresponding to the path calculation request based on the network topology information and the path configuration information corresponding to the path calculation request.
在该实施场景中,通过单Dijkstra算法进行路径计算,在从源节点A到达目的节点B后,获得一条路由代价最小路径作为目标路径,同时获得源节点A到其它节点的父子关系。路由代价最小路径为 A---B,源节点A到其它节点的父子关系为A到C的父子关系以及A到D的父子关系。In this implementation scenario, the single Dijkstra algorithm is used to calculate the path. After reaching the destination node B from the source node A, a path with the minimum routing cost is obtained as the target path, and the parent-child relationship from the source node A to other nodes is obtained at the same time. The path with the minimum routing cost is A---B, and the parent-child relationship from source node A to other nodes is the parent-child relationship from A to C and the parent-child relationship from A to D.
步骤二,通过基于目标路径对网络拓扑信息进行预设处理来更新网络拓扑信息,并判断确定的目标路径是否满足目标条件。 Step 2, updating the network topology information by performing preset processing on the network topology information based on the target path, and judging whether the determined target path satisfies the target condition.
预设处理包括:将网络拓扑信息中目标路径的各链路的路由代价增大预设值,将网络拓扑信息中的目标路径经过的节点以及与经过的节点对应的子节点的父子关系进行剪枝。The preset processing includes: increasing the routing cost of each link of the target path in the network topology information to a preset value, cutting the parent-child relationship between the node passed by the target path in the network topology information and the child node corresponding to the passed node branch.
图4b为根据本公开的实施例网络拓扑信息的示意图。如图4b所示,基于目标路径对网络拓扑信息进行预设处理之后,A---B路径的路由代价增大98,由原来的2改变为100。并且,A到B的父子关系、A到C的父子关系以及A到D的父子关系被剪枝,即A到B的父子关系、A到C的父子关系以及A到D的父子关系从缓存信息中被清除。Fig. 4b is a schematic diagram of network topology information according to an embodiment of the present disclosure. As shown in Figure 4b, after the preset processing of the network topology information based on the target path, the routing cost of the A---B path increases by 98, from the original 2 to 100. And, the parent-child relationship from A to B, the parent-child relationship from A to C, and the parent-child relationship from A to D are pruned, that is, the parent-child relationship from A to B, the parent-child relationship from A to C, and the parent-child relationship from A to D are saved from the cache information is cleared.
步骤三,重复上述步骤一和步骤二,继续基于更新后的网络拓扑信息获得从源节点A到达目的节点B的路由代价最小路径作为下一条目标路径,即A---C---B。再次重复本实施例中的步骤一和步骤二,以继续获得从源节点A到达目的节点B的下一条目标路径A---D---F---B。Step 3: repeat the above steps 1 and 2, and continue to obtain the path with the minimum routing cost from the source node A to the destination node B based on the updated network topology information as the next target path, that is, A---C---B. Step 1 and Step 2 in this embodiment are repeated again to continuously obtain the next target path A---D---F---B from the source node A to the destination node B.
在一个实施方式中,在确定与算路请求对应的所有不同的目标路径之后,还包括:基于确定的所有不同的目标路径生成与算路请求对应的路由信息,并将路由信息发送至转发设备,以供转发设备基于路由信息进行路由转发操作。In one embodiment, after determining all the different target paths corresponding to the path calculation request, it further includes: generating routing information corresponding to the path calculation request based on all the determined different target paths, and sending the routing information to the forwarding device , for the forwarding device to perform routing and forwarding operations based on the routing information.
路由信息包括候选路径,该候选路径包括至少一个段列表,一个段列表与确定的一条目标路径对应。The routing information includes candidate paths, and the candidate paths include at least one section list, and one section list corresponds to one determined target path.
图5为根据本公开的实施例的算路方法的流程图。在一个实施方式中,如图5所示,在基于网络拓扑信息和与算路请求对应的路径配置信息,确定与算路请求对应的一条目标路径之前,该算路方法还包括步骤S501至步骤S503。Fig. 5 is a flowchart of a path calculation method according to an embodiment of the present disclosure. In one embodiment, as shown in Figure 5, before determining a target path corresponding to the path calculation request based on the network topology information and the path configuration information corresponding to the path calculation request, the path calculation method further includes steps S501 to S503.
在步骤S501,获取路径计算客户端发送的至少一个算路请求。In step S501, at least one path calculation request sent by a path calculation client is acquired.
算路请求包括对应的候选路径的路径配置信息,该路径配置信 息是该候选路径需要具有的性能参数。该路径配置信息包括源节点的信息、目的节点的信息、对应的段列表数量、预设带宽和算路约束信息。预设带宽是候选路径需要具有的最小带宽,即各目标路径需要具有的带宽大小为预设带宽与对应的段列表数量的比值。算路约束是在计算路径时需要满足的特殊要求,例如,时延、跳数、带宽利用率和路由代价中的至少一种。The path calculation request includes the path configuration information of the corresponding candidate path, and the path configuration information is the performance parameter that the candidate path needs to have. The path configuration information includes source node information, destination node information, the number of corresponding segment lists, preset bandwidth and path calculation constraint information. The preset bandwidth is the minimum bandwidth required by the candidate path, that is, the required bandwidth of each target path is the ratio of the preset bandwidth to the number of corresponding segment lists. Path calculation constraints are special requirements that need to be met when calculating paths, for example, at least one of delay, hop count, bandwidth utilization, and routing cost.
路径计算客户端是用于发送算路请求的设备。该路径计算客户端可以用于配置SR Policy路径计算单元,如添加SR Policy的源节点和目的节点、候选路径的数量、候选路径的优先级、每个候选路径对应的段列表数量、算路约束信息等。用户在该路径计算客户端的操作界面配置算路数据后,路径计算客户端基于算路数据生成至少一个算路请求,并将该算路请求发送至路由计算设备。每个算路请求要求计算一条候选路径。A path calculation client is a device used to send path calculation requests. The path calculation client can be used to configure the SR Policy path calculation unit, such as adding the source node and destination node of the SR Policy, the number of candidate paths, the priority of candidate paths, the number of segment lists corresponding to each candidate path, and path calculation constraints information etc. After the user configures the route calculation data on the operation interface of the route calculation client, the route calculation client generates at least one route calculation request based on the route calculation data, and sends the route calculation request to the route calculation device. Each path calculation request requires the calculation of a candidate path.
在步骤S502,在至少一个算路请求的数量为多个的情况下,基于与每个算路请求对应的路径配置信息,将至少一个算路请求当中的满足预定条件的多个算路请求合并为一个合并算路请求。In step S502, when the quantity of at least one path calculation request is multiple, based on the path configuration information corresponding to each path calculation request, a plurality of path calculation requests satisfying a predetermined condition among at least one path calculation request are combined For a combined path calculation request.
预定条件指的是任意多个算路请求对应的路径配置信息中源节点的信息、目的节点的信息、对应的段列表数量均对应相同,预设带宽之差小于第一预设阈值,以及算路约束信息包括的约束值之差小于第二预设阈值。该第一预设阈值和第二预设阈值可以根据具体实施场景进行设置,本公开实施例中不做具体限定。The predetermined condition refers to that the information of the source node, the information of the destination node, and the number of corresponding segment lists in the path configuration information corresponding to any number of path calculation requests are all corresponding to the same, the difference between the preset bandwidth is less than the first preset threshold, and the calculation The difference between the constraint values included in the road constraint information is smaller than the second preset threshold. The first preset threshold and the second preset threshold may be set according to specific implementation scenarios, and are not specifically limited in this embodiment of the present disclosure.
在步骤S503,根据与满足预定条件的多个算路请求中的每一个对应的路径配置信息,确定与合并算路请求对应的路径配置信息。In step S503, according to the path configuration information corresponding to each of the plurality of path calculation requests satisfying the predetermined condition, the path configuration information corresponding to the merged path calculation request is determined.
在与合并算路请求对应的路径配置信息中,源节点和目的节点与满足预定条件的多个算路请求中任意一个算路请求的源节点和目的节点对应相同,对应的段列表数量为满足预定条件的多个算路请求包括的对应的段列表数量之和,预设带宽为满足预定条件的多个算路请求所包括的预设带宽中最大的预设带宽,算路约束信息为满足预定条件的多个算路请求所包括的算路约束信息中具有最小约束值的算路约束信息,或者,算路约束信息为多个算路约束的并集。In the route configuration information corresponding to the merged route calculation request, the source node and destination node correspond to the same source node and destination node of any one of the multiple route calculation requests that meet the predetermined conditions, and the number of corresponding segment lists is satisfied The sum of the number of corresponding segment lists included in multiple path calculation requests that meet the predetermined conditions. The preset bandwidth is the largest preset bandwidth among the preset bandwidths included in the multiple path calculation requests that meet the predetermined conditions. The path calculation constraint information is Among the route calculation constraint information included in the plurality of route calculation requests with predetermined conditions, the route calculation constraint information has the minimum constraint value, or the route calculation constraint information is a union of multiple route calculation constraints.
例如,满足预定条件的多个算路请求包括:算路请求1,对应的路径配置信息中源节点为A1、目的节点为A2、对应的段列表数量为2、预设带宽为30Mbps、算路约束信息为最小时延约束;算路请求2,对应的路径配置信息中源节点为A1、目的节点为A2、对应的段列表数量为2、预设带宽为40Mbps、算路约束信息为最小时延约束。在这种情况下,在与将算路请求1和算路请求2进行合并获得的合并算路请求对应的路径配置信息中,源节点为A1、目的节点为A2、对应的段列表数量为4、预设带宽为40Mbps、算路约束信息为最小时延约束。For example, multiple path calculation requests that meet the predetermined conditions include: path calculation request 1, the source node in the corresponding path configuration information is A1, the destination node is A2, the corresponding segment list number is 2, the preset bandwidth is 30Mbps, and the path calculation The constraint information is the minimum delay constraint; path calculation request 2, the source node in the corresponding path configuration information is A1, the destination node is A2, the corresponding segment list number is 2, the preset bandwidth is 40Mbps, and the path calculation constraint information is the minimum extension constraints. In this case, in the route configuration information corresponding to the merged route calculation request obtained by combining route calculation request 1 and route calculation request 2, the source node is A1, the destination node is A2, and the number of corresponding segment lists is 4 , The preset bandwidth is 40Mbps, and the path calculation constraint information is the minimum delay constraint.
在一个实施方式中,在对满足预定条件的多个算路请求进行合并后,依次对多个算路请求中的除满足预定条件的多个算路请求之外的剩余的每个算路请求和合并算路请求,执行上述步骤S201至步骤S203,以确定与每个算路请求对应的所有不同的目标路径。In one embodiment, after combining the multiple route calculation requests satisfying the predetermined condition, each of the remaining route calculation requests in the multiple route calculation requests except the multiple route calculation requests satisfying the predetermined condition is sequentially and merging the path calculation requests, the above step S201 to step S203 are executed to determine all different target paths corresponding to each path calculation request.
需要说明的是,将满足预定条件的多个算路请求进行合并后,只需对该合并算路请求执行一次算路过程(包括上述步骤S201至步骤S203)就能确定与满足预定条件的多个算路请求中的每一个算路请求对应的目标路径,而无需对满足预定条件的多个算路请求中的每一个算路请求均执行算路过程,从而能够有效降低路径计算的复杂度,缩短路径计算耗时,从而加快实现路径尽力分离。It should be noted that after combining multiple route calculation requests that meet the predetermined conditions, it is only necessary to perform a route calculation process (including the above steps S201 to S203) on the combined route calculation requests to determine the number of routes that meet the predetermined conditions. Each of the path calculation requests corresponds to the target path, without performing the path calculation process for each of the multiple path calculation requests that meet the predetermined conditions, so that the complexity of path calculation can be effectively reduced. , to shorten the time-consuming path calculation, thereby speeding up the path best-effort separation.
图6为根据本公开的实施例的算路方法的流程图。如图6所示,在一个实施方式中,在算路请求为通过将多个算路请求合并获得的合并算路请求的情况下,在确定与该合并算路请求对应的所有不同的目标路径之后,该算路方法还包括步骤S601至步骤S604。Fig. 6 is a flowchart of a path calculation method according to an embodiment of the present disclosure. As shown in FIG. 6 , in one embodiment, when the path calculation request is a combined path calculation request obtained by combining multiple path calculation requests, all different target paths corresponding to the combined path calculation request are determined Afterwards, the path calculation method further includes steps S601 to S604.
在步骤S601,将合并算路请求拆分为合并前的多个算路请求。In step S601, the merged route calculation request is divided into multiple route calculation requests before being merged.
拆分为合并前的多个算路请求之后,每个算路请求分别对应各自的路径配置信息。After splitting into multiple path calculation requests before merging, each path calculation request corresponds to its own path configuration information.
在步骤S602,基于与拆分得到的多个算路请求中的每一个对应的路径配置信息,为拆分得到的多个算路请求中的每一个分配相应数量的目标路径。In step S602, based on the path configuration information corresponding to each of the multiple path calculation requests obtained by splitting, assign a corresponding number of target paths to each of the multiple path calculation requests obtained by splitting.
本实施例中,由于算路请求为通过将多个算路请求合并获得的合并算路请求,而合并算路请求对应的段列表数量为多个算路请求中 的每一个包括的段列表数量之和,因此,在将合并算路请求拆分为合并前的多个算路请求之后,可以基于确定的所有不同的目标路径的数量和每个算路请求包括的对应的段列表数量,为每个算路请求分配相应数量的目标路径。In this embodiment, since the route calculation request is a combined route calculation request obtained by combining multiple route calculation requests, the number of segment lists corresponding to the combined route calculation request is the number of segment lists included in each of the multiple route calculation requests Therefore, after splitting the combined path calculation request into multiple path calculation requests before merging, based on the determined number of different target paths and the number of corresponding segment lists included in each path calculation request, it is Each path calculation request is assigned a corresponding number of target paths.
例如,在确定的所有不同的目标路径的数量为多个算路请求中的每一个包括的段列表数量之和的情况下,为每个算路请求分配相应数量的目标路径时,为任意算路请求分配的目标路径的数量为该算路请求中包括的段列表数量。For example, when the number of all different target paths determined is the sum of the number of segment lists included in each of multiple path calculation requests, when assigning a corresponding number of target paths to each path calculation request, for any calculation request The number of target paths allocated by the path request is the number of segment lists included in the path calculation request.
在确定的所有不同的目标路径的数量小于多个算路请求中的每一个包括的对应的段列表数量之和的情况下,在为每个算路请求分配相应数量的目标路径时,将分配有数量小于其对应的段列表数量的目标路径的算路请求的数目最小化尽可能少的算路请求所分配的目标路径的数量小于该算路请求对应的段列表数量。例如,合并算路请求被拆分为合并前的3个算路请求,与该3个算路请求中的每一个对应的段列表数量分别为3,确定的所有不同的目标路径的数量为7条,则,为每个算路请求分配相应数量的目标路径时,使得两个算路请求分配的目标路径的数量为3,另外一个算路请求分配的目标路径的数量为1。In the case that the number of all different target paths determined is less than the sum of the number of corresponding segment lists included in each of the multiple path calculation requests, when assigning a corresponding number of target paths to each path calculation request, the allocation will be Minimize the number of path calculation requests with target paths whose number is less than the number of corresponding segment lists. The number of target paths assigned to as few path calculation requests as possible is smaller than the number of segment lists corresponding to the path calculation requests. For example, the combined path calculation request is split into three path calculation requests before merging, the number of segment lists corresponding to each of the three path calculation requests is 3, and the number of all different target paths determined is 7 , then, when assigning a corresponding number of target paths to each path calculation request, the number of target paths allocated to two path calculation requests is 3, and the number of target paths allocated to the other path calculation request is 1.
在一个实施方式中,在基于与拆分得到的每个算路请求对应的路径配置信息,为拆分得到的每个算路请求分配相应数量的目标路径之后,算路方法还包括:在与拆分得到的任一算路请求对应的目标路径的数量小于该算路请求对应的段列表数量的情况下,基于网络拓扑信息和与该算路请求对应的路径配置信息,确定与该算路请求对应的其他目标路径。In one embodiment, after allocating a corresponding number of target paths to each split path calculation request based on the path configuration information corresponding to each split path computation request, the path calculation method further includes: If the number of target paths corresponding to any path calculation request obtained by splitting is less than the number of segment lists corresponding to the path calculation request, determine the path corresponding to the path calculation request based on the network topology information and the path configuration information corresponding to the path calculation request. Other target paths corresponding to the request.
需要说明的是,算路请求为合并多个算路请求获得的合并算路请求,而在与合并算路请求对应的路径配置信息中,预设带宽为满足预定条件的多个算路请求所包括的预设带宽中最大的预设带宽,算路约束信息为满足预定条件的多个算路请求所包括的算路约束信息中具有最小约束值的算路约束信息。因此,针对该对应的目标路径的数量小于对应的段列表数量的算路请求,可能存在与该算路请求对应的 路径配置信息中,预设带宽小于与合并算路请求对应的预设带宽和/或算路约束信息具有约束值大于合并算路请求对应的算路约束信息具有约束值的情况。换言之,可能存在目标路径不满足与合并算路请求对应的路径配置信息,而满足与该算路请求对应的路径配置信息的情况。It should be noted that the path calculation request is a combined path calculation request obtained by combining multiple path calculation requests, and in the path configuration information corresponding to the combined path calculation request, the preset bandwidth is the combined path calculation request that meets the predetermined conditions. The largest preset bandwidth among the included preset bandwidths, and the path calculation constraint information is the path calculation constraint information with the smallest constraint value among the path calculation constraint information included in the multiple path calculation requests that meet the predetermined condition. Therefore, for the path calculation request whose corresponding target path quantity is less than the corresponding section list quantity, there may exist in the path configuration information corresponding to the path calculation request, the preset bandwidth is smaller than the preset bandwidth and the preset bandwidth corresponding to the combined path calculation request /or the condition that the constraint value of the path calculation constraint information is greater than the constraint value of the path calculation constraint information corresponding to the merged path calculation request. In other words, there may be a situation that the target path does not satisfy the path configuration information corresponding to the merged path calculation request, but satisfies the path configuration information corresponding to the path calculation request.
因此,在与拆分得到的任一算路请求对应的目标路径的数量小于与该算路请求对应的段列表数量的情况下,基于网络拓扑信息和与该算路请求对应的路径配置信息,确定该算路请求对应的其他目标路径,能够筛选出不满足与合并算路请求对应的路径配置信息,而满足与该算路请求对应的路径配置信息的目标路径,实现路径尽可能分离。Therefore, when the number of target paths corresponding to any path calculation request obtained by splitting is less than the number of segment lists corresponding to the path calculation request, based on the network topology information and the path configuration information corresponding to the path calculation request, Determining other target paths corresponding to the path calculation request can filter out target paths that do not satisfy the path configuration information corresponding to the merged path calculation request but satisfy the path configuration information corresponding to the path calculation request, so as to achieve path separation as much as possible.
步骤S603,基于与拆分得到的每个算路请求对应的目标路径,生成与拆分得到的每个算路请求对应的路由信息。Step S603, based on the target route corresponding to each route calculation request obtained by splitting, generate routing information corresponding to each route calculation request obtained by splitting.
路由信息包括候选路径,该候选路径包括至少一个段列表,每个段列表对应确定的一条目标路径。The routing information includes candidate paths, where the candidate paths include at least one segment list, and each segment list corresponds to a determined target path.
在一个实施方式中,在拆分得到的任一算路请求对应的目标路径的数量小于该算路请求对应的段列表数量且确定与该算路请求对应的其他目标路径的情况下,在生成的该算路请求对应的路由信息中,还包括确定的其他目标路径。In one embodiment, when the number of target paths corresponding to any path calculation request obtained by splitting is less than the number of segment lists corresponding to the path calculation request and other target paths corresponding to the path calculation request are determined, when generating The routing information corresponding to the path calculation request also includes other determined target paths.
在步骤S604,将路由信息发送至转发设备,以供转发设备基于路由信息进行路由转发操作。In step S604, the routing information is sent to the forwarding device for the forwarding device to perform routing and forwarding operations based on the routing information.
本公开实施例提供的一种算路方法,将满足预定条件的多个算路请求合并为一个合并算路请求,在对满足预定条件的多个算路请求进行合并后,依次对剩余的每个算路请求(包括合并算路请求和多个算路请当中的除满足预定条件的多个算路请求之外的其他算路请求),执行上述步骤S201至步骤S203,以确定与剩余的每个算路请求对应的所有不同的目标路径,最后针对合并算路请求,将合并算路请求拆分为合并前的多个算路请求,基于与拆分得到的每个算路请求对应的路径配置信息,为拆分得到的每个算路请求分配相应数量的目标路径,能够只需对合并算路请求执行一次算路过程就能确定与满足预定条件的每个算路请求对应的目标路径,降低了路径计算的复杂度,缩短 了路径计算耗时,能够加快实现路径尽力分离。A route calculation method provided by an embodiment of the present disclosure combines multiple route calculation requests that meet predetermined conditions into one merged route calculation request, and after combining multiple route calculation requests that meet predetermined conditions, sequentially path calculation requests (including combined route calculation requests and other route calculation requests except for multiple route calculation requests that meet predetermined conditions), execute the above steps S201 to S203 to determine the remaining All the different target paths corresponding to each route calculation request. Finally, for the merged route calculation request, split the merged route calculation request into multiple route calculation requests before merging. Path configuration information, which allocates a corresponding number of target paths for each path calculation request obtained by splitting, and can determine the target corresponding to each path calculation request that meets the predetermined conditions only by performing a path calculation process on the merged path calculation request The path reduces the complexity of path calculation, shortens the time-consuming path calculation, and can accelerate the best-effort separation of paths.
图7为根据本公开的实施例的网络拓扑信息的示意图。在一个实施场景中,如图7所示。网络拓扑信息包括网络的节点信息(A、B、C、D、E、F)、链路信息(各节点之间的连线)、各链路对应的路由代价(链路上括号内的第一个数据代表该链路的时延代价)和各链路的可用资源信息(链路上括号内的第二个数据代表该链路的带宽)等。则根据该如图7所示的网络拓扑信息进行算路的方法包括以下步骤。FIG. 7 is a schematic diagram of network topology information according to an embodiment of the disclosure. In an implementation scenario, as shown in FIG. 7 . Network topology information includes network node information (A, B, C, D, E, F), link information (the connection between each node), and the routing cost corresponding to each link (the first link in parentheses on the link One data represents the delay cost of the link) and the available resource information of each link (the second data in brackets on the link represents the bandwidth of the link), etc. Then, the method for calculating the path according to the network topology information shown in FIG. 7 includes the following steps.
在步骤一,获取的路径计算客户端发送的至少一个算路请求。In step 1, at least one path calculation request sent by the acquired path calculation client is obtained.
获取的路径计算客户端发送的算路请求包括:算路请求1,对应的候选路径的路径配置信息中源节点为A、目的节点为F、对应的段列表数量为2、预设带宽为30Mbps、算路约束信息为最小时延约束;算路请求2,对应的候选路径的路径配置信息中源节点为A、目的节点为F、对应的段列表数量为2、预设带宽为40Mbps、算路约束信息为最小时延约束。The obtained path calculation request sent by the path calculation client includes: path calculation request 1, the source node in the path configuration information of the corresponding candidate path is A, the destination node is F, the corresponding segment list number is 2, and the preset bandwidth is 30Mbps , The route calculation constraint information is the minimum delay constraint; the route calculation request 2, in the path configuration information of the corresponding candidate path, the source node is A, the destination node is F, the corresponding segment list number is 2, the preset bandwidth is 40Mbps, and the calculation The path constraint information is the minimum delay constraint.
在步骤二,在至少一个算路请求包括多个算路请求的情况下,基于与每个算路请求对应的路径配置信息,将满足预定条件的多个算路请求合并为一个合并算路请求,并确定与合并算路请求对应的路径配置信息。In step 2, when at least one path calculation request includes multiple path calculation requests, based on the path configuration information corresponding to each path calculation request, multiple path calculation requests that meet the predetermined conditions are combined into one merged path calculation request , and determine the path configuration information corresponding to the combined path calculation request.
根据算路请求1和算路请求2,确定与合并算路请求对应的路径配置信息中,源节点为A、目的节点为F、对应的段列表数量为4、预设带宽为40Mbps、算路约束信息为最小时延约束。According to route calculation request 1 and route calculation request 2, determine the path configuration information corresponding to the merged route calculation request, the source node is A, the destination node is F, the corresponding segment list number is 4, the preset bandwidth is 40Mbps, and the route calculation The constraint information is the minimum delay constraint.
需要说明的是,针对算路请求1,每个段列表分担的带宽为15Mbps;针对算路请求2,每个段列表分担的带宽为20Mbps,因此,在将满足预定条件的多个算路请求合并为一个合并算路请求之后,以每个段列表分担的带宽中最大的带宽为准进行计算。由于每个段列表分担的带宽为20Mbps,因此,在后续算路过程中确定的任意目标路径中,各链路对应的带宽均需要大于该20Mbps。It should be noted that for route calculation request 1, the bandwidth shared by each segment list is 15 Mbps; for route calculation request 2, the bandwidth shared by each segment list is 20 Mbps. Therefore, when multiple route calculation requests that meet the predetermined conditions After being merged into one merged path calculation request, the calculation is performed based on the largest bandwidth among the bandwidth shared by each segment list. Since the bandwidth shared by each segment list is 20 Mbps, in any target path determined in the subsequent path calculation process, the bandwidth corresponding to each link needs to be greater than the 20 Mbps.
在步骤三,基于网络拓扑信息和与合并算路请求对应的路径配置信息,确定与合并算路请求对应的所有不同的目标路径。In step 3, all different target paths corresponding to the combined path calculation request are determined based on the network topology information and the path configuration information corresponding to the combined path calculation request.
确定的与合并算路请求对应的所有不同的目标路径包括: A---B---F、A---C---F、A---D---F、A---E---F。All the different target paths determined corresponding to the combined path calculation request include: A---B---F, A---C---F, A---D---F, A--- E---F.
在一个实施方式中,还可以对确定的与合并算路请求对应的所有不同的目标路进行带宽校验,以保证确定的任意目标路径中,各链路对应的带宽均大于该每个段列表分担的带宽。In one embodiment, the bandwidth check may also be performed on all the different target paths determined corresponding to the combined path calculation request, so as to ensure that in any determined target path, the bandwidth corresponding to each link is greater than the each segment list Shared bandwidth.
在步骤四,将合并算路请求拆分为合并前的多个算路请求,并基于与拆分得到的每个算路请求对应的路径配置信息,为拆分得到的每个算路请求分配相应数量的目标路径。In step 4, split the merged route calculation request into multiple route calculation requests before merging, and allocate corresponding number of target paths.
本实施例中,将合并算路请求拆分为合并前的算路请求1和算路请求2,为算路请求1分配的目标路径为A---B---F和A---C---F,为算路请求2分配的目标路径为A---D---F和A---E---F。由于算路请求是用于请求计算从源节点到目的节点的候选路径的请求,因此,本实施例中确定从源节点到目的节点的两条候选路径,该每条候选路径包括2个段列表,算路请求1的确定的候选路径对应的段列表为A---B---F和A---C---F,算路请求2的确定的候选路径对应的段列表为A---D---F和A---E---F。In this embodiment, the merged route calculation request is split into route calculation request 1 and route calculation request 2 before merging, and the target paths assigned to route calculation request 1 are A---B---F and A--- C---F, the target paths assigned to path calculation request 2 are A---D---F and A---E---F. Since the path calculation request is a request for calculating the candidate path from the source node to the destination node, therefore, in this embodiment, two candidate paths from the source node to the destination node are determined, and each candidate path includes 2 segment lists , the segment list corresponding to the determined candidate path of path calculation request 1 is A---B---F and A---C---F, and the segment list corresponding to the determined candidate path of path calculation request 2 is A ---D---F and A---E---F.
在另一个实施场景中,网络拓扑信息如图7所示。网络拓扑信息包括网络的节点信息(A、B、C、D、E、F)、链路信息(各节点之间的连线)、各链路对应的路由代价(链路上括号内的第一个数据代表该链路的时延代价)和各链路的可用资源信息(链路上括号内的第二个数据代表该链路的带宽)等。根据该如图7所示的网络拓扑信息进行算路的方法包括以下步骤。In another implementation scenario, the network topology information is as shown in FIG. 7 . Network topology information includes network node information (A, B, C, D, E, F), link information (the connection between each node), and the routing cost corresponding to each link (the first link in parentheses on the link One data represents the delay cost of the link) and the available resource information of each link (the second data in brackets on the link represents the bandwidth of the link), etc. The method for calculating the path according to the network topology information shown in FIG. 7 includes the following steps.
在步骤一,获取的路径计算客户端发送的至少一个算路请求。In step 1, at least one path calculation request sent by the acquired path calculation client is obtained.
获取的路径计算客户端发送的算路请求包括:算路请求1,对应的候选路径的路径配置信息中源节点为A、目的节点为F、对应的段列表数量为2、预设带宽为90Mbps、算路约束信息为最小时延约束;算路请求2,对应的候选路径的路径配置信息中源节点为A、目的节点为F、对应的段列表数量为2、预设带宽为90Mbps、算路约束信息为最小时延约束。The obtained path calculation request sent by the path calculation client includes: path calculation request 1, the source node in the path configuration information of the corresponding candidate path is A, the destination node is F, the corresponding segment list number is 2, and the preset bandwidth is 90Mbps , The route calculation constraint information is the minimum delay constraint; the route calculation request 2, the source node in the path configuration information of the corresponding candidate path is A, the destination node is F, the corresponding segment list number is 2, the preset bandwidth is 90Mbps, and the calculation The path constraint information is the minimum delay constraint.
在步骤二,在至少一个算路请求包括多个算路请求的情况下,基于与每个算路请求对应的路径配置信息,将满足预定条件的多个算 路请求合并为一个合并算路请求,并确定与合并算路请求对应的路径配置信息。In step 2, when at least one path calculation request includes multiple path calculation requests, based on the path configuration information corresponding to each path calculation request, multiple path calculation requests that meet the predetermined conditions are combined into one merged path calculation request , and determine the path configuration information corresponding to the combined path calculation request.
根据算路请求1和算路请求2,确定与合并算路请求对应的路径配置信息中,源节点为A、目的节点为F、对应的段列表数量为4、预设带宽为90Mbps、算路约束信息为最小时延约束。According to route calculation request 1 and route calculation request 2, determine the route configuration information corresponding to the merged route calculation request, the source node is A, the destination node is F, the corresponding segment list number is 4, the preset bandwidth is 90Mbps, and the route calculation The constraint information is the minimum delay constraint.
针对算路请求1,每个段列表分担的带宽为45Mbps;针对算路请求2,每个段列表分担的带宽为45Mbps,因此,在将满足预定条件的多个算路请求合并为一个合并算路请求之后,每个段列表分担的带宽为45Mbps。For route calculation request 1, the bandwidth shared by each segment list is 45 Mbps; for route calculation request 2, the bandwidth shared by each segment list is 45 Mbps. After the road request, the bandwidth shared by each segment list is 45Mbps.
在步骤三,基于网络拓扑信息和与算路请求对应的路径配置信息,确定与合并算路请求对应的所有不同的目标路径。In step 3, all different target paths corresponding to the merged path calculation request are determined based on the network topology information and the path configuration information corresponding to the path calculation request.
确定的与合并算路请求对应的所有不同的目标路径包括:A---B---F、A---C---F、A---E---F。All determined different target paths corresponding to the merged path calculation request include: A---B---F, A---C---F, and A---E---F.
在一个实施方式中,还可以对确定的与合并算路请求对应的所有不同的目标路进行带宽校验,以保证确定的任意目标路径中,各链路对应的带宽均大于该每个段列表分担的带宽。In one embodiment, the bandwidth check may also be performed on all the different target paths determined corresponding to the combined path calculation request, so as to ensure that in any determined target path, the bandwidth corresponding to each link is greater than the each segment list Shared bandwidth.
在步骤四,将合并算路请求拆分为合并前的多个算路请求,并基于拆分得到的每个算路请求对应的路径配置信息,为拆分得到的每个算路请求分配相应数量的目标路径。In step 4, split the merged route calculation request into multiple route calculation requests before merging, and assign a corresponding Number of target paths.
本实施例中,将合并算路请求拆分为合并前的算路请求1和算路请求2,为算路请求1分配的目标路径为A---B---F,A---C---F,为算路请求2分配的目标路径为A---E---F。由于算路请求是用于请求计算从源节点到目的节点的候选路径的请求,因此,本实施例中确定从源节点到目的节点的两条候选路径,算路请求1的确定的候选路径对应2个段列表,算路请求2的确定的候选路径只能对应1个段列表。In this embodiment, the merged route calculation request is split into route calculation request 1 and route calculation request 2 before merging, and the target path allocated for route calculation request 1 is A---B---F, A--- C---F, the target path assigned to path calculation request 2 is A---E---F. Since the path calculation request is a request for calculating the candidate path from the source node to the destination node, therefore, in this embodiment, two candidate paths from the source node to the destination node are determined, and the determined candidate path of the path calculation request 1 corresponds to There are 2 segment lists, and the determined candidate path of path calculation request 2 can only correspond to 1 segment list.
图8为根据实施例的网络拓扑信息的示意图。在如图8所示的实施场景中,网络拓扑信息包括网络的节点信息(A、B、C、D、E)、链路信息(各节点之间的连线)、各链路对应的路由代价(链路上的数据)等。获取的路径计算客户端发送的算路请求包括:算路请求1, 对应的候选路径的路径配置信息中源节点为A、目的节点为F、对应的段列表数量为2、预设带宽为40Mbps、算路约束信息为最小时延约束;算路请求2,对应的候选路径的路径配置信息中源节点为A、目的节点为F、对应的段列表数量为2、预设带宽为40Mbps、算路约束信息为最小时延约束。Fig. 8 is a schematic diagram of network topology information according to an embodiment. In the implementation scenario shown in Figure 8, the network topology information includes network node information (A, B, C, D, E), link information (the connection between each node), and the route corresponding to each link. Cost (data on the link), etc. The obtained path calculation request sent by the path calculation client includes: path calculation request 1, the source node in the path configuration information of the corresponding candidate path is A, the destination node is F, the corresponding segment list number is 2, and the preset bandwidth is 40Mbps , The route calculation constraint information is the minimum delay constraint; the route calculation request 2, in the path configuration information of the corresponding candidate path, the source node is A, the destination node is F, the corresponding segment list number is 2, the preset bandwidth is 40Mbps, and the calculation The path constraint information is the minimum delay constraint.
在该实施场景中,如果不进行链路分离,则根据最小时延约束原则,两条算路请求的确定的两条候选路径中,第一条候选路径对应的2个段列表均是A---E---F,第二条候选路径对应的2个段列表也均是A---E---F。In this implementation scenario, if link separation is not performed, then according to the minimum delay constraint principle, among the two candidate paths determined by the two path calculation requests, the two segment lists corresponding to the first candidate path are both A- --E---F, the two segment lists corresponding to the second candidate path are also A---E---F.
由此可见,本公开实施例提供的算路方法能够实现路径尽可能分类的效果。It can be seen that the path calculation method provided by the embodiments of the present disclosure can achieve the effect of classifying paths as much as possible.
图9为根据本公开的实施例的路由计算设备的结构示意图。如图9所示,该路由计算设备包括:计算模块91、处理模块92和决策模块93。Fig. 9 is a schematic structural diagram of a route computing device according to an embodiment of the present disclosure. As shown in FIG. 9 , the route calculation device includes: a calculation module 91 , a processing module 92 and a decision module 93 .
计算模块91用于基于网络拓扑信息和与算路请求对应的路径配置信息确定与算路请求对应的一条目标路径。The calculation module 91 is configured to determine a target path corresponding to the path calculation request based on network topology information and path configuration information corresponding to the path calculation request.
网络拓扑信息包括网络的节点信息、链路信息、各链路对应的路由代价和各链路的可用资源信息等。本实施例中,链路指的是网络拓扑中任意一个节点与相邻节点之间的路径。该链路信息可以是链路的唯一标识。链路对应的路由代价是用于评估该链路的优劣的指标,例如,在路由代价仅与时延相关的情况下,该链路的时延越大,则该链路对应的路由代价越大。链路的可用资源信息包括该链路的带宽信息等。Network topology information includes network node information, link information, routing costs corresponding to each link, and available resource information for each link. In this embodiment, a link refers to a path between any node and an adjacent node in the network topology. The link information may be a unique identifier of the link. The routing cost corresponding to the link is an index used to evaluate the quality of the link. For example, in the case where the routing cost is only related to the delay, the greater the delay of the link, the corresponding routing cost of the link bigger. The available resource information of the link includes bandwidth information of the link and the like.
与算路请求对应的路径配置信息包括源节点的信息和目的节点的信息,其中源节点的信息可以包括源节点的标识、地址等信息。目的节点的信息可以包括目的节点的标识、地址等信息。目标路径是在网络拓扑信息中的从源节点到目的节点的路由代价最小的路径。The path configuration information corresponding to the path calculation request includes information on the source node and information on the destination node, where the information on the source node may include information such as an identifier and an address of the source node. The information of the destination node may include information such as the identifier and address of the destination node. The destination path is the path with the least routing cost from the source node to the destination node in the network topology information.
算路请求是用于请求计算从源节点到目的节点的候选路径的请求,算路请求包括对应的候选路径的路径配置信息,该路径配置信息是该候选路径需要具有的性能参数。路径配置信息包括源节点的信息、 目的节点的信息、对应的段列表数量、预设带宽和算路约束信息。A path calculation request is a request for calculating a candidate path from a source node to a destination node, and the path calculation request includes path configuration information of a corresponding candidate path, and the path configuration information is a performance parameter that the candidate path needs to have. The path configuration information includes the information of the source node, the information of the destination node, the number of corresponding segment lists, the preset bandwidth and the path calculation constraint information.
处理模块92,用于通过基于确定的目标路径对网络拓扑信息进行预设处理来更新网络拓扑信息。The processing module 92 is configured to update the network topology information by performing preset processing on the network topology information based on the determined target path.
决策模块93,用于判断确定的目标路径是否满足目标条件,使计算模块91重复确定与算路请求对应的一条目标路径的操作和使处理模块93重复更新网络拓扑信息的操作,直到确定的目标路径满足目标条件,并确定与算路请求对应的所有不同的目标路径。The decision-making module 93 is used to judge whether the determined target path satisfies the target condition, so that the calculation module 91 repeats the operation of determining a target path corresponding to the path calculation request and makes the processing module 93 repeat the operation of updating the network topology information until the determined target path The path satisfies the goal condition, and all the different goal paths corresponding to the routing request are determined.
目标条件包括:确定的目标路径与之前确定的目标路径相同,或者,已确定的所有目标路径互不相同且已确定的所有目标路径的累计数量为预设数量。The target condition includes: the determined target path is the same as the previously determined target path, or all the determined target paths are different from each other and the accumulated quantity of all the determined target paths is a preset quantity.
在一个实施方式中,路由计算设备还包括:路由生成模块和发送模块(未示出)。In one embodiment, the route calculation device further includes: a route generating module and a sending module (not shown).
路由生成模块用于基于确定的各目标路径生成与算路请求对应的路由信息。The route generation module is used to generate route information corresponding to the path calculation request based on the determined target paths.
发送模块用于将路由信息发送至转发设备,以供转发设备基于路由信息进行路由转发操作。The sending module is used to send the routing information to the forwarding device, so that the forwarding device can perform routing and forwarding operations based on the routing information.
在一个实施方式中,路由计算设备还包括:获取模块、合并模块和拆分模块(未示出)。In one embodiment, the routing computing device further includes: an obtaining module, a merging module and a splitting module (not shown).
获取模块用于获取路径计算客户端发送的至少一个算路请求,该至少一个算路请求中的每一个包括候选路径的路径配置信息。The acquiring module is configured to acquire at least one path calculation request sent by the path calculation client, each of the at least one path calculation request includes path configuration information of candidate paths.
合并模块用于基于与各算路请求对应的路径配置信息,将满足预定条件的多个算路请求合并为一个合并算路请求;并且根据与满足预定条件的多个算路请求分别对应的路径配置信息,确定与合并算路请求对应的路径配置信息。The merging module is configured to combine multiple route calculation requests satisfying predetermined conditions into one merged route calculation request based on path configuration information corresponding to each route calculation request; Configuration information, to determine the path configuration information corresponding to the merged path calculation request.
拆分模块用于将合并算路请求拆分为合并前的多个算路请求;基于与拆分得到的各算路请求对应的路径配置信息,为拆分得到的各算路请求分配相应数量的目标路径。The splitting module is used to split the merged route calculation request into multiple route calculation requests before merging; based on the path configuration information corresponding to each route calculation request obtained by splitting, assign the corresponding number to each route calculation request obtained by splitting target path.
在一个实施方式中,计算模块91还用于在与拆分得到的任一算路请求对应的目标路径的数量小于与该算路请求对应的段列表数量的情况下,基于网络拓扑信息和与该算路请求对应的路径配置信息, 确定与该算路请求对应的其他目标路径。In one embodiment, the calculation module 91 is further configured to: if the number of target paths corresponding to any path calculation request obtained by splitting is less than the number of segment lists corresponding to the path calculation request, based on the network topology information and the The path configuration information corresponding to the path calculation request determines other target paths corresponding to the path calculation request.
路由生成模块还用于基于与拆分得到的各算路请求对应的目标路径,生成与拆分得到的各算路请求对应的路由信息。The route generating module is further configured to generate routing information corresponding to each split route calculation request based on the target path corresponding to each split route calculation request.
发送模块还用于将路由信息发送至转发设备,以供转发设备基于路由信息进行路由转发操作。The sending module is also used to send the routing information to the forwarding device, so that the forwarding device can perform routing and forwarding operations based on the routing information.
本公开实施例提供一种路由计算设备,计算模块用于基于网络拓扑信息和与算路请求对应的路径配置信息,确定与算路请求对应的一条目标路径,处理模块用于通过基于目标路径对网络拓扑信息进行预设处理来更新网络拓扑信息,决策模块用于判断确定的目标路径是否满足目标条件,使计算模块91重复确定与算路请求对应的一条目标路径的操作和使处理模块93重复更新网络拓扑信息的操作,直到确定的目标路径满足目标条件,并确定与算路请求对应的所有不同的目标路径,能够加快实现从源节点到目的节点的所有路径的尽力分离的效果。An embodiment of the present disclosure provides a route calculation device. The calculation module is used to determine a target path corresponding to the route calculation request based on the network topology information and the path configuration information corresponding to the route calculation request. The network topology information is pre-processed to update the network topology information, and the decision-making module is used to judge whether the determined target path meets the target condition, so that the calculation module 91 repeats the operation of determining a target path corresponding to the path calculation request and makes the processing module 93 repeat The operation of updating network topology information until the determined target path satisfies the target condition, and determining all the different target paths corresponding to the path calculation request can speed up the best-effort separation of all paths from the source node to the destination node.
在一个实施方式中,本公开提供的路由计算设备应用于管控产品中。In one embodiment, the route computing device provided by the present disclosure is applied to management and control products.
图10为根据本公开的实施例的管控产品的系统结构示意图,例如管控产品为SDN控制器。如图10所示,该管控产品的系统包括:IP(Internet Protocol,网际互连协议)网络设备1000、南向接口1001、拓扑资源模块1002、路径计算单元(Path Calculate Element,PCE)1003和北向接口1004。Fig. 10 is a schematic diagram of a system structure of a management and control product according to an embodiment of the present disclosure, for example, the management and control product is an SDN controller. As shown in Figure 10, the system of the management and control product includes: IP (Internet Protocol, Internet Interconnection Protocol) network device 1000, southbound interface 1001, topology resource module 1002, path calculation unit (Path Calculate Element, PCE) 1003 and northbound Interface 1004.
IP网络设备100包括路由器、交换机等。The IP network device 100 includes routers, switches, and the like.
南向接口1001是管控产品与IP网络设备交互的模块,采用协议使得SDN控制器可以采集到应用设备的信息,例如,光设备信息。南向接口还用于采集网络拓扑信息。The southbound interface 1001 is a module for controlling the interaction between the product and the IP network equipment, and adopts the protocol so that the SDN controller can collect the information of the application equipment, for example, the information of the optical equipment. The southbound interface is also used to collect network topology information.
拓扑资源模块1002用于接收并存储南向接口发送的网络拓扑信息。The topology resource module 1002 is used to receive and store the network topology information sent by the southbound interface.
路径计算单元(Path Calculate Element,PCE)1003,实际上包含了很多子模块,其自身就是一个复杂的系统。PCE中包括本公开实施例提供的上述路由计算设备。除了上述路由计算设备,PCE还包 括资源管理模块、图管理模块等。PCE通过协调调度各模块之间的交互,达到路由计算的目的。Path Calculate Element (PCE) 1003 actually includes many sub-modules, which itself is a complex system. The PCE includes the above routing computing device provided by the embodiments of the present disclosure. In addition to the above routing computing equipment, the PCE also includes a resource management module, a graph management module, and the like. PCE achieves the purpose of routing calculation by coordinating and scheduling the interaction between modules.
北向接口1004主要与更上层的应用模块进行交互,例如,路径计算客户端。The northbound interface 1004 mainly interacts with upper-layer application modules, for example, a path calculation client.
路径计算客户端是用于发送算路请求的设备。该路径计算客户端可以用于配置SR Policy路径计算单元,如添加SR Policy的源节点和目的节点、候选路径的数量、候选路径的优先级、每个候选路径对应的段列表数量、算路约束信息等。用户在该路径计算客户端的操作界面配置算路数据后,路径计算客户端基于算路数据生成至少一个算路请求,并将该算路请求发送至路由计算设备。每个算路请求要求计算一条候选路径。A path calculation client is a device used to send path calculation requests. The path calculation client can be used to configure the SR Policy path calculation unit, such as adding the source node and destination node of the SR Policy, the number of candidate paths, the priority of candidate paths, the number of segment lists corresponding to each candidate path, and path calculation constraints information etc. After the user configures the route calculation data on the operation interface of the route calculation client, the route calculation client generates at least one route calculation request based on the route calculation data, and sends the route calculation request to the route calculation device. Each path calculation request requires the calculation of a candidate path.
图11为根据本公开的实施例的电子设备的组成框图。如图11所示,该电子设备包括:一个或多个处理器1101、存储器1102和一个或多个I/O接口1103。FIG. 11 is a compositional block diagram of an electronic device according to an embodiment of the present disclosure. As shown in FIG. 11 , the electronic device includes: one or more processors 1101 , a memory 1102 and one or more I/O interfaces 1103 .
存储器1102上存储有一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现上述任意一项的算路方法。One or more programs are stored in the memory 1102, and when the one or more programs are executed by one or more processors, the one or more processors implement any one of the above path calculation methods.
I/O接口1103连接在处理器1101与存储器1102之间,并被配置为实现处理器与存储器的信息交互。The I/O interface 1103 is connected between the processor 1101 and the memory 1102, and is configured to realize information exchange between the processor and the memory.
其中,处理器1101为具有数据处理能力的器件,其包括但不限于中央处理器(CPU)等;存储器1102为具有数据存储能力的器件,其包括但不限于随机存取存储器(RAM,更具体如SDRAM、DDR等)、只读存储器(ROM)、带电可擦可编程只读存储器(EEPROM)、闪存(FLASH);I/O接口(读写接口)1103连接在处理器1101与存储器1102间,能实现处理器1101与存储器1102的信息交互,其包括但不限于数据总线(Bus)等。Wherein, the processor 1101 is a device with data processing capability, which includes but not limited to a central processing unit (CPU), etc.; the memory 1102 is a device with data storage capability, which includes but not limited to a 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); I/O interface (read-write interface) 1103 is connected between processor 1101 and memory 1102 , can realize information interaction between the processor 1101 and the memory 1102, which includes but not limited to a data bus (Bus) and the like.
在一些实施例中,处理器1101、存储器1102和I/O接口1103通过总线相互连接,进而与计算设备的其它组件连接。In some embodiments, the processor 1101, the memory 1102 and the I/O interface 1103 are connected to each other through a bus, and further connected to other components of the computing device.
本公开实施例还提供一种计算机存储介质,其上存储有计算机程序,其中,该程序被执行时实现任意一项的算路方法。An embodiment of the present disclosure also provides a computer storage medium on which a computer program is stored, wherein any one of the path calculation methods is implemented when the program is executed.
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。Those skilled in the art can understand that all or some of the steps in the method disclosed above and the functional modules/units in the device can be implemented as software, firmware, hardware and an appropriate combination 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 cooperate to execute. Some or all of the 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 media, which may include computer storage media (or non-transitory media) and communication media (or transitory media). As known to those of ordinary skill in the art, the term computer storage media includes both volatile and nonvolatile media implemented in any method or technology for storage of information, such as computer readable instructions, data structures, program modules, or other data. permanent, removable and non-removable media. Computer storage media includes, but is 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, tape, magnetic disk storage or other magnetic storage devices, or can Any other medium used to store desired information and which can be accessed by a computer. In addition, as is well known to those of ordinary skill in the art, 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 may include any information delivery media .
本文已经公开了示例实施例,并且虽然采用了具体术语,但它们仅用于并仅应当被解释为一般说明性含义,并且不用于限制的目的。在一些实例中,对本领域技术人员显而易见的是,除非另外明确指出,否则可单独使用与特定实施例相结合描述的特征、特性和/或元素,或可与其他实施例相结合描述的特征、特性和/或元件组合使用。本领域技术人员将理解,在不脱离由所附的权利要求阐明的本公开的范围的情况下,可进行各种形式和细节上的改变。Example embodiments have been disclosed herein, and while specific terms have been employed, they are used and should be construed in a generic descriptive sense only 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 may be described in combination with other embodiments, unless explicitly stated otherwise. Combinations of features and/or elements. It will be understood by those skilled in the art that various changes in form and details may be made without departing from the scope of the present disclosure as set forth in the appended claims.

Claims (15)

  1. 一种算路方法,包括:A path calculation method, comprising:
    基于网络拓扑信息和与算路请求对应的路径配置信息确定与所述算路请求对应的一条目标路径;determining a target path corresponding to the path calculation request based on network topology information and path configuration information corresponding to the path calculation request;
    通过基于确定的目标路径对所述网络拓扑信息进行预设处理来更新所述网络拓扑信息;以及updating the network topology information by performing preset processing on the network topology information based on the determined target path; and
    判断所述确定的目标路径是否满足目标条件,重复确定与所述算路请求对应的一条目标路径的步骤和更新所述网络拓扑信息的步骤,直到所述确定的目标路径满足目标条件,并确定与所述算路请求对应的所有不同的目标路径。judging whether the determined target path satisfies the target condition, repeating the steps of determining a target path corresponding to the path calculation request and updating the network topology information until the determined target path satisfies the target condition, and determining All different target paths corresponding to the path calculation request.
  2. 根据权利要求1所述的方法,其中,所述目标条件包括:所述确定的目标路径与之前确定的目标路径相同。The method according to claim 1, wherein the target condition includes: the determined target path is the same as a previously determined target path.
  3. 根据权利要求1所述的方法,其中,所述目标条件包括:已确定的所有目标路径互不相同且所述已确定的所有目标路径的累计数量为预设数量。The method according to claim 1, wherein the target condition includes: all determined target paths are different from each other and the accumulated quantity of all determined target paths is a preset quantity.
  4. 根据权利要求1所述的方法,在基于所述网络拓扑信息和与所述算路请求对应的路径配置信息确定与所述算路请求对应的一条目标路径之前,还包括:The method according to claim 1, before determining a target path corresponding to the path calculation request based on the network topology information and the path configuration information corresponding to the path calculation request, further comprising:
    获取路径计算客户端发送的至少一个算路请求,所述至少一个算路请求中的每一个包括候选路径的路径配置信息。At least one path calculation request sent by the path calculation client is acquired, where each of the at least one path calculation request includes path configuration information of candidate paths.
  5. 根据权利要求4所述的方法,其中,所述至少一个算路请求的数量为多个,在获取所述路径计算客户端发送的所述至少一个算路请求之后,所述方法还包括:The method according to claim 4, wherein the number of the at least one path calculation request is multiple, and after acquiring the at least one path calculation request sent by the path calculation client, the method further comprises:
    基于与所述至少一个算路请求中的每一个对应的路径配置信息,将所述至少一个算路请求中的满足预定条件的多个算路请求合并为 一个合并算路请求;以及Based on the path configuration information corresponding to each of the at least one path calculation request, combining multiple path calculation requests satisfying a predetermined condition in the at least one path calculation request into one merged path calculation request; and
    根据与所述满足预定条件的多个算路请求中的每一个对应的路径配置信息,确定与所述合并算路请求对应的路径配置信息。The path configuration information corresponding to the merged path calculation request is determined according to the path configuration information corresponding to each of the plurality of path calculation requests satisfying the predetermined condition.
  6. 根据权利要求1所述的方法,其中,基于所述网络拓扑信息和与所述算路请求对应的路径配置信息确定与所述算路请求对应的一条目标路径的步骤,包括:The method according to claim 1, wherein the step of determining a target path corresponding to the path calculation request based on the network topology information and the path configuration information corresponding to the path calculation request comprises:
    基于所述路径配置信息和所述网络拓扑信息,利用目标路径计算算法,确定与所述算路请求对应的一条目标路径;以及Determine a target path corresponding to the path calculation request by using a target path calculation algorithm based on the path configuration information and the network topology information; and
    其中,所述路径配置信息包括源节点的信息和目的节点的信息,所述目标路径为所述网络拓扑信息中的从所述源节点到所述目的节点的路由代价最小的路径。Wherein, the path configuration information includes the information of the source node and the information of the destination node, and the destination path is the path with the smallest routing cost from the source node to the destination node in the network topology information.
  7. 根据权利要求6所述的方法,其中,所述目标路径计算算法包括双向迪杰斯特拉算法、单向迪杰斯特拉算法或A*算法。The method according to claim 6, wherein the target path calculation algorithm comprises a two-way Dijkstra algorithm, a one-way Dijkstra algorithm or an A* algorithm.
  8. 根据权利要求6所述的方法,其中,通过基于确定的目标路径对所述网络拓扑信息进行预设处理来更新所述网络拓扑信息的步骤,包括:The method according to claim 6, wherein the step of updating the network topology information by performing preset processing on the network topology information based on the determined target path comprises:
    将所述网络拓扑信息中的所述确定的目标路径的各链路的路由代价增大预设值;以及increasing the routing cost of each link of the determined target path in the network topology information by a preset value; and
    将所述网络拓扑信息中的所述目标路径经过的节点以及与所述经过的节点对应的子节点的父子关系进行剪枝。Pruning the parent-child relationship between the nodes passed by the target path and the child nodes corresponding to the passed nodes in the network topology information.
  9. 根据权利要求1所述的方法,在确定与所述算路请求对应的所有不同的目标路径之后,还包括:The method according to claim 1, after determining all different target paths corresponding to the path calculation request, further comprising:
    基于确定的所有不同的目标路径生成与所述算路请求对应的路由信息;以及generating routing information corresponding to the path calculation request based on all determined different target paths; and
    将所述路由信息发送至转发设备,以供所述转发设备基于所述路由信息进行路由转发操作。Sending the routing information to a forwarding device for the forwarding device to perform a routing and forwarding operation based on the routing information.
  10. 根据权利要求5所述的方法,其中,在所述算路请求为通过合并所述多个算路请求获得的所述合并算路请求的情况下,在确定与所述合并算路请求对应的所有不同的目标路径之后,所述方法还包括:The method according to claim 5, wherein, when the path calculation request is the combined path calculation request obtained by combining the multiple path calculation requests, when determining the path calculation request corresponding to the combined path calculation request After all the different target paths, the method also includes:
    将所述合并算路请求拆分为合并前的所述多个算路请求;Splitting the combined path calculation request into the multiple path calculation requests before merging;
    基于与拆分得到的多个算路请求中的每一个对应的路径配置信息,为所述拆分得到的多个算路请求中的每一个分配相应数量的目标路径;Allocating a corresponding number of target paths to each of the plurality of route calculation requests obtained by splitting based on the path configuration information corresponding to each of the plurality of route calculation requests obtained by splitting;
    基于与所述拆分得到的多个算路请求分别对应的目标路径,生成与所述拆分得到的多个算路请求分别对应的路由信息;以及generating routing information respectively corresponding to the plurality of route calculation requests obtained by the split based on the target paths respectively corresponding to the plurality of route calculation requests obtained by the split; and
    将所述路由信息发送至转发设备,以供所述转发设备基于所述路由信息进行路由转发操作。Sending the routing information to a forwarding device for the forwarding device to perform a routing and forwarding operation based on the routing information.
  11. 根据权利要求10所述的方法,其中,在基于与所述拆分得到的多个算路请求中的每一个对应的路径配置信息,为所述拆分得到的多个算路请求中的每一个分配相应数量的目标路径之后,所述方法还包括:The method according to claim 10, wherein, based on the path configuration information corresponding to each of the multiple path calculation requests obtained by the split, for each of the multiple path calculation requests obtained by the split After allocating a corresponding number of target paths, the method further includes:
    在与拆分得到的任一算路请求对应的目标路径的数量小于与该算路请求对应的段列表数量的情况下,基于所述网络拓扑信息和与该算路请求对应的路径配置信息,确定与该算路请求对应的其他目标路径。If the number of target paths corresponding to any path calculation request obtained by splitting is less than the number of segment lists corresponding to the path calculation request, based on the network topology information and the path configuration information corresponding to the path calculation request, Determine other target paths corresponding to the path calculation request.
  12. 根据权利要求1所述的方法,其中,所述路径配置信息还包括源节点的信息、目的节点的信息、对应的段列表数量、预设带宽和算路约束信息。The method according to claim 1, wherein the path configuration information further includes source node information, destination node information, corresponding segment list numbers, preset bandwidth and path calculation constraint information.
  13. 一种路由计算设备,包括:A routing computing device comprising:
    计算模块,其被配置为基于网络拓扑信息和与算路请求对应的路径配置信息,确定与所述算路请求对应的一条目标路径;A calculation module configured to determine a target path corresponding to the path calculation request based on network topology information and path configuration information corresponding to the path calculation request;
    处理模块,其被配置为通过基于确定的目标路径对所述网络拓 扑信息进行预设处理来更新所述网络拓扑信息;以及a processing module configured to update the network topology information by performing preset processing on the network topology information based on the determined target path; and
    决策模块,其被配置为判断所述确定的目标路径是否满足目标条件,使所述计算模块重复确定与所述算路请求对应的一条目标路径的操作和使所述处理模块重复更新所述网络拓扑信息的操作,直到所述确定的目标路径满足目标条件,并确定与所述算路请求对应的所有不同的所述目标路径。A decision-making module configured to judge whether the determined target path satisfies a target condition, make the calculation module repeat the operation of determining a target path corresponding to the path calculation request, and make the processing module repeatedly update the network The topology information is operated until the determined target path satisfies the target condition, and all the different target paths corresponding to the path calculation request are determined.
  14. 一种电子设备,包括:An electronic device comprising:
    一个或多个处理器;以及one or more processors; and
    存储器,其上存储有一个或多个程序;memory on which one or more programs are stored;
    当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求1-12任一项所述的算路方法。When the one or more programs are executed by the one or more processors, the one or more processors are made to implement the path calculation method according to any one of claims 1-12.
  15. 一种计算机存储介质,其上存储有计算机程序,其中,所述程序被执行时实现如权利要求1-12任一项所述的算路方法。A computer storage medium, on which a computer program is stored, wherein the path calculation method according to any one of claims 1-12 is implemented when the program is executed.
PCT/CN2022/127910 2021-11-04 2022-10-27 Path calculation method, route calculation device, electronic device, and computer storage medium WO2023078150A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202111300379.4A CN116074204A (en) 2021-11-04 2021-11-04 Routing method, routing computing device, electronic device, and computer storage medium
CN202111300379.4 2021-11-04

Publications (1)

Publication Number Publication Date
WO2023078150A1 true WO2023078150A1 (en) 2023-05-11

Family

ID=86179183

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/127910 WO2023078150A1 (en) 2021-11-04 2022-10-27 Path calculation method, route calculation device, electronic device, and computer storage medium

Country Status (2)

Country Link
CN (1) CN116074204A (en)
WO (1) WO2023078150A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116760761A (en) * 2023-08-16 2023-09-15 摩尔线程智能科技(北京)有限责任公司 Path creation method, data processing system, controller, and storage medium

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117135059B (en) * 2023-10-25 2024-02-09 苏州元脑智能科技有限公司 Network topology structure, construction method, routing algorithm, equipment and medium

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160205012A1 (en) * 2015-01-13 2016-07-14 Fujitsu Limited Device and method for path calculation
CN108833271A (en) * 2018-05-28 2018-11-16 全球能源互联网研究院有限公司 A kind of power grid wide-area control service communication routing resource and server
CN110289996A (en) * 2019-06-14 2019-09-27 浪潮思科网络科技有限公司 A kind of business route computing method based on SR
CN110557337A (en) * 2018-05-30 2019-12-10 中兴通讯股份有限公司 method and device for calculating segmented routing path and computer storage medium
CN112261690A (en) * 2020-10-10 2021-01-22 北京航空航天大学 Satellite network constrained multipath routing setting method, electronic device and storage medium

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160205012A1 (en) * 2015-01-13 2016-07-14 Fujitsu Limited Device and method for path calculation
CN108833271A (en) * 2018-05-28 2018-11-16 全球能源互联网研究院有限公司 A kind of power grid wide-area control service communication routing resource and server
CN110557337A (en) * 2018-05-30 2019-12-10 中兴通讯股份有限公司 method and device for calculating segmented routing path and computer storage medium
CN110289996A (en) * 2019-06-14 2019-09-27 浪潮思科网络科技有限公司 A kind of business route computing method based on SR
CN112261690A (en) * 2020-10-10 2021-01-22 北京航空航天大学 Satellite network constrained multipath routing setting method, electronic device and storage medium

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116760761A (en) * 2023-08-16 2023-09-15 摩尔线程智能科技(北京)有限责任公司 Path creation method, data processing system, controller, and storage medium
CN116760761B (en) * 2023-08-16 2023-10-13 摩尔线程智能科技(北京)有限责任公司 Path creation method, data processing system, controller, and storage medium

Also Published As

Publication number Publication date
CN116074204A (en) 2023-05-05

Similar Documents

Publication Publication Date Title
WO2023078150A1 (en) Path calculation method, route calculation device, electronic device, and computer storage medium
US10374956B1 (en) Managing a hierarchical network
US7839780B2 (en) Dynamic traffic rearrangement to enforce policy changes in MPLS networks
EP2224649B1 (en) Load balancing network traffic on a label switched path using resource reservation protocol with traffic engineering
CN106470168B (en) data transmission method, switch using the method and network control system
US6980555B2 (en) Policy change characterization method and apparatus
US9680767B2 (en) Session admission in a communications network
US9450874B2 (en) Method for internet traffic management using a central traffic controller
EP2915307B1 (en) Communications network using a tunnel to connect two network nodes
Tomovic et al. Performance comparison of QoS routing algorithms applicable to large-scale SDN networks
CN111147370B (en) Method and control device for determining forwarding path
US20070211637A1 (en) Method of Optimizing Routing of Demands in a Network
US20180198732A1 (en) Negotiating quality of service for data flows
WO2004111775A2 (en) Static dense multicast path and bandwidth management
CN108476175B (en) Transfer SDN traffic engineering method and system using dual variables
Shvedov et al. Determining shortest paths between two arbitrary nodes in a composite transport network using segment routing
WO2021022944A1 (en) Route calculation method involving stack depth constraint, and device
Moradi et al. Dragon: Scalable, flexible, and efficient traffic engineering in software defined isp networks
CN105357124A (en) MapReduce bandwidth optimization method
WO2017136186A1 (en) Mutually compatible path search
Akin et al. Rate-based dynamic shortest path algorithm for efficiently routing multiple flows in SDN
CN112615750A (en) Backbone network flow granularity adjusting system and method based on SDN
EP3725044B1 (en) Actn virtual network augmentation for resource sharing
Chooprateep et al. Video path selection for traffic engineering in SDN
Kostiv et al. Metaheuristics in cloud platform traffic engineering

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: 22889175

Country of ref document: EP

Kind code of ref document: A1