Patent ID: 7515584

Claim:
A data switch comprising: a plurality of ports; a switching fabric for transferring a data packet received at one of the ports to another of the ports specified by a header of the data packet, each of the ports being associated with one or more queues for data packets; a first memory divided into packet buffers; a second memory for storing a threshold value; a plurality of registers that are not included in the first memory and second memory; and a control unit for determining whether a data packet to be stored in one of the queues meets a criterion for efficient storage in the packet buffers, wherein if the size of the data packet is less than that of a packet buffer, the criterion for efficient storage is whether the size of the data packet is above the threshold value, and on a negative determination of the criterion, the control unit is arranged to store the data packet in at least one of the registers, and if the size of the data packet is greater than that of the packet buffer, the criterion for efficient storage is whether the size of the data packet is greater, by more than the threshold value, than a selected one of: the size of the packet buffer and the size of a plurality of packet buffers combined, and on a negative determination of the criterion, the control unit is arranged to divide the data packet into a first portion that meets the criterion and that is stored in the packet buffers, and a second portion that is stored in at least one of the registers.