Patent ID: 7668087

Claim:
A method comprising: providing a plurality of first level metering options and a plurality of second level metering options associated with a hierarchy of metering levels; receiving, by a virtual routing engine of a virtual routing platform, packets associated with a first packet flow and packets associated with a second packet flow; the virtual routing engine performing a first type of metering from the plurality of first level metering options on the packets associated with the first packet flow using a first metering control block (MCB); the virtual routing engine performing a second type of metering from the plurality of second level metering options on the packets associated with the first packet flow and the packets associated with the second packet flow using a second MCB; measuring a packet rate of the first packet flow against a first set of rate parameters established for the first packet flow and stored in the first MCB; marking packets of the first packet flow in accordance with a result of the measuring; measuring packet rates of both the first packet flow and the second packet flow against a second set of rate parameters established for the first packet flow and the second packet flow and stored in the second MCB; selectively dropping packets of the first packet flow when (i) the packet rate of the first packet flow exceeds a parameter of the first set of rate parameters, and (ii) the packet rates of the first packet flow and the second packet flow when combined together exceed a parameter of the second set of rate parameters; and refraining from dropping packets of the first packet flow when (i) the packet rate of the first packet flow exceeds the parameter of the first set of rate parameters, and (ii) the packet rates of the first packet flow and the second packet flow when combined together do not exceed a parameter of the second set of rate parameters.