Routing protection method based on hop count dependency and partial order calculation

By adopting a routing protection method based on hop count dependency and partial order calculation, the problem of difficulty in obtaining accurate Top 2 paths in existing technologies is solved, achieving efficient Top 1 path protection and accurate acquisition of Top 2 paths, which is suitable for network protection in multi-restricted scenarios.

CN116489076BActive Publication Date: 2026-06-23NORTHEASTERN UNIV CHINA

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
NORTHEASTERN UNIV CHINA
Filing Date
2023-05-12
Publication Date
2026-06-23

AI Technical Summary

Technical Problem

Existing route protection algorithms struggle to obtain a set of alternative paths with good performance without reconvergence, and the protection granularity for the Top 1 path is either too large or too small, making it impossible to accurately determine the Top 2 path.

Method used

A routing protection method based on hop count dependency and partial order calculation is adopted. By dividing the path into atomic comparison path and non-atomic comparison path, and using partial order routing calculation and cumulative calculation of the next hop of the branch node, pruning strategy, and dual stack structure, the method ensures consistent forwarding of the path and obtains the Top 2 path.

Benefits of technology

It achieves accurate Top 2 path acquisition without re-convergence, improves the protection rate of Top 1 path, reduces the number of convergences, ensures efficient packet forwarding, and is applicable to multiple restricted scenarios.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116489076B_ABST
    Figure CN116489076B_ABST
Patent Text Reader

Abstract

The application discloses a routing protection method based on hop number dependence and partial order calculation, which fully utilizes partial order routing calculation and hop number to solve the routing protection task. Firstly, all paths are divided into atomic comparison paths and non-atomic comparison paths, all paths of source and destination nodes are divided into incomparable path sets and comparable path sets through partial order routing calculation, and path consistency forwarding is ensured by using the cumulative calculation mode of the next hop of the bifurcation node; secondly, the comparable path set is pruned through a hop number pruning strategy, an intersection point set and a pruning strategy combined with hop number; finally, a candidate path set of a Top1 path and a candidate path set of a Top2 path are obtained, and particularly, the application reduces the time complexity of processing paths through a double stack structure. In a real network topology, compared with the existing common routing protection scheme, the application improves the protection rate of the Top1 path, and can guarantee that the Top2 path has better performance.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the field of fault protection technology, and specifically relates to a routing protection method based on hop count dependency and partial order calculation. Background Technology

[0002] In recent years, internet services have developed rapidly, and real-time applications such as live streaming have gradually become the mainstream of internet deployment applications. However, these applications require the internet to provide uninterrupted network services, so the protection of routes and the selection of paths are very important.

[0003] First, for route protection algorithms, the most crucial aspect is the selection of alternative paths, ensuring that the reconverged solution is easy to deploy and use. Route protection algorithms use pre-prepared temporary channels to forward data while reconverging to obtain a new Top 1 path. However, this requires storing alternative paths 1:1, which necessitates a large amount of memory in the routing table in dense graphs. Furthermore, recalculating the entire network for the failure of a single node also incurs significant overhead. Therefore, solutions that do not require reconvergence have been extensively researched and explored, particularly non-intersecting multipath schemes. However, due to the non-intersecting node constraint, performance requirements must be sacrificed, and routing calculation rules must be applied. For example, if the path with the lowest cost is selected as the optimal path, a failure of the chosen Top 1 path does not guarantee that the second path is the path with the lowest cost excluding both the Top 1 and the failed path; that is, it is not a precise Top 2 path.

[0004] Existing solutions either select unrelated paths for temporary use, requiring reconvergence or directly using multiple unrelated paths for routing; or they select precise Top N paths, but rely on probabilistic analysis, hoping that failures will not occur on the Top 2 path, thus ensuring that if the Top 1 path fails, routing can be performed using the Top 2 path without reconvergence. Therefore, an algorithm is needed that can both avoid reconvergence and obtain precise Top 2 paths.

[0005] Secondly, there is the issue of granularity in route protection algorithms. Route protection strategies can be divided into point-based protection strategies and path-based protection strategies.

[0006] Point-based protection strategies, through route deflection, prepare redundant next hops in advance to provide protection for routes. When a node fails, data packets can be temporarily forwarded to the next hop node of another path, ensuring normal packet forwarding. This strategy provides protection on a node-by-node basis, forwarding traffic to "narrower paths" after an incident on the selected "main road." This strategy is simple and easy to implement, but preparing deflected next hops for every node on the shortest path from the source node to all destination nodes is costly. Furthermore, the alternative paths generated by deflected next hops are not necessarily precise Top 2 paths; after the algorithm reconvers, the deflected next hops need to be recalculated, resulting in wasted paths.

