A backup path deployment method and system for programmable network fault recovery
Generating the optimal backup path through the median center degree and heuristic algorithm, solving the problem of difficulty in generating backup paths under limited resources in the prior art, achieving fast and effective failure recovery, and improving the utilization rate of network storage resources.
Patent Information
- Application Number
- CN202310146858.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-02-22
- Publication Date
- 2025-08-22
- Estimated Expiration
- 2043-02-22
AI Technical Summary
Existing active fault recovery methods are difficult to generate backup paths that meet user requirements under limited network resources, and consume a large amount of switch storage resources, so they cannot effectively support fault recovery of critical switches.
Calculate the importance of the switch through the median center degree, and combine heuristic algorithms to generate the optimal backup path for the critical switch under limited resource conditions, deploying to a programmable computing plane for rapid failure recovery.
Supports as many critical switch failure recovery as possible under limited resources, improves storage resource utilization, meets latency, bandwidth and reliability requirements, and achieves rapid failure recovery.
Smart Images

Figure CN116319621B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of computer network technology, and in particular to a method and system for deploying a backup path for programmable network fault recovery. Background Art
[0002] Network reliability is crucial in a variety of modern network scenarios, including software-defined networking (SDN), data center networking (DCN), 5G, the Industrial Internet, and time-sensitive networking (TSN). SDN's features, such as digital control separation, enable network administrators to better respond to network failures. Common methods can be categorized as reactive and proactive.
[0003] Passive fault recovery utilizes a network controller that periodically collects traffic statistics from switches in the data plane to detect network node or link failures. Upon detecting a failure, the controller generates an alternate path and deploys this alternate path in the data plane to restore transmission. However, due to communication latency between the control and data planes, this approach results in significant fault recovery latency, and a significant number of packets on the failed route may be lost during the recovery process. Given the limitations of passive methods, proactive methods utilize pre-stored alternate paths to achieve fault recovery solely on the data plane. When a switch detects a failure, it immediately forwards the corresponding packets to a pre-stored alternate path, bypassing the failed switch or link. The advent of programmable switches has significantly facilitated the development of proactive fault recovery. Programmable switches can detect network failures in the data plane and embed user-specified alternate path logic in packets, ensuring the reliability and low latency of proactive methods.
[0004] There are still two serious limitations in current active fault recovery methods: (1) Existing methods do not consider how to generate backup paths that meet the required transmission requirements for the entire network under limited network resources, and whether the backup paths can meet the user's requirements for latency, bandwidth, and reliability. (2) Pre-deployment of backup paths consumes a large amount of switch storage resources. The number of backup paths calculated by existing active methods is often surprisingly large. Even for a medium-sized network, such as a fat-tree network with 320 switches and 2048 links, the number of backup paths calculated can reach 10^ 5 The limited storage resources of switches (such as TCAM and SRAM) make it difficult to implement such methods. In particular, TCAM can only store thousands or tens of thousands of rules, which is very limited and expensive in switches. Therefore, reducing the number of backup paths deployed on switches while ensuring backup effectiveness is crucial to conserving switch storage resources.
[0005] Therefore, how to provide a more reliable backup path calculation method for active fault recovery based on existing programmable networks is a research issue with important economic and technical value. Summary of the Invention
[0006] The present invention aims to address the shortcomings of existing technologies by providing a method and system for deploying backup paths for programmable network fault recovery. This method can support fault recovery for as many critical switches as possible within limited resources, while providing a minimum number of backup paths to improve network storage resource utilization, while also meeting user requirements for backup path latency, bandwidth, and reliability.
[0007] The object of the present invention is achieved through the following technical solutions: In a first aspect, an embodiment of the present invention provides a method for deploying a backup path for programmable network fault recovery, comprising the following steps:
[0008] (1) Obtaining switch centrality: Based on the delay and reliability requirements of the source-destination node pair in the network, the betweenness centrality is used to calculate the importance of the switch in the network topology for data transmission in the entire network;
[0009] (2) Obtaining backup path weights: Calculating the network resource consumption of the backup path based on latency, reliability, and bandwidth, and obtaining the backup path weights based on the network resource consumption; wherein the network resource consumption includes carrier consumption, transmission consumption, and backup path consumption;
[0010] (3) Obtaining backup paths: Based on the resources available in the network and the user's requirements for the latency, bandwidth, and reliability of the backup paths, a heuristic algorithm is used to obtain the optimal backup paths for the relevant node pairs of the important switch nodes with a given proportion in the network based on the switch centrality obtained in step (1) and the backup path weights obtained in step (2);
[0011] (4) Deployment of backup paths: The control plane distributes the optimal backup path set obtained in step (3) to the programmable computing plane to complete the deployment of the backup paths.
[0012] Optionally, the betweenness centrality reflects the importance of the switch node as a bridge for network data transmission, and is calculated as follows: based on the requirements for node-to-node latency and reliability in the network, the shortest path calculation method is used to calculate the shortest path between each node, and the proportion of the number of shortest paths passing through each switch node in the total number of shortest paths is calculated.
[0013] Optionally, the carrier source consumption specifically refers to: path resource consumption from the source point to the backup path storage point;
[0014] The transmission consumption specifically refers to: the transmission resource consumption from the fault node notifying the fault message to the backup path storage point;
[0015] The re-forwarding path consumption specifically refers to the path resource consumption from the backup path storage point to the destination node in the backup path.
[0016] Optionally, the reliability is the total transmission reliability of the backup path, which is expressed as:
[0017] Υ(ψ ξ (φ,d))=1-((1-Υ(p(o,ξ)))*(1-Υ(p(ξ,d))))
[0018] Among them, Υ(ψ ξ (φ,d)) represents the total transmission reliability of the backup path, d represents the destination node, φ represents the fault node, o represents the source node, ξ represents the backup path storage point, ψ ξ (φ, d) represents the backup path, p(o, ξ) represents the path from the source point to the backup path storage point, p(ξ, d) represents the path from the backup path storage point to the destination point, Υ(p(o, ξ)) represents the total transmission reliability of the source path, and Υ(p(ξ, d)) represents the total transmission reliability of the path from the backup path storage point to the destination point;
[0019] The delay is the total transmission delay of the backup path, and its expression is:
[0020] L(ψ ξ (φ,d))=L(p(o,ξ))+L(p(ξ,d))+L(p(φ,ξ))
[0021] Among them, L(ψ ξ (φ, d)) represents the total transmission delay of the backup path, p(φ, ξ) represents the path from the faulty node to the backup path storage point, L(p(o, ξ)) represents the total transmission delay of the source path, L(p(φ, ξ)) represents the total transmission delay of the transmission path, and L(p(ξ, d)) represents the total transmission delay of the path from the backup path storage point to the destination point;
[0022] The bandwidth is the total transmission bandwidth of the backup path, and its expression is:
[0023] B(ψ ξ (φ,d))=min{B(p(o,ξ)),B(p(ξ,d))}
[0024] Among them, B(ψ ξ (φ, d)) represents the total transmission bandwidth of the backup path, B(p(o, ξ)) represents the total bandwidth of the source path, and B(p(ξ, d)) represents the total bandwidth of the path from the backup path storage point to the destination point.
[0025] Optionally, step (3) includes the following steps:
[0026] (3.1) Sort the switch centrality obtained in step (1) according to the importance of the switch nodes, select a given proportion of important switch nodes based on the total network resources, and record them as the protection sequence;
[0027] (3.2) Find the set of all shortest paths where the current important switch node is located, and record it as the affected path set;
[0028] (3.3) Traverse the affected path set one by one, and record the switch node that is k hops ahead of the current important switch node in each affected path as the predecessor switch node set;
[0029] (3.4) Delete the current important switch node from the original topology structure, and sequentially find the shortest path from each switch node in the predecessor switch node set to the destination node, which is recorded as the optional backup path set; for each shortest path in the optional backup path set, use it as the current backup path, and obtain the current backup path weight through step (2);
[0030] (3.5) In the same affected path, select the path in the optional backup path set that meets the reliability, delay, and bandwidth requirements of the current node flow and has the lowest resource consumption, and determine it as the optimal backup path for the current affected node pair. Record the corresponding deployment node, optimal backup path, and network resource consumption. Return to step (3.3) to obtain the optimal backup path for the next affected path until the affected path set is traversed.
[0031] (3.6) The deployment node, optimal backup path, and network resource consumption of each node pair in the affected path set corresponding to the current important switch node are stored, and the current total network resource consumption is compared. Return to step (3.1) to obtain the optimal backup path of the next important switch node, until the optimal backup paths of all important switch nodes in the protection sequence are obtained.
[0032] A second aspect of an embodiment of the present invention provides a backup path deployment system for programmable network fault recovery, including:
[0033] The switch centrality acquisition module is used to calculate the importance of switches in the network topology to the data transmission of the entire network using betweenness centrality based on the delay and reliability requirements of the source-destination node pair in the network;
[0034] A backup path weight acquisition module is used to calculate the network resource consumption brought by the backup path based on latency, reliability, and bandwidth, and to obtain the backup path weight based on the network resource consumption; wherein the network resource consumption includes carrier consumption, transmission consumption, and backup path consumption;
[0035] a backup path acquisition module, configured to acquire, based on the available network resources and user requirements for backup path latency, bandwidth, and reliability, the switch centrality acquired by the switch centrality acquisition module and the backup path weight acquired by the backup path weight acquisition module, an optimal backup path for a given proportion of important switch nodes in the network using a heuristic algorithm for their related node pairs; and
[0036] The backup path deployment module is used to control the plane to distribute the optimal backup path set obtained by the backup path acquisition module to the programmable computing plane to complete the deployment of the backup path.
[0037] The beneficial effects of the present invention are as follows: the present invention calculates the importance of switches in the network through the network betweenness centrality, which is directly related to the allocation of priority recovery capabilities of limited resources when a network failure occurs; at the same time, the shortest path of the affected node pairs is determined according to the switch betweenness centrality sorting, and a heuristic algorithm is used to obtain the optimal backup path within polynomial time, thereby optimizing storage resources and forwarding resources to the greatest extent in the control plane, and utilizing its programmability in the data plane to provide rapid and forwarding storage efficient fault recovery; the present invention has a short calculation time, simple deployment, and strong practicality; the present invention can support the fault recovery of as many key switches as possible under limited resource conditions, such as switch storage resource ternary content addressable memory TCAM, link bandwidth, etc., and provide as few backup paths as possible to improve network storage resource utilization, while meeting user requirements for backup path latency, bandwidth, and reliability. BRIEF DESCRIPTION OF THE DRAWINGS
[0038] Figure 1 This is a schematic diagram of a network topology of an active fault recovery method and an embodiment in an SDN network;
[0039] Figure 2 2 is a schematic diagram of the execution result of the backup path calculation in the embodiment. DETAILED DESCRIPTION
[0040] The following will clearly and completely describe the technical solutions in the embodiments of the present invention in conjunction with the accompanying drawings. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without making any creative efforts shall fall within the scope of protection of the present invention.
[0041] The backup path deployment method for programmable network fault recovery of the present invention defines the process of generating backup paths for source-destination node pairs in the network under limited network resources and QoS requirements as a classic mathematical optimization problem. A corresponding optimization model is established for this non-deterministic problem (NP-hard problem) of polynomial complexity through mixed integer linear programming (MILP). In order to solve this problem within a limited time, a heuristic algorithm is used to give priority to switch nodes with higher betweenness centrality, and select backup paths among the optional backup paths that meet the user's requirements for transmission delay, bandwidth, and reliability as much as possible. After all backup paths are obtained, the network configurations corresponding to these paths are sent to the corresponding switches through the control plane. In this way, when a fault occurs, these pre-deployed backup paths will be enabled and normal transmission can be restored.
[0042] In this embodiment, the backup path deployment method includes the following steps:
[0043] (1) Obtaining the switch centrality: Based on the requirements of the delay and reliability of the source-destination node pair in the network, the betweenness centrality is used to calculate the importance of the switch in the network topology to the data transmission of the entire network.
[0044] In this embodiment, betweenness centrality reflects the importance of a switch node as a bridge for network data transmission. It reflects the role and influence of the corresponding node or edge in the entire network. It is calculated by using the shortest path calculation method based on the latency and reliability requirements of the nodes in the network. The ratio of the number of shortest paths passing through each switch node to the total number of shortest paths is calculated as the betweenness centrality. The larger the betweenness centrality, the more important the switch is to network-wide data transmission.
[0045] It should be understood that the shortest path calculation method includes but is not limited to the Dijkstra method, and also includes the Bellman-Ford method, the Floyd method, etc., which are all commonly used shortest path calculation methods.
[0046] For example, Figure 1 Taking the SDN network environment shown in the figure as an example, the betweenness centrality is calculated based on the delay and reliability requirements of the source-destination node pair in the network. The betweenness centrality is used to represent the importance of the switch in the network topology.
[0047] (2) Obtaining backup path weights: Calculate the network resource consumption of the backup path based on latency, reliability, and bandwidth, and obtain the backup path weights based on the network resource consumption. Network resource consumption includes carrier consumption, transmission consumption, and retransmission path consumption.
[0048] Specifically, the backup path storage point is recorded as the deployment node of the backup path, that is, the switch node that replaces the failed node to perform the next forwarding operation. ξ The weight calculation of (φ, d) needs to consider the following three costs simultaneously:
[0049] ① Source consumption: the path resource consumption from the source point o to the backup path storage point ξ.
[0050] ② Transmission consumption: The transmission resource consumption from the fault message notification of the fault node φ to the backup path storage point ξ.
[0051] ③ Re-forwarding path consumption: the path resource consumption from the backup path storage point ξ to the destination node d in the backup path.
[0052] In this embodiment, the resource weight required to calculate a backup path must take into account multiple factors, including transmission delay, reliability, and bandwidth. The overall transmission reliability of the path affects the likelihood that packets transmitted along the backup path will arrive safely, further impacting network reliability after adopting the backup path. Transmission delay affects the time it takes for packets forwarded along the backup path to reach their destination. Transmission bandwidth reflects the maximum number of packets that the backup path can simultaneously handle, impacting network load.
[0053] The expressions for the total transmission reliability, total transmission delay, and total transmission bandwidth of the backup path are:
[0054] Y(ψ ξ (φ,d))=1-((1-Y(p(o,ξ)))*(1-Y(p(ξ,d)))) (1)
[0055] L(ψ ξ (φ,d))=L(p(o,ξ))+L(p(ξ,d))+L(p(φ,ξ)) (2)
[0056] B(ψ ξ (φ,d))=min{B(p(o,ξ)),B(p(ξ,d))} (3)
[0057] Among them, o represents the source node, ξ represents the backup path storage point, d represents the destination node, φ represents the fault node, ψ ξ (φ, d) represents the backup path; p(a, b) represents the path from point a to point b, which contains multiple switches and connection links, so p(o, ξ) represents the path from the source point to the backup path storage point, p(φ, ξ) represents the path from the faulty node to the backup path storage point, and p(ξ, d) represents the path from the backup path storage point to the destination point; Υ(p(a, b)) represents the total transmission reliability of the path from point a to point b, so Υ(ψξ (φ, d)) represents the total transmission reliability of the backup path, which is calculated by the total transmission reliability of the source path Υ(p(o, ξ)) and the total transmission reliability of the backup path Υ(p(ξ, d)) through expression (1); L(p(a, b)) represents the total transmission delay of the path from point a to point b, so L(ψ ξ (φ, d)) represents the total transmission delay of the backup path, which is calculated by the total transmission delay of the source path L(p(o, ξ)), the total transmission delay of the transmission path L(p(φ, ξ)), and the total transmission delay of the backup path L(p(ξ, d)) through expression (2); B(p(a, b)) represents the total transmission bandwidth of the path from point a to point b, so B(ψ ξ (φ, d)) represents the total transmission bandwidth of the backup path, which is calculated by the total bandwidth of the source path B(p(o, ξ)) and the total bandwidth of the backup path B(p(ξ, d)) through expression (3).
[0058] In this embodiment, three network resource consumptions are calculated using the above network resource consumption expressions, and the backup path weights are obtained based on the three network resource consumptions. It should be understood that the backup path weight is a set that includes the weight values of the three network resource consumptions.
[0059] (3) Obtaining backup paths: Based on the resources available in the network and the user's requirements for the latency, bandwidth, and reliability of the backup paths, a heuristic algorithm is used to obtain the optimal backup paths for the relevant node pairs of important switch nodes with a given proportion in the network based on the switch centrality obtained in step (1) and the backup path weight obtained in step (2).
[0060] It should be understood that heuristic algorithms are proposed in contrast to optimization algorithms. An optimal algorithm for a problem finds the optimal solution for each instance of that problem. A heuristic algorithm can be defined as follows: an algorithm based on intuition or experience that, at an acceptable cost (in terms of computational time and space), produces a feasible solution for each instance of the combinatorial optimization problem to be solved. The degree to which this feasible solution deviates from the optimal solution is generally unpredictable.
[0061] (3.1) Sort the switch centrality obtained in step (1) according to the importance of the switch nodes, and select a given proportion of important switch nodes based on the total network resources, which are recorded as the protection sequence.
[0062] It should be understood that the total network resource situation refers to the resource situation that the network can provide, and a certain proportion of important switch nodes are selected according to specific actual conditions to perform subsequent operations.
[0063] For example, the switch centrality obtained in step (1) is sorted according to the importance of the switch nodes, and different proportions of important nodes are selected as the protection sequence according to the total network resources. α = [7, 1, 4, 2, 6], traverse the important switch nodes in the sequence one by one, take switch s4 as an example, and take switch s4 as the current important switch node for subsequent operations, such as Figure 1 shown.
[0064] (3.2) Find the set of all shortest paths where the current important switch node is located, and record it as the affected path set.
[0065] It should be understood that the set of all node pairs affected by the failure of the current important switch node, that is, the set of all shortest paths where the current important switch node is located, is the affected path set to be found.
[0066] For example, the current important switch node is switch s4. The paths affected by the failure of switch s4 include h1→s1→s2→s4→s6→h4, h2→s1→s2→s4→s6→h4, etc. These paths are grouped into a set, which is the affected path set.
[0067] (3.3) Traverse the affected path set one by one, and record the switch nodes that are k hops ahead of the current important switch node in each affected path as the predecessor switch node set.
[0068] Exemplarily, the affected path sets are traversed one by one, and in each affected path, switch nodes that are k=2 hops ahead of the current important node are selected as the predecessor switch node set P={s2, s1}.
[0069] (3.4) Delete the current important switch node in the original topology structure, and find the shortest path from each switch node in the predecessor switch node set to the destination node in turn, which is recorded as the optional backup path set; for each shortest path in the optional backup path set, use it as the current backup path, and obtain the current backup path weight through step (2).
[0070] It should be understood that the current backup path weight includes three items: carrier consumption, transmission consumption, and backup path consumption. The combination of the three network resource consumption items is the routing cost of the current backup path.
[0071] In this embodiment, the current important switch node is deleted from the original topology structure to form a topology diagram after a hypothetical failure. In the topology diagram after the failure, the shortest path from each switch node in the predecessor switch node set to the destination node is sequentially found and recorded as a set of optional backup paths.
[0072] For example, Figure 2As shown in Figure 2, let the current affected path be h1→s1→s2→s4→s6→h4, traverse the predecessor switch node set s1 and s2, find the optional backup path that can reach the destination node, and calculate the routing cost of the optional backup path. Among them, s2→s3→s5→s7→s6→h4 starting from s2: p(o,ξ):h1→s1→s2, p(ξ,d):s2→s3→s5→s7→s6→h4, which does not include transmission cost, so its routing cost is: Υ(ψ ξ (φ,d))=1-((1-Υ(p(o,ξ)))*(1-Υ(p(ξ,d)))), L(ψ ξ (φ,d))=L(p(o,ξ))+L(p(φ,ξ)), B(ψ ξ (φ, d))=min{B(p(o, ξ)),B(p(ξ, d))};and h1→s1→s3→s5→s7→s6→h4 starting from s1, then p(o, ξ):h1→s1, p(ξ, d):s1→s3→s5→s7→s6→h4, and including the fault transmission consumption p(φ, ξ):s2→s1 from s2 to s1, its routing cost is: Υ(ψ ξ (φ,d))=1-((1-Υ(p(o,ξ)))*(1-Υ(p(ξ,d)))), L(ψ ξ (φ,d))=L(p(o,ξ))+L(p(ξ,d))+L(p(φ,ξ)), B(ψ ξ (φ,d))=min{B(p(o,ξ)),B(p(ξ,d))}.
[0073] (3.5) In the same affected path, select the path in the optional backup path set that meets the reliability, latency, and bandwidth requirements of the current node flow and has the lowest resource consumption, and determine it as the optimal backup path for the current affected node pair. Record the corresponding deployment node, optimal backup path, and network resource consumption. Return to step (3.3) to obtain the optimal backup path for the next affected path until the affected path set is traversed.
[0074] In this embodiment, the routing overheads of the optional backup paths are compared. For the same affected path, the predecessor node backup path that meets the reliability, latency, bandwidth requirements and minimizes resource consumption is selected and recommended as the optimal backup path for the currently affected node pair. The corresponding deployment node, optimal backup path, and network resource consumption are recorded.
[0075] For example, the routing costs of two optional backup paths are compared. For the same affected path, if s2 is selected to repair this path, the deployment node is recorded as s2, the backup path is s2→s4→s6→h4, and the network resource consumption is {Υ(ψξ (φ,d)),L(ψ ξ (φ,d)),B(ψ ξ (φ,d)), and then continue to calculate the backup path situation of the next affected path.
[0076] (3.6) Store the deployment nodes, optimal backup paths, and network resource consumption of each node pair in the affected path set corresponding to the current important switch node, and compare them with the current total network resource consumption. Return to step (3.1) to obtain the optimal backup path of the next important switch node, until the optimal backup paths of all important switch nodes in the protection sequence are obtained.
[0077] (4) Deployment of backup paths: The control plane distributes the optimal backup path set obtained in step (3) to the programmable computing plane to complete the deployment of the backup paths.
[0078] In this embodiment, the control plane distributes the optimal backup path set obtained in step (3) to the programmable computing plane to complete the deployment of the backup paths. The forwarding backup paths that the current node should be responsible for are stored at the deployment node, and can be quickly loaded when a failure occurs to perform network rerouting. These pre-deployed backup paths will be enabled, and then the failure recovery will be completed to restore normal transmission.
[0079] Exemplarily, the optimal backup path set obtained by the above calculation is distributed to the programmable computing plane, and the forwarding backup path that the current node should be responsible for is stored at the deployment node. When a fault occurs, it is quickly loaded to perform network rerouting, thereby completing fault recovery.
[0080] It is worth mentioning that the present invention also provides a backup path deployment system for programmable network fault recovery, which includes a switch centrality acquisition module, a backup path weight acquisition module, a backup path acquisition module and a backup path deployment module.
[0081] In this embodiment, the switch centrality acquisition module is used to calculate the importance of switches in the network topology to the entire network data transmission using betweenness centrality according to the requirements of the source-destination node pair delay and reliability in the network.
[0082] In this embodiment, the backup path weight acquisition module is used to calculate the network resource consumption brought by the backup path based on latency, reliability, and bandwidth, and obtain the backup path weight based on the network resource consumption; wherein, the network resource consumption includes carrier consumption, transmission consumption, and backup path consumption.
[0083] In this embodiment, the backup path acquisition module is used to use a heuristic algorithm to obtain the optimal backup path for the relevant node pairs of important switch nodes with a given proportion in the network based on the switch centrality obtained by the switch centrality acquisition module and the backup path weight obtained by the backup path weight acquisition module, according to the resources available in the network and the user's requirements for the latency, bandwidth, and reliability of the backup path.
[0084] In this embodiment, the backup path deployment module is used to control the plane to distribute the optimal backup path set obtained by the backup path acquisition module to the programmable computing plane to complete the deployment of the backup paths.
[0085] The above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit the same. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the various embodiments of the present invention.
Claims
1. A method for deploying a backup path for programmable network fault recovery, characterized in that: The following steps are involved: (1) Obtaining switch centrality: Based on the delay and reliability requirements of the source-destination node pair in the network, the betweenness centrality is used to calculate the importance of the switch in the network topology for data transmission in the entire network; (2) Obtaining backup path weights: Calculating the network resource consumption of the backup path based on latency, reliability, and bandwidth, and obtaining the backup path weights based on the network resource consumption; wherein the network resource consumption includes carrier consumption, transmission consumption, and backup path consumption; (3) Obtaining backup paths: Based on the resources available in the network and the user's requirements for the latency, bandwidth, and reliability of the backup paths, a heuristic algorithm is used to obtain the optimal backup paths for the relevant node pairs of the important switch nodes with a given proportion in the network based on the switch centrality obtained in step (1) and the backup path weights obtained in step (2); (4) Deployment of backup paths: The control plane distributes the optimal backup path set obtained in step (3) to the programmable computing plane to complete the deployment of the backup paths.
2. The method for deploying a backup path for programmable network fault recovery according to claim 1, characterized in that: The betweenness centrality reflects the importance of the switch node as a bridge for network data transmission. It is calculated as follows: based on the latency and reliability requirements of the nodes in the network, the shortest path calculation method is used to calculate the shortest path between each node. The proportion of all shortest paths passing through each switch node is calculated.
3. The method for deploying a backup path for programmable network fault recovery according to claim 1, wherein: The carrier source consumption specifically refers to: the path resource consumption from the source point to the backup path storage point; The transmission consumption specifically refers to: the transmission resource consumption from the fault node notifying the fault message to the backup path storage point; The backup path consumption specifically refers to the path resource consumption from the backup path storage point to the destination node in the backup path.
4. The method for deploying a backup path for programmable network fault recovery according to claim 1, wherein: The reliability is the total transmission reliability of the backup path, which is expressed as: Y(ψ ξ (φ,d))=1-((1-Y(p(o,ξ)))*(1-Y(p(ξ,d)))) Among them, Υ(ψ ξ (φ,d)) represents the total transmission reliability of the backup path, d represents the destination node, φ represents the fault node, o represents the source node, ξ represents the backup path storage point, ψ ξ (φ, d) represents the backup path, p(o, ξ) represents the path from the source point to the backup path storage point, p(ξ, d) represents the path from the backup path storage point to the destination point, Υ(p(o, ξ)) represents the total transmission reliability of the source path, and Υ(p(ξ, d)) represents the total transmission reliability of the path from the backup path storage point to the destination point; The delay is the total transmission delay of the backup path, and its expression is: L(ψ ξ (φ,d))=L(p(o,ξ))+L(p(ξ,d))+L(p(φ,ξ)) Among them, L(ψ ξ (φ, d)) represents the total transmission delay of the backup path, p(φ, ξ) represents the path from the faulty node to the backup path storage point, L(p(o, ξ)) represents the total transmission delay of the source path, L(p(φ, ξ)) represents the total transmission delay of the transmission path, and L(p(ξ, d)) represents the total transmission delay of the path from the backup path storage point to the destination point; The bandwidth is the total transmission bandwidth of the backup path, and its expression is: B(ψ ξ (φ,d))=min{B(p(o,ξ)),B(p(ξ,d))} Among them, B(ψ ξ (φ, d)) represents the total transmission bandwidth of the backup path, B(p(o, ξ)) represents the total bandwidth of the source path, and B(p(ξ, d)) represents the total bandwidth of the path from the backup path storage point to the destination point.
5. The method for deploying a backup path for programmable network fault recovery according to claim 1, wherein: The step (3) comprises the following steps: (3.1) Sort the switch centrality obtained in step (1) according to the importance of the switch nodes, select a given proportion of important switch nodes based on the total network resources, and record them as the protection sequence; (3.2) Find the set of all shortest paths where the current important switch node is located, and record it as the affected path set; (3.3) Traverse the affected path set one by one, and record the switch node that is k hops ahead of the current important switch node in each affected path as the predecessor switch node set; (3.4) Delete the current important switch node from the original topology structure, and sequentially find the shortest path from each switch node in the predecessor switch node set to the destination node, which is recorded as the optional backup path set; for each shortest path in the optional backup path set, use it as the current backup path, and obtain the current backup path weight through step (2); (3.5) In the same affected path, select the path in the optional backup path set that meets the reliability, delay, and bandwidth requirements of the current node flow and has the lowest resource consumption, and determine it as the optimal backup path for the current affected node pair. Record the corresponding deployment node, optimal backup path, and network resource consumption. Return to step (3.3) to obtain the optimal backup path for the next affected path until the affected path set is traversed. (3.6) The deployment node, optimal backup path, and network resource consumption of each node pair in the affected path set corresponding to the current important switch node are stored, and the current total network resource consumption is compared. Return to step (3.1) to obtain the optimal backup path of the next important switch node, until the optimal backup paths of all important switch nodes in the protection sequence are obtained.
6. A backup path deployment system for programmable network fault recovery, characterized in that: include: The switch centrality acquisition module is used to calculate the importance of switches in the network topology to the data transmission of the entire network using betweenness centrality based on the delay and reliability requirements of the source-destination node pair in the network; A backup path weight acquisition module is used to calculate the network resource consumption brought by the backup path based on latency, reliability, and bandwidth, and to obtain the backup path weight based on the network resource consumption; wherein the network resource consumption includes carrier consumption, transmission consumption, and backup path consumption; A backup path acquisition module, configured to use a heuristic algorithm to acquire the optimal backup paths for relevant node pairs of important switch nodes at a given ratio in the network, based on the switch centrality acquired by the switch centrality acquisition module and the backup path weight acquired by the backup path weight acquisition module, according to the resources available in the network and the user's requirements for backup path latency, bandwidth, and reliability; and The backup path deployment module is used to control the plane to distribute the optimal backup path set obtained by the backup path acquisition module to the programmable computing plane to complete the deployment of the backup path.
Citation Information
Patent Citations
Method and system for dynamically adjusting topological structures of underlying network spanning trees
CN105553855A
Optimal path selection method in multi-path transmission
CN107135158A