Next Article in Journal
LPGRI: A Global Relevance-Based Link Prediction Approach for Multiplex Networks
Next Article in Special Issue
Task Scheduling Mechanism Based on Reinforcement Learning in Cloud Computing
Previous Article in Journal
Adaptive Tracking Control Schemes for Fuzzy Approximation-Based Noncanonical Nonlinear Systems with Hysteresis Inputs
Previous Article in Special Issue
The Diagnosability of the Generalized Cartesian Product of Networks
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Dual Protection Routing Trees on Graphs

Department of Industrial Engineering and Management, Ming Chi University of Technology, New Taipei City 24301, Taiwan
Mathematics 2023, 11(14), 3255; https://doi.org/10.3390/math11143255
Submission received: 5 June 2023 / Revised: 8 July 2023 / Accepted: 19 July 2023 / Published: 24 July 2023
(This article belongs to the Special Issue Advances of Computer Algorithms and Data Structures)

Abstract

:
In IP networks, packet forwarding is destination-based and hop-by-hop, and routes are built as needed. Kwong et al. introduced a protection routing in which packet delivery to the destination node can proceed uninterrupted in the event of any single node or link failure. He then showed that “whether there is a protection routing to the destination” is NP-complete. Tapolcai found that two completely independent spanning trees, abbreviated as CISTs, can be used to configure the protection routing. In this paper, we proposed dual protection routing trees, denoted as dual-PRTs to replace CISTs, which are less restrictive than CISTs. Next, we proposed a transformation algorithm that uses dual-PRTs to configure the protection routing. Taking complete graphs Kn, complete bipartite graphs Km,n, hypercubes Qn, and locally twisted cubes LTQn as examples, we provided a recursive method to construct dual-PRTs on them. This article showed that there are no two CISTs on K3,3, Q3, and LTQ3, but there exist dual-PRTs that can be used to configure the protection routing. As shown in the performance evaluation of simulation results, for both Qn and LTQn, we get the average path length of protection routing configured by dual-PRTs is shorter than that by two CISTs.

1. Introduction

In IP networks, intra-domain routing has traditionally relied on distributed computing among routers. Packet forwarding is destination-based and hop-by-hop, and routes are created when needed by a centralized unit. Kwong et al. [1] introduced a reactive routing scheme called protection routing, which employs the multi-paths technique for packet forwarding. If the routing is a protection routing, packet delivery to the destination node can proceed uninterrupted in the presence of any single node or link failure. All routers have an alternate path they can use in case of failure to forward packets.
Let an undirected simple graph G = (V(G), E(G)), where the vertex set V(G) and the edge set E(G) represent the set of nodes and the set of communication links between nodes, respectively. Let k ≥ 2 be an integer and T1, T2, …, Tk be spanning trees of a graph G. A vertex in a tree Ti is a leaf if its degree is one, and an inner vertex otherwise. Two paths from u to v are internally vertex-disjointed if they have no common vertices other than u and v. Next, two spanning trees Ti and Tj are edge-disjointed if they share no common edge. Then, the spanning trees T1, T2, …, Tk are completely independent spanning trees, abbreviated as CISTs, if they are pairwise edge-disjointed and internally vertex-disjointed. The k-CISTs problem was first posed in 2001 by Hasunuma [2]. Then, Tapolcai [3] provided sufficient conditions for protection routing in IP networks according to two CISTs. He gave a deterministic polynomial construction, which builds up a protection routing for an arbitrary destination node by two CISTs.
Previous related works are described below. Hasunuma first worked on the theoretical study of CISTs and showed that the underlying graph of any k-connected line-directed graph recognizes k CISTs [2], and there exist two CISTs in a four-connected maximal planar graph [4] and the Cartesian product of two two-connected graphs [5]. Cheng et al. constructed two CISTs in crossed cubes [6]. Darties et al. determined three CISTs in some Cartesian products of three cycles [7]. Pai et al. proposed several known CISTs, such as complete graphs, complete bipartite, complete tripartite graphs [8], and variants of hypercubes [9]. Tapolcai [3] showed that two CISTs have an application for configuring protection routing. According to this, Pai et al. construct protection routings via CISTs on dense Gaussian on-chip networks [10].
In addition to protection routing, there are studies on other fault-tolerant routing strategies. By using the Hopfield neural network, Samavi and Khadivi proposed a fault avoidance routing method that keeps the transmission message as far away from the faulty nodes as possible [11]. Bossard and Kaneko proposed a node-to-node routing algorithm in an n-dimensional k-ary torus that is tolerant to faults, and this method also tolerates faulty node clusters [12]. For the r-dimensional generalized hypercube, Shu et al. studied three-component connectivity and proposed a fault-tolerant routing algorithm based on it [13]. This method can construct at least one fault-free path between any two distinct fault-free vertices. Romanov et al. used circulant topologies as a promising deadlock-free topology for on-chip networks and proposed a deadlock-free routing algorithm based on it [14].
Recently, we found that the protection routing can still be constructed by reducing some of the edge-disjoint requirements of two CISTs. Therefore, the novelty of this paper is that we defined new trees called dual protection routing trees (abbreviated as dual-PRTs) and devised a transformation algorithm to configure protection routing through them. Taking complete graphs, complete bipartite graphs, hypercubes, and locally twisted cubes as examples, we provided recursive methods on which to construct dual-PRTs and configure protection routings. Furthermore, we supplemented some analysis on simulation to evaluate the corresponding performance. The performance evaluation showed that dual-PRTs are better than two CISTs.
The rest of the paper is organized as follows: Section 2 introduces the necessary definitions and theorems for protection routing and CISTs. In Section 3, we first propose definitions of dual-PRTs and a transformation algorithm that uses dual-PRTs to configure the protection routing. Taking complete graphs, complete bipartite graphs, hypercubes Qn, and locally twisted cubes as examples, we provided a recursive method to construct dual-PRTs on them. Next, in order to compare with previous related research, we made the performance assessment of protection routings on hypercubes and locally twisted cubes in Section 4. Finally, Section 5 is the conclusion of this paper.