[0007] A path-based protection strategy aims to find a path that has no intersecting nodes with the shortest path. This strategy only requires storing one additional path. When a node fails on the shortest path, data is forwarded using the non-intersecting paths of the shortest path. In this case, reconvergence is not required. However, in order to achieve the goal of node non-intersection, the types of paths selected and their performance will be affected.

[0008] Furthermore, most route protection strategies rely on the top-1 shortest path. Fast Rerouting (LFA) selects a suitable alternative path for each hop of the shortest path after the entire topology has fully converged. Algorithms that calculate the K-shortest-Path (KSP) with the minimum latency to find the exact Top N paths also rely on the calculation results of the Top-1 path when calculating the Top-2 path. Finding a scheme that completes the selection of alternative paths during the convergence process is also a crucial step.

[0009] In summary, for route protection algorithms, existing technologies struggle to obtain a set of alternative paths with good performance without re-convergence, while the granularity of protection for the Top 1 path is either too large or too small. Summary of the Invention

[0010] To overcome the shortcomings of existing technologies, this invention provides a route protection method based on hop count dependency and partial order calculation. Based on partial order route calculation and hop count dependency, all paths are first divided into atomic comparison paths and non-atomic comparison paths. Partial order route calculation is then used to divide all paths between source and destination nodes into sets of incomparable and comparable paths. The cumulative calculation of the next hop at bifurcation nodes ensures consistent forwarding of paths. Secondly, a hop count pruning strategy, a pruning strategy combining intersection point sets and hop count, is used to prune the set of comparable paths. Finally, a dual-stack structure reduces the time complexity of path processing, yielding the set of incomparable paths. This method overcomes the shortcomings of existing methods, which struggle to simultaneously obtain accurate Top 2 paths without re-convergence and provide strong protection for Top 1 paths. It achieves a high protection rate for routing nodes and ensures superior performance of Top 2 paths.

[0011] The technical solution of this invention is as follows:

[0012] The route protection method based on hop count dependency and partial order calculation includes the following steps:

[0013] Obtain the network topology dataset;

[0014] Obtain all paths between each pair of source and destination nodes, where each path is either an atomic comparison path or a non-atomic comparison path. Divide the paths between each pair of source and destination nodes into a set of incomparable paths and a set of comparable paths using partial-order routing calculation. The set of incomparable paths is a candidate set for the Top 1 path. The Top 1 path is obtained by filtering from the set of incomparable paths based on the actual application purpose. When the Top 1 path fails, determine an alternative path for the Top 1 path, namely the Top 2 path.

[0015] All paths are calculated using the cumulative calculation method of the next hop of the branch node to ensure consistent forwarding along the Top1 path determined by the source node or along the Top2 path when the Top1 path fails.

[0016] The alternative path set for the Top 2 path is constructed as follows:

[0017] The atomic comparison paths in the comparable path set are pruned using the hop count of the non-comparable path set, eliminating alternative paths that cannot become the Top 2 path after the Top 1 path fails.

[0018] The non-atomic comparison paths in the set of comparable paths are pruned using the hop count of the non-comparable path set and the intersection point set of each path in the set of comparable paths, eliminating alternative paths that cannot become the Top 2 path after the Top 1 path fails.

[0019] Obtain the final set of alternative paths for the Top 2 path.

[0020] Furthermore, the atomic comparison path and the non-atomic comparison path are specifically as follows:

[0021] In the network topology, any two paths with the same source and destination nodes are atomic comparison paths if they have no other intersection points besides the source and destination nodes; otherwise, they are non-atomic comparison paths.

[0022] Furthermore, the partial-order routing calculation divides the path between each pair of source and destination nodes into a set of incomparable paths and a set of comparable paths, specifically as follows:

[0023] Convert link attribute sets to path attributes ;

[0024] in, Representing a path The attributes, Indicates link Attributes, binary expansion operator As an extension of the path as a link attribute;

[0025] In the full order of the optimal attribute set Modeling on i represents antisymmetric, transitive, and join binary relations on the attribute set, where, and This is a partial order symbol;

[0026] For two paths and path ,like i , then represents the path exist property The path is superior to the path That is, the path In attributes inferior path ;like or , then represents the path and path They are comparable; otherwise, the paths are not comparable. and path They are incomparable;

[0027] at the same time, express and , indicating path Better than path ,path Better path ;

[0028] The path partitioning is specifically performed using the partial order relationship between routes:

[0029] In all paths of a pair of source and destination nodes, paths that are not comparable to each other are classified as the set of incomparable paths, and conversely, paths that are comparable to each other are classified as the set of comparable paths.

