Wide-sense nonblocking for symmetric
or asymmetric 3-stage Clos networks
under various routing strategies
F.H. Chang
a, J.Y. Guo
a;∗;1, F.K. Hwang
a;, C.K. Lin
baDepartment of Applied Mathematics, National Chiaotung University, Hsinchu, Taiwan 30050, ROC bDepartment of Applied Mathematics, National Central University, Chungli, Taiwan, ROC
Received 14 November 2003; accepted 30 December 2003 Communicated by D.-Z. Du
Abstract
Bene8s established the notion of wide-sense nonblocking by constructing an example on the symmetric 3-stage Clos network under packing which requires less hardware compared to strict nonblocking. This has remained the only example of a wide-sense non-blocking 3-stage Clos network which is not strictly nonblocking. In this paper, we study packing as well as several other routing strategies which have been studied in the literature and proved that no other example exists for the symmetric 3-stage Clos network. We then extend the study to asymmetric 3-stage Clos network for the <rst time. In particular, we extend Bene8s example to asymmetric 3-stage Clos network and show that these are the only two possible examples for the strategies under study.
c
2003 Elsevier B.V. All rights reserved.
Keywords: Wide-sense nonblocking; WSNB; MI; STU; P; CD; CS
1. Introduction
A switching network is used to connect a sequence of (input, output) pairs sequen-tially, while connected pairs can be disconnected by releasing all links on its path. A switching network is said to be strictly nonblocking (SNB) if a pair can always be connected regardless of how the previous pairs are connected; it is said to be
∗Corresponding author.
E-mail address:[email protected](J.Y. Guo).
1Supported in part by the Republic of China National Science council under grant NSC 91-2115-M-009-001 and the Li-MCI Center.
0304-3975/$ - see front matter c 2003 Elsevier B.V. All rights reserved. doi:10.1016/j.tcs.2003.12.021
Fig. 1. C(3; 5; 4).
wide-sense nonblocking (WSNB) with respect to a routing strategy A if a pair can always be connected when the routing of every pair follows A. Often, A consists of a few rules and at a given moment, several routes all satisfy A. Then the network is WSNB under A if and only if for each such choice, subsequent pairs can always be connected.
The existence of a WSNB network was <rst demonstrated by Bene8s [1] for the symmetric 3-stage Clos network C(n; m; r) which has r crossbars F1; : : : ; Fr of size
n × m in the <rst stage, m crossbars S1; : : : ; Sm of size r × r in the second (middle)
stage, and r crossbars T1; : : : ; Tr of size n × m in the third stage (see Fig.1). Note that
a given pair of (input, output) <xes Fi and Tj; hence the path is determined by the
selection of Sk. It is well known [3] that C(n; m; r) is SNB if and only if m¿2n − 1.
Bene8s [1,2] proved that C(n; m; 2) is WSNB under ”packing”, which routes a path through a busiest (carrying most paths) middle switch if and only if m¿3n=2.
The notion of wide-sense nonblocking in switching networks is a fascinating idea to computer scientists. It suggests that the hardware (network components) can be reduced through intelligent software (routing) without aMecting the nonblocking prop-erty of the network. However, the only positive result about WSNB C(n; m; r) is the Bene8s result for the almost trivial network r = 2. Lots of eMorts have been spent to expand this result, but without success. This puzzle was eventually answered by re-sults coming from an unexpected direction, the negative side. Namely, the reason that
no WSNB C(n; m; r) have been found for r¿2 under packing is that they do not exist.
We review the literature in more detail. Five routing strategies have been proposed in the literature:
(1) Save the unused (STU): Do not route through an empty Sk unless there is no
choice.
(2) Packing (P): Route through a busiest, yet available, Sk.
(3) Minimum index (MI): For each pair, route in the order S1; S2; : : : ; Sk until the <rst
available one emerges.
(4) Cyclic dynamic (CD): If Sk was used last, try Sk+1; Sk+2; : : : :
(5) Cyclic static (CS): If Sk was used last, try Sk; Sk+1; : : : :
Note that P ⇒ STU. So WSNB under STU ⇒ WSNB under P since P is a choice of STU. On the other hand, not WSNB under P implies not WSNB under STU.
Smith [6] proved that C(n; m; r) is not WSNB under P or MI if m¡2n − n=r. Du et al. [4] improved to 2n − n=2r− 1 which was extended to cover CS in Hwang
[5]. For P, Yang and Wang [8] gave a linear programming formulation of the problem and ingeniously found the closed-form solution m¿2n − n=F2r−1 where F2r−1 is
the 2r − 1st Fibonacci number, as a necessary condition for C(n; m; r) to be WSNB. Actually, there was an earlier stronger result of Du et al. reported in the 1998 book of Hwang [5] that m¿2n − 1 is necessary and suPcient for C(n; m; r), n¿3, to be WSNB under P. This result for r¿3 together with Bene8s result for r = 2 gave a de<nitive answer to the WSNB property of C(n; m; r) under P. Finally, Tsai et al. [7] proved that for all n, there exists r large enough such that C(n; m; r) is not WSNB under any algorithm.
The proof of the m¿2n − 1 result by Du et al. is quite diPcult to check and the proof of Yang and Wang is also complicated. In this paper we give a much simpler proof which not only works for P (hence STU), but also for CD, CS and MI.
We also extend all these results to the asymmetric 3-stage Clos network C(n1; n2; m;
r1; r2) where the <rst stage has r1 crossbars with n1 inputs each, and the third stage
has r2 crossbars with n2 output each. This is the <rst time that WSNB is studied for
C(n1; n2; m; r1; r2). Among other things, we are able to extend Bene8s positive result on
packing to the asymmetric network, thus establishing the second positive result. We also show that no other positive result is possible for the 3-stage Clos network for P, STU, CD, CS and MI.
2. The symmetric case
A state of C(n; m; r) can be represented by an r × r matrix where cell (i; j) consists of the set of Sk carrying a path from Fito Tj. Then each row or column can have atmost n
entries and the entries must be all distinct. The n-uniform state is the matrix where each diagonal cell contains the set S1; : : : ; Sn and all other cells are empty. The 2n−n=2r−1
result was actually proved [5] for all algorithms which can reach the n-uniform state, which, as shown in [5], includes P, STU, MI and CS. Hung (private communication)
observed that CD can also reach the n-uniform state. We give a stronger result based on his method.
Lemma 1. CD can reach any state s from any state s.
Proof. Since we can disconnect all paths in s to reach the empty state, it suPces to prove for s the empty state. We prove this by adding each S
k in s to its proper cell
one by one. Suppose Sk is in cell (i; j). Consider a pair (Fi; Tj). Suppose CD assigns
Sh to connect the pair. If h = k, disconnect the pair and regenerate it immediately. Then
CS would assign Sh+1 to connect the pair. Repeat this until Sk is assigned. Since Sk is
arbitrary, s can be reached.
Corollary 2. CD can reach the n-uniform state.
For CS we prove a weaker property. Let [i; j] denote the set {Si; Si+1; : : : ; Sj} if i6j,
and the empty set if i¿j.
Lemma 3. Let state s be obtained from s by adding [i; j], i¡j, to a cell C. Then s can be reached from s under CS.
Proof. Suppose the last assignment is Sk in s. Since i¡j, we can add at least two
connections in C. Then Sk and Sk+1will be assigned. If k = i, disconnect the connection
through Sk and regenerate a connection in C, for which Sk+2will be assigned. Continue
this until Si and Si+1 are assigned. Then add j − i − 1 connections to C for which
Si+2; : : : ; Sj will be assigned.
Theorem 4. C(n; m; r) for r¿2 is WSNB under CD and CS if and only if m¿2n−1. Proof. The “if” part is trivial since C(n; 2n − 1; r) is SNB, hence WSNB. To prove the “only if” part, we claim that if m = 2n − 2, then there exists a blocking state.
It is well known [5] that it suPces to prove for the minimum r which is 2 here. By Lemmas 1 and 3, the state in which cell (1; 1) contains [1; n − 1] and cell (2; 2) contains [n; 2n − 2] can be reached. But a new pair (1; 2) is blocked.
Theorem 5. For P, hence STU, C(n; m; r) , r¿3, is WSNB if and only if m¿2n − 1.
Proof. The “if” part is trivial. We prove the “only if” part by showing that for n = 3 there exists a sequence of calls and disconnections forcing the use of 2n − 1 middle switches:
[1; n]
→ n [1; n − 1] n + 1 n + 1 → n n + 1 n + 2 [1; n − 1] n + 1 → n + 2 [1; n − 1]n [n + 1; n + 2] n + 1 → n [1; n − 1] [n + 1; n + 2] [n + 1; n + 2] → · · · → n [1; n − 1] [n + 1; 2n − 2] [n + 1; 2n − 2] → 2n − 1n [1; n − 1] [n + 1; 2n − 2] [n + 1; 2n − 2]
Note that this proof is much more elementary than the proof in [4]. For MI, we <rst prove a lemma.
Lemma 6. Consider a state s in C(n; m; 2) consisting of x (I1; O1) calls carried by the
set X of middle switches, and y (I2; O2) calls carried by the set Y of middle switches
such that X ∩ Y = ∅, X ∪ Y = {1; : : : ; x + y}. Then a state s can be obtained from s, where s is same as s except that x becomes x, and y becomes y= x + y − x. Proof. Without loss of generality, assume x¿x (otherwise we work with y). Delete x−x (I2; O2) calls carried by S = {the smallest x−x indices in Y } from s. Add x−x new (I1; O1) requests. By the MI rule, these new requests must be carried by S. Thus
s is obtained.
Theorem 7. C(n; m; r) for r¿2 is WSNB under MI if and only if m¿2n − 1. Proof. It suPces to prove that m = 2n − 1 is necessary for WSNB for r = 2.
By induction on n, m = 2n−3 is necessary for C(n−1; m; 2) to be WSNB. Therefore there exists a state
X 2n − 3
Y
in C(n; 2n − 1; 2), such that x = y = n − 2, X ∪ Y = {1; : : : ; 2n − 4}. Therefore we can obtain a state s from s by adding 2n−2 to the (1; 2) cell. Delete the four calls carried by [2n − 7; 2n − 4] in the (1; 1) and (2; 2) cells, and use Lemma 6 to rebalance the
members of calls carried by them, i.e., each carrying n−4 calls. Assign [2n−7; 2n−4] to cell (2; 1).
Next we delete [2n − 11; 2n − 8] from cells (1; 1) and (2; 2), do the balancing and assign [2n − 11; 2n − 8] to cell (1; 2). By repeatedly doing so, eventually (the last step may delete only two calls) we reach a state consisting of 2n − 2 distinct indices in cells (1; 2) and (2; 1). Thus a new (1; 1) request must be carried by M2n−1.
Corollary 8. For 3-stage Clos network C(n; m; r), let s be the state where X , Y , and Z are in cells (i1; j2), (i2; j1), and (i1; j1), respectively,
X Z
Y
where, min{Z}¿k, X ∩ Y = ∅, X ∪ Y = [1; k], k62(n − |Z|).
For each 6k and max{; k−}6(n−|Z|), let f(s) be the state which has f(X )
in cell (i1; j2), |f(X )| = , and f(Y ) in cell (i2; j1), such that f(X ) ∩ f(Y ) = ∅,
f(X ) ∪ f(Y ) = [1; k]. Then f(s) can be reached from s under MI.
3. The asymmetric case
Without loss of generality, we assume n1=n2 = k¿1 throughout this section. If
n1¿r2n2, then m = r2n2 is necessary and suPcient for C(n1; n2; m; r1; r2) to be either
SNB or WSNB. Therefore we assume r2¿n1=n2, or r2¿(n1+ 1)=n2.
Theorem 9. C(n1; n2; m; r1; r2) for r2¿2 is WSNB under CS and CD if and only if
m¿n1+ n2− 1.
Proof. The “if” part is trivial since C(n1; r1; n1+ n2− 1; n2; r2) is SNB. To prove the
“only if” part, we show that if m = n1+ n2− 2, then there exists a blocking state.
Clearly, we can reach the state
[1; n2] [n2+ 1; 2n2] : : : [kn2+ 1; n1− 1]
[n1; n1+ n2− 2]
(if [kn2+ 1; n1− 1] is an empty set, then the corresponding column does not exist).
Since row 1 has only n1− 1 entries and the last column has only n2− 1 entries, one
new connection can be requested in the cell (1; n1=n2 + 1), but no middle switch is
available.
The MI case is as follows. We <rst prove a lemma.
Lemma 10. C(n1; n2; m; r1; r2) with n1= n2+ 1, min{r1; r2}¿2, is not WSNB under
Proof. We prove, by induction on n2, the existence of a state which must use 2n2
middle switches. (1) n2= 2,
[1; 2] 3 → [1; 2] 3 → [1; 2] 43 (2) suppose that for n2= n the statement is true.
(3) n2= n + 1, since for n2= n the statement is true, we can reach a state s
X 2n
Y , |X | = n; |Y | = n − 1, X ∩ Y = ∅, and X ∪ Y = [1; 2n − 1]. Add 2n + 1 to cell (1; 2), since n2= n + 1, and delete the four numbers [2n − 4; 2n − 1] from
cell (1; 1) and (2; 2). By noting that Corollary 8 also applies to the asymmetric 3-stage Clos network,we can get a state s1,
X1 [2n; 2n + 1]
Y1 , |X1| = n − 3; |Y1| = n − 2, X1∩ Y1= ∅ and
X1∪ Y1= [1; 2n − 5].
Then, we add [2n − 4; 2n − 1] to cell (2; 1), and delete the four numbers [2n − 8; 2n − 5] from cell (1; 1) and (2; 2). By Corollary 8 again, we can reach a state s2,
X2 [2n; 2n + 1]
[2n − 4; 2n − 1] Y2 , |X2| = n − 4; |Y2| = n − 5, X2∩ Y2= ∅ and
X2∪ Y2= [1; 2n − 9].
Repeat the above steps, without loss of generality, we reach a state s, X
Y , |X| = n; |Y| = n + 1, X∩ Y= ∅, and X∪ Y= [1; 2n + 1]. Finally, we add 2n + 2 to cell (2; 2).
Corollary 11. C(n1; n2; m; r1; r2) with n2¡n1¡2n2, r1¿2; r2= 2, is not WSNB under
MI if m¡2n2.
Theorem 12. C(n1; n2; m; r1; r2) with n1¿n2, min{r1; r2}¿2, is WSNB under MI if
and only if m¿ min{n1+ n2− 1; r2n2}.
Proof. The “if” part is trivial. To prove the “only if” part, it suPces to show for r1= 2.
Case 1: n16(r2− 1)n2, assume n1= pn2+ q; 06q¡n2. Clearly, we can reach the
state
[1; n2] [n2+ 1; 2n2] : : : [x; n1− n2]
where x = (p − 2)n2+ 1, if q = 0; x = (p − 1)n2+ 1, if q = 0.
We can also move [1; n1− n2] from <rst row to second row by moving cell by cell
in the order from left to right.
Our focus is actually on the last two columns, i.e., the 2 × 2 submatrix M. The Set [1; n1− n2] in the <rst p − 1 or p columns serves the sole purpose that all entries in
M are larger than n1− n2. This is achieved by moving the set[1; n1− n2] to the row
where entries are to be added in M. The entries are added according to the proof of Lemma 6. Hence, eventually, we reach the state
[1; n2] [n2+ 1; 2n2] : : : [x; n1− n2] : : : X
Y
|X | = |Y | = n2− 1, X ∩ Y = ∅, and X ∪ Y = [n1− n2+ 1; n1+ n2− 2].
Finally, add n1+ n2− 1 to cell (1; r2).
Case 2: (r2− 1)n2¡n1¡r2n2, which implies (n1+ n2− 1)¿r2n2.
Clearly, we can reach the state
[1; n2] : : : [(r2− 3)n2+ 1; (r2− 2)n2]
Similar to Case 1, we can reach the state
[1; n2] : : : [(r2− 3)n2+ 1; (r2− 2)n2] X
Y
|X | = n2; |Y | = n2− 1, X ∩ Y = ∅, and X ∪ Y = [(r2− 2)n2+ 1; r2n2− 1].
Finally, add r2n2 to cell (1; r2).
Case 3: r2n26n1. This is a trivial case with m = r2n2.
Finally, we study the packing and STU strategies. Let Xij denote the set of
connec-tions from Ii to Oj. We <rst prove
Lemma 13. Suppose n1¿n2. Then |X11∪ X22|6n2; |X12∪ X21|6n2.
Proof. Suppose not, say, |X11∪ X22| = n2+1. Let y denote the (n2+1)st middle switch
added to cell (1; 1) or cell (2; 2). Without loss of generality, assume y is added to cell (2; 2). Then X11=X22= ∅ since otherwise, the (I2; O2) connection should be routed
through a middle crossbar in X11=X22 by the packing strategy. Therefore
and
|X11∪ X22| 6 n2− 1
since cell (2; 2) can have atmost n2 connections, including y, contradicting the
assump-tion that y is the (n2+ 1)st middle switch in X11∪ X22.
Similarly, we can prove |X12∪ X21|6n2.
Theorem 14. Suppose n1¿n2. Then C(n1; 2; m; n2; 2) is wide-sense non-blocking under
the packing or the STU strategy if and only if m¿ min{2n2; n2+ n1=2}.
Proof. Suppose n1¿2n2. Consider 2n2 connections for an input switch. They must be
routed through 2n2 distinct middle switches. On the other hand, there are atmost 2n2
connections, hence 2n2 middle switches suPce. Next suppose n162n2.
Necessity. [1; n2] [1; n2] → [1; n2− n1=2] [n2− n1=2] + 1; n2] → [1; n2− n1=2] [n2+ 1; n2+ n1=2] [n2− n1=2] + 1; n2]
The last state has n2− n1=2 + n1=2 + n1=2 = n2+ n1=2 elements.
Su?ciency. Supposed, to the contrary, that there exists a state such that a new request under the packing strategy will force the use of an idle middle crossbar y which will be the (n2+ n1=2 + 1)st middle crossbar in use. Without loss of generality, assume
y is in cell (2; 2). Then by an argument analogous to the one used in proving Lemma
13, X11⊆ X22 in that state. Therefore
X11∪ X12∪ X21∪ X22 = X12∪ X21∪ X22: Further |X12∪ X21|6n2; (by Lemma13) |X12∪ X22|6n2; |X21∪ X22|6n1: Hence |X12∪ X21∪ X22| 6 (n2+ n2+ n1)=2; or |X12∪ X21∪ X22| 6 n2+ n1=2:
Note that the proof of suPciency is simpler than Bene8s original proof for the sym-metric network.
Theorem 15. Suppose n1¿n2 and max{r1; r2}¿3. Then C(n1; r1; m; n2; r2) is
wide-sense nonblocking if and only if m¿ min{r2n2; n1+ n2− 1}.
Proof. The “if” part is trivial since the condition already guarantees strict nonblock-ingness by an extension of Clos result [3] to the asymmetric case. We now prove the “only if” part. If n1¿r2n2, then trivially, m¿r2n2 is necessary. Therefore we assume
n1¡r2n2. Case (i): r2= 2; r1¿3. [1; n2] n2 → [1; n2− 1] n2+ 1 n2 → [1; n2− 1] n2+ 1 n2 n2+ 1 → [1; n2− 1]; n2+ 1 n2 n2+ 1 → [1; n2− 1]; n2+ 1 [n2; n2+ 1] → [1; n2− 1] n2+ 2 [n2; n2+ 1]
Repeat such an operation, eventually we obtain [1; n2− 1] [n2; n2+ n1=2 − 1] → [1; n2− 1] n2+ n1=2 [n2; n2+ n1=2 − 1] Case (ii): r2¿3; r1= 2. First, [1; n2] [n2+ 1; 2n2] · · · [(r2− 3)n2+ 1; (r2− 2)n2− 1] [(r2− 2)n2; (r2− 1)n2− 2]
now, consider the last three columns,
de<ne A = [(r2− 3)n2+ 1; (r2− 2)n2− 1]; B = [(r2− 2)n2; (r2− 1)n2− 1] A B; (r2− 1)n2− 1 → A B; (r2− 1)n2− 1 (r2− 1)n2− 1 → A B (r(r2− 1)n2 2− 1)n2− 1 → A B; (r2− 1)n2 (r2− 1)n2 (r2− 1)n2− 1 → (r A B 2− 1)n2 (r2− 1)n2− 1 → A B; (r2− 1)n2 (r2− 1)n2− 1 → A B (r2− 1)n2− 1; (r2− 1)n2 → · · · → A B [(r2− 1)n2− 1; r2n2− 3]
de<ne C = [(r2−1)n2−1; r2n2−3] → A B r2n2C− 2 → A r B r2n2− 2 2n2− 2 C → A; r2n2− 2 r B 2n2− 2 C → A; r2n2− 2 B r2n2− 1 C → A; r2n2− 2 B r2n2− 1 C → A B r2n2− 1 C; r2n2− 2 → A; r2n2− 1 B C; r 2n2− 2 → A; r2n2− 1 B; r2n2− 2 C → [1; n2] [n2+ 1; 2n2] · · · A; r2n2− 1 B; r2n2− 2 r2n2 C Case (2): n16(r2− 1)n2. First, [1; n2] [n2+ 1; 2n2] · · · [n1− 2n2+ 1; n1− n2− 1] [n1− n2; n1− 2]
also, consider the last three columns,
de<ne, A = [n1− 2n2+ 1; n1− n2− 1]; B = [n1− n2; n1− 2]
similarly, we can get the following state A B [(n1− 1; n1+ n2− 3] de<ne C = [(n1− 1; n1+ n2− 3] → A B n1+ nC2− 2 → A n B n1+ n2− 2 1+ n2− 2 C → A B; n1+ n2− 2 C → [1; n2] [n2+ 1; 2n2] · · · A B; n1+ n2− 2 n1+ n2− 1 C Case (iii): r1¿3; r2¿3.
Let p = n1=n2. Then n26n1¡r2n2 implies 16p¡r2. It suPces to prove the state
can be reached since we can use Case (i) for the remaining r1× (r2− p + 1) array
with n
26n1¡2n2. Hence the total number of middle crossbars used is (p − 1)n2+
(n
1+ n2− 1) = n1+ n2− 1.
[1; n2] → [1; n2] [n2+ 1; 2n2] →
[1; n2] [n2+ 1; 2n2] [2n2+ 1; 3n2] → · · · → S
References
[1] V.E. Bene8s, Mathematical Theory of Connecting Networks and Telephone TraPc, Academic Press, New York, 1965.
[2] V.E. Bene8s, Blocking in the NAIU Network, AT&T Bell Labs Tech. Memo., 1985.
[3] C. Clos, A study of nonblocking switching networks, Bell System Technol. J. 32 (1953) 406–424. [4] D.Z. Du, P.C. Fishburn, B. Gao, F.K. Hwang, Wide-sense nonblocking for 3-stage Clos networks, in:
D.Z. Du, H.Q. Ngo (Eds.), Switching Networks: Recent Advances, Kluwer, Boston, 2001, pp. 89–100. [5] F.K. Hwang, The Mathematical Theory of Nonblocking Switching Networks, World Scienti<c, Singapore,
1998.
[6] D.G. Smith, Lower bound in the size of a 3-stage wide-sense nonblocking network, Electron. Lett. 13 (1977) 215–216.
[7] K.H. Tsai, D.W. Wang, F.K. Hwang, Lower bounds of wide-sense nonblocking Clos networks, Theoret. Comput. Sci. 261 (2001) 323–328.
[8] Y. Yang, W. Wang, Wide-sense nonblocking Clos networks under packing strategy, IEEE Trans. Comput. 45 (1999) 265–284.