2. Preliminaries

The topology of a network is usually modeled as an undirected graph G = (V(G), E(G)). The neighborhood of a vertex v in a graph G, denoted by NG(v), is the set of vertices adjacent to v in G. In a tree, an edge is called a leaf edge (respectively, a stem) if it is adjacent to at least one leaf (respectively, two inner vertices). For convenience, the terms “networks” and “graphs”, “nodes” and “vertices”, and “links” and “edges” are often used interchangeably in this paper. For a destination node dV(G), the route of traffic destined for d is a directed acyclic graph Rd = (V(G), Ed(G)), where the underlying graph of Rd is the spanning subgraph of G and each node uV(G)\{d} has at least one outgoing link in Rd. We use <u, v> to denote a directed link from u to v. If <u, v> ∈ Ed(G), node v is called the primary next-hop of node u, or PNH for short, and the link <u, v> is called a primary link of u. Furthermore, node u is called upstream of node v if there exists a directed path from u to v in Rd. In contrast, node v is downstream of node u. Except for the destination node d, when a single component fails fV(G) ∪ Ed(G)\{d}, let Gf and Rdf be the residual network and routing obtained from G and Rd, respectively. Kwong et al. [1] gave the following two definitions.
Definition 1
([1]). A node u ∈ V(G)\{d} in a routing Rd is said to be protected with respect to d if after any single component failure f ∈ V(G) ∪ Ed(G)\{d} that affects node u’s PNH, then there exists a node x ∈ NG(u) − f(u) such that the following two conditions (1) x is not upstream of u in Rd − f; (2) x and all its downstream nodes, except d, have at least one PNH in Rd − f.
Definition 2
([1]). A routing Rd is a protection routing if every node u ∈ V(G)\{d} is protected in Rd. A network G is protectable if there exists a protection routing Rd for all d ∈ V(G), otherwise, G is unprotectable.
In fact, x is called the second next-hop of node u, SNH for short, and is denoted by SNH(u). We notice that when a failure occurs, the candidate SNHs of node u are not unique. However, the first condition is to avoid forwarding loops in case of failure, and the second condition guarantees that packets are delivered to d through node x and its downstream nodes in Rdf. For example, Figure 1 shows a protection routing in hypercube Q3 (we formally introduce it in Section 3.3) for the destination node 0, and Table 1 gives a candidate SNH of node uV(Q3)\{0}.
Then, Tapolcai provided sufficient conditions for protection routing in IP networks according to two CISTs. The following definition is about CISTs.
Definition 3
([2]). The spanning trees T1 and T2 are two completely independent spanning trees if they are inner-vertex-disjoint and edge-disjoint.
Then, inner-vertex-disjoint and edge-disjoint are defined as follows:
Definition 4.
Two spanning trees T1 and T2 are inner-vertex-disjoint if any vertex can only be an inner node in T1 or T2.
Definition 5.
Two spanning trees T1 and T2 are edge-disjoint if they share no common edge.

3. Main Results

In [3], Tapolcai uses two CISTs to configure a protection routing for a destination node d. Then, we find another way to construct routing through two spanning trees T1 and T2 in which most of the leaf edges can be shared. We first give the following two definitions:
Definition 6.
Two spanning trees T1 and T2 are stem-disjoint if they share no common stem.
Definition 7.
The spanning trees T1 and T2 are dual protection routing trees based on destination node d, which are denoted as dual-PRTds, if Definitions 4, 6 and the following condition are met:
  • Without loss of generality, we assume that node d is an inner vertex in T1. There exists an inner node d′ in T2 such that (d, d′) is a leaf edge in T2 and d′ is adjacent to another inner node w (≠ d) in T1.
