Three-stage constructions of switch fabricscschang/com5353/Chapter1d.pdfN crossbar switch fabric is...

33
Three-stage constructions of switch fabrics Clos networks Rearrangeable networks Benes networks

Transcript of Three-stage constructions of switch fabricscschang/com5353/Chapter1d.pdfN crossbar switch fabric is...

Page 1: Three-stage constructions of switch fabricscschang/com5353/Chapter1d.pdfN crossbar switch fabric is N2. It may not scale for switches with a large number of input/output ports. The

Three-stage constructions of switch fabrics

Clos networksRearrangeable networksBenes networks

Page 2: Three-stage constructions of switch fabricscschang/com5353/Chapter1d.pdfN crossbar switch fabric is N2. It may not scale for switches with a large number of input/output ports. The

Clos Networks

The number of cross points in an N×N crossbar switch fabric is N2.It may not scale for switches with a large number of input/output ports.The idea is to build a large crossbar switch fabric by connecting smaller crossbar switch fabrics.

Page 3: Three-stage constructions of switch fabricscschang/com5353/Chapter1d.pdfN crossbar switch fabric is N2. It may not scale for switches with a large number of input/output ports. The

Clos Networks: three-stage construction

m1 x r2

r1 x r3

r1 x r3

m1 x r2 r2 x n3

r2 x n3

r1 switches

r2 switches

r3 switches

m1 r2 r1

Page 4: Three-stage constructions of switch fabricscschang/com5353/Chapter1d.pdfN crossbar switch fabric is N2. It may not scale for switches with a large number of input/output ports. The

Clos networks: main theorem

If r2 ≥ m1 + n3 -1, then the three-stage Closnetwork is non-blocking, i.e., there is a non-conflicting path from a free input to a free output.

……

……

……

a

b

1m

3n

11 −m

13 −n

11 −m

13 −n

1

1

Page 5: Three-stage constructions of switch fabricscschang/com5353/Chapter1d.pdfN crossbar switch fabric is N2. It may not scale for switches with a large number of input/output ports. The

Rearrangeable NetworksA special case of the three-stage Clos network is when m1 =r2 =n3 and r1 =r3=k.Let N = m× k.

m x m

k x k

k x k

m x m m x m

m x m

mswitches

k switches

k switches

Page 6: Three-stage constructions of switch fabricscschang/com5353/Chapter1d.pdfN crossbar switch fabric is N2. It may not scale for switches with a large number of input/output ports. The

Rearrangeable Networks

Theorem. The three-stage network realizes all the N× N sub-permutation matrices, i.e., we can find non-conflicting paths from all inputs to all outputs as long as the connection pattern is a sub-permutation matrix.

Page 7: Three-stage constructions of switch fabricscschang/com5353/Chapter1d.pdfN crossbar switch fabric is N2. It may not scale for switches with a large number of input/output ports. The

A constructive proof

Number the switches at the first stage from 1 to k.Do the same for the switches at the third stage.Use the (i,l)th input, to denote the lth input of the ith switch at the first stage.Use the (j,l)th output, to denote the lthoutput of the jth switch at the third stage.

Page 8: Three-stage constructions of switch fabricscschang/com5353/Chapter1d.pdfN crossbar switch fabric is N2. It may not scale for switches with a large number of input/output ports. The

Use the indicator variables to represent a connection pattern between the N inputs and the Noutputs.

Let

qi,j represents the number of paths required from the ith switch at the first stage to the jth switch at the third stage.

Page 9: Three-stage constructions of switch fabricscschang/com5353/Chapter1d.pdfN crossbar switch fabric is N2. It may not scale for switches with a large number of input/output ports. The

The number of paths from the ithswitch at the first stage cannot be larger than the number of its inputs

The number of paths to the jth switch at the third stage cannot be larger than the number of its outputs

Page 10: Three-stage constructions of switch fabricscschang/com5353/Chapter1d.pdfN crossbar switch fabric is N2. It may not scale for switches with a large number of input/output ports. The

