Action based termination of multidimensional lookup
First Claim
1. A method for classifying a data packet in accordance with one or more rules wherein the data packet contains a packet header that is used to classify the packet, the method comprising the steps of:
- dividing the packet header into a plurality of sections;
for each section, performing a lookup operation to acquire a set of rules and a set of actions associated the section, wherein the set of rules represents one or more rules associated with the section and the set of actions contains an action for each rule represented in the set of rules;
for a particular section, determining if each action in the set of actions indicates the same action for all the rules represented in the set of rules associated with the section; and
if so, classifying the data packet based on the action indicated in the set of actions for the particular section.
1 Assignment
0 Petitions
Accused Products
Abstract
A technique classifies packets in a manner that enables the number of lookup operations performed when classifying a data packet to be reduced. A lookup operation is performed to identify a set of rules and a set of actions associated with the data packet. If the action is the same for all the rules represented in the set of rules, the data packet is classified in accordance with the action and further lookup operations are not performed. Otherwise, a next-level lookup operation is performed and the process is repeated. This process continues for successive levels until either a level is reached where the packet is classified or a final level is reached. If a final level is reached, an action is performed based on the results of the lookup operation at the final level.
-
Citations
20 Claims
-
1. A method for classifying a data packet in accordance with one or more rules wherein the data packet contains a packet header that is used to classify the packet, the method comprising the steps of:
-
dividing the packet header into a plurality of sections; for each section, performing a lookup operation to acquire a set of rules and a set of actions associated the section, wherein the set of rules represents one or more rules associated with the section and the set of actions contains an action for each rule represented in the set of rules; for a particular section, determining if each action in the set of actions indicates the same action for all the rules represented in the set of rules associated with the section; and if so, classifying the data packet based on the action indicated in the set of actions for the particular section. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. An apparatus for classifying a data packet in accordance one or more rules, using a hierarchy of lookup tables, the hierarchy comprising a first level and one or more successive levels, the data packet containing a packet header that is used to classify the packet, the apparatus comprising:
-
a memory coupled to the processor and configured to hold the hierarchy of lookup tables; and a processor adapted to (i) divide the packet header into a plurality of sections, (ii) perform a lookup operation for each section in a first-level lookup table associated with the first level to acquire a set of rules and a set of actions associated with the rules for the section, (iii) determine if the action specified for each rule in the set of rules is the same, (iv) and if so, classifying the packet according to the action. - View Dependent Claims (12, 13, 14, 15, 16, 17)
-
-
18. An intermediate node comprising:
-
means for dividing the packet header into a plurality of sections; means for performing a lookup operation to acquire a set of rules and a set of actions associated with each section, wherein the set of rules represents one or more rules associated with a section and the set of actions contains an action for each rule represented in the set of rules; means for determining, for each section, if each action in the set of actions indicates the same action for all the rules represented in the set of rules associated with the section; and means for classifying the data packet based on the action indicated in the set of actions for the particular section if the action is the same. - View Dependent Claims (19)
-
-
20. A computer readable medium encoded with computer executable instructions:
-
dividing a packet header, contained in a data packet that is used to classify the data packet, into a plurality of sections; for each section, performing a lookup operation to acquire a set of rules and a set of actions associated the section, wherein the set of rules represents one or more rules associated with the section and the set of actions contains an action for each rule represented in the set of rules; for a particular section, determining if each action in the set of actions indicates the same action for all the rules represented in the set of rules associated with the section; and if so, classifying the data packet based on the action indicated in the set of actions for the particular section.
-
Specification