Patent ID: 7042891

Claim:
A method for switching packets in a network switch, the method comprising: receiving data forming a packet, wherein the data is received from a source input port of a plurality of input ports that are part of the network switch, wherein the packet is to be routed to at least one destination output port of a plurality of output ports that are part of the network switch, wherein each output port comprises a plurality of output queues, wherein the source input port and the destination output port operate at different data rates; determining whether the destination output port has sufficient resources available to handle the data without causing an overflow by: requesting cut-through routing from the destination output port in response to receiving the data; and conveying a signal granting cut-through to the source input port if the destination output port has sufficient resources available to handle the data; refraining from requesting the cut-through routing for packets larger than the destination output port's first-in first-out memory (FIFO); routing the data to the destination output port if a grant cut-through signal is received; and if a grant cut-through signal is not received: storing the data to a random access memory; storing a packet identifier on one of the destination port's output queues; waiting until the destination output port has sufficient resources available; and transferring the data from the random access memory to the destination output port.