ROUTING PROPERTIES AND SCHEDULING METHODS

ROUTING PROPERTIES AND SCHEDULING METHODS 255 Because of this desirable property, the Clos network was widely adopted in traditional circuit-switched telephone networks, where a path is reserved in the network for each call. If a Clos network has enough central modules, a path can always be found for any call between an idle input and an idle output. Such a property is called nonblocking. There are however two senses of nonblocking: strict and rearrangeable. In a strictly nonblocking Clos network, every newly arriving call will find a path across the network without affecting the existing calls. In a rearrangeably nonblocking network, we may have to arrange paths for some existing calls in order to accommodate a new arrival. Readers are encouraged to learn more about circuit-switched Clos networks from the related references listed at the end of this chapter. This chapter will then focus on how the Clos network is used in packet switching. Section 10.1 describes the basic routing properties in a Clos network and formulates the routing as a scheduling problem. In the following sections, we will discuss several different scheduling approaches. Section 10.2 uses a vector for each input and output module to record the availability of the central modules. Those vectors are matched up in pairs, each of which has one vector for an input module and the other for an output module. For those pairs of modules that have a cell to dispatch between them, the two vectors will be compared to locate an available central module if any. This method is conceptually easy, but it requires a high matching speed. In Section 10.3, the ATLANTA switch handles the scheduling in a distributed manner over all central modules, each of which performs random arbitration to resolve the conflicts. Section 10.4 describes a concurrent dispatching scheme that does not require internal bandwidth expansion while achieving a high switch throughput. The path switch in Section 10.5 adopts the quasi-static virtual-path routing concept and works out the scheduling based on a predetermined central stage connection pattern, which may be adjusted when the traffic pattern changes. All of these will give us different viewpoints to look at the tradeoff between scheduling efficiency and complexity in a packet-switched Clos network.

10.1 ROUTING PROPERTIES AND SCHEDULING METHODS

A three-stage Clos network is shown in Figure 10.1. The first stage consists of k input modules, each of dimension n = m. The dimension of each central module in the middle stage is k = k. As illustrated in Figure 10.2, the routing constraints of Clos network are briefly stated as follows: 1. Any central module can only be assigned to one input of each input module, and one output of each output module; 2. Input i and output j can be connected through any central module; 3. The number of alternative paths between input i and output j is equal to the number of central modules. CLOS-NETWORK SWITCHES 256 For the N = N switch shown in Figure 10.1, both the inputs and the outputs are divided into k modules with n lines each. The dimensions of the input and output modules are n : m and m : n, respectively, and there are m middle-stage modules, each of size k = k. The routing problem is one of directing the input cells to the irrespective output modules without path conflicts. For every time slot, the cell traffic can be written as t t ⭈⭈⭈ t 1 , 1 1 , 2 1 , k . . . . . . T s , . . . t t ⭈⭈⭈ t k , 1 k , 2 k , k where t represents the number of cells arriving at the ith input module i, j destined for the jth output module. The row sum is the total number of cells arriving at each input module, while the column sum is the number of cells destined for each output module, and they are given by k R s t F n F m , i s 1, 2, . . . , k , 10.1 Ž . Ý i i , j js1 k S s t F n , j s 1, 2, . . . , k. 10.2 Ž . Ý j i , j is1 Since at most m cells for each output group are considered, the column sum constraint can then be rewritten as S F m, j s 1, 2, . . . , k. 10.3 Ž . j The routing requirement is to assign each cell a specific path through the first two stages such that no two cells from an input module will leave at the same outlet of the input module, and no two cells destined for the same output module will arrive at the same inlet of the output module. Such an assignment is guaranteed by the nonblocking property of the three-stage Clos network for m G n. Ž . Let us label the set of outlets from each input module by A i s 1, . . . , k i Ž . and the set of inlets into each output module by B j s 1, . . . , k . Each A j i or B contains exactly m elements denoting m physical lines. If these j elements are viewed as time slots instead of physical lines, then the first two Ž . Ž stages can be transformed into a k = k time᎐space᎐time TST switch see . Ž . Ž . Figure 10.3 , where each input frame A and output frame B has m slots. i j The assignment problem is now seen as identical to that of a classic TST switch, and the necessary and sufficient conditions to guarantee a perfect or Ž . Ž . w x optimal schedule are satisfied by 10.1 and 10.3 3 . For the assignment of an arbitrary cell at a given input module to its output module, the status of its ROUTING PROPERTIES AND SCHEDULING METHODS 257 Ž Fig. 10.3 A TST switch representation after the space-to-time transformation. 䊚1992 . IEEE. Ž . Ž . Fig. 10.4 Matching of A and B X s busy, blank s open . 䊚1992 IEEE. i j A and the corresponding B may be examined, as shown in Figure 10.4, i j Ž . where any vertical pair of idle slots representing physical lines could be chosen as a valid interconnect path. An overall schedule is perfect if all cells are successfully assigned without any path conflict. However, optimal scheduling requires global information on the entire traffic T, and the implementation tends to be very complex. CLOS-NETWORK SWITCHES 258

10.2 A SUBOPTIMAL STRAIGHT MATCHING METHOD