A fault-tolerant routing algorithm based on 1 extra-connectivity condition
By employing a fault-tolerant routing algorithm based on 1 additional connectivity condition, the network fault tolerance problem caused by processor failure in data center networks is solved. This algorithm enables the rapid finding of fault-free paths, improves network stability and fault tolerance, and ensures network continuity and normal operation.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- HENAN UNIVERSITY
- Filing Date
- 2023-08-16
- Publication Date
- 2026-05-29
AI Technical Summary
In existing technologies, network fault tolerance issues caused by processor failures, especially in data center networks, are problems that existing technologies cannot effectively solve, particularly how to achieve network connectivity and stability under certain circumstances.
By introducing a fault-tolerant routing algorithm based on 1 additional connectivity condition, the path between the starting vertex and the destination vertex is determined. The path sequence and method are used to solve this problem. The total path is obtained by determining whether subgraph MBαn and subgraph MBβn are the same subgraph and calling the corresponding method.
In the event of a processor failure, it can quickly find any two fault-free paths, thereby improving network stability and fault tolerance, and ensuring network continuity and normal operation.
Smart Images

Figure CN116846820B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of data center network fault tolerance technology, specifically to a fault-tolerant routing algorithm based on 1 additional connectivity condition. Background Technology
[0002] As the number of processors in a network increases, the probability of processor failure also increases. When a processor fails, whether certain characteristics of the network can be maintained depends on the network's fault tolerance, a key indicator of the quality of an interconnected network. In recent years, the fault tolerance problem of interconnected networks has been a hot research topic. Vertex connectivity is an important parameter for measuring network fault tolerance. Furthermore, in networks where connectivity remains even after a processor fails and is removed, how fault-free processors route to each other is a crucial issue to consider when studying the network's fault tolerance; this problem is called the fault-tolerant routing problem. However, using vertex connectivity alone to measure a network's fault tolerance has limitations. For example, for some common network structures, their vertex connectivity is at most the minimum number of neighbors of all vertices in the network. In this case, the probability of all neighbors of a vertex failing simultaneously is extremely small, especially when the size of G is large enough, the probability of this happening approaches zero. Therefore, traditional vertex connectivity cannot accurately measure the fault tolerance of practical interconnected networks. Summary of the Invention
[0003] The summary section of this invention provides a brief overview of the concepts, which will be described in detail in the detailed description section that follows. This summary section is not intended to identify key or essential features of the claimed invention, nor is it intended to limit the scope of the claimed invention.
[0004] To address the problem of fault-tolerant routing, this invention proposes a fault-tolerant routing algorithm based on the condition of 1 additional connectivity.
[0005] This invention provides a fault-tolerant routing algorithm based on a 1-additional-connectivity condition, the algorithm comprising:
[0006] Determine the starting vertex x and the destination vertex y, and determine the subgraph MB. α n Hezitu MB β n Are they the same subgraph, where the starting vertex x is located in subgraph MB? α n In the graph MB, the target vertex y is located in the subgraph MB. β n middle;
[0007] If α ≠ β, then determine |F α |、|Fβ | and κ(MB n The size relationship of the total path is determined, and the corresponding method is called to obtain the total path under the corresponding conditions. The total path is a path composed of fault-free paths. The starting point of the total path is the starting vertex x, and the ending point of the total path is the destination vertex y.
[0008] If α = β, then determine |F α=β | and κ(MB n Determine the size relationship of the path and call the corresponding method to obtain the total path under the corresponding conditions.
[0009] Optionally, the judgment |F α |、|F β | and κ(MB n The size relationship is determined, and the corresponding method is called to obtain the total path under the corresponding conditions, including:
[0010] If |F α |≥κ(MB n If the starting vertex x is obtained from the subgraph MB by calling the PATHSEQ method, then... α n arrived at G-MB α n Find the fault-free path P1 for any vertex z1 in the subgraph G-MB; if the destination vertex y is vertex z1, then the total path is P1; if the destination vertex y is not vertex z1, then call the MBVP method to obtain the path in the subgraph G-MB. α The fault-free path P2 from vertex z1 in n to the destination vertex y is obtained; the total path is (P1, P2);
[0011] If |F β |≥κ(MB n If the target vertex y is obtained from the subgraph MB by calling the PATHSEQ method, then the PATHSEQ method will be called. β n Arrive at G-MB β n Find the fault-free path P1 for any vertex z2 in the subgraph G-MB; if the starting vertex x is vertex z2, then the total path is P1; if the starting vertex x is not vertex z2, then call the MBVP method to obtain the path in the subgraph G-MB. β The fault-free path P2 from vertex x to vertex z2 in n is obtained; the total path is (P2, P1) -1 ), where P1 -1 This is the path in the opposite direction to P1;
[0012] If |F α |<κ(MB n And |F β |<κ(MB n If the starting vertex x is obtained from the subgraph MB by calling the PATHSEQ method, then... αn arrived at MB β n Find the fault-free path P1 for any vertex z3 in the subgraph; if the destination vertex y is vertex z3, then the total path is P1; if the destination vertex y is not vertex z3, then call the MBVP method to obtain the path in the subgraph MB. β n The fault-free path P2 from the middle vertex z3 to the destination vertex y is obtained; the total path is (P1, P2).
[0013] Optionally, the judgment |F α=β | and κ(MB n The size relationship is determined, and the corresponding method is called to obtain the total path under the corresponding conditions, including:
[0014] If |F α=β |<κ(MB n If MBVP is called, then the result in the subgraph MB is obtained. α Find the fault-free path P from the starting vertex x to the destination vertex y in n, and use the fault-free path P as the total path.
[0015] If |F α=β |≥κ(MB n Then, calling PATHSEQ will retrieve the starting vertex x from the subgraph MB. α n arrived at G-MB α n Find the fault-free path P1 from any vertex s in the subgraph MB; call PATHSEQ to obtain the destination vertex y from the subgraph MB. β n Arrive at G-MB β n Given any vertex h, find a fault-free path P2; if P1 and P2 share a common vertex, let the first common vertex be vertex z, and the total path is (Path(P1, x, z), Path(P2)). -1 If P1 and P2 do not share a common vertex, then call MBVP to obtain the result in the subgraph G-MB. α n The fault-free path P3 from vertex s to vertex h yields the total path (P1, P3, P2). -1 ).
[0016] The present invention has the following beneficial effects:
[0017] This invention enables the rapid finding of a fault-free path between any two fault-free vertices even when some vertices are faulty, improving network stability and fault tolerance, and ensuring network continuity and normal operation. Modified bubble sort networks have broad application prospects in data centers and high-performance computing, exhibiting good network performance and reliability, and are easy to implement and maintain. Modified bubble sort networks are a network topology with excellent locality, where only short-distance links exist between nodes, thus effectively reducing network latency. It has multiple parallel links, enabling simultaneous processing of multiple data streams, resulting in high bandwidth and throughput. Modified bubble sort networks are easy to implement and deploy, effectively reducing network construction and maintenance costs, and its flexible topology allows for expansion and adjustment as needed, exhibiting good scalability. Traditional vertex connectivity cannot effectively measure the fault tolerance of actual interconnected networks. To address this issue, F'abrega and Fiol defined g-extra connectivity based on the concept of conditional connectivity. This requires that after removing faulty vertices from the network, each remaining branch contains at least g+1 fault-free vertices. Attached Figure Description
[0018] To more clearly illustrate the technical solutions and advantages in the embodiments of the present invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0019] Figure 1 This is a flowchart of a fault-tolerant routing algorithm based on 1 additional connectivity condition according to the present invention;
[0020] Figure 2 This is another flowchart of the present invention;
[0021] Figure 3 This is a schematic diagram of the modified bubble sort network MB4 structure of the present invention. Detailed Implementation
[0022] To further illustrate the technical means and effects adopted by the present invention to achieve its intended purpose, the specific implementation methods, structures, features, and effects of the technical solution proposed according to the present invention are described in detail below with reference to the accompanying drawings and preferred embodiments. In the following description, different "one embodiment" or "another embodiment" do not necessarily refer to the same embodiment. Furthermore, specific features, structures, or characteristics in one or more embodiments can be combined in any suitable form.
[0023] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention pertains.
[0024] This invention provides a fault-tolerant routing algorithm based on 1 additional connectivity condition, the algorithm comprising the following steps:
[0025] The vertex connectivity of a graph G is the minimum number of vertices that need to be removed to make G a disconnected or trivial graph, denoted by κ(G). Let MB j n For the set of vertices {u n u n-1 The subgraph derived from ...u2j}, where j∈ <n>{0};MB J n For ∪ j∈J V(MB j n The subgraph derived from ) where For any set of vertices Let F j =F∩V(MB) j n ), F J =∪ j∈J F j , |F J |For set F J The number of items in the list.
[0026] Determine the starting vertex x and the destination vertex y, and determine the subgraph MB. α n Hezitu MB β n Are they the same subgraph?
[0027] If α ≠ β, then determine |F α |、|F β | and κ(MB n Determine the size relationship of the paths and call the corresponding methods to obtain the total path under the corresponding conditions;
[0028] If α = β, then determine |F α=β | and κ(MB n Determine the size relationship of the path and call the corresponding method to obtain the total path under the corresponding conditions.
[0029] The following is a detailed explanation of each of the above steps:
[0030] refer to Figure 1 This document illustrates the flowchart of some embodiments of a fault-tolerant routing algorithm based on 1 additional connectivity condition according to the present invention. The fault-tolerant routing algorithm based on 1 additional connectivity condition includes the following steps:
[0031] Step S1: Determine the starting vertex x and the destination vertex y, and determine the subgraph MB. α n Hezitu MB β n Are they the same subgraph?
[0032] In some embodiments, the starting vertex x and the destination vertex y can be determined to determine the subgraph MB. α n Hezitu MB β n Are they the same subgraph?
[0033] Where the starting vertex x is located in the subgraph MB α n In the middle. The target vertex y is located in the subgraph MB. β n middle.
[0034] As an example, we can determine the starting vertex x and the destination vertex y, where the starting vertex x is located in the subgraph MB. α n The target vertex y is located in the subgraph MB. β n In the middle. Determine MB. α n and MB β n To determine if they are the same subgraph, if α ≠ β, proceed to step S2; otherwise, if α = β, proceed to step S3.
[0035] Another flowchart of the present invention can be as follows: Figure 2 As shown, taking the modified bubble sort network as an example, when n=4, the modified bubble sort network structure can be as follows: Figure 3 As shown.
[0036] Step S2, if α≠β, then determine |F α |、|F β | and κ(MB n Determine the size relationship of the path and call the corresponding method to obtain the total path under the corresponding conditions.
[0037] In some embodiments, if α ≠ β, then |F α |、|F β | and κ(MB n Determine the size relationship of the path and call the corresponding method to obtain the total path under the corresponding conditions.
[0038] The total path is a path composed of fault-free vertices. The starting point of the total path is the starting vertex x, and the ending point of the total path is the destination vertex y.
[0039] As an example, if α ≠ β, then determine |F α |、|F β | and κ(MB n The process of determining the size relationship between different elements and then using different methods to obtain paths under various conditions can include the following steps:
[0040] First step, if |F α |≥κ(MB n If the starting vertex x is obtained from the subgraph MB by calling the PATHSEQ method, then... α n arrived at G-MB α n Find the fault-free path P1 for any vertex z1 in the subgraph G-MB. If the destination vertex y is vertex z1, then the total path is P1; if the destination vertex y is not vertex z1, then call the MBVP method to obtain the path in the subgraph G-MB. α The fault-free path P2 from vertex z1 in n to the destination vertex y is obtained. Therefore, the total path is (P1, P2).
[0041] Step 2, if |F β |≥κ(MB n If the target vertex y is obtained from the subgraph MB by calling the PATHSEQ method, then the PATHSEQ method will be called. β n Arrive at G-MB β n Find the fault-free path P1 for any vertex z2 in the subgraph G-MB. If the starting vertex x is vertex z2, then the total path is P1; if the starting vertex x is not vertex z2, then call the MBVP method to obtain the path in the subgraph G-MB. β The fault-free path P2 from vertex x to vertex z2 in n is obtained. Therefore, the total path is (P2, P1) -1 ), where P1 -1 This is the path in the opposite direction of P1, that is, the path from vertex z to vertex y.
[0042] Third step, if |F α |<κ(MB n And |F β |<κ(MB n ), that is, |F α |<κ(MB n )&&|F β |<κ(MB n If the starting vertex x is obtained from the subgraph MB by calling the PATHSEQ method, then... α n arrived at MB β n Find the fault-free path P1 for any vertex z3 in the subgraph. If the destination vertex y is vertex z3, then the total path is P1; if the destination vertex y is not vertex z3, then call the MBVP method to obtain the path in the subgraph MB. β n The fault-free path P2 leads from the middle vertex z3 to the destination vertex y. Therefore, the total path is (P1, P2).
[0043] Step S3, if α = β, then determine |F α=β | and κ(MB n Determine the size relationship of the path and call the corresponding method to obtain the total path under the corresponding conditions.
[0044] In some embodiments, if α = β, then |F α=β | and κ(MB n Determine the size relationship of the path and call the corresponding method to obtain the total path under the corresponding conditions.
[0045] As an example, if α = β, then determine whether |F α=β | and κ(MB n The process of determining the size relationship between different elements and then using different methods to obtain paths under various conditions can include the following steps:
[0046] First step, if |F α=β |<κ(MB n If MBVP is called, then the result in the subgraph MB is obtained. α Find the fault-free path P from the starting vertex x to the destination vertex y in n, and use the fault-free path P as the total path.
[0047] Step 2, if |F α=β |≥κ(MB n Then, calling PATHSEQ will retrieve the starting vertex x from the subgraph MB. α n arrived at G-MB α n Find the fault-free path P1 from any vertex s in the subgraph. Then call PATHSEQ to obtain the destination vertex y from the subgraph MB. β n Arrive at G-MB β n Given any vertex h in the graph, find a fault-free path P2. If P1 and P2 share a common vertex, let the first common vertex be vertex z. Therefore, the total path is (Path(P1, x, z), Path(P2)). -1 , z, y), where Path(P1, x, z) is the path from vertex x to vertex z in path P1, Path(P2, y) is the path from vertex x to vertex z in path P1, and Path(P2, y) is the path from vertex x to vertex z in path P1. -1 (z, y) is the path P2 -1 Find the path from vertex z to vertex y in the subgraph G-MB. If P1 and P2 have no common vertices, call MBVP to obtain the path in the subgraph G-MB. α n The fault-free path P3 from vertex s to vertex h is obtained, therefore the total path is (P1, P3, P2). -1 ).
[0048] This allows us to find a fault-free path between any two fault-free vertices in each branch. The entire method is named MBEVP, and the corresponding pseudocode is shown in Table 1.
[0049] Table 1
[0050]
[0051]
[0052] The pseudocode corresponding to PATHSEQ is shown in Table 2.
[0053] Table 2
[0054]
[0055]
[0056] The pseudocode for MBVP is shown in Table 3.
[0057] Table 3
[0058]
[0059] It should be noted that before analyzing the time complexity of MBEVP, we first analyze the time complexity of the functions PATHSEQ(x, F, H1, H2) and MBVP(x, y, G, F). For the function PATHSEQ(x, F, H1, H2), H1 and H2 are two subgraphs of G, and x is in subgraph H1. Depending on the situation, this function may provide a path from x to subgraph H2: (x, x1), (x, x2, x3), or (x, x1, x2, x3). The time complexity of PATHSEQ under different conditions is as follows:
[0060] Case 1: The resulting path is (x, x1). If Then the function starts from (N) G Choose a vertex x1 from (x)∩V(H2))\F and return the path (x, x1). The time complexity in this case is O(1).
[0061] Case 2, the resulting path is (x, x2, x3). This function first iterates through the set (N... G Let (x)∩V(H1))\F, and let each vertex in the set be x2. Then, from (N) G Choose a vertex x3 from (x)∩V(H2))\F, and finally return the path (x, x2, x3). The time complexity in this case is O(|N) G (x)∩V(H1)|)≤O(n).
[0062] Case 3 yields a path of (x, x1, x2, x3). In this case, the function first starts from (N... G Choose a vertex x1 from (x)∩V(H1))\F, and take the set S←(N) G (x1∩V(H1))\(F∪N G (x)∩V(H1)). The time complexity of this process is O(1). Then the function will traverse set S, letting x2 be any vertex in set S. Then from (N G Choose a vertex x3 from (x2)∩V(H2))\F, and finally return the path (x, x1, x2, x3). The time complexity of this case is O(|S|)≤O(n).
[0063] Combining cases 1, 2, and 3, we can obtain that the time complexity of the function PATHSEQ(x, F, H1, H2) is O(n).
[0064] Next, we analyze the time complexity of the function MBVP(x, y, G, F). This function first calls the function BuildPathSet(MB... n Given a vector (x, y), find n disjoint paths between x and y in the region GF. The time complexity of this process is O(n^2). 3 The function MBVP then iterates through these disjoint paths to find a fault-free path. Determining whether a path is fault-free requires checking if each vertex in the path is in the fault set F. The time complexity of this process is O(n). Since BuildPathSet returns n paths, this check is performed at most n times. Therefore, finding a fault-free path has a time complexity of O(n^2). 3 )×O(n)=O(n 4 ).
[0065] Finally, the time complexity of MBEVP is analyzed. The time complexity of MBEVP in the two cases of α≠β and α=β is as follows:
[0066] Case 1, when α ≠ β, can include the following 3 sub-cases:
[0067] Sub-case 1, when |F α |≥κ(MB n When MBEVP first passes through PATHSEQ(x, F, MB), it first... α n, G-MB α n) Obtain a path from u to G-MB α The process of finding P1 for vertex z in n has a time complexity of O(n). Then, if z = y, MBEVP returns P1. Therefore, the time complexity of obtaining a fault-free path P1 for x and y in GF is O(n). If z ≠ y, MBEVP returns the path (P1, MBVP(z, y, G-MB)). α n, F\F α This process requires first calling the function MBVP(z, y, G-MB). α n, F\F α Constructing a fault-free path has a time complexity of O(n^2). 4 Then concatenate P1 with the above MBVP(z, y, G-MB). α n, F\F α The time complexity of constructing the fault-free path for x and y in GF is O(1). Therefore, the time complexity of obtaining the fault-free path for x and y in GF is O(n) + O(n^2). 4 )+O(1)≤O(n 4 ).
[0068] Sub-case 2, when |F β |≥κ(MB n When ), similar to the discussion in sub-case 1 included in case 1, the time complexity of obtaining the fault-free path of x and y in GF is O(n^2). 4 ).
[0069] Sub-case 3, when |F α |<κ(MB n )&&|F β |<κ(MB n When ), similar to the discussion in sub-case 1 included in case 1, the time complexity of obtaining the fault-free path of x and y in GF is O(n^2). 4 ).
[0070] Case 2, when α = β, can include the following two sub-cases:
[0071] Sub-case 1, when |F α |<κ(MB n When ), MBEVP will directly call the algorithm MBVP(x, y, MB) α n, F α If a fault-free path is constructed, the time complexity of this process is O(n^2). 4 ).
[0072] Sub-case 2, when |F α |≥κ(MB n When ), MBEVP will first call the function PATHSEQ to obtain a path from x to the subgraph G-MB. α The fault-free path P1 in n to s, and a path from y to subgraph G-MB α The fault-free path P2 is found at vertex h in n. Here, the time complexity of P1 and P2 is O(n). Then, if P1 and P2 have a common vertex, let z be the first common vertex, then MBEVP will return the path(Path(P1, x, z), Path(P2)). -1 Since P1 and P2 have at most dist(x, y) + 2 vertices, the time complexity of obtaining the common vertex z is O(|V(P1)|×|V(P2)|)≤O((dist(x, y)+2)×(dist(x, y)+2))≤O(n 2 Since the time complexity of obtaining the path (P1, x, z) is O(1), a fault-free path (Path(P1, x, z), Path(P2, z)) between vertices x and y in GF is obtained. -1 The time complexity of (z, y) is O(2n) + O(n) 2 )≤O(n 2 If P1 and P2 have no common vertices, MBEVP will return the path (P1, MBVP(s, h, G-MB). α n, F\F α P2 -1 This process will first call the algorithm MBVP(s, h, G-MB). α n, F\F α Constructing a fault-free path has a time complexity of O(n^2). 4 Then concatenate P1 and the above MBVP(s, h, G-MB). α n, F\F α The fault-free path and P2 constructed -1 The time complexity of this process is O(1). Therefore, a fault-free path (P1, MBVP(s, h, G-MB)) is obtained for x and y in GF. α n, F\F α P2 -1 The time complexity is O(2n). 2 )+O(n 4 )+O(1)≤O(n 4 ).
[0073] Considering all the above scenarios and situations, the time complexity of MBEVP is O(n^2). 4 ).
[0074] In summary, this invention can quickly find a fault-free path between any two fault-free vertices in the event of some vertex failures, thereby improving the stability and fault tolerance of the network and ensuring its continuity and normal operation.
[0075] The above embodiments are only used to illustrate the technical solutions of the present invention, and are not intended to limit it. Although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of the present invention, and should all be included within the protection scope of the present invention.< / n>
Claims
1. A fault-tolerant routing algorithm based on 1 additional connectivity condition, characterized in that, Includes the following steps: Determine the starting vertex x and the destination vertex y, and determine the subgraph MB. α n Hezitu MB β n Are they the same subgraph, where the starting vertex x is located in subgraph MB? α n In the graph MB, the target vertex y is located in the subgraph MB. β n middle; If α ≠ β, then determine |F α |、|F β | and κ(MB n The size relationship of the total path is determined, and the corresponding method is called to obtain the total path under the corresponding conditions. The total path is a path composed of fault-free paths. The starting point of the total path is the starting vertex x, and the ending point of the total path is the destination vertex y. If α = β, then determine |F α = β | and κ(MB n Determine the size relationship of the paths and call the corresponding methods to obtain the total path under the corresponding conditions; The judgment |F α |、|F β | and κ(MB n The size relationship is determined, and the corresponding method is called to obtain the total path under the corresponding conditions, including: If |F α |≥κ(MB n If the starting vertex x is obtained from the subgraph MB by calling the PATHSEQ method, then... α n arrived at G-MB α n Find the fault-free path P1 for any vertex z1 in the subgraph G-MB; if the destination vertex y is vertex z1, then the total path is P1; if the destination vertex y is not vertex z1, then call the MBVP method to obtain the path in the subgraph G-MB. α The fault-free path P2 from vertex z1 in n to the destination vertex y is obtained; the total path is (P1, P2); If |F β |≥κ(MB n If the target vertex y is obtained from the subgraph MB by calling the PATHSEQ method, then the PATHSEQ method will be called. β n Arrive at G-MB β n Find the fault-free path P1 for any vertex z2 in the subgraph G-MB; if the starting vertex x is vertex z2, then the total path is P1; if the starting vertex x is not vertex z2, then call the MBVP method to obtain the path in the subgraph G-MB. β The fault-free path P2 from vertex x to vertex z2 in n is obtained; the total path is (P2, P1) -1 ), where P1 -1 This is the path in the opposite direction of P1; If |F α |<κ(MB n And |F β |<κ(MB n If the starting vertex x is obtained from the subgraph MB by calling the PATHSEQ method, then... α n arrived at MB β n Find the fault-free path P1 for any vertex z3 in the subgraph; if the destination vertex y is vertex z3, then the total path is P1; if the destination vertex y is not vertex z3, then call the MBVP method to obtain the path in the subgraph MB. β n The fault-free path P2 from the middle vertex z3 to the destination vertex y is obtained; the total path is (P1, P2); The judgment |F α = β | and κ(MB n The size relationship is determined, and the corresponding method is called to obtain the total path under the corresponding conditions, including: If |F α = β |<κ(MB n If MBVP is called, then the result in the subgraph MB is obtained. α Find the fault-free path P from the starting vertex x to the destination vertex y in n, and use the fault-free path P as the total path. If |F α = β |≥κ(MB n Then, calling PATHSEQ will retrieve the starting vertex x from the subgraph MB. α n arrived at G-MB α n Find the fault-free path P1 from any vertex s in the subgraph MB; call PATHSEQ to obtain the destination vertex y from the subgraph MB. β n Arrive at G-MB β n Given any vertex h, find a fault-free path P2; if P1 and P2 share a common vertex, let the first common vertex be vertex z, and the total path is (Path(P1, x, z), Path(P2)). -1 If P1 and P2 do not share a common vertex, then call MBVP to obtain the result in the subgraph G-MB. α n The fault-free path P3 from vertex s to vertex h yields the total path (P1, P3, P2). -1 ).