[0030] Furthermore, the method of cumulatively calculating the next hop of the branch node is used for all paths to ensure consistent forwarding along the Top1 path determined by the source node, or along the Top2 path when the Top1 path fails. Specifically:

[0031] When calculating the attribute set from the source node to the destination node of the path, if the path branches at an intermediate node and eventually merges at the destination node, the attribute set from the source node to the branch node is recorded at the branch node. Then, starting from the branch node, the local attribute set to the destination node is recalculated, and the attribute set recorded at the branch node is added to the local attribute set.

[0032] Determine whether the two paths from the bifurcation node are incomparable paths, and determine whether the two paths need to be retained: if the attribute values ​​of the two paths from the source node to the destination node are equal, and one of them is a path in the comparable path set, then the path in the comparable path set will be marked, and when the source node makes a selection later, the unmarked path will be selected as the Top1 path.

[0033] Furthermore, the step of pruning the atomic comparison paths in the comparable path set using the hop count of the incomparable path set, and eliminating paths that cannot become the Top 2 path after the Top 1 path fails, specifically involves:

[0034] For two atomic comparison paths of a pair of source and destination nodes If the rules described in the following formula are met, then there is no need to preserve the path. :

[0035]

[0036] in, .hop is a path The number of hops from the source node to the destination node; && is the logical AND operator, indicating that the conditions of the expression must be satisfied simultaneously; .hop==1 means that the hop count of path u is 1;

[0037] For a pair of source and destination nodes, three atomic comparison paths: paths belonging to the set of incomparable paths. Paths belonging to either the set of incomparable paths or the set of comparable paths Paths belonging to the comparable path set If the rules described in the following formula are met, then there is no need to preserve the path. :

[0038]

[0039] in Representing a path All attributes are superior to path ; Representing a path All attributes are superior to path && is the logical AND operator, indicating that the conditions in the expression must be satisfied simultaneously. .hop represents a path The number of hops from the source node to the destination node; .hop represents a path The number of hops from the source node to the destination node; .hop>1 indicates a path The number of jumps is greater than 1; .hop>1 indicates a path The number of jumps is greater than 1.

[0040] Furthermore, the step of pruning the non-atomic comparison paths in the comparable path set using the hop count of the incomparable path set and the intersection set of each path in the comparable path set, and eliminating paths that cannot become the candidate path for the Top 2 path after the Top 1 path fails, specifically involves:

[0041] In the non-atomic comparison path, if two paths , If the rules described in the following formula are satisfied, then the path No need to retain:

[0042]

[0043] in, express All attributes are superior to path && is the logical AND operator, indicating that the conditions in the expression must be satisfied simultaneously. hop represents a path The number of hops from the source node to the destination node; .Set cro Representing a path The set of intersection points with other paths that share the same source and destination nodes; Set cro Representing a path The set of intersection points of other paths with the same source and destination nodes; count indicates the number of elements in the set;

[0044] If three non-atomic comparison paths ,in For the non-comparable paths, if they satisfy the rules described in the following formula, then the path is... No need to retain:

[0045]

[0046] in, Representing a path All attributes are superior to path ; Representing a path All attributes are superior to path && is the logical AND operator, indicating that the conditions in the expression must be satisfied simultaneously. Set cro For path The set of intersection points with other paths that share the same source and destination nodes; .Set cro For path The set of intersection points with other paths that share the same source and destination nodes; Set cro For path The set of intersection points with other paths that share the same source and destination nodes; To find the intersection; The symbol for a set represents a membership relation;

[0047] in, .Set cro Set cro .Set cro .Set cro , indicating path For path Provided node protection, path It can also be a path Provide protection for the nodes.

[0048] Furthermore, by employing a dual-stack structure, the time complexity of path processing is reduced, and the final candidate path set for the Top 1 path and the candidate path set for the Top 2 path are obtained, specifically as follows:

[0049] The process begins by visiting nodes in the topology from the source node. These nodes are first placed into a stack named candidate1. Within the candidate1 stack, nodes are then accessed according to their attributes. Sort the nodes, where This represents the selected set of attributes, such that the attributes in the candidate1 stack... The best node is popped from the stack first, if it has multiple attributes. The optimal node is selected based on its attribute. and The best node is popped from the stack first.

[0050] The node popped from the candidate1 stack will be compared with the node in the candidate2 stack that has the same routing table ID RouterId. The node with the same RouterId will be compared with multiple attributes between paths. If there is no node with the same RouterId, the node will be pushed onto the candidate2 stack.