In this paper, we proposed a new tree structure in Definition 7. Similar to CISTs, spanning trees T1 and T2 are used to construct a protection routing. However, the difference from CISTs is that we only need stem-disjoint. Obviously, d is the root of the first tree. We need another node d′ to be the root of the second tree. In order to connect the stems of the two trees, (d, d′) must exist. Finally, d′ must have a neighbor w (≠d) as its second next-hop. For example, Figure 2 shows dual-PRT0s. The inner nodes of T1 are vertices 0, 2, 3, and 4, and the inner nodes of T2 are vertices 1, 5, 6, and 7. T1 and T2 follow Definition 4. Then, the stem sets of T1 and T2 are {(0, 2), (0, 4), (2, 3)} and {(1, 5), (5, 7), (6, 7)}, respectively, and they follow Definition 6. Finally, let d′, w be vertices 1 and 3, respectively. Since (0, 1) is a leaf edge in T2 and vertex 1 is adjacent to inner node 3 in T1, according to Definition 7, T1 and T2 are dual-PRT0s. In fact, Figure 1b shows the protection routing configured by T1 and T2. We propose a formal construction algorithm later.
Lemma 1.
There are no two CISTs in hypercube Q3.
Proof. 
As shown in Figure 1a, hypercube Q3 has eight nodes and twelve edges. A tree with eight nodes has seven edges. By Definition 5, we need fourteen edges to find two edge-disjoint spanning trees, but Q3 has only twelve edges. □
According to Lemma 1, if there are no two CISTs in Q3, the protection routing cannot be configured by Tapolcai’s method [3]. That is why we propose dual-PRTds. Now we present the construction method in which the protecting routing is configured by dual-PRTds, as follows.
For example, taking Figure 2a,b as input, according to steps 1 and 2 of Algorithm 1, we have T1′ and T2′, as shown in Figure 3a,b. Next, classify the stems and leaf edges of the two trees into primary links or alternative links according to steps 3 and 4, and then a protection routing R0 can be obtained, as shown in Figure 3c.
Algorithm 1: Configuring a protection routing via dual-PRTds
Input: 
Dual-PRTds T1, T2 of a network G where d is the destination node.
Output: 
A protection routing Rd = (V(G), PL, AL) where PL is the primary links set and AL is the alternative links set
Step 1  
T1′T1 which takes all links directed to root d;
Step 2  
T2′T2 which takes all links directed to root d;
Step 3  
PL ← all stems in T1′ ∪ all stems in T2′ ∪ {<d′, d>};
Step 4  
AL ← all leaf edges in T1′ ∪ all leaf edges in T2′ except <d′, d>;
Step 5  
If a vertex is a leaf in both T1 and T2, then add its T1 leaf edge to PL and add its T2 leaf edge to AL;
Step 6  
Return Rd = (V(G), PL, AL)
According to Definition 1, a routing Rd is a protection routing if every node except d is protected in Rd. In order to prove that the routing constructed by Algorithm 1 is a protection routing, we give the following theorem:
Theorem 1.
The routing constructed by Algorithm 1 is a protection routing with respect to node d.
Proof. 
According to steps 1 and 2 in Algorithm 1, all edges of T1 and T2 are directed to destination node d. Obviously, stems of T1 and stems of T2 respectively form 2 primary routes by step 3. Then <d′, d> connect the second route to destination d. Figure 3 can be used as an illustration. By Definition 6, stem-disjoint can ensure that two primary routes will not overlap. Additionally, according to Definition 4, each vertex can only be an inner node in T1 or T2, which ensures that each vertex has a primary link and an alternative link. If a vertex is a leaf in both T1 and T2, it still has both links at step 5. Since <d′, d> is a primary link, d′ needs another link <d′, w> as an alternative link. Now, let us consider a component failure, it could be a node or a link. If it is a node (respectively, a link), we assume it is the node z (respectively, <u, z>) and z = PNH(u). Regardless of whether the failure is z or <u, z>, the link <u, z> is unavailable. If <u, z> is in T1 (respectively, T2), then node u’s alternative link is in T2 (respectively, T1), so it forwards the packet to the primary routes of T2 (respectively, T1) to the destination node d. Therefore, the routing constructed by Algorithm 1 is a protection routing with respect to node d. □
In [8], we construct CISTs on complete graph Kn where n ≥ 4, complete bipartite graph Kn,m where mn ≥ 4. Therefore, we construct dual-PRTds on them, and make some comparisons.

3.1. Dual-PRTds on Complete Graphs

A complete graph with n vertices denoted as Kn is a graph in which every pair of distinct vertices is connected by a unique edge.
Theorem 2.
There exist dual-PRTds in Kn where d is any vertex of Kn and n ≥ 4.
Proof. 
If n is even (respectively, odd), let the vertices of Kn be labeled 1, 2, 3, …, n (respectively, 0, 1, 2, 3, …, n). For the case that n is even, let all odd vertices be inner nodes in T1 and all even vertices be inner nodes in T2. Stems are (1, 3), (1, 5), …, (1, n − 1) (respectively, (2, 4), (2, 6), …, (2, n)) and leaf edges are (3, 2), (3, 4), (5, 6), …, (n − 1, n) (respectively, (1, 2), (3, 4), …, (n − 1, n)) in T1 (respectively, T2). Clearly, T1 and T2 obey Definitions 4 and 6. Let d = 1, d′ = 2, w = 3, and then Definition 7 holds. T1 and T2 are dual-PRT1s in Kn. In the case that n is odd, the trees are similar to the ones in the case that n is even. We let additional vertex 0 be adjacent to vertex 1 and 2 in T1 and T2, respectively. Clearly, T1 and T2 still obey Definition 7, and they are dual-PRT1s in Kn. It is widely known that Kn is vertex-symmetric, so there exist dual-PRTds where d can be any vertex in Kn. □
Figure 4a,b illustrate the proof of Theorem 2. The tree diameter is the length of the shortest path between the most distanced nodes, which affects the length of the routing in practice. In [8], the diameters of CISTs in Kn are all 3, and the diameters of our dual-PRTds in Kn are 4, which is slightly worse than the former.
Theorem 3.
Kn is protectable for n ≥ 4.
Proof. 
According to Theorem 2, there exist dual-PRTds in Kn for n ≥ 4. Then, by Algorithm 1, we can use dual-PRTds to configure the protection routing as shown in Figure 4c. According to Definition 2, this theorem holds. □

3.2. Dual-PRTds on Complete Bipartite Graphs

