Patent ID: 7453798

Claim:
A method for managing and transmitting a plurality of data packets through a queue in a computer network system, comprising the steps of: determining a transmit probability of a computer network system queue as a function of an average occupancy level; determining a low level threshold for the queue as a fraction of a maximum capacity of the queue wherein the transmit probability is one; determining a hysteresis level threshold for the queue as a positive hysteresis factor multiple of the low level threshold wherein the hysteresis level threshold is greater than the low level threshold and less than the maximum capacity of the queue; initializing a hysteresis flag to ON; in response to the queue receiving a first burst of packets wherein the hysteresis flag is set to ON: (a) comparing a queue level to the hysteresis level threshold, and (b) if the queue level is less than the hysteresis level threshold, the queue receiving and transmitting the first burst and revising the transmit probability; or (c) else randomly dropping at least one packet from the first burst responsive to the transmit probability and transmitting a remainder of the first burst packets, revising the transmit probability and resetting the hysteresis flag to OFF; in response to the queue receiving a subsequent burst of packets: determining an ON/OFF state of the hysteresis flag; if the determined hysteresis flag state is ON, then performing the hysteresis level threshold (a) comparing and (b) receiving, transmitting and revising or (c) dropping, transmitting, revising and resetting steps with respect to the subsequent burst; or if the determined hysteresis flag state is OFF, then comparing a queue level to the low level threshold, and if the queue level is less than the low level threshold and an aggregate traffic bandwidth presented to a network link connecting the queue to a node transmitting the subsequent burst is less than a maximum bandwidth capacity supported by the link, the queue receiving and transmitting the subsequent burst, revising the transmit probability, and resetting the hysteresis flag to ON; or else the queue receiving the subsequent burst, randomly dropping at least one packet from the subsequent burst in response to the transmit probability, transmitting a remainder of the subsequent burst packets, and revising the transmit probability.