A constructive proofUse the (framed) Birkhoff-von Neumann decomposition to decompose the k×kmatrix Q=(qi,j) into the sum of m k×ksub-permutation matrices.Set the connection patterns of the m k×kswitches at the second stage with these m sub-permutation matrices.A connection from the (i,l1)th input to the (j,l2)th output can be routed through one of the switches at the second stage with its ith input connected to its jth output.

Page 11: Three-stage constructions of switch fabricscschang/com5353/Chapter1d.pdfN crossbar switch fabric is N2. It may not scale for switches with a large number of input/output ports. The

Example

Consider a three-stage network with m=10 and k=3.Suppose that

Page 12: Three-stage constructions of switch fabricscschang/com5353/Chapter1d.pdfN crossbar switch fabric is N2. It may not scale for switches with a large number of input/output ports. The
Page 13: Three-stage constructions of switch fabricscschang/com5353/Chapter1d.pdfN crossbar switch fabric is N2. It may not scale for switches with a large number of input/output ports. The

Non-blocking Networks vs. Rearrangeable Networks

The implementation complexity of therearrangeable network is much weaker than the non-blocking three-stage network.Finding the paths between the inputs and the outputs is much more difficult in therearrangeable network than that in the non-blocking three-stage network.The Slepian-Duguid algorithm can be used for re-routing existing paths in therearrangeable network.

Page 14: Three-stage constructions of switch fabricscschang/com5353/Chapter1d.pdfN crossbar switch fabric is N2. It may not scale for switches with a large number of input/output ports. The

The Lee-Hwang-Capinellialgorithm

It is more efficient than the Birkhoff-von Neumann algorithm in finding the sub-permutation matrices in the central stage.Extend the k×k Paull matrix to a k×mspecification matrix that explicitly specifies every sub-permutationin thePaull matrix.The lth column represents the sub-permutation for the lth sub-permutation matrix.

Page 15: Three-stage constructions of switch fabricscschang/com5353/Chapter1d.pdfN crossbar switch fabric is N2. It may not scale for switches with a large number of input/output ports. The

Paull matrix

Specification matrix

Page 16: Three-stage constructions of switch fabricscschang/com5353/Chapter1d.pdfN crossbar switch fabric is N2. It may not scale for switches with a large number of input/output ports. The

The Lee-Hwang-Capinellialgorithm

Page 17: Three-stage constructions of switch fabricscschang/com5353/Chapter1d.pdfN crossbar switch fabric is N2. It may not scale for switches with a large number of input/output ports. The

Example

Consider a three-stage network with m=10 and k=3.Consider the following frame matrix.

All the row sums and column sum are 10.

Page 18: Three-stage constructions of switch fabricscschang/com5353/Chapter1d.pdfN crossbar switch fabric is N2. It may not scale for switches with a large number of input/output ports. The
Page 19: Three-stage constructions of switch fabricscschang/com5353/Chapter1d.pdfN crossbar switch fabric is N2. It may not scale for switches with a large number of input/output ports. The

Initial specification matrix

•First row: six 1's, three 2's, and a 1 .

•Second row: three 1's, two 2's and five 3's.

•Third row: a 1, five 2's and four 3's.1-excessive 1-deficient

Page 20: Three-stage constructions of switch fabricscschang/com5353/Chapter1d.pdfN crossbar switch fabric is N2. It may not scale for switches with a large number of input/output ports. The

The element 1 is balanced.

Page 21: Three-stage constructions of switch fabricscschang/com5353/Chapter1d.pdfN crossbar switch fabric is N2. It may not scale for switches with a large number of input/output ports. The

The next smallest element that has not been balanced is 2.

2-excessive

Pairwise interchange

2-deficient

j> x?

Page 22: Three-stage constructions of switch fabricscschang/com5353/Chapter1d.pdfN crossbar switch fabric is N2. It may not scale for switches with a large number of input/output ports. The

