Logarithmic time range-based multifield-correlation packet classification
First Claim
Patent Images
1. A method comprising:
- generating a filter-identifier based, at least in part, on one or more filter elements associated with a data packet header field, wherein the filter-identifier is different from a policy-identifier that identifies a policy applicable to data packets having specified entries in the one or more filter elements;
characterizing the specified entries in the filter elements as either a range-based value or an exact value;
generating a bit mask from the characterizing, each bit in the bit mask corresponding to a filter element;
setting a bit in the bit mask to be a first logical value when its corresponding filter element has a range-based value;
setting a bit in the bit mask to be a second, different logical value when its corresponding filter element has an exact value;
determining respective sets of one or more filter-identifiers, each set associated with a respective filter element; and
producing a result-set of filter-identifiers based on an intersection of the filter-identifier sets.
2 Assignments
0 Petitions
Accused Products
Abstract
Classification of network data packets includes a determination sets of one or more filter-identifiers where each set is associated with a respective data-packet classifier field. A result-set of filter-identifiers may be derived based on an intersection of the filter-identifier sets.
100 Citations
26 Claims
-
1. A method comprising:
-
generating a filter-identifier based, at least in part, on one or more filter elements associated with a data packet header field, wherein the filter-identifier is different from a policy-identifier that identifies a policy applicable to data packets having specified entries in the one or more filter elements; characterizing the specified entries in the filter elements as either a range-based value or an exact value; generating a bit mask from the characterizing, each bit in the bit mask corresponding to a filter element; setting a bit in the bit mask to be a first logical value when its corresponding filter element has a range-based value; setting a bit in the bit mask to be a second, different logical value when its corresponding filter element has an exact value; determining respective sets of one or more filter-identifiers, each set associated with a respective filter element; and producing a result-set of filter-identifiers based on an intersection of the filter-identifier sets. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method comprising:
-
generating node values in a tree for each endpoint value associated with at least one policy-identifier; associating a first set of policy-identifiers with a particular one of the node values, wherein the first set of policy-identifiers is applied to data-packets having packet-header classifier fields matching the particular one of the node values; and associating a second set of policy-identifiers with the particular node value, wherein the second set of policy-identifiers is applied to data-packets having packet-header classifier fields with a value between the particular one of the node values and a next higher node value. - View Dependent Claims (9)
-
-
10. An article of manufacture comprising a non-transitory machine-readable medium storing machine-executable instructions that when applied to a machine cause the machine to:
-
generate a filter-identifier based, at least in part, on one or more filter elements associated with a data packet header field, wherein the filter-identifier is different from a policy-identifier that identifies a policy applicable to data packets having specified entries in the one or more filter elements; characterize the specified entries in the filter elements as either a range-based value or an exact value; generate a bit mask from the characterizing, each bit in the bit mask corresponding to a filter element; set a bit in the bit mask to be a first logical value when its corresponding filter element has a range-based value; set a bit in the bit mask to be a second, different logical value when its corresponding filter element has an exact value; determine respective sets of one or more filter-identifiers associated with respective filter elements; and produce a result-set of filter-identifiers that is based on an intersection of the filter-identifier sets. - View Dependent Claims (11, 12, 13, 14, 15)
-
-
16. An article of manufacture comprising a non-transitory machine-readable medium storing machine-executable instructions that when applied to a machine cause the machine to:
-
generate node values in a tree for each endpoint value associated with at least one policy-identifier; associate a first set of policy-identifiers with a particular one of the node values, wherein the first set of policy-identifiers is applied to data-packets having packet-header classifier fields matching the particular one of the node values; and associate a second set of policy-identifiers with the particular one of the node values, wherein the second set of policy-identifiers is applied to data-packets having packet-header classifier fields with a value between the particular one of the node values and a next higher node value. - View Dependent Claims (17)
-
-
18. An apparatus comprising:
-
a network interface adapter; a first circuitry communicatively coupled to the network interface adapter to generate a filter-identifier based, at least in part, on one or more filter elements associated with a data packet header field, wherein the filter-identifier is different from a policy-identifier that identifies a policy applicable to data packets having specified entries in the one or more filter elements; a second circuitry communicatively coupled to the network interface adapter to; characterizing the specified entries in the filter elements as either a range-based value or an exact value; generating a bit mask from the characterizing, each bit in the bit mask corresponding to a filter element; setting a bit in the bit mask to be a first logical value when its corresponding filter element has a range-based value; setting a bit in the bit mask to be a second, different logical value when its corresponding filter element has an exact value; a third circuitry communicatively coupled to the network interface adapter to determine respective sets of one or more filter-identifiers associated with respective filter elements; and a fourth circuitry communicatively coupled to the network interface adapter to produce a result-set of filter-identifiers that is based on an intersection of the filter-identifier sets. - View Dependent Claims (19, 20, 21, 22, 23)
-
-
24. A system comprising:
- a network; and
a network device communicatively coupled to the network, the device including a processor and instructions executable by the processor to cause the processor to;generate a filter-identifier based, at least in part, on one or more filter elements associated with a data packet header field, wherein the filter-identifier is different from a policy-identifier that identifies a policy applicable to data packets having specified entries in the one or more filter elements; characterize the specified entries in the filter elements as either a range-based value or an exact value; generate a bit mask from the characterizing, each bit in the bit mask corresponding to a filter element; set a bit in the bit mask to be a first logical value when its corresponding filter element has a range-based value; set a bit in the bit mask to be a second, different logical value when its corresponding filter element has an exact value; determine respective sets of one or more filter-identifiers associated with respective filter elements; and produce a result-set of filter-identifiers that is based on an intersection of the filter-identifier sets. - View Dependent Claims (25, 26)
- a network; and
Specification