12.07.2015 Views

Fault-tolerant Routing in Metacube - CiteSeerX

Fault-tolerant Routing in Metacube - CiteSeerX

Fault-tolerant Routing in Metacube - CiteSeerX

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Table 1. Multi-channel examplesExample 1 Example 2 Example 3 Example 4(0000000000,0001000000) (0000000000,0001011100) (0000000000,0100001111) (0000000001,1101000000)P 0 ( j = 0) P 1 ( j = 1) P 0 ( j = 0) P 1 ( j = 1) P 0 ( j = 0) P 1 ( j = 1) P 0 ( j = 0) P 1 ( j = 1)0000000000 0000000000 0000000000 0000000000 0000000000 0000000000 0000000001 00000000010100000000 1000000000 0100000000 1000000000 0100000000 1000000000 0100000001 10000000010100000100 1000010000 0100000100 1000100000 0100000100 1000010000 0100000101 10000100011100000100 1100010000 1100000100 1100100000 0100001100 1100010000 1100000101 11000100011101000100 1101010000 1101000100 1101100000 1100001100 0100010000 1101000101 11010100011001000100 0101010000 1001000100 0101100000 1000001100 0100010100 1001000101 01010100010001000100 0001010000 1001010100 0101100100 0000001100 0100011100 0001000101 00010100010101000100 1001010000 0001010100 0101101100 0000001101 0000011100 0001000100 00010100000101000000 1001000000 0101010100 0001101100 0000001111 0000011101 0101000100 10010100000001000000 0001000000 0101011100 1001101100 0100001111 0000011111 0101000000 10010000000001011100 1001111100 1000011111 1101000000 11010000001001011100 10000011110001011100 11000011110100001111end.v i ) is constructed by the cross-edges specifiedby Z j .Example 1: Assume m = k = 2. c u = c v = 0, C u ={0,1,2,3} and C v = {64,65,66,67}. Accord<strong>in</strong>g to the algorithm,the four node pairs are (0,64), (1,65), (2,66),(3,67). We only show the two paths for (0,64), so thesimplified notations u = 0 and v = 64 are used (ignored ifor i = 0,1,2,3). S<strong>in</strong>ce M u [1] = M v [1] = 00 and M u [2] =M v [2] = 00, we choose y = 2 for both j = 0 and 1 as akey-bit of type 1. The two paths from node 0 to node64 of class 0 are shown <strong>in</strong> Table 1. The key-bit is shownwith boldface. |P 0 | = |P 1 | = d(u,v) + 4 = 5 + 4 = 9, whered(0,64) = H(0,64) + 2 2 = 1 + 4 = 5.Example 2: Assume m = k = 2. c u = c v = 0, C u ={0,1,2,3} and C v = {92,93,94,95}. (0,92) a pair. Let u =0 and v = 92. S<strong>in</strong>ce M u [1] = 00 and M v [1] = 11, we choosey = 2 for j = 0 as a key-bit of type 2. S<strong>in</strong>ce M u [2] = 00 andM v [2] = 01, we choose y = 3 for j = 1 as a key-bit of type 1.The two paths from node 0 to node 92 are shown <strong>in</strong> Table 1.|P 0 | = d(u,v) + 2 = 10 and |P 1 | = d(u,v) + 4 = 12, whered(0,92) = H(0,92) + 2 2 = 4 + 4 = 8.Example 3: Assume m = k = 2. c u = 0, c v = 1, C u ={0,1,2,3} and C v = {3,7,11,15}. The four pairs of thetwo clusters are (0,15), (1,11), (2,7), (3,3). To constructthe two paths for pair (0,15), we notice that |c u ⊕ c v | = 1and c (0)u = c v . Therefore, we construct path P 0 by Case 2.1.We choose y = 2 for j = 1. The two paths from node u =0000000000 to node v = 0100001111 are shown <strong>in</strong> Table 1.|P 0 | = d(u,v)+1 = 9, |P 1 | = d(u,v)+4+|Z 1 | = 8+4+1 =13, where d(0,15) = H(0,15) + 2 2 = 4 + 4 = 8.Example 4: Assume m = k = 2. c u = 0, c v = 3, C u ={0,1,2,3} and C v = {0,64,128,192}. The four pairs of thetwo clusters are (0,0), (1,64), (2,128), (3,192). S<strong>in</strong>ce|c u ⊕ c v | = 2, we construct path P 0 and P 1 for pair (1,64)by Case 2.2. We choose y = 2 for both j = 0 and 1. S<strong>in</strong>cec (0)u = c (1)v and c (1)u = c (0)v , we have |Z 0 | = |Z 1 | = 1. The twopaths from node u = 0000000001 to node v = 1101000000are shown <strong>in</strong> Table 1. |P 0 | = |P 1 | = d(u,v) + 4 + |Z 1 | = 5 +4 + 1 = 10, where d(1,64) = H(1,64) + 2 2 = 1 + 4 = 5.We first prove that the k paths (u : u ( j) → v ( j) : v), 0 ≤j ≤ k − 1, constructed <strong>in</strong> Case 1, are disjo<strong>in</strong>t. For any twopaths P j1 and P j2 , if one of them has a key-bit of type 1 thenit is clear that they cannot <strong>in</strong>tersect each other s<strong>in</strong>ce no otherpath will change the value of that key-bit. If the key-bits ofthe two paths are of type 2, from the def<strong>in</strong>ition of type 2key-bit, we know that the two paths cannot <strong>in</strong>tersect eachother when we use the nodes <strong>in</strong> the hamiltonian cycle that∈ H k , path P j2 updatesthe values <strong>in</strong> field M[c ( j1) ] and the values <strong>in</strong> the field M[c j2) ]was partially updated only (the key-bit changed and otherbits unchanged), however, the values <strong>in</strong> the field M[c ( j2) ]for P j1 is either unchanged or fully updated. Therefore, twopaths cannot meet at the nodes of class c ( j1) . Similarly, theyare not c ( j 1)u nor c ( j 2)u . At node c ( j 1)ucannot meet at the nodes of class c ( j 2)u . We conclude thatthe k paths are disjo<strong>in</strong>t. Next, s<strong>in</strong>ce each pair (u i ,v i ) has aunique node_id and this unique node_id will become partof the cluster_id of the nodes <strong>in</strong> path (u (p) → v (q) ), differentpaths cannot pass through the same cluster. Therefore, allk2 m paths for connect<strong>in</strong>g C u and C v are disjo<strong>in</strong>t for Case 1.ii348

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!