[0051] In the dual-stack structure, after a node is popped from the candidate1 stack, it is determined whether the node could become the Top 2 path: if it cannot become the Top 2 path, it is not pushed onto the candidate2 stack, and the next calculation is performed; if it can become the Top 2 path, it is pushed onto the candidate2 stack, and the other adjacent nodes of the node are obtained and visited.

[0052] The nodes in candidate1 are sorted according to their attribute order.

[0053] Compared with the prior art, the beneficial effects of the present invention are as follows:

[0054] (1) This invention proposes a solution to find redundant paths with dual identities of protected path and accurate Top 2 path, and can control the protection granularity between nodes and paths.

[0055] (2) The present invention designs a dual-stack structure for filtering alternative paths, which can not only obtain the Top1 path as early as possible, but also greatly reduce the running time. It is more suitable for calculating multiple attributes than the single-stack data structure.

[0056] (3) The method described in this invention can converge in milliseconds and ensure the existence of accurate Top 2 paths while retaining fewer paths.

[0057] (4) The method described in this invention can be used in various restricted scenarios such as optical networks.

[0058] In summary, compared with existing commonly used route protection methods, this invention improves the protection rate of the Top 1 path; it can obtain a more efficient and accurate Top 2 path while reducing the number of convergence attempts; it also ensures efficient forwarding of data packets and expands application scenarios. Attached Figure Description

[0059] Figure 1 This is a flowchart of the routing protection method based on hop count dependency and partial order calculation as described in an embodiment of the present invention;

[0060] Figure 2 This is a schematic diagram illustrating how all paths of the source and destination nodes are divided into a set of incomparable paths and a set of comparable paths, as described in an embodiment of the present invention.

[0061] Figure 3 This is a schematic diagram illustrating the path consistency guarantee described in an embodiment of the present invention;

[0062] Figure 4 This is a comparison chart of the protection rates of the method described in this invention with other commonly used routing protection methods in this embodiment of the invention.

[0063] Figure 5 This is a comparison chart of the alternative path performance of the method described in this invention with other commonly used route protection schemes in this embodiment of the invention. Detailed Implementation

[0064] To make the above-mentioned objects, features, and advantages of the present invention more apparent and understandable, the present invention will be further described in detail below with reference to the accompanying drawings and specific embodiments. The following examples are used to illustrate the present invention, but are not intended to limit the scope of the present invention.

[0065] Example 1

[0066] Adopting such Figure 1As shown, the route protection method based on hop count dependency and partial order calculation specifically includes:

[0067] Obtain the network topology dataset;

[0068] Specifically, this embodiment uses six ISP topologies from the real-world network project Rocketful as examples. Each topology includes information such as nodes, links, inter-link latency, and inter-link bandwidth. The six ISP topologies are Exodus (79 nodes, 147 edges), Ebone (87 nodes, 161 edges), Telstra (108 nodes, 153 edges), Abovenet (141 nodes, 328 edges), Tiscali (161 nodes, 328 edges), and Sprint (315 nodes, 972 edges). The feasibility of the method is verified based on these six real-world network topologies of different sizes.

[0069] Using the idea of ​​moving from the local to the global, the paths in the path set are divided into atomic comparison paths and non-atomic comparison paths:

[0070] Specifically, in a network topology, any two paths that have no intersection other than the source and destination nodes are considered atomic comparison paths. Otherwise, they are non-atomic comparison paths. Atomic comparison paths are the simplest form of two intersecting paths because they provide 100% protection for each other's nodes. A failure in an intermediate node of either path will not affect the other, allowing the source and destination nodes to communicate normally. Non-atomic comparison paths represent the most common and complex scenario in a network, but often contain elements of atomic comparison paths, unless the two paths completely overlap.

[0071] Partial order routing calculation is used to divide the path of each pair of source and destination nodes into a set of incomparable paths and a set of comparable paths; the set of incomparable paths is the set of candidate paths for the Top1 path. The Top1 path is obtained by filtering from the set of incomparable paths according to the actual application purpose; when the Top1 path fails, the alternative path of the Top1 path, namely the Top2 path, is determined.

[0072] Specifically, Figure 2 This is a schematic diagram illustrating the division of all paths between a pair of source and destination nodes into a set of non-comparable paths and a set of comparable paths, as provided in this embodiment.

[0073] Specifically, the methods for transforming the selected path set into a non-comparable path set and a comparable path set are as follows: Figure 2 As shown, this can be specifically described as follows: First, convert the link attribute set into path attributes. , Representing a path The attributes, Indicates link Attributes, binary expansion operator As an extension of the path to the link attributes; then in the full order of the optimal attribute set. Modeling on i involves antisymmetric, transitive, and join binary relations on the attribute set, i.e., for two paths... and ,like i , then call yes - Better than That is to say - Inferior to .if or ,but and They are comparable; otherwise, they are not. We still write express and And said Superior , Better We use the partial order relationship between routes to divide the paths.

