Patent ID: 6870812

Claim:
A method for implementing a quality of service policy in a data communications network, comprising: receiving a packet of a certain flow; extracting certain flow information from the packet; using the certain flow information to determine a match with an entry in a content addressable memory associated with an aggregate flow table, the content addressable memory containing a plurality of entries, each of the entries corresponding to an aggregation of individual flows; selecting, based upon said match, an output queue, the output queue selected based upon a plurality of quality of service parameters contained in the aggregate flow table and indexed from the matching entry in the content addressable memory, and the quality of service parameters further including an output queue threshold value and a contract value specifying a committed access rate corresponding to the certain flow; encoding a codepoint associated with the packet with an identification of the selected output queue and a value corresponding to the output queue threshold value; implementing a token bucket algorithm with respect to the certain flow using the contract value and a leak rate to determine whether the packet is in-profile or out-of-profile; when the packet is out-of-profile: modifying the codepoint associated with the packet and determining whether the packet is to be dropped; and when the packet is in-profile or when the determination has been made that the packet that is out-of-profile is not to be dropped; directing the packet to the output queue based on the codepoint and setting the output queue threshold of the output queue based on the codepoint.