System and method for hierarchical metering in a virtual router based network switch
First Claim
1. A method of metering packet flows in a virtual routing engine comprising:
- performing a first level of metering on packets of a first packet flow using a first metering control block (MCB), the first level of metering being one level of metering in a hierarchy of metering levels; and
performing a second level of metering on the packets of the first packet flow and packets of a second flow using a second MCB, the second level of metering being another level of metering in the hierarchy.
5 Assignments
0 Petitions
Accused Products
Abstract
A virtual routing platform includes a line interface a plurality of virtual routing engines (VREs) to identify packets of different packet flows and perform a hierarchy of metering including at least first and second levels of metering on the packet flows. A first level of metering may be performed on packets of a first packet flow using a first metering control block (MCB). The first level of metering may be one level of metering in a hierarchy of metering levels. A second level of metering on the packets of the first packet flow and packets of a second flow using a second MCB. The second level of metering may be another level of metering in the hierarchy. A cache-lock may be placed on the appropriate MCB prior to performing the level of metering. The first and second MCBs may be data structures stored in a shared memory of the virtual routing platform. The cache-lock may be released after performing the level of metering using the MCB. The cache-lock may comprise setting a lock-bit of a cache line index in a cache tag store, which may identify a MCB in the cache memory. The virtual routing platform may be a multiprocessor system utilizing a shared memory having a first and second processors to perform levels of metering in parallel. In one embodiment, a virtual routing engine may be shared by a plurality of virtual router contexts running in a memory system of a CPU of the virtual routing engine. In this embodiment, the first packet flow may be associated with one virtual router context and the second packet flow is associated with a second virtual router context. The first and second routing contexts may be of a plurality of virtual router contexts resident in the virtual routing engine.
-
Citations
44 Claims
-
1. A method of metering packet flows in a virtual routing engine comprising:
-
performing a first level of metering on packets of a first packet flow using a first metering control block (MCB), the first level of metering being one level of metering in a hierarchy of metering levels; and
performing a second level of metering on the packets of the first packet flow and packets of a second flow using a second MCB, the second level of metering being another level of metering in the hierarchy. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A virtual routing engine comprising:
-
a plurality of multiprocessor systems;
a line interface to receive packets of a plurality of packet flows; and
a switching fabric coupling the plurality of multiprocessor systems and the line interface, wherein the line interface selects one of the multiprocessor systems for a first packet flow and directs packets through the switching fabric to the selected multiprocessor system, the selected multiprocessor system performs a first level of metering on packets of the first packet flow using a first metering control block (MCB), the first level of metering being one level of metering in a hierarchy of metering levels, and performs a second level of metering on the packets of the first packet flow and packets of a second flow using a second MCB, the second level of metering being another level of metering in the hierarchy. - View Dependent Claims (17, 18, 19, 20)
-
-
21. A method of metering packets in a virtual routing engine comprising:
-
performing a first level of metering for packets of a first packet flow;
performing a different first level of metering for packets of a second packet flow; and
performing a second level of metering for packets of the first and second flows, the second level of metering applying to both the first and second packet flows. - View Dependent Claims (22, 23, 24, 25, 26, 27, 28, 29, 30)
-
-
31. A routing system comprising:
-
a line interface to receive packets of first and second packet flows;
a virtual routing engine (VRE) to perform metering on packets of the first and second packet flows, and to transform headers of the packets, the VRE performing a first level of metering for packets of the first packet flow, a different first level of metering for packets of a second packet flow, and a second level of metering for packets of the first and second flows, the second level of metering applying to both the first and second packet flows. - View Dependent Claims (32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42)
-
-
43. A computer readable medium having stored thereon instruction, that when executed by a computing platform, result in:
-
performing a first level of metering for packets of a first packet flow;
performing a different first level of metering for packets of a second packet flow; and
performing a second level of metering for packets of the first and second 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, and 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, and 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. - View Dependent Claims (44)
-
Specification