[0074] Specifically, among all paths of a source-destination pair, if some paths are not comparable to each other, these paths will be classified as a set of incomparable paths; otherwise, they will belong to the set of comparable paths. For example, in e-commerce scenarios, when selecting the path with the lowest latency and highest bandwidth as the optimal Top 1 path for routing, filtering can be done within the set of incomparable paths. After a Top 1 path fails, we cannot determine whether the Top 2 path is in the set of comparable paths. Therefore, we need to retain paths in the set of comparable paths that could potentially become Top 2 as alternative paths. This achieves 100% protection for the Top 1 path nodes while minimizing the number of alternative paths and ensuring that the precise Top 2 path is always in the routing table, thus avoiding the time wasted on reconvergence.

[0075] By adopting the cumulative calculation method of the next hop of the branch node, it is ensured that the route is always forwarded along the Top1 path determined by the source node or along the alternative path of the Top1 path, i.e., the Top2 path, when the Top1 path fails; that is, the route is always forwarded along the Top1 path determined by the source node, and is not affected by other factors.

[0076] Specifically, such as Figure 3 As shown, to ensure consistency in the route expressions calculated in parallel by the source, destination, and next-hop nodes for the destination node, and to ensure accurate routing of data packets according to the path selected by the source node, it is necessary to calculate the attribute set from the source node to the branch node. This attribute set is temporarily recorded and then parallel computation can be performed: calculating the attribute set from the branch node to node 1, the attribute set from the branch node to node 3, the attribute set from the branch node to node 2, and the attribute set from the branch node to node 4. Then, the attribute sets from the branch node to node 3 and node 4 are compared. Since node 3 and node 4 are the same point, they are written as node 3 and node 4 to represent different paths from the dual-stack structure. Next, the sets of incomparable and comparable paths are obtained, and the attribute set from the node to the source node is calculated. After obtaining the attribute set from the node to the source node, it is tagged and recorded in the routing table.

[0077] It should be noted that the above process is a screening process of the candidate path set using the existing set of possible Top 1 paths, used to screen out candidate paths that may become accurate Top 2 paths while ensuring the protection of Top 1 path routing.

[0078] For atomic comparison paths, the set of comparable paths is pruned using the hop count of the set of incomparable paths, eliminating alternative paths that cannot become the second best path after the first path fails.

[0079] Specifically, for the Top 1 path, protection can be provided by both paths in the non-comparable path set and paths in the comparable path set. Paths in the non-comparable path set each have their own advantages, such as dual advantages in latency and bandwidth, or a single advantage in latency, which can meet the needs of different application scenarios and may all be selected as the Top 1 path. Therefore, the non-comparable path set will be completely preserved. Paths in the comparable path set may contain hidden Top 2 paths and may also provide Top 1 paths with protection that the non-comparable path set cannot provide. For two atomic comparison paths of a pair of source and destination nodes... , If rule (1) is satisfied, then the path No need to retain:

[0080] (1)

[0081] in, .hop represents a path The number of hops from the source node to the destination node; && is the logical AND operator, indicating that the conditions of the expression must be satisfied simultaneously; `hop == 1` means that the hop count of path u is 1;

[0082] Atomic comparison path and Compared to node A, the path All path attributes are superior to path And the hop count is 1. Therefore, the path... It will belong to the set of non-comparable paths, while the path It belongs to the set of comparable paths. (Using paths) To determine the path To stay or leave. Path. There are no intermediate nodes that need protection, and when node A fails, , Both are unavailable. Secondly, if node A does not fail, binary expansion... It has homology, that is i It can be derived i , i.e., path No path Generate protection for any node, and on the path If any node fails, the path It is bound to malfunction.

[0083] Specifically, in order to ensure that paths with a hop count other than 1 in the set of non-comparable paths can also perform pruning, for three paths between a pair of source and destination nodes... , where the path Belongs to a set of non-comparable paths. The path belongs to either a set of incomparable paths or a set of comparable paths. If a path belongs to a set of comparable paths and satisfies rule (2), then the path... No need to retain:

[0084] (2)

[0085] in, Representing a path All attributes are superior to path ; Representing a path All attributes are superior to path && is the logical AND operator, indicating that the conditions in the expression must be satisfied simultaneously. .hop represents a path The number of hops from the source node to the destination node; .hop represents a path The number of hops from the source node to the destination node; .hop > 1 indicates a path The number of jumps is greater than 1; .hop > 1 indicates a path The number of jumps is greater than 1.