A complete bipartite graph, denoted by Km,n is a graph whose vertices can be partitioned into two subsets V1 and V2 such that |V1|= m, |V2|= n and two vertices u and v are adjacent if and only if uV1 and vV2.
Theorem 4.
There exist dual-PRTds in Km,n where d is any vertex in V1 (or V2) and m ≥ n ≥ 3.
Proof. 
Without loss of generality, we assume that |V1|= m ≥ |V2|= n. Let the vertices of V1 (respectively, V2) be labeled a1, a2, a3, …, am (respectively, b1, b2, b3, …, bn). In the case that dV1, let vertices a2, a3, …, an−1, bn be inner nodes in T1 and vertices b1, b2, …, bn−1 be inner nodes in T2. Stem edges are (a2, bn), (a3, bn), …, (an−1, bn) (respectively, (b1, an), (b2, an), …, (bn−1, an)) and leaf edges are (b1, a2), (b2, a2), (b3, a3), …, (an, bn), (a1, bn), (an+1, bn), (an+2, bn), …, (am, bn) (respectively, (a1, b1), (a2, b2), …, (bn, an), (an+1, bn−1), (an+2, bn−1), …, (am, bn−1)) in T1 (respectively, T2). Clearly, T1 and T2 obey Definitions 4 and 6. Let d = a1, d′ = b1, w = a2, then Definitions 7 holds. Since a1 can be replaced by any vertex in V1, T1 and T2 are dual-PRTds in Km,n where dV1. For the case that dV2, we can swap V1 and V2, and prove it in a similar way. □
Figure 5 is used to illustrate the proof of Theorem 4. In [8], there are no two CISTs in K3,3, because two edge-disjoint spanning trees require a total of 10 edges while K3,3 only has 9 edges. However, K3,3 has dual-PRTds, which can be used to configure a protection routing. Next, when mn ≥ 4 the diameter of CISTs in Km,n are all 5 in [8], and the diameters of our dual-PRTds in Km,n are 4, which is slightly better than the former.
According to Theorem 4, there exist dual-PRTds in Km,n where dV1 (or V2). They can be used to configure the protection routing via Algorithm 1. Finally, by Definition 2, we have the following theorem:
Theorem 5.
Km,n is protectable where m ≥ n ≥ 3.
Theorem 5 improves the known result that Km,n is protectable where mn ≥ 4.

3.3. Dual-PRTds on Hypercubes

The n-dimensional hypercube, denoted by Qn, is a graph with 2n vertices such that each vertex corresponds to an n-tuple (bn, bn−1, …, b1) on the set {0, 1}n and two vertices are adjacent by an edge if and only if they differ in exactly one coordinate [15]. For example, Q3 is shown in Figure 1a. For conciseness, the labels of vertices are changed to their decimal. The hypercube is one of the most popular interconnection networks because of its attractive properties, including regularity, vertex symmetricality, edge symmetric, small diameter, strong connectivity, recursive construction, partition capability, and small link complexity.
Lemma 2.
Q3 has dual-PRTds with a diameter is 5 where d is any vertex in Q3.
Proof. 
Let destination node d be vertex 0. Dual-PRT0s are shown in Figure 2. Clearly, the diameters of two trees are both 5. Vertices 0, 2, 3, and 4 are inner nodes in T1, and vertices 1, 5, 6, and 7 are inner nodes in T2. Stems are (0, 2), (0, 4), (2, 3) (respectively, (1, 5), (5, 7), (6, 7)), and leaf edges are (1, 3), (3, 7), (2, 6), (4, 5) (respectively, (0, 1), (2, 6), (3, 7), (4, 5)) in T1 (respectively, T2). Clearly, T1 and T2 obey Definitions 4 and 6. Let d′ be vertex 1 and w be vertex 3, and then Definition 7 is met. Since Qn is vertex-symmetric and there exists an automorphism of Qn, vertex 0 can be replaced by any vertex in Q3. This lemma holds. □
In [9], we provide and prove a simple unified approach to construct two CISTs in the n-dimensional hypercubes variants (abbreviated as QVn) using two CISTs in QVn−1. This approach is also applicable for dual-PRTds. For QVn, it is constructed recursively from two QVn−1s. Then (n − 1)-dimensional dual-PRTds also exist in each QVn−1. We can select a pair of port vertices and add an edge to connect two trees, where port vertices obey (1) removing the leftmost bit, and their labels will be the same; (2) there exists an edge between them in QVn. For example, Figure 6 shows dual-PRT0s of Q4 which are constructed from dual-PRT0s of Q3. Clearly, port vertices of T1 (respectively, T2) are vertices 0 and 8 (respectively, 5 and 13).
Using the unified approach, if we choose vertices near the center of the trees as their port vertices, then we can obtain a better result of the diameter of dual-PRTds for the construction. Suppose that T1 and T2 are dual-PRTds of QVn−1 and let T′1 and T′2 be dual-PRTds of QVn. If a vertex u is a center vertex of T1 and v is a center vertex of T2, then the choice of a pair (u, u + 2n−1) in T′1 and a pair (v, v + 2n−1) in T′2 as port vertices can build two dual-PRTds of QVn by induction on n. Since we can always choose the center vertices of T1 and T2 as port vertices, it follows that D(T′j) = 2 ∙ ⌈D(Tj)/2⌉ + 1 where j ∈ {1, 2} and D(T) denotes the diameter of the tree T. For example, as shown in Figure 2 and Figure 6, the diameters of dual-PRTds of Q3 are both 5 and the diameters of dual-PRTds of Q4 are both 7. Then, by the unified approach and Lemma 2, we have the following theorem:
Theorem 6.
Qn has dual-PRTds with a diameter is 2n − 1 where d ∈ V(Qn) and n ≥ 3.
By Theorem 6, there exist dual-PRTds in Qn where dV(Qn). According to Algorithm 1, two trees can be used to configure the protection routing. Then, by Definition 2, we have the following theorem:
Theorem 7.
Qn is protectable where n ≥ 3.
As stated in Lemma 1, Theorem 7 improves on the known result that Qn is protectable when n ≥ 4. As far as we know, the diameters of two CISTs of Q4 are both 8 [5]. The diameters of dual-PRTds of Qn are one less than the diameters of two CISTs of Qn while n ≥ 4.

