Patent ID: 7319670

Claim:
An apparatus for transmitting data to a network, comprising: a queue; packetization logic configured to packetize data into a plurality of data packets and to store, to the queue, entries pointing to the data packets; interface logic configured to read the entries from the queue, the interface logic, for each of the read entries, configured to retrieve one of the packets pointed to by the read entry and to transmit the retrieved packet to a network socket; and queue logic configured to limit, based on a number of retransmission requests detected by the queue logic, a number of entries that the packetization logic may store to the queue during a particular time period thereby controlling a transmission rate of the apparatus, wherein the queue logic is configured to establish a threshold based on the number of retransmission requests and to delay, based on a comparison of the threshold to a value indicative of a number of entries stored to the queue during a particular time period, storage of at least one entry to the queue for a sufficient period of time such that the transmission rate is reduced.