Switching Fabrics

Switching Fabric Architectures

Common designs for switching fabrics, including Crossbar, Tree, Benes, and Clos networks.

Switching fabric definition

The is the internal hardware that creates paths between a switch's inputs and outputs. A fabric can be single-stage, connecting ports in one step, or multistage, combining smaller modules into a route. Its controller selects connections that satisfy transmission requests. For a fabric with NN inputs and NN outputs, the design must specify which pairs can operate simultaneously.

Many fabrics use a 2x2 switching element. It has two inputs, two outputs, and two states: bar (straight-through) and cross. Independent elements can operate in parallel. Cascading these elements creates multistage fabrics with more inputs and outputs.

The Crossbar Fabric

A crossbar is a grid of switching points with N2N^2 elements for an N×NN \times N fabric. Each point can be controlled independently, so a connection does not share an intermediate stage with another connection. Under one-to-one traffic, all idle input-output pairs can operate in parallel.

Operation and characteristics

  • Operation: To connect input ii to output jj, the switching element at the intersection of the ii-th row and jj-th column is activated.
  • Advantage: With an idle input and an idle output, the fabric is and can establish the requested connection regardless of other active connections.
  • Disadvantage: A single-stage crossbar has N2N^2 switching points, so cost and wiring grow quadratically with NN. Multistage fabrics built from 2x2 elements reduce the point count relative to a full grid, but add stages and more complex control. Path length and delay then depend on the particular multistage architecture, so the design must balance cost, signal equalization, and control complexity.

Multistage fabrics: Clos and Beneš

Multistage interconnection networks (MINs) reduce the element count relative to a large crossbar by combining smaller modules into stages. Clos and Beneš networks are standard examples.

Clos Network

A Clos network has three stages: an input stage with rr switches of size n×mn \times m, a middle stage with mm switches of size r×rr \times r, and an output stage with rr switches of size m×nm \times n. It has nrnr inputs and the same number of outputs. The number of middle-stage switches, mm, determines the number of available paths between stages. It is strictly non-blocking when the middle-stage count satisfies m≥2n−1m \ge 2n-1, while m≥nm \ge n is sufficient for rearrangeable non-blocking operation.

Beneš Network

A Beneš network is a recursive form of a Clos network. It is . Establishing a new connection may require changing existing paths to remove a blocking condition. For NN ports, with NN a power of two, the network has 2log⁡2N−12\log_2N-1 stages with N/2N/2 2x2 elements in each stage. For a comparable number of ports, it uses fewer switching elements than a strictly non-blocking Clos network, with more complex control.

Other fabric architectures

Other architectures combine performance, cost, and control complexity in different ways.

Tree Architecture

This fabric uses 1xN splitters at the input and Nx1 combiners at the output. A splitter and a combiner can be built as cascades of 2x2 elements. Each branch carries only a fraction of the input optical power, so the number of elements and the splitting and combining losses increase as the port count grows.

Baseline Fabric

A Baseline network has one possible path for each input-output pair. At each stage, a destination-address bit selects the straight-through or cross state of the 2x2 element. Equal stage counts give the same attenuation for identical elements, which simplifies signal processing. The network is blocking: existing connections can occupy required elements even when the requested input and output are free.

Related articles