[0086] Specifically, if the path It is the top 1 path, and the path After a failure occurs, the path If it becomes the Top 2 path in subsequent calculations, then in the path... After a failure occurs, the path It belongs to the set of non-comparable paths. However, due to... and path The two nodes form an atomic comparison path. If a non-destination node fails, when After a failure occurs, the path and If none of them fail, then the path It does not belong to the set of incomparable paths. If the two paths mentioned exist, then determine the path. No need to retain data.

[0087] For non-atomic comparison paths, the hop count of the non-comparable path set is used and the comparison path set is pruned by introducing a set of intersection points. After the Top1 path fails, the alternative path that cannot become the Top2 path is eliminated.

[0088] Specifically, non-atomic comparison paths contain atomic comparison paths, but non-atomic comparison paths are more common and more complex. This is because atomic comparison paths have a hidden condition: they are protected by 100% of the nodes other than the source and destination nodes. Therefore, by introducing a strategy of intersection point sets, the intersection points of a certain path between the source and destination nodes and other paths between those nodes are recorded, thus forming the intersection point set of this path. Using this intersection point set and the hop count of the non-comparable path set, the comparable path set is pruned.

[0089] Specifically, the fewer elements in the intersection set of two paths, the stronger the node protection capability. If the intersection set of two paths has only one element, it must be the destination node, and the two form an atomic comparison path, providing the strongest node protection capability. The worst case is when the intersection set of a path contains all the nodes of that path, meaning the maximum number of alternative paths need to be stored.

[0090] In particular, the concept of the intersection set can be modified in different scenarios. For example, in sparse graphs, the intersection points are used to form the intersection set, while in dense graphs, the difference between all nodes on the path and the intersection points is selected as the intersection set.

[0091] Specifically, in non-atomic comparison paths, if two paths , If rule (3) is satisfied, then the path No need to retain.

[0092] (3)

[0093] in, express All attributes are superior to path && is the logical AND operator, indicating that the conditions in the expression must be satisfied simultaneously. hop represents a path The number of hops from the source node to the destination node; .Set cro Representing a path The set of intersection points with other paths that share the same source and destination nodes; Set cro Representing a path The set of intersection points of other paths with the same source and destination nodes; count indicates the number of elements in the set.

[0094] Specifically, and path The intersection of the sets of interaction points is the meeting point of two paths. In the case of acyclic points, this implies the path... With path If all points intersect, then the path... No protection is provided for any node in path u. In fact, this inference is similar to Inference 1, because the path... All nodes are paths A subset of, and path It's a different path. The other path must have at least one deflection node that deflects from path u, such that the two local paths form an atomic comparison path. The resulting local path is the same as rule (1), therefore the path can be... Reduce it.

[0095] Specifically, if there are three paths ,in For paths to be incomparable, if they satisfy the following rule (4), then the path is considered incomparable. No need to retain:

[0096] (4)

[0097] in, Representing a path All attributes are superior to path ; Representing a path All attributes are superior to path && is the logical AND operator, indicating that the conditions in the expression must be satisfied simultaneously. Set cro For path The set of intersection points with other paths that share the same source and destination nodes; . Set cro For path The set of intersection points with other paths that share the same source and destination nodes; Set cro For path The set of intersection points with other paths that share the same source and destination nodes; To find the intersection; The symbol for a set represents a membership relation;

[0098] in, . Set cro Setcro . Set cro . Set cro , indicating path For path Provided node protection, path It can also be a path Provide the node protection, therefore for the path In other words, there is no need to retain a path. .

[0099] The design incorporates a dual-stack architecture to reduce the time complexity of handling path storage retention and removal, and to obtain the set of incomparable paths and alternative paths as early as possible.

[0100] Specifically, since the retained set of comparable paths is attached to some paths in the non-comparable set, if there is a subsequent path in the path between a pair of source and destination nodes... Make v, and path If a path already belongs to a set of incomparable paths, then the path needs to be... Archived to a set of comparable paths. A decision needs to be made regarding path protection beforehand. The retention or removal of redundant paths from multiple comparable paths in storage greatly increases the complexity. Therefore, a dual-stack structure was designed to solve this problem.

[0101] Specifically, when accessing nodes in the topology starting from the source node, the nodes are first placed into a stack named candidate1. Within the candidate1 stack, nodes are then ranked according to their attributes. Sort, where This indicates the selected set of attributes, which makes the attributes in the stack... The best node is popped from the stack first, if it has attributes. If there are multiple optimal nodes, then select the attribute. and The best node is popped from the stack first, and so on. The popped node is compared with the node with the same RouterId in the candidate2 stack for multiple attributes between paths. If no node with the same RouterId exists, the popped node is pushed onto the candidate2 stack.

