Hierarchical metering in a virtual router-based network switch
First Claim
1. 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.
3 Assignments
0 Petitions
Accused Products
Abstract
Methods and systems are provided for applying metering and rate-limiting in a virtual router environment and supporting a hierarchy of metering/rate-limiting contexts per packet flow. According to one embodiment, multiple first level metering options and multiple second level metering options associated with a hierarchy of metering levels are provided. A virtual routing engine receives packets associated with a first packet flow and packets associated with a second packet flow. The virtual routing engine performs a first type of metering of the first level metering options on the packets associated with the first packet flow using a first metering control block (MCB) and performs a second type of metering of the second level metering options on the packets associated with the first packet flow and the packets associated with the second flow using a second MCB.
242 Citations
28 Claims
-
1. 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. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A method comprising:
-
receiving, by a virtual routing engine of a virtual routing platform, packets of a first packet flow and packets of a second packet flow; the virtual routing engine performing a plurality of metering functions associated with a hierarchy of metering levels on the first packet flow and the second packet flow by performing a first level of metering on the packets of the first packet flow; performing a different first level of metering on the packets of the second packet flow; and performing a second level of metering for packets of the first and second packet flows, the second level of metering applying to both the first and second packet flows; wherein the first level of metering includes applying a first set of individual level traffic parameters for the first packet flow to determine when the first packet flow exceeds a first profile; wherein the different first level of metering includes applying a second set of individual level traffic parameters for the second packet flow to determine when the second packet flow exceeds a second profile; wherein the second level of metering includes applying a set of group level traffic parameters for at least both the first and second packet flows to determine when the first and second packet flows together exceed a group profile; wherein the individual level traffic parameters of the first and second sets and the group level traffic parameters are comprised of a peak information rate (PIR) and a committed information rate (CIR); dropping packets of the first packet flow by the virtual routing engine when one or more of the individual level traffic parameters of the first set is exceeded and when one or more of the group level traffic parameters is exceeded; dropping packets of the second packet flow by the virtual routing engine when one or more of the individual level traffic parameters of the second set is exceeded and when one or more of the group level traffic parameters is exceeded; and refraining from dropping packets of the first and second packet flows by the virtual routing engine when none of the group level traffic parameters are exceeded. - View Dependent Claims (15, 16, 17, 18, 19, 20)
-
-
21. A method comprising:
-
receiving, by a virtual routing engine of a virtual routing platform, packets of a first packet flow and packets of a second packet flow; the virtual routing engine performing a plurality of metering functions associated with a hierarchy of metering levels on the first packet flow and the second packet flow by performing a first level of metering on the packets of the first packet flow; performing a different first level of metering on the packets of the second packet flow; and performing a second level of metering for packets of the first and second packet flows, the second level of metering applying to both the first and second packet flows; wherein the first level of metering includes applying a first set of individual level traffic parameters for the first packet flow to determine when the first packet flow exceeds a first profile; wherein the different first level of metering includes applying a second set of individual level traffic parameters for the second packet flow to determine when the second packet flow exceeds a second profile; wherein the second level of metering includes applying a set of group level traffic parameters for at least both the first and second packet flows to determine when the first and second packet flows together exceed a group profile; wherein applying the first set of individual level traffic parameters includes marking a field in a packet header of packets of the first packet flow to indicate whether either a peak information rate (PIR) or a committed information rate (CIR) associated with the first profile is exceeded; wherein applying the second set of individual level traffic parameters includes marking a field in a packet header of packets of the second packet flow to indicate whether either the PIR or CIR for the second profile is exceeded; and wherein applying the group level traffic parameters includes marking a field in a packet header of packets of the first and second packet flows to indicate whether either the PIR or CIR for the group profile is exceeded. - View Dependent Claims (22, 23, 24, 25, 26, 27, 28)
-
Specification