3.4. Dual-PRTds on LTQs

The n-dimensional locally twisted cube, denoted by LTQn, is defined recursively as follows (see [16]):
(1)
LTQ1 is the complete graph on two vertices labeled 0 and 1. LTQ2 is a graph consisting of four vertices with labels 00, 01, 10, and 11 together with four edges (00, 01), (00, 10), (01, 11), and (10, 11);
(2)
For n ≥ 3, LTQn is composed of two subcubes LTQ0n−1 and LTQ1n−1 such that each vertex x = 0bn−1bn−2···b1V(LTQ0n−1) is connected with the vertex 1(bn−1b1)bn−2···b1V(LTQ1n−1) by an edge where ⊕ represents exclusivity.
LTQn is a variant of Qn, and one advantage of LTQn is that the diameter is only about half of the diameter of Qn. For example, LTQ3 is shown in Figure 7a, its diameter is 2, while the value of Q3 is 3. In [17], LTQn is vertex-transitive if and only if n ≤ 3.
Lemma 3.
LTQ3 has dual-PRTds with a diameter of 5 where d is any vertex in LTQ3.
Proof. 
Let destination node d be vertex 0. Dual-PRT0s are shown in Figure 7b,c. Clearly, the tree diameters are both 5. Vertices 0, 4, 5, and 7 are inner nodes in T1, and vertices 1, 2, 3, and 6 are inner nodes in T2. Stems are (0, 4), (4, 5), (5, 7) (respectively, (1, 3), (2, 3), (2, 6)), and leaf edges are (0, 2), (1, 7), (3, 5), (4, 6) (respectively, (0, 1), (1, 7), (3, 5), (4, 6)) in T1 (respectively, T2). Clearly, T1 and T2 obey Definitions 4 and 6. Let d′ be vertex 1 and w be vertex 7, and then Definition 7 holds. Since LTQ3 is vertex-symmetric and there exists an automorphism of LTQ3, vertex 0 can be replaced by any vertex in LTQ3. This lemma holds. □
In [17], the full automorphism group of LTQn with n ≥ 4 has exactly two orbits, and the odd and even vertices belong to the same group. We present dual-PRTds for d belonging to odd and even vertices, respectively.
Lemma 4.
LTQ4 has dual-PRTds with diameters of 6 and 8 where d is any even vertex in LTQ4.
Proof. 
Let destination node d be vertex 0. Dual-PRT0s are shown in Figure 8. Clearly, the diameters of the two trees are 8 and 6, respectively. Vertices 0, 3, 4, 5, 8, 9, 12, and 15 are inner nodes in T1, and vertices 1, 2, 6, 7, 10, 11, 13, and 14 are inner nodes in T2. Stems are (0, 4), (0, 8), (3, 5), (4, 5), (4, 12), (8, 9), (9, 15) (respectively, (1, 7), (1, 13), (2, 6), (6, 7), (6, 14), (7, 11), (10, 11)) and leaf edges are (0, 2), (1, 3), (4, 6), (5, 7), (8, 10), (9, 11), (12, 14), (13, 15) (respectively, (0, 1), (2, 3), (4, 6), (5, 7), (8, 10), (9, 11), (12, 14), (13, 15)) in T1 (respectively, T2). Clearly, T1 and T2 obey Definitions 4 and 6. Let d′ be vertex 1 and w be vertex 3, and then Definition 7 holds. Since all even vertices belong to the same automorphism group in LTQ4, this lemma holds. □
Lemma 5.
LTQ4 has dual-PRTds with diameters of 6 and 8 where d is any odd vertex in LTQ4.
Proof. 
Let destination node d be vertex 1. Dual-PRT1s are shown in Figure 9. Clearly, the diameters of the two trees are 6 and 8 respectively. Vertices 1, 2, 6, 7, 10, 11, 13, and 14 are inner nodes in T1, and vertices 0, 3, 4, 5, 8, 9, 12, 15 are inner nodes in T2. Stems are (1, 7), (1, 13), (2, 6), (6, 7), (6, 14), (7, 11), (10, 11) (respectively, (0, 4), (0, 8), (3, 5), (4, 5), (4, 12), (8, 9), (9, 15)) and leaf edges are (0, 2), (1, 3), (4, 6), (5, 7), (8, 10), (9, 11), (12, 14), (13, 15) (respectively, (0, 1), (2, 3), (4, 6), (5, 7), (8, 10), (9, 11), (12, 14), (13, 15)) in T1 (respectively, T2). Clearly, T1 and T2 obey Definitions 4 and 6. Let d′ be vertex 0 and w be vertex 2, and then Definitions 7 holds. Since all odd vertices belong to the same automorphism group in LTQ4, this lemma holds. □
By using the unified approach [9] to configure dual-PRTds of LTQn from dual-PRTds of LTQn−1, we find that it is better to choose vertices near the center of the tree as port vertices. According to the edge adjacent rules of LTQn, it is necessary to select an even vertex x to ensure that (x, x + 2n−1) exists. As a counterexample, (1, 1 + 24) does not exist in LTQ5. Then, we deal with the following theorem:
Theorem 8.
LTQn has dual-PRTds with the diameter 2n − 1 (respectively, 6 or 8) while n ≥ 3 and n ≠ 4 (respectively, n = 4) where d ∈ LTQn.
Proof. 
First, according to Lemmas 3, 4, and 5, this theorem holds when n = 3 or 4. Then, we use the unified approach [9] to recursively construct dual-PRTds of LTQn+1 from dual-PRTds of LTQn while n ≥ 5. We consider the following two cases:
Case 1. Destination node d is any even vertex in LTQn while n ≥ 5.
We prove by induction, based on n = 4. Since LTQn+1 consists of two LTQn, there are n-dimensional dual-PRTds in each LTQn. We adopt the dual-PRTds shown in Figure 8 as the induction base. By using the unified approach, we choose vertex 0 of T1 and vertex 6 of T2 as port vertices. For LTQn+1, we connect a pair of port vertices (0, 0 + 2n) (respectively, (6, 6 + 2n))to link two T1s (respectively, T2s) in each subcube LTQn−1, and then we have dual-PRTds T′1 (respectively, T′2) in LTQn. Because the length from vertex 0 (respectively, vertex 6) to the farthest leaf in T1 (respectively, T2) is 4, the diameter of recursively constructed dual-PRTds is both 2n − 1 while n ≥ 5;
Case 2. Destination node d is any even odd in LTQn while n ≥ 5.
The proof is similar to that of Case 1. In this case, we adopt the dual-PRTds shown in Figure 9 as the induction base and select vertex 6 of T1 and vertex 0 of T2 as port vertices. Other parts are the same as in case 1. □
For example, Figure 10 shows dual-PRT0s on LTQ5, which can be used to illustrate the proof of Theorem 8. According to Theorem 8, there exist dual-PRTds in LTQn where dV(LTQn) while n ≥ 5. Then, two trees can be used to configure the protection routing via Algorithm 1. By Definition 2, we have the following theorem:
Theorem 9.
LTQn is protectable where n ≥ 3.
Theorem 9 improves the known result that LTQn is protectable when n ≥ 4. As far as we know, the diameters of two CISTs of LTQ4 are both 7 [9]. In each dimension of LTQn, the diameter of dual-PRTds is about the same as that of two CISTs.

