Patent ID: 8274988

Claim:
A method for forwarding data through a portion of a three-stage memory-memory-memory (MMM) input-queued Clos-network (IQC) packet switch, the data received at an input port for the three-stage MMM IQC packet switch, the data partitioned into one or more cells destined for an output port coupled to an output module for the three-stage MMM IQC packet switch, a cell from among the one or more cells forwarded to an input module coupled to the input port, the method comprising: selecting a virtual central module queue maintained at the input module to identify a selected virtual central module queue, the selected virtual central module queue maintained at the input module to store the cell forwarded from the input port and destined for the output port, wherein the selection is based on an arbitration scheme and also based on implementing a credit based flow control mechanism to determine whether a virtual output module queue maintained at a central module from among one or more central modules coupled to the input module is available to receive the cell; and forwarding the cell from the selected virtual central module queue to the virtual output module queue, the virtual output module queue being associated with the input module and also being associated with the destination output port for the cell, wherein implementing the credit-based flow control mechanism includes: subtracting a credit unit based on forwarding the cell to the virtual output module queue; and adding the credit unit based on forwarding the cell to a virtual output port queue maintained at the output module coupled to the destination output port, wherein the credit unit is subtracted or added to a cell credit indicating a capacity of the virtual output module queue to store data partitioned into one or more cells.