The FPX: Field-programmable Port Extender

By joining the WUGS with the iiQueue, an enhanced switch is created that combines the scalability of the multi-stage Benes switch with the flexibility of a per-flow input queue. A diagram of this combined system is shown below. This enhanced switch enables research, development, and implementation of new intelligent queue systems that provide per-flow Quality of Service, congestion control.


Block diagram of WUGS with FPX modules

As shown in the diagram, the queuing modules are distributed across the inputs of the switch. Each queue maintains linked-list pointers in memory to track individual traffic flows. Pointers to each flow are then maintained both in a circuit table and in a service queue. The service queue tracks flows on a per-destination basis, allowing an input scheduler to achieve optimal throughput. The circuit index tracks cells on a flow basis, enabling flows to be served in response to an output port request.