[0102] Specifically, using a dual-stack structure, after a node is popped from the candidate1 stack, it is determined whether the node is likely to become the Top 2 path: if it is unlikely to become the Top 2 path, it is not pushed onto the candidate2 stack and the next calculation is performed; if it is likely to become the Top 2 path, it is pushed onto candidate2 and the other adjacent nodes of the node are obtained and visited.

[0103] Specifically, the nodes in candidate1 are sorted according to their attribute order.

[0104] In fact, the candidate1 stack has a strong filtering capability. When multiple paths have the same attributes, the best path among the different attributes is preferentially put into the candidate2 stack. The candidate2 stack needs to judge the newly added path and observe whether it needs to be added to the routing table. This method greatly reduces the deletion of visited nodes and paths.

[0105] It should be noted that the above process is used to ensure that all path nodes can be computed in parallel and that the paths are consistent, thereby simplifying the complexity of the code for solving the problem.

[0106] This embodiment addresses, for example... Figure 4 The paper compares the protection rates of the top-1 paths provided by the following real network topology: Rocketful's six ISPs, and commonly used route protection schemes: Equal Cost Multipath (ECMP), Node Disjoint Multiple Path (NDPA), K-Shortest Path Algorithm (KSP), Loop-Free Backup Algorithm (LFA), and the algorithm described in this invention (JunRPA). The top-1 protection rate is divided into three categories: a protection rate of 0-0.6, a protection rate of 0.6 to 1 (excluding 1), and a 100% protection rate for the top-1 path.

[0107] Experimental results show that, in the six real topologies, the method described in this invention (JunRPA algorithm) provides the highest protection rate for the Top1 path.

[0108] This embodiment addresses, for example... Figure 5 The diagram shows a performance comparison of alternative paths provided by the above-described route protection scheme. Subtracting the delay of the Top 2 path using the method described in this invention from the delay of the Top 2 path using other route protection algorithms, a positive value indicates that our Top 2 path performs better.

[0109] Experimental results show that the method described in this invention outperforms other algorithms except for being slightly inferior to Equivalent Multipath (ECMP). The slight inferiority to ECMP is because the ECMP algorithm only retains paths with performance comparable to Top 1 as candidate paths; therefore, the experimental results are within a reasonable range.

[0110] This document uses specific examples to illustrate the principles and implementation schemes of the present invention. The descriptions of the above embodiments are only for the purpose of helping to understand the method and core ideas of the present invention. Furthermore, those skilled in the art will recognize that, based on the ideas of the present invention, there will be changes in the specific implementation methods and application scope. Therefore, the content of this specification should not be construed as a limitation of the present invention.

Claims