4. Performance Evaluation

In this section, we present simulation results for evaluating the performance of the protection routings on Qn and LTQn. The protection routings can be configured by dual-PRTds or two CISTs. For Qn (respectively, LTQn), we used C programs to implement the routing algorithms by dual-PRTds in the previous section and two CISTs in [5] (respectively, [9]). To speed up the evaluation, we carried out the simulation separately for each of Qn and LTQn by using a 5.10 GHz Intel® Core™ i9-12900 CPU and 32GB RAM under the Linux operating system.
For each dimension 3, 4, 5, …, 9, we randomly generated 1,000,000 instances of vertex-list (s, d, f) with sdf for the two kinds of networks, where s, d, and f are the source, destination, and failure node of traffic, respectively. The protection routing Rd is constructed by dual-PRTds (respectively, two CISTs) using Algorithm 1 (respectively, Tapolcai’s method [3]). We are interested in computing the path length from s to d under two scenarios: (i) no failure and (ii) a single node failure. For each instance, if no failure occurs, we compute the path length by tracking the primary links and PHNs alternately from s to d in Rd. For convenience, we call this specific routing the default path Ps,d. Then, the length of Ps,d is defined by the number of links from s to d in Rd. Likewise, we are also concerned with computing path lengths in case of node failures in Rd. We assume that the appearance of node failure is uniformly distributed throughout the network. If failure node f = PNH(u) and f is contained in Rd, we calculate the path length of an alternate path Ps,uPu,SNH(u)PSNH(u),d. We then compute three statistical quantities related to path length: (a) average path length, (b) standard deviation of path length, and (c) maximum path length and the number of its occurrences. More descriptions and examples of the simulation process are available on a website [18] as Supplementary Materials.
Table 2 and Table 3 show some simulation results of the two scenarios (no failure and a single node failure) on Qn and LTQn. To save space, four additional tables are available on a website [18] as Supplementary Materials. In these tables, the three quantities mentioned above are calculated in the usual way according to statistics. They present simulation results for Qn and LTQn when the routing is with two scenarios. Additionally, the ratio of invoking SNH under a single node failure is calculated (see the footer * in Table 2 and Table 3). It is obvious that the ratio tends to decrease gradually as the network’s dimension increases, and eventually, its effect on length becomes less pronounced. According to Lemma 1, there are no two CISTs in Q3, so there are two missing values in Table 2. For the same reason, there are also two missing values in Table 3.
According to Table 2 and Table 3, we have Figure 11 and Figure 12. There are no two CISTs in Q3 by Lemma 1, which is why the blue line (representing 2 CISTs) in Figure 11 starts with count n = 4. For the same reason, the blue line in Figure 12 also starts with count n = 4. Obviously, the average path lengths of protection routing by dual-PRTds are smaller than the ones by two CISTs, no matter the scenario.

5. Conclusions

In our previous research on using CISTs to construct the protection routing, we found that it is not easy to find k-CISTs on some graph classes even when k is equal to 2. We tried to find trees that are less restrictive but can still be used to configure the protection routing. Then, we proposed dual-PRTds in this paper. As mentioned earlier, there are no two CISTs on K3,3, Q3, and LTQ3. However, there are dual-PRTds on them, which can be used to construct the protection routing. These results improve on previous research. Additionally, as shown in the performance evaluation of protection routing through simulation results, the average path length of protection routing configured by dual-PRTds is shorter than that of two CISTs. The dual-PRTds we proposed are modified from k-CISTs, and k-CISTs have dozens of research results on different network architectures. For future research, it would be an interesting question to determine the existence of dual-PRTds in other graph classes and practical implementation on a general network.

Supplementary Materials

The full automorphism groups of Qn and LTQn, simulation description, and detailed results can be viewed at the following website: https://github.com/kjpai/dprt1/blob/main/dprt1content.pdf.

