Encoding Process MULTICAST COPY NETWORKS

MULTICAST COPY NETWORKS 129 䢇 If m s 0 and M s 1, then replicate the cell, modify the headers of k k Ž . both copies according to the scheme described below , and send each copy out on the corresponding link. The modification of a cell header is simply splitting the original address interval into two subintervals, as expressed in the following recursion: For the cell sent out on link 0, min k s min k y 1 s sm . . . m , Ž . Ž . 1 N max k s M . . . M 01 . . . 1, Ž . 1 ky1 and for the cell sent out on link 1, min k s m . . . m 10 . . . 0, Ž . 1 ky1 max k s max k y 1 s M . . . M . Ž . Ž . 1 N Figure 5.26 illustrates the Boolean interval splitting algorithm. From the rules it is realized that m s M , i s 1, . . . , k y 1, holds for every cell that i i arrives at stage k. The event m s 1 and M s 0 will never occur. k k

5.6.1.3 Nonblocking Condition of Broadcast Banyan Networks A

broadcast banyan network is nonblocking if the active inputs x , . . . , x and 1 k the corresponding sets of outputs Y , . . . , Y satisfy the following: 1 k 1. Monotonicity: Y - Y - ⭈⭈⭈ - Y or Y Y ⭈⭈⭈ Y . 1 2 k 1 2 k 2. Concentration: Any input between two active inputs is also active. The above inequality Y - Y means that every output address in Y is less i j i than any output address in Y . Figure 5.27 illustrates a nonblocking example j with active inputs x s 7, x s 8, x s 9, and corresponding outputs Y s 1 2 3 1 4 4 4 1, 3 , Y s 4, 5, 6 , Y s 7, 8, 10, 13, 14 . 2 3

5.6.2 Encoding Process

The RAN, together with the DAEs, is used to arrange the destination addresses for each cell so that every eligible cell can be replicated appropri- ately in the broadcast banyan network without any conflicts. Cell replications in the broadcast banyan network are aided by two processes, an encoding process and a decoding process. The encoding process transforms the set of copy numbers, specified in the headers of incoming cells, into a set of monotone address intervals that form the cell headers in the broadcast banyan network. This process is carried out by a running adder network and a set of dummy address encoders. The decoding process determines the destinations of copies with the TNTs. BANYAN-BASED SWITCHES 130 Fig. 5.26 The Boolean interval-splitting algorithm generates the tree while replicat- ing a cell according to the address intervals. The recursive structure of the log N-stage running adder network is 2 Ž . illustrated in Figure 5.28. The adder network consists of Nr2 log N adders, 2 each with two inputs and two outputs, where a vertical line denotes a pass. The east output is the sum of the west and the north inputs, while the south output just propagates the north input down. The running sums of CN’s are then generated at each port after log N stages, before the dummy address 2 encoders form the new headers from adjacent running sums. The new header MULTICAST COPY NETWORKS 131 Fig. 5.27 An example to demonstrate the nonblocking condition of a broadcast banyan network. Fig. 5.28 A running adder network and dummy address encoders. BANYAN-BASED SWITCHES 132 consists of two fields: one is the dummy address interval, represented by two Ž . log N-bit binary numbers the minimum and the maximum , and the other 2 contains an index reference, which is equal to the minimum of the address interval. Note that the length of each interval is equal to the corresponding copy number in both addressing schemes. Denoting by S the ith running sum, the sequence of dummy address i intervals will be generated as follows: 0, S y 1 , S , S y 1 , . . . , S , S y 1 , Ž . Ž . Ž . 1 Ny2 Ny1 where the address is allocated beginning with 0. As shown in the previous section, this sequence satisfies the nonblocking condition over the broadcast banyan network.

5.6.3 Concentration