1. A route protection method based on hop count dependency and partial order calculation, characterized in that, Includes the following steps: Obtain the network topology dataset; Obtain all paths between each pair of source and destination nodes, where the paths are either atomic comparison paths or non-atomic comparison paths; In the network topology, any two paths with the same source and destination nodes, if they have no other intersection points besides the source and destination nodes, are the atomic comparison paths. If there are other intersections besides the source node and the destination node, then the two paths are the non-atomic comparison paths; Partial order routing calculations are used to divide the path between each pair of source and destination nodes into a set of incomparable paths and a set of comparable paths; the link attribute set is converted into path attributes. ; in, Representing a path The attributes, Indicates link Attributes, binary expansion operator As an extension of the path as a link attribute; In the full order of the optimal attribute set Modeling on i represents antisymmetric, transitive, and join binary relations on the attribute set, where, and This is a partial order symbol; For two paths and path ,like i , then represents the path In attributes The path is superior to the path That is, the path In attributes inferior path ;like or , then represents the path and path They are comparable; otherwise, the paths are not comparable. and path They are incomparable; at the same time, express and , indicating path Better than path ,path Better path ; The path partitioning is specifically performed using the partial order relationship between routes: In all paths of a pair of source and destination nodes, paths that are not comparable to each other are classified as the set of incomparable paths, and conversely, paths that are comparable to each other are classified as the set of comparable paths. The set of incomparable paths is the set of candidate paths for the Top1 path. The Top1 path is obtained by filtering from the set of incomparable paths according to the actual application purpose. When the Top1 path fails, the alternative path of the Top1 path, namely the Top2 path, is determined. All paths are calculated using a cumulative next-hop approach for each branch node, ensuring consistent forwarding along the Top1 path determined by the source node, or along the Top2 path if the Top1 path fails. Specifically: When calculating the attribute set from the source node to the destination node of the path, if the path branches at an intermediate node and eventually merges at the destination node, the attribute set from the source node to the branch node is recorded at the branch node. Then, starting from the branch node, the local attribute set to the destination node is recalculated, and the attribute set recorded at the branch node is added to the local attribute set. Determine whether the two paths from the bifurcation node are incomparable paths, and determine whether the two paths need to be retained: if the attribute values ​​of the two paths from the source node to the destination node are equal in the attribute set, and one of them is a path in the comparable path set, then the path in the comparable path set will be marked, and when the source node makes a selection later, the unmarked path will be selected as the Top1 path. The alternative path set for the Top 2 path is constructed as follows: The atomic comparison paths in the comparable path set are pruned using the hop count of the non-comparable path set, eliminating paths that cannot become the Top 2 path after the Top 1 path fails; specifically: For two atomic comparison paths of a pair of source and destination nodes If the rules described in the following formula are met, then there is no need to preserve the path. : in, .hop represents a path The number of hops from the source node to the destination node; && is the logical AND operator, indicating that the conditions of the expression must be satisfied simultaneously; `hop == 1` means that the hop count of path u is 1; For a pair of source and destination nodes, three atomic comparison paths: paths belonging to the set of incomparable paths. Paths belonging to either the set of incomparable paths or the set of comparable paths Paths belonging to the comparable path set If the rules described in the following formula are met, then there is no need to preserve the path. : in Representing a path All attributes are superior to path ; Representing a path All attributes are superior to path && is the logical AND operator, indicating that the conditions in the expression must be satisfied simultaneously. .hop represents a path The number of hops from the source node to the destination node; .hop represents a path The number of hops from the source node to the destination node; .hop > 1 indicates a path The number of jumps is greater than 1; .hop > 1 indicates a path The number of jumps is greater than 1; The non-atomic comparison paths in the comparable path set are pruned using the hop count of the non-comparable path set and the intersection set of each path in the comparable path set, eliminating paths that cannot become the second-best path after the first-best path fails; specifically: In the non-atomic comparison path, if two paths , If the rules described in the following formula are satisfied, then the path No need to retain: in, express All attributes are superior to path && is the logical AND operator, indicating that the conditions in the expression must be satisfied simultaneously. hop represents a path The number of hops from the source node to the destination node; . Set cro Representing a path The set of intersection points with other paths that share the same source and destination nodes; Set cro Representing a path The set of intersection points of other paths with the same source and destination nodes; count indicates the number of elements in the set; If three non-atomic comparison paths ,in For the non-comparable paths, if they satisfy the rules described in the following formula, then the path is... No need to retain: in, Representing a path All attributes are superior to path ; Representing a path All attributes are superior to path && is the logical AND operator, indicating that the conditions in the expression must be satisfied simultaneously. Set cro For path The set of intersection points with other paths that share the same source and destination nodes; . Set cro For path The set of intersection points with other paths that share the same source and destination nodes; Set cro For path The set of intersection points with other paths that share the same source and destination nodes; To find the intersection; The symbol for a set represents a membership relation; in, , indicating path For path Provided node protection, path It can also be a path Provide protection for the nodes; Obtain the final set of alternative paths for the Top 2 path.

2. The routing protection method based on hop count dependency and partial order calculation according to claim 1, characterized in that, By using a dual-stack structure, the time complexity of path processing is reduced, resulting in the final set of candidate paths for the Top 1 path and the set of candidate paths for the Top 2 path, specifically: The process begins by visiting nodes in the topology from the source node. These nodes are first placed into a stack named candidate1. Within the candidate1 stack, nodes are then accessed according to their attributes. Sort the nodes, where This represents the selected set of attributes, such that the attributes in the candidate1 stack... The best node is popped from the stack first, if it has multiple attributes. The optimal node is selected based on its attribute. and The best node is popped from the stack first. The node popped from the candidate1 stack will be compared with the node in the candidate2 stack that has the same routing table ID RouterId. The node with the same RouterId will be compared with multiple attributes between paths. If there is no node with the same RouterId, the node will be pushed onto the candidate2 stack. In the dual-stack structure, after a node is popped from the candidate1 stack, it is determined whether the node could become the Top 2 path: if it cannot become the Top 2 path, it is not pushed onto the candidate2 stack, and the next calculation is performed; if it can become the Top 2 path, it is pushed onto the candidate2 stack, and the other adjacent nodes of the node are obtained and visited. The nodes in candidate1 are sorted according to their attribute order.