Funding

This research was funded by MOST through the Ministry of Science and Technology, Taiwan, under Grant MOST 111-2221-E-131-012.

Data Availability Statement

Not applicable.

Conflicts of Interest

The author declares no conflict of interest.

References

  1. Kwong, K.-W.; Gao, L.; Guérin, R.; Zhang, Z.-L. On the feasibility and efficacy of protection routing in IP networks. IEEE/ACM Trans. Netw. 2011, 19, 1543–1556. [Google Scholar] [CrossRef] [Green Version]
  2. Hasunuma, T. Completely independent spanning trees in the underlying graph of a line digraph. Discrete Math. 2001, 234, 149–157. [Google Scholar] [CrossRef] [Green Version]
  3. Tapolcai, J. Sufficient conditions for protection routing in IP networks. Optim. Lett. 2013, 7, 723–730. [Google Scholar] [CrossRef]
  4. Hasunuma, T. Completely independent spanning trees in maximal planar graphs. In WG 2002. LNCS; Goos, G., Hartmanis, J., van Leeuwen, J., Kučera, L., Eds.; Springer: Berlin/Heidelberg, Germany, 2002; Volume 2573, pp. 235–245. [Google Scholar]
  5. Hasunuma, T.; Morisaka, C. Completely independent spanning trees in torus networks. Networks 2012, 60, 59–69. [Google Scholar] [CrossRef]
  6. Cheng, B.; Wang, D.; Fan, J. Constructing completely independent spanning trees in crossed cubes. Discret. Appl. Math. 2017, 219, 100–109. [Google Scholar] [CrossRef]
  7. Darties, B.; Gastineau, N.; Togni, O. Completely independent spanning trees in some regular graphs. Discret. Appl. Math. 2017, 217, 163–174. [Google Scholar] [CrossRef] [Green Version]
  8. Pai, K.-J.; Tang, S.-M.; Chang, J.-M.; Yang, J.-S. Completely independent spanning trees on complete graphs, complete bipartite graphs and complete tripartite graphs. In Advances in Intelligent Systems and Applications-Volume 1, Proceedings of the International Computer Symposium ICS 2012, Hualien, Taiwan, 12–14 December 2012; Springer: Berlin/Heidelberg, Germany, 2013; Volume 20, pp. 107–113. [Google Scholar]
  9. Pai, K.-J.; Chang, J.-M. Constructing two completely independent spanning trees in hypercube-variant networks. Theor. Comput. Sci. 2016, 652, 28–37. [Google Scholar] [CrossRef]
  10. Pai, K.J.; Yang, J.S.; Chen, G.Y.; Chang, J.M. Configuring Protection Routing via Completely Independent Spanning Trees in Dense Gaussian On-Chip Networks. IEEE Trans. Netw. Sci. Eng. 2022, 9, 932–946. [Google Scholar] [CrossRef]
  11. Samavi, S.; Khadivi, P. Fault-tolerant routing in hypercube networks by avoiding faulty nodes. arXiv 2019, arXiv:1905.03086. [Google Scholar]
  12. Bossard, A.; Kaneko, K. Cluster-Fault Tolerant Routing in a Torus. Sensors 2020, 20, 3286. [Google Scholar] [CrossRef]
  13. Shu, C.; Wang, Y.; Fan, J.; Zhang, H. Fault-Tolerant Routing of Generalized Hypercubes under 3-Component Connectivity. In Proceedings of the 2021 IEEE Intl Conf on Parallel & Distributed Processing with Applications, Big Data & Cloud Computing, Sustainable Computing & Communications, Social Computing & Networking, New York, NY, USA, 30 September–3 October 2021; pp. 1320–1327. [Google Scholar]
  14. Romanov, A.Y.; Myachin, N.M.; Lezhnev, E.V.; Ivannikov, A.D.; El-Mesady, A. Ring-Split: Deadlock-Free Routing Algorithm for Circulant Networks-on-Chip. Micromachines 2023, 14, 141. [Google Scholar] [CrossRef]
  15. Leighton, F.T. Introduction to Parallel Algorithms and Architectures: Arrays, Trees, Hypercubes; Morgan Kaufmann: San Mateo, CA, USA, 1992. [Google Scholar]
  16. Yang, X.; Evans, D.J.; Megson, G.M. The locally twisted cubes. Int. J. Comput. Math. 2005, 82, 401–413. [Google Scholar] [CrossRef]
  17. Chang, X.; Ma, J.; Yang, D.-W. Symmetric property and reliability of locally twisted cubes. Discret. Appl. Math. 2021, 288, 257–269. [Google Scholar] [CrossRef]
  18. Simulation Results for Evaluating the Performance of the Protection Routings on Qn and LTQn. Available online: https://github.com/kjpai/dprt1/blob/main/dprt1content.pdf (accessed on 7 July 2023).
