A method and apparatus for controlling data flow in a network switch,
wherein the method includes the steps of determining if a quantity of
queued data for a port has exceeded a first predetermined threshold,
disabling a data flow to the port if the quantity of queued data is
determined to have exceeded the first predetermined threshold, and
re-enabling the data flow to the port upon satisfying a predetermined
spatial requirement and a predetermined temporal requirement. The
apparatus includes at least one queue in connection with the at least one
data port interface for receiving data transmitted to the at least one
data port interface, and a memory management unit in connection with the
at least one queue. The memory management unit operates to disable a data
flow to a queue when a level of data in the queue reaches a predetermined
threshold, and thereafter re-enables data flow to the queue when the
level of data in the queue reaches a second predetermined threshold and a
predetermined amount of time has passed.