Ordered Slepian-Duguid algorithm!!!

Page 23: Three-stage constructions of switch fabricscschang/com5353/Chapter1d.pdfN crossbar switch fabric is N2. It may not scale for switches with a large number of input/output ports. The

1-deficeint

Another row with 1

Pairwise interchange

3>2. Go back to step (iii).

1-excessive

Page 24: Three-stage constructions of switch fabricscschang/com5353/Chapter1d.pdfN crossbar switch fabric is N2. It may not scale for switches with a large number of input/output ports. The

2-excessive 2-deficient

Pairwise interchange

Now every column of H is a permutation.

Page 25: Three-stage constructions of switch fabricscschang/com5353/Chapter1d.pdfN crossbar switch fabric is N2. It may not scale for switches with a large number of input/output ports. The
Page 26: Three-stage constructions of switch fabricscschang/com5353/Chapter1d.pdfN crossbar switch fabric is N2. It may not scale for switches with a large number of input/output ports. The

Complexity of the Lee-Hwang-Capinelli algorithm

Each j-excessive column in (iii), it takes at most j pairwise interchanges. (Why?)As the number of j -excessive columns is bounded by m, the number of pairwiseinterchanges needed for j to be balanced is bounded by mj.Summing up j=1,2,…, k shows that the complexity O(mk2)=O(Nk), where N=mk is the total number of inputs of the N×N three stage switch.The complexity of the framed Birkhoff-von Neumann algorithm is O(mk2.5).

Page 27: Three-stage constructions of switch fabricscschang/com5353/Chapter1d.pdfN crossbar switch fabric is N2. It may not scale for switches with a large number of input/output ports. The

Benes NetworksWhen N is a power of 2, one can construct a rearrangeable network by using 2×2 switches.

2N

2N

2 x 2 2 x 2

2 x 22 x 2

22NN

22NN

Page 28: Three-stage constructions of switch fabricscschang/com5353/Chapter1d.pdfN crossbar switch fabric is N2. It may not scale for switches with a large number of input/output ports. The

An 8×8 Benes network1st

stage 2nd stage 3rd stage

2x2

2x2

2x2

2x2

2x2

2x2

2x2

2x2

2x2

2x2

2x2

2x2

2x2

2x2

2x2

2x2

2x2

2x2

2x2

2x2

4th stage 5th stage

Page 29: Three-stage constructions of switch fabricscschang/com5353/Chapter1d.pdfN crossbar switch fabric is N2. It may not scale for switches with a large number of input/output ports. The

Complexity of an N×NBenes network

The number of stages of is 2log2N-1.The number of 2×2 switches is N log2 N – N/2.The minimum number of switches to implement all the permutation matrices is log2(N!)=O(Nlog2N).

Page 30: Three-stage constructions of switch fabricscschang/com5353/Chapter1d.pdfN crossbar switch fabric is N2. It may not scale for switches with a large number of input/output ports. The

Connection patterns in an 8×8 Benes network

Page 31: Three-stage constructions of switch fabricscschang/com5353/Chapter1d.pdfN crossbar switch fabric is N2. It may not scale for switches with a large number of input/output ports. The

Upper 4×4 switch Lower 4×4 switch

Page 32: Three-stage constructions of switch fabricscschang/com5353/Chapter1d.pdfN crossbar switch fabric is N2. It may not scale for switches with a large number of input/output ports. The

Upper 4×4 switch

Upper 2×2 switch

Lower 2×2 switch

Page 33: Three-stage constructions of switch fabricscschang/com5353/Chapter1d.pdfN crossbar switch fabric is N2. It may not scale for switches with a large number of input/output ports. The

Connection patterns in the 8×8 Benes network

1ststage 2nd stage 3rd stage 4th stage 5th stage

12

34

87

65

87

65

12

34

1

2

3

4

8

7

6

5

1

3

5

7

8

6

4

2

5

1

7

3

4

8

2

6

7

5

3

4

2

1

6

8