Figure 1. (a) Hypercube Q3 and (b) a protection routing for destination node 0 in Q3, where thick arcs indicate primary links and thin arcs indicate alternative links.
Figure 1. (a) Hypercube Q3 and (b) a protection routing for destination node 0 in Q3, where thick arcs indicate primary links and thin arcs indicate alternative links.
Mathematics 11 03255 g001
Figure 2. (a) T1 and (b) T2 are dual-PRT0s where thick lines indicate stems and thin lines indicate leaf edges.
Figure 2. (a) T1 and (b) T2 are dual-PRT0s where thick lines indicate stems and thin lines indicate leaf edges.
Mathematics 11 03255 g002
Figure 3. (a) T1′ and (b) T2′ are all links directed to root 0 from T1 and T2, respectively, (c) a protection routing R0, where thick arcs indicate primary links and thin arcs indicate alternative links.
Figure 3. (a) T1′ and (b) T2′ are all links directed to root 0 from T1 and T2, respectively, (c) a protection routing R0, where thick arcs indicate primary links and thin arcs indicate alternative links.
Mathematics 11 03255 g003
Figure 4. (a) T1 and (b) T2 are dual-PRT1s, (c) protection routing R1, where thick arcs indicate primary links and thin arcs indicate alternative links.
Figure 4. (a) T1 and (b) T2 are dual-PRT1s, (c) protection routing R1, where thick arcs indicate primary links and thin arcs indicate alternative links.
Mathematics 11 03255 g004
Figure 5. (a) T1 and (b) T2 are dual-PRTds, (c) a protection routing Rd, where thick arcs indicate primary links and thin arcs indicate alternative links.
Figure 5. (a) T1 and (b) T2 are dual-PRTds, (c) a protection routing Rd, where thick arcs indicate primary links and thin arcs indicate alternative links.
Mathematics 11 03255 g005
Figure 6. (a) T1 and (b) T2 are dual-PRT0s of Q4.
Figure 6. (a) T1 and (b) T2 are dual-PRT0s of Q4.
Mathematics 11 03255 g006
Figure 7. (a) LTQ3 (b) T1 and (c) T2 are dual-PRT0s of LTQ3, (d) a protection routing Rd, where thick arcs indicate primary links and thin arcs indicate alternative links.
Figure 7. (a) LTQ3 (b) T1 and (c) T2 are dual-PRT0s of LTQ3, (d) a protection routing Rd, where thick arcs indicate primary links and thin arcs indicate alternative links.
Mathematics 11 03255 g007
Figure 8. (a) T1 and (b) T2 are dual-PRT0s of LTQ4.
Figure 8. (a) T1 and (b) T2 are dual-PRT0s of LTQ4.
Mathematics 11 03255 g008
Figure 9. (a) T1 and (b) T2 are dual-PRT1s of LTQ4.
Figure 9. (a) T1 and (b) T2 are dual-PRT1s of LTQ4.
Mathematics 11 03255 g009
Figure 10. (a) T1 and (b) T2 are dual-PRT0s of LTQ5.
Figure 10. (a) T1 and (b) T2 are dual-PRT0s of LTQ5.
Mathematics 11 03255 g010
Figure 11. The average path lengths of protection routing on Qn while 3 ≤ n ≤ 9.
Figure 11. The average path lengths of protection routing on Qn while 3 ≤ n ≤ 9.
Mathematics 11 03255 g011
Figure 12. The average path lengths of protection routing on LTQn while 3 ≤ n ≤ 9.
Figure 12. The average path lengths of protection routing on LTQn while 3 ≤ n ≤ 9.
Mathematics 11 03255 g012
Table 1. Candidate SNHs of node uV(Q3)\{0}.
Table 1. Candidate SNHs of node uV(Q3)\{0}.
Component FailureSecond Next-Hop
<1, 0>SNH(1) = 3
<2, 0>SNH(2) = 6
<4, 0>SNH(4) = 5
<3, 2> or 2SNH(3) = 7
<5, 1> or 1SNH(5) = 4
<6, 7> or 7SNH(6) = 2
<7, 5> or 5SNH(7) = 3
Table 2. Simulation results: the average path length on Qn when the routing is with two scenarios: (1) no failure; and (2) a single node failure.
Table 2. Simulation results: the average path length on Qn when the routing is with two scenarios: (1) no failure; and (2) a single node failure.
No FailureA Single Node Failure
n2 CISTsDual-PRTds2 CISTsDual-PRTds
3 2.000 2.000 (* 16.69%)
43.2332.5333.394 (* 15.94%)2.580 (* 10.98%)
54.2723.0314.445 (* 10.92%)3.081 (* 6.77%)
65.2783.5235.417 (* 6.91%)3.562 (* 4.08%)
76.2714.0166.369 (* 4.17%)4.042 (* 2.40%)
87.2644.5107.327 (* 2.46%)4.527 (* 1.37%)
98.2575.0088.296 (* 1.42%)5.018 (* 0.77%)
* The ratio of invoking SNH.
Table 3. Simulation results: the average path length on LTQn when the routing is with two scenarios: (1) no failure; and (2) a single node failure.
Table 3. Simulation results: the average path length on LTQn when the routing is with two scenarios: (1) no failure; and (2) a single node failure.
No FailureA Single Node Failure
n2 CISTsDual-PRTds2 CISTsDual-PRTds
3 2.285 2.237 (* 21.41%)
42.9322.6003.027 (* 13.83%)2.637 (* 11.44%)
53.8693.2903.983 (* 9.53%)3.325 (* 7.64%)
64.8263.8704.914 (* 6.16%)3.902 (* 4.59%)
75.7944.4115.853 (* 3.78%)4.434 (* 2.67%)
86.7744.9266.811 (* 2.26%)4.941 (* 1.55%)
97.7665.4327.788 (* 1.34%)5.442 (* 0.85%)
* The ratio of invoking SNH.
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Pai, K.-J. Dual Protection Routing Trees on Graphs. Mathematics 2023, 11, 3255. https://doi.org/10.3390/math11143255

AMA Style

Pai K-J. Dual Protection Routing Trees on Graphs. Mathematics. 2023; 11(14):3255. https://doi.org/10.3390/math11143255

Chicago/Turabian Style

Pai, Kung-Jui. 2023. "Dual Protection Routing Trees on Graphs" Mathematics 11, no. 14: 3255. https://doi.org/10.3390/math11143255

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop