Patent ID: 7477603

Claim:
A method of determining the specific cell to transmit in each of a sequence of successive slots on a communication path coupled to an ATM switch, said method being performed in said ATM switch, said method comprising: receiving a plurality of sequences of cells, each sequence of cells being received on a corresponding one of a plurality of virtual circuits (VCs), each virtual circuit having an associated allocated bandwidth; initializing a VC-credit counter and a line slot credit counter associated with each of said plurality of virtual circuits including a fourth virtual circuit to zero; computing an inter-cell delay associated with each of said plurality of virtual circuits including said fourth virtual circuit, wherein the inter-cell delay is computed to have a negative correlation to the magnitude of the corresponding allocated bandwidth; incrementing said line slot credit counter by a token value in each cell slot of said communication path, wherein said token value is determined by a length of duration of cell slots on said communication path; incrementing said VC-credit counter of each virtual circuit by one if said line slot credit counter of the corresponding virtual circuit is equal to or greater than said inter-cell delay and if said VC-credit counter is already not equal to a maximum number specified by corresponding virtual circuit; scheduling a cell of said fourth virtual circuit for transmission in a slot only if said VC credit counter is greater than or equal to 1 for that slot; decrementing said line slot credit counter by said inter-cell delay when said VC-credit counter is incremented; and decrementing said VC-credit counter by one when a cell related to said fourth virtual circuit is scheduled for transmission.