ebook img

Node-Independent Spanning Trees in Gaussian Networks PDF

0.27 MB·
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Node-Independent Spanning Trees in Gaussian Networks

Node-Independent Spanning Trees in Gaussian Networks Z. Hussain1, B. AlBdaiwi1, and A. Cerny2 1Computer Science Department, Kuwait University, Kuwait 2Department of Information Science, Kuwait University, Kuwait Abstract—Message broadcasting in networks could be car- processors,respectively.A pathfroma nodes to a nodedin ried over spanningtrees. A set of spanningtrees in the same agraphisasequenceofedges,whichconnectsasequenceof 7 network is node independent if two conditions are satisfied. nodesfromstod.Twosuchpathsaresaidtobeindependent 1 First,alltreesarerootedatnoder.Second,foreverynodeu if their nodes are disjoint except for the end nodes s and d, 0 2 in the network, alltrees’ pathsfrom r to u are node-disjoint, i.e.therearenocommonintermediatenodesinthetwopaths. excluding the end nodes r and u. Independent spanning A spanning tree is a connected loop-free subgraph of graph n trees have applicationsin fault-tolerantcommunicationsand GcontainingallthenodesofgraphG.Spanningtreesrooted a J secure message distributions. at node r are said to be independent if the paths from r to 1 Gaussiannetworksandtwo-dimensionaltoroidalnetworks any other node u in any two of the trees are independent. 1 share similar topological characteristics. They are regular Nodeindependentspanningtreesusedtoresolveimportant of degree four, symmetric, and node-transitive. Gaussian issues in network applications such as fault-tolerant broad- ] C networks, however, have relatively lesser network diameter casting [17][19] and secure message distribution [23][24]. that could result in a better performance. This promotes These applications are briefly described below: D Gaussian networks to be a potential alternative for two- • Consider the existence of t node independent spanning . s dimensional toroidal networks. trees rooted at node r in network N. Assume that c In this paper, we present constructions for node indepen- N contains at most t 1 faulty nodes. Then, r can [ dent spanning trees in dense Gaussian networks. Based on broadcast a message to−every non-faulty node u in N 1 theseconstructions,wedesignroutingalgorithmsthatcanbe by broadcasting the message over all the t trees. Since v usedinfault-tolerantroutingandsecuremessagedistribution. the numberof faultynodesis less than t, at leastone of 1 9 We also design fault-tolerant algorithms to construct these the t node disjoint paths from r to u is fault free. 9 trees in parallel. • Node independent spanning trees could be used in 2 secure message distribution over a fault-free network 0 Keywords:CirculantGraphs,GaussianNetworks,SpanningTrees, as follows. A message can be divided into t packets . 1 Independent Spanning Trees, Fault-Tolerant Routing. where each packet is sent by node r to its destination 0 using a different spanning tree. Thus, each node in the 7 1. Introduction network receives at most one of the t packets except 1 A parallel computing system interconnectiontopologyde- the destination node that receives all the t packets : v cides the system fault-tolerance capabilities as well as the [20][24][25]. i X system over all communication efficiency. There are many In[1],AlBdaiwiet.al.twoedge-disjointnode-independent r researches on interconnection networks such as hypercube spanning trees were constructed in dense Gaussian network. a [12][13], generalized hypercube [5], mesh, k–ary n–cube Such network contains the maximum number of nodes for a [6], torus [8], REFINE [4], and RMRN [2][3] networks; givendiameterk[22],wherethedepthofeachtreeis2k,k ≥ more examples of interconnection netowkrs can be found in 1.Basedonthoseconstructions,algorithmswereprovidedfor [9][11]. fault-tolerant routing and secure message distribution where An efficient interconnectiontopologycalled Gaussian net- the source node can be any node in the network. work has been studied in [21][22]. Gaussian networks and In [15], we gave algorithms for constructing four node two-dimensional toroidal networks share similar topological independent spanning trees in a dense Gaussian network properties. They are symmetric, node-transitive, and regular of depth k working in 2k steps where the trees are not degree four. Gaussian networks, however, have relatively necessarily edge-disjoint. In this paper, we extend our work lesser diameter which suggests that they could be a potential and present a k–steps construction algorithm. Furthermore, alternative for two-dimensional toroidal networks. Gaussian we develop routing algorithms based on these trees that can networks have been studied in [7][10][16], and they are be used in fault-tolerant communication and secure message briefly reviewed in Section 2. distribution. In parallel computing as well as in distributed systems, a Therestofthispaperisorganizedasfollows.TheGaussian networkcanberepresentedasagraphwherenodesandedges network is reviewedin Section 2. In Section 3, we introduce represent processors and communication links among the a construction of four node independent spanning trees in Gaussian networks. Based on the constructed trees, routing The wraparound edges in Figure 1 can be illustrated as algorithms from a given source node to a given destination straight lines by tiling the Gaussian network on an infinite nodearedescribedinSection4.Section5presentsparallelal- grid as depicted in Figure 2. Consider the boundary node gorithmsforconstructingthefournodeindependentspanning 3i. Its 1, +i, and +1 edges are wraparound links that − trees, and Section 6 presents simulation analysis for these are connected to the boundary nodes 3, 3, and 2 i, − − − algorithms. Finally, The paper is concluded in Section 7. respectively. We have kept these edges as wraparounds to show the equivalence of the two illustrations. Note that the 2. Background different gray color nodes are related to different network tiles. Gaussian networks are regular symmetric networks of 4i mod α degree 4. These networks are based on quotient rings of = Gaussian integers Z[i] = x + yi x,y Z where i = √ 1 [14]. Z[i] is an E{uclidean d|omain. ∈The n}odes of -1+3i mod α -3 1+3i mod α − = = the network are elements of the residue class modulo some 3 3i -2-i α Z[i], where α is considered as a network generator. The -2+2i mod α 2+2i mod α ∈ = = norm N(α) = a2+b2 of a Gaussian network generated by 2-i -1+2i 2i 1+2i -1-2i α =a+bi, is the total number of nodes in this network. A -3+i mod α 3+i mod α = = densediameter-optimalGaussiannetworkdenotedbyG(α ), k 1-2i -2+i -1+i i 1+i 2+i -3i where α =k+(k+1)i, is a k diameter Gaussian network -4 mod α k = that contains the maximum number of nodes. Note that α k -3i -3 -2 -1 0 1 2 3 3i always generates the maximum possible number of nodes = within diameter k since GCD(k,k+1)=1. 4 mod α 3i -2-i -1-i -i 1-i 2-i -1+2i Gaussian networks can be represented in several different = = ways asdescribedin [18]. Inthis paper,we dealwith graphs -3-i mod α 3-i mod α 1+2i -1-2i -2i 1-2i -2+i isomorphictodensediameter-optimalGaussiannetworks.We = = denote G = (V ,E ) = G(α ), k 1. Each node in the -2-2i mod α 2-2i mod α k k k k ≥ 2+i -3i -3 graph is labeled as x+yi where x + y k. Two nodesA | | | |≤ = = and B are adjacent if and only if (A B) mod α is equal -1-3i mod α 1-3i mod α − 3 to 1 or i. As described in [21], the number of nodes at ± ± = distancej fromanysinglenodeinadenseGaussiannetwork -4i mod α isD(j)=4j forj =1,2,...,k. Figure1 showsanexample Fig. 2: Wraparound links in Gaussian network generated by of Gaussian network generated by α=3+4i. α=3+4i 3i 3. Spanning Trees in Gk = (Vk,Ek) In this section we describe four spanning trees rooted at node 0 in G = (V ,E ), k 2, and we will show that -1+2i 2i 1+2i k k k ≥ they are pairwise node independent in Section 4. Any two spanningtreesrootedat0arenodeindependentwhenk =1. However,a motivationof our research is to tolerate transient -2+i -1+i i 1+i 2+i node failures, and thus it is assumed that k 2. ≥ Lemma 1: In G , k 2, there are at most four pairwise k ≥ -3 -2 -1 0 1 2 3 node independent spanning trees rooted at node 0. Proof: Lettherebefivesuchtrees.Consideranodev at distance2fromthenode0.Ineachofthetreesthereisapath -2-i -1-i -i 1-i 2-i of length at least 2 from the root 0 to v. By the pigeonhole principle,therearetwoofthetreeswheresuchpathstartsby the same edge. Such two trees are not node-independent. -1-2i -2i 1-2i To define our four trees, we will introduce some auxiliary notations. Recall that α = k + (k+1)i. Let EV = k k (v,(v+i)modα );v V denote the set of all vertical -3i { k ∈ k} edges in E . Clearly, EV = V . We define the counter clockwise 9k0o rotation(cid:12)(cid:12)mkap(cid:12)(cid:12)ping| ρk|on Vk as ρ(x+yi) = Fig. 1: Gaussian network generated by α=3+4i ( y+xi). The rotation ρ is a bijection on V . We extend k − this mapping to the set E ; for (u,v) E we define ρ(u,v) = (ρ(u),ρ(v)). Fokr a subgraph G∈′ =k(V′,E′) of 4i G we denote ρ(G′)=(ρ(V′),ρ(E′)). k -1+3i 3i 1+3i Now we are ready to describe four trees T(j) = k (cid:16)Vk.Ek(i)(cid:17),j = 1,2,3,4 - see Figures 3–6. In fact, we will -2+2i -1+2i 2i 1+2i 2+2i define the tree T(1) only, since the remaining three trees k can be described as T(j) = ρj−1 T(1) ,j = 2,3,4. It is -3+i -2+i -1+i i 1+i 2+i 3+i k (cid:16) k (cid:17) therefore sufficient to define the edge set E(1) as follows: k -4 -3 -2 -1 0 1 2 3 4 E(1) = EV (qi,(q+1)i0 q k 1) -3-i -2-i -1-i -i 1-i 2-i 3-i k k −{ | ≤ ≤ − } (q 1,q); k+1 q 0 −{( −k,ki) − ≤ ≤ } -2-2i -1-2i -2i 1-2i 2-2i −{ − } (q,q+1) 0 q k 1 ∪{ | ≤ ≤ − } ( 1+qi,qi) 1 q k 1 -1-3i -3i 1-3i ∪{ − | ≤ ≤ − } (k,ki) ∪{ } -4i Fig. 4: The tree T ,k =4 2 4i 4i -1+3i 3i 1+3i -1+3i 3i 1+3i -2+2i -1+2i 2i 1+2i 2+2i -2+2i -1+2i 2i 1+2i 2+2i -3+i -2+i -1+i i 1+i 2+i 3+i -3+i -2+i -1+i i 1+i 2+i 3+i -4 -3 -2 -1 0 1 2 3 4 -4 -3 -2 -1 0 1 2 3 4 -3-i -2-i -1-i -i 1-i 2-i 3-i -3-i -2-i -1-i -i 1-i 2-i 3-i -2-2i -1-2i -2i 1-2i 2-2i -2-2i -1-2i -2i 1-2i 2-2i -1-3i -3i 1-3i -1-3i -3i 1-3i -4i -4i Fig. 3: The tree T ,k =4 1 Fig. 5: The tree T ,k =4 3 Lemma 2: T(j),j =1,2,3,4 are spanning trees in G . k k Table 1: Steps from node 0 to node v =c+di in T(1) Proof: Since ρ is a bijection, it is enough to prove that k T(1) is a spanning tree. Based on the definition of E(1), the Nodec+di6=0 Path k 1≤c≤k−1 1≤d≤k−c 1cid graph Tk(1) consists of (cid:12)EkV(cid:12)−k −k −1+k +(k−1)+ c=0 d=k 1k+1 b1y=sh|oVwk|in−g 1thaetdgtehse.reW(cid:12)ies wa(cid:12)ilplatshhoiwn Tth(a1t)Tfkr(o1)misthceonnnoedcete0d c−=k≤0 c≤−1 10<≤dd≤≤kk−+1c 11kk+(−c+i)1k(−−di)1k−d k −k+1≤c≤0 −k−c≤d≤−1 1k+cik+d+1 to each other node v V . We will describe the path by a ∈ k 1≤c≤k −k+c≤d≤0 1c(−i)−d wordonthealphabet 1, 1,i, i ,thesymbolsdenotingthe { − − } directionoftheedgestobepassed.Thepathsaredescribedin Table 1, where the node v =c+di, for the values satisfying c + d k, is considered. Lemma 3: The height of each of the trees T(j) is 2k, j = | | | |≤ k 4i node s to any node d in G along any of the four trees k rooted at r. We will provide the routing decision in any -1+3i 3i 1+3i transient node t on the path from s to d and we will show thatsuchdecisioncanbetakenuniquelywithoutinformation on which of the four trees is involved. This fact implies the -2+2i -1+2i 2i 1+2i 2+2i independence of the four trees. Let s V . Considering the automorphism τ on G -3+i -2+i -1+i i 1+i 2+i 3+i ∈ k s k defined for x V as τ (x) = (x+s)modα and for k s k ∈ (x,y) E as τ ((x,y)) = (τ (x),τ (x)) allows us to -4 -3 -2 -1 0 1 2 3 4 ∈ k s s s describe routing for the case s = 0 only. The routing decisionsformessagessent froma nodes=0 to some node -3-i -2-i -1-i -i 1-i 2-i 3-i 6 d is then implied by the routing decisions for messages sent from node 0 to node (d s)modα . k -2-2i -1-2i -2i 1-2i 2-2i To simplify the routin−g process, we partition the Gaussian network into disjoint subsets as follows (see Figure 7): -1-3i -3i 1-3i B = x+yi 1<x<k,y =0 , 1 { | } R = x+yi k >x>0,y =1 , 1 { | } -4i Q = x+yi x>0,y >1,x+y k , 1 { | ≤ } P = x+yi x=k,y =0 , 1 { | } Fig. 6: The tree T ,k =4 S = x+yi x=1,y =0 , 4 1 { | } for j 2,3,4 : B =∈ρ{−j+1(B} ), R = ρ−j+1(R ), Q = ρ−j+1(Q ), j 1 j 1 j 1 1,2,3,4. P =ρ−j+1(P ), and S =ρ−j+1(S ). j 1 j 1 Proof: BasedonTable1,thelongestpathinT(1)starting k from the root 0 of length 2k leads to node i or to node 1. P2 − Example 4: The path from the root0 to the node 2+2i inT(1) isdescribedas14−2+1( i)4−2 =13( i)2.T−hepath 4 − − is the sequence B2 R2 Q1 0,1,2,3,3 i, 2+2i. (1) − − The path from the root 0 to the node 2 2i in T(2) can Q2 be obtained the following way. Since T−(2)−= ρ T(14) , we S2 R1 k (cid:16) 4 (cid:17) have to observe the path in T(1) from the root 0 to the node P3 B3 S3 0 S1 B1 P1 k ρ−1( 2 2i)= 2+2i,whichisthepath(1).Therequired R3 S4 pathi−nT−k(2) isobt−ainedfrom(1)byrotatingeachnodeusing Q4 the mapping ρ. The resulting path is Q3 R4 0,i,2i.3i,1+3i, 2 2i. B4 − − 4. Routing Using Node-Independent Spanning Trees P4 In Section 3, we defined four spanning trees of the graph Fig. 7: The partitions of Gaussian network G andinSection5wegivealgorithmsfortheirconstruction. k In this section we present routing algorithms for delivering Based on Figure 7, Table 2 shows the direction to which messages along any of the four trees. a message sent from the source node 0 is forwarded by a Routingamessageconsistsofthreetypesofnodes:source transient node t = t + t i, based on the location of the x y node,transientnodes,anddestinationnode.The sourcenode destination node d=d +d i=t. The left column denotes x y 6 is the sender who sends a message to a destination node. the location of the current transient node, the remaining A transient node is an intermediate node that forwards the columns denote the location of the destination node. The message toward the destination node. We will provide a directionisdescribedbyoneoftheelementsin 1, 1,i, i . { − − } routingalgorithmfordeliveringamessagevirtuallyfromany The superscripts in brackets are to be understood as com- Table 2: Message routing direction d′ +d′i=ρ−3(d +d i)= d +d i.Moreover,theactions x y x y − y x S1∪B1 R1 Q1 P1 inthe“then”and“else”cases(aswellasthetreeindexes)are S1∪B1 C1 C2 C2 1[1] to bemappedbyρ3. Therefore,if the transientnodeisin B2 R1 C3 C4 i[1] – andthedestinationnodeisin Q4, theactionto beperformed Q1 – −i[3] C5 – is given by the conditionalstatement “If t = k 1 d P1 −i[2] – – – then 1[2] else i[2]”. − y − − − y S2R∪2B2 i[–2] C–6 C–6 ii[[23]] Lem−ma 6: The trees Tk(j),j =1,2,3,4 are pairwise inde- Q2 i[3] – – – pendent. P2 −1[2] – – −1[2] Proof: The independencefollowsfrom the fact that the S3∪B3 C7 C7 C7 i[3] action of a transient node in each case in Table 2 (and the R3 – −i[3] −i[3] – corresponding rotations) is unique. Q3 – −i[3] −i[3] – The above routing algorithm is simplified in Algorithms P3 i[3] – – – S4∪B4 −i[4] −i[4] C8 −i[4] 1 and 2 as follows. Let S = sx +syi be the source node, R4 – – – – T = tx +tyi be the transient node, D = dx +dyi be the Q4 i[3] – – – destination node, and T(j), 1 j 4, be the tree used for P4 −1[4] −1[4] – −i[4] routing.Furthermore,letkρj be≤thep≤reviouslydefinedrotation where j denotes the number of rotations mod 4. We define Table 3: Conditional moves in the function degree (C) that returns the degree of node C j message routing direction in tree T(j). The partitions in Figure 7 are considered in the k C1 Iftx<dx then 1[1] following algorithms. else −1[2] To send a message from S to D using tree T(j), the node C2 Iftx=dx then i[1] S calls StartRouting(S, D, j) as described in Aklgorithm 1. else 1[1] Since thenetworkissymmetric,initially,the algorithmmaps C3 Iftx=dx then −i[4] else −1[4] thesourcenodeS tonode0 andallothernodesareassumed C4 Iftx<dx then 1[2] mapped accordingly. Then, it starts the routing process by else −1[4] sendingthemessagethroughtheedgethatisconnectedtothe C5 Iftx=dx then neighbornodecorrespondingtothetreeT(j),1 j 4.For Ifty <dy theni[1] k ≤ ≤ else−i[3] example, calling StartRouting(S, D, 2) will send a message else fromnodeS to nodeS+i throughthe +iedge since the +i Iftx<dx then1[2] edge of node S is the initial direction of the tree T(2). else−1[4] k C6 Ifty =dy then 1[2] else i[2] Algorithm 1 StartRouting(S, D, j) C7 Iftx=−k−1+dx then i[3] 1: Map the node S to node 0 and assume all other nodes else −1[3] are mapped accordingly including node D C8 Ifty =−k−1+dy ethlseen −−i1[[44]] 2: if j =1 then 3: Send through +1 packet (S, D, j) 4: else if j =2 then ments denoting which tree the message is passed along. 5: Send through +i packet (S, D, j) To determine the direction, in several cases an additional 6: else if j =3 then conditionistobeevaluated.Thedirectionisthentheresultof 7: Send through 1 packet (S, D, j) − oneoftheconditionalstatementslistedinthetable3,denoted 8: else as C ,...,C . 9: Send through i packet (S, D, j) 1 8 − Table 2 describes the action of any transient node for the 10: end if cases when the destination node is in one of the areas from B ,R ,Q ,P ,S ,only.Fortheremainingcases,theaction After that, each receiving node performs the steps de- 1 1 1 1 1 is obtained by applying the proper rotation. scribed in Algorithm 2 as follows. In lines 1-2, the current Example 5: Assume we want to determine the action of nodeC computesits addressrelativelyto nodeS after being a transient node from B given that the destination node mapped.Inlines3-5,everytransientnodewhichreceivesthe 2 is in Q . Since Q = ρ3(Q ), we have to observe the packet (S, D, j) sets the variables dir to be the direction of 4 4 1 action described in our table in the row S B and column the receiving edge, j to hold the tree number that is being 3 3 ρ−3(Q )=Q . The action is determined b∪y the conditional used for the routing, and r to be the number of rotations 4 1 statement C . Stated as “If t′ = k 1+ d′ then i[3] required to set the direction of the forwarding edge. Then, else 1[3]”,7where t′ +t′i=ρx−3(t−+−t i)= xt +t i−and in lines 13-14, the transient node checks weather it is the − x y x y − y x Table 4: A node parent and children edge directions as per destination node to consume the packet. Otherwise, the rest the partition in Figure 7 of the algorithm, the transient node forwards the message through a certain direction (edge) based on its degree and Nodein Parent Child the location of the destination node. Note that, Algorithms B1 −1 +1,±i 1 and 2 can be used for any S being a root by mapping R1 −i +i S and all other nodes accordingly. Since all other nodes are Q1 −i +i P1 −1 +1,±i alsomappedthenthetransientnode’saddressesarecomputed S1 −1 +1,±i relatively to address of node S. B2 −1 – R2 +i +1,−i Algorithm 2 Routing: Transient node process based the Q2 +i −i P2 −1 – received packet (S, D, j) S2 −1 – 1: Let C be the current working node of form x+yi B3 +i – R3 −i – 2: Compute the current node’s (C) relative address to S Q3 −i +i 3: Let dir be the receiving direction P3 +i – 4: Let j denotes the tree Tj to be used for the routing S3 +i – 5: Let r ← 4−j+1 mod 4 be the number of rotations BR44 −+ii +−ii 6: CND1 ← ρr(D) ∈ Vk−{R1∪Q1∪B3∪P3∪S3} Q4 +i −i 7: and P4 −i +i 8: Fx(ρr(C)) mod k=(Fx(ρr(D))+k) mod k S4 −i – 6 9: CND2 ρr(D) R2 Q2 B3 P3 S3 and ← ∈ ∪ ∪ ∪ ∪ 10: Fx(ρr(C))=Fx(ρr(D))+k+1 11: CND3 Fx(ρr(C))6+1=Fx(ρr(D)) elementary operations at most. 12: CND4 ← ρr(D) R1 Q1 R3 Q3 B4 P4 S4 Algorithm 2 is invoked by the rest of the nodes (transient ← ∈ ∪ ∪ ∪ ∪ ∪ ∪ and destination nodes) in the routing process. The com- 13: if C = D then munication overhead for a single node is 1 since it only 14: Consume packet forwards1 packet when a certain condition is satisfied. Note 15: else that, for a path of length n, the source node is not counted 16: if degreej(C) = 4 then since it only performs Algorithm 1. Consequently, the total 17: if CND1 or CND2 or CND3 then 18: Send through ρ2(dir) packet (S, D, j) communication overhead is n − 1. The local computation of Algorithm 2 for a single node is based on at most 12 19: else if CND4 then 20: Send through ρ3(dir) packet (S, D, j) operations as follows. 5 of them are assignment operations from line 3 to line 10. 7 operations are related to the 21: else conditions that check the degree of the current node and to 22: Send through ρ(dir) packet (S, D, j) decide in which direction to forward the packet. 1 operation 23: end if istosendapacketwhenacertainconditionissatisfied.Thus, 24: end if since the source node is not counted, the local computation 25: if degreej(C) = 3 then 26: if C + ρ3(dir) = D then for a path of length n is 12(n−1) 27: Send through ρ3(dir) packet (S, D, j) 5. Independent Spanning Trees Parallel 28: else 29: Send through ρ2(dir) packet (S, D, j) Construction 30: end if 31: end if In this section, we present parallel algorithmsto construct 32: if degreej(C) = 2 then the four independent spanning trees. Based on the partition 33: Send through ρ2(dir) packet (S, D, j) presentedinSection4,Table4showstheparentandchildren 34: end if nodes of each node in the first spanning tree. For example, 35: end if as shown in Figure 3, node i S4 has parent node 2i − ∈ − through the edge i and has no child. Furthermore, node − Since Algorithm 1 is used only once by the source node, 1 + i R2 has parent node 1 + 2i through +i edge − ∈ − itstotalcommunicationoverheadis1.Further,thelocalcom- and has child nodes i and 1 through +1 and i edges, − − putationinthealgorithmisbasedon5elementaryoperations respectively. as follows: 1 operation for mapping the node S, at most 3 In order to get the tables related to the other trees (T(2), k operations for checking the conditions, and 1 operation for T(3), T(4)), we define a 90o counterclockwise rotation map- k k sending the packet when a condition is satisfied. Thus, the ping σ on Table 4 as σ(Table 4) = (δ(Node in), ρ(Paernt), total computation work needed to forward a message is 5 ρ(Child)). The δ is a cyclic 5-shift on the "Node in" column and ρ is the previously defined rotation. Let the column Algorithm4Intermediatenodeprocessbasedonthereceived "Node in" = (B ,R ,Q ,P ,S ,B ,R ,...,P ,S ), the packet (addr) 1 1 1 1 1 2 2 4 4 cyclic 5-shift δ on column "Node in" is δ(Node in) = 1: Define a static variable a=0. (B2,R2,...,P4,S4,B1,R1,Q1,P1,S1). That is, we move 2: if a=0 then 6 the first 5 entries of the first column to the end of the same 3: Exit as this node already has been visited. column. Thus, the parent and child nodes of each node in 4: end if trees T(2), T(3), and T(4) are σ(Table 4), σ2(Table 4), and 5: a=a+1. k k k σ3(Table 4), respectively. The σt means that the rotation is 6: Compute the relative address of the current node based applied t times on Table 4. on the received addr. The following two parallel algorithms constructs the four 7: Matchthecurrentnoderelativeaddresswiththeentriesof independentspanningtrees. Algorithm3 triggersthe parallel Table 4 and σt(Table 4), for t=1,2,3, to determine the constructions of the trees from root S. currentnodeparentsandchildrenlinksinallindependent spanning trees. Algorithm 3 RootK(S): Parallel construction of four node 8: Sendtheaddrtoallneighbornodesexcepttheoneitwas independent spanning trees form a source node S already received from. 1: addr address of S. ← 2: S sends through +1 packet (addr) 3: S sends through +i packet (addr) in all directions, and hence each tree structure is traced. By 4: S sends through 1 packet (addr) Lemma 3, each tree height is 2k. Thus, each node will be − 5: S sends through i packet (addr) reached through at least one tree in at most 2k steps. The − nodesthat receive the packet in the 2kth step will forward it to their neighbors, and this adds the one extra step. In Algorithm 4, we use a static variable as per the C The total messages generated by the construction algo- programminglanguagesemantics.We assumethateachnode rithmsis6k2+6k+4aseachnodegeneratesthreemessages invokes Algorithm 4 as an independent local function. A except the root node generates four. staticvariableisdeclaredandinitializedonlyonceatthelocal Algorithm 3 runs in the root node only. Its local compu- function first invocation. Its lifetime extends till the global tation is limited to 5 operations as follows: one operation to termination of the parallel construction, and it preserves its assign the addr variable and 4 operationsto send a message value between different invocations. Using a static variable toallneighbornodes.Excepttherootnode,allnetworknodes enables deciding whether a node has been visited or not as execute Algorithm 4 whose local computations is around 15 in Algorithm 4, steps 1 to 5. If the node has been already operations. Thus, the total amount of computation work is visited, the current node simply ignore the received packet. 15(2k2+2k)+5=30k2+30k+5. Otherwise, the current node computes its relative address based on the received packet (addr). Then, it matches its 6. Simulation relative address with the entries of Table 4 and σt(Table 4), for t=1,2,3,to determinethe edge directionsof its parents This section discusses the simulation results of our study. and children in all spanning trees. After that, it forwards the We analyzed the construction of independent spanning trees received packet (addr) to all its neighbor nodes except the basedonthefollowingcases:Nofaultynode,1faultynode,2 one it has already received it from. faultynodes,and3 faultynodesin thenetwork.We assumed We will derive the algorithms’ number of steps assuming that each node can simultaneouslysend and receive to all its thateachnodecansimultaneouslysendandreceiveonallits neighbor nodes. We have simulated all possible faulty node edges. If the network is fault-free, the algorithms construct combinationsandmeasuredtheaverageofallmaximumsteps the four trees in k + 1 steps. This follows from the facts to constructthe treesorpathsindifferentnetworksasshown that the trees construction propagates in all directions and in Table 5 and Figure 8. We also measured the maximum of the network diameter is k. Thus, each node is reached in at all maximums as displayed in Table 6. most k steps. The nodes that receive the packet in the kth The simulation results are consistent with the bounds we step will forward it to their neighbors, and this constitutes derived in the previous section. the one extra step. If there are one to three node failures, the algorithms Table 5: Average maximum number of steps to construct all construct at least one fault-free path between each node in trees or paths. the network and the root node. In this case, however, the α 1+2i 2+3i 3+4i 4+5i 5+6i 6+7i 7+8i 8+9i 9+10i trees are not necessarily constructed as a faulty node could NoFaulty 2 3 4 5 6 7 8 9 10 split a spanning tree into two subgraphs. The construction is 1Faulty 2 3.333 4.5 5.6 6.666 7.714 8.75 9.777 10.8 2Faulty 2 3.515 4.847 6.061 7.213 8.329 9.421 10.498 11.563 bounded by 2k+1 steps. The trees construction propagates 3Faulty 2 3.618 5.094 6.417 7.658 8.849 10.009 11.145 12.266 Average Maximum Steps Using All-Port Model [6] B. Bose, B. Broeg, Y. Kwon, and Y. Ashir, “Lee distance and topo- logicalpropertiesofk-aryn-cubes,”IEEETransactionsonComputers, 14 vol.44,no.8,pp.1021–1030, 1995. 12 [7] B. Bose, A. Shamaei, and M. Flahive, “Higher dimensional gaussian 10 networks,” 2015. [8] W. J. Dally and C. L. Seitz, “The torus routing chip,” Distributed spetS 68 N1 oF aFualutylt yN oNdoede [9] cJ.omDpuuattion,g,S.voYl.al1a,mnaon.c4h,ilip,pa.n1d87L–.19N6i,,1In9t8e6r.connection Networks: An 4 2 Faulty Nodes Engineering Approach, 1st ed. Los Alamitos, CA, USA: IEEE 3 Faulty Nodes ComputerSocietyPress,1997. 2 [10] M. Flahive and B. Bose, “The topology of Gaussian and Eisenstein- 0 Jacobi interconnection networks,” IEEETransactions on Parallel and 1+2i 2+3i 3+4i 4+5i 5+6i 6+7i 7+8i 8+9i 9+10i Distributed Systems,vol.21,no.8,pp.1132–1142, August2010. Network ( ) ✂ [11] A.Grama,A.Gupta,G.Karypis,andV.Kumar,IntroductiontoParallel Computing, 2nd ed. Boston, MA, USA: Addison-Wesley Longman Fig. 8: Average maximum steps. PublishingCo.,Inc.,2003. [12] J.P.HayesandT.Mudge,“Hypercube supercomputers,” Proceedings oftheIEEE,vol.77,no.12,pp.1829–1841,1989. [13] J. P. Hayes, T. N. Mudge, Q. F. Stout, S. Colley, and J. Palmer, Table 6: Maximum of all maximums number of steps to “Architectureofahypercubesupercomputer.”inICPP,1986,pp.653– construct all trees or paths. 660. [14] K. Huber, “Codes over Gaussian integers,” IEEE Transactions on α 1+2i 2+3i 3+4i 4+5i 5+6i 6+7i 7+8i 8+9i 9+10i Information Theory,vol.40,no.1,pp.207–216,Jan.1994. NoFaulty 2 3 4 5 6 7 8 9 10 [15] Z. Hussain, B. AlBdaiwi, and A. Cerny, “Node-independent span- 1Faulty 2 4 6 8 10 12 14 16 18 ning trees in gaussian networks,” in Proceedings of the International 2Faulty 2 4 6 8 10 12 14 16 18 Conference on Parallel and Distributed Processing Techniques and 3Faulty 2 4 6 8 10 12 14 16 18 Applications(PDPTA). LasVegas,NV,USA:TheSteeringCommittee of The World Congress in Computer Science, Computer Engineering 7. Conclusions andAppliedComputing (WorldComp),2016,pp.24–29. [16] Z.Hussain,“Bettertrafficdistributionone-to-allbroadcastinhigherdi- Inthispaper,wepresentedconstructionsoffoursymmetric mensionalgaussiannetworks,”TheJournalofSupercomputing,vol.71, no.12,pp.4381–4399, 2015. node independent spanning trees in Gaussian networks, and [17] A. Itai and M. Rodeh, “The multi-tree approach to reliability in dis- proved their height is 2k. Using these trees, we designed tributednetworks,”Inf.Comput.,vol.79,no.1,pp.43–59,Oct.1988. routing algorithms that can be used in fault-tolerant and/or [Online]. Available: http://dx.doi.org/10.1016/0890-5401(88)90016-8 [18] C. J. P. J. H. Jordan, “Complete residue systems in the gaussian secure message communication applications. We also pre- integers,” Mathematics Magazine, vol. 38, no. 1, pp. 1–12, 1965. sented fault-tolerant parallel construction algorithms for the [Online]. Available: http://www.jstor.org/stable/2688007 presented trees. These algorithms require k + 1 steps if [19] M. S. Krishnamoorthy and b. Krishnamurthy, “Fault diameter of interconnection networks,” Comput. Math. Appl., vol. 13, the network is fault-free and 2k + 1 steps if one to three no. 5-6, pp. 577–582, Apr. 1987. [Online]. Available: faulty nodes exist. The total communication overhead of http://dl.acm.org/citation.cfm?id=35064.36256 these algorithms is 6k2 +6k +4, and the total amount of [20] J.-C. Lin, J.-S. Yang, C.-C. Hsu, and J.-M. Chang, “Independent spanning trees vs. edge-disjoint spanning trees in locally twisted computation work is 30k2 + 30k + 5. We simulated the cubes,” Information Processing Letters, vol. 110, no. 10, pp. 414 – constructions of the trees in fault-free and faulty networks. 419,2010. The simulation analysis is consistent with our theoretical [21] C. Martinez, R. Beivide, E. Stafford, M. Moreto, and E. Gabidulin, “ModelingtoroidalnetworkswiththeGaussianintegers,”IEEETrans- analysis. actions onComputers, vol.57,no.8,pp.1046–1056, Aug.2008. In future research we plan to investigate the constructions [22] C. Martinez, E. Vallejo, R. Beivide, C. Izu, and M. Moreto, “Dense of completely independent spanning trees in Gaussian net- Gaussian networks: Suitable topologies for on-chip multiprocessors,” International Journal ofParallelProgramming,vol.34,pp.193–211, works and similar regular topology. 2006. [23] A.Rescigno, “Vertex-disjoint spanning trees ofthe starnetwork with References applicationstofault-toleranceandsecurity,”InformationSciences,vol. 137,no.1-4,pp.259–276, 2001. [1] B. AlBdaiwi, Z. Hussain, A. Cerny, and R. Aldred, “Edge-disjoint [24] J.-S. Yang, H.-C. Chan, and J.-M. Chang, “Broadcasting node-independent spanning trees in dense gaussian networks,” The secure messages via optimal independent spanning trees in JournalofSupercomputing,vol.72,no.12,pp.4718–4736,December folded hypercubes,” Discrete Applied Mathematics, vol. 159, 2016. no. 12, pp. 1254 – 1263, 2011. [Online]. Available: [2] H.Arabnia andS.Bhandarkar, “Parallel stereocorrelation onarecon- http://www.sciencedirect.com/science/article/pii/S0166218X11001454 figurablemulti-ringnetwork,”TheJournalofSupercomputing,vol.10, [25] J.-S.Yang,J.-M.Chang,andH.-C.Chan,“Independentspanningtrees no.3,pp.243–269,1996. onfoldedhypercubes,” inProceedings ofthe200910thInternational [3] S. Bhandarkar and H. Arabnia, “The hough transform on a recon- Symposium on Pervasive Systems, Algorithms, and Networks, ser. figurable multi-ring network,” Journal of Parallel and Distributed ISPAN ’09. Washington, DC, USA: IEEEComputer Society, 2009, Computing, vol.24,no.1,pp.107–114,1995. pp.601–605. [4] S. M. Bhandarkar and H. R. Arabnia, “The REFINE multiprocessor –theoretical properties and algorithms,” Parallel Computing, vol. 21, no.11,pp.1783–1805,1995. [5] L.N.BhuyanandD.P.Agrawal,“Generalizedhypercubeandhyperbus structures foracomputernetwork,” IEEETransactions oncomputers, vol.100,no.4,pp.323–333,1984.

See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.