Fast update filter
First Claim
1. A method performed by a network device, the method comprising:
- receiving a rule modification for a filter, the filter including an existing rule and a particular number of prioritized fields;
determining that at least one of the prioritized fields does not include a value;
normalizing the rule modification to include a dummy value for each of the at least one of the prioritized fields that does not include a value;
determining that at least one of the particular number of prioritized fields includes a range of values;
resolving the range of values by converting the range of values to a plurality of different values to create a plurality of rules associated with the received rule modification,each of the plurality of rules including the particular number of prioritized fields, the particular number of prioritized fields each including a same value except for the at least one of the particular number of prioritized fields that includes the range of values, each of the at least one of the particular number of prioritized fields that includes the range of values including a different value, and each of the different values being associated with a value of the range of values;
performing a check for conflicts between the plurality of rules and the existing rule in the filter;
establishing one or more backtracking links to integrate the plurality of rules with the existing rule; and
adding the plurality of rules to the filter.
1 Assignment
0 Petitions
Accused Products
Abstract
A method may include defining a filter for a network device, the filter including a rule and a particular number of prioritized fields, where at least one of the prioritized fields is formatted to accept input as a range of values. The method may also include receiving a rule modification for the filter, the rule modification including at least one input as a range of values, and performing a check for conflicts of the rule modification with the rule in the filter. The method may further include expanding the input range of values to form multiple rules equivalent to the rule modification with the input range of values, establishing backtracking links to integrate the multiple rules with the existing rule, and adding the multiple rules to the filter.
-
Citations
22 Claims
-
1. A method performed by a network device, the method comprising:
-
receiving a rule modification for a filter, the filter including an existing rule and a particular number of prioritized fields; determining that at least one of the prioritized fields does not include a value; normalizing the rule modification to include a dummy value for each of the at least one of the prioritized fields that does not include a value; determining that at least one of the particular number of prioritized fields includes a range of values; resolving the range of values by converting the range of values to a plurality of different values to create a plurality of rules associated with the received rule modification, each of the plurality of rules including the particular number of prioritized fields, the particular number of prioritized fields each including a same value except for the at least one of the particular number of prioritized fields that includes the range of values, each of the at least one of the particular number of prioritized fields that includes the range of values including a different value, and each of the different values being associated with a value of the range of values; performing a check for conflicts between the plurality of rules and the existing rule in the filter; establishing one or more backtracking links to integrate the plurality of rules with the existing rule; and adding the plurality of rules to the filter. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method, comprising:
-
defining a filter for a network device, the filter including a rule and a particular number of prioritized fields, at least one of the prioritized fields being formatted to accept an input that includes a range of values; receiving a rule modification for the filter, the rule modification including at least one input that includes a range of values; resolving the range of values by converting the range of values to a plurality of different values to create a plurality of rules associated with the received rule modification, each of the plurality of rules including the particular number of prioritized fields, the particular number of prioritized fields each including a same value except for the at least one of the particular number of prioritized fields that includes the range of values, each of the at least one of the particular number of prioritized fields that includes the range of values including a different value, and each of the different values being associated with a value of the range of values; performing a check for conflicts of the rule modification with the rule in the filter; establishing backtracking links to integrate the plurality of rules with the existing rule; and adding the plurality of rules to the filter. - View Dependent Claims (10, 11, 12, 13, 14)
-
-
15. A network device, comprising:
-
a memory to store a filter, the filter including a rule and a particular number of prioritized fields; and a processor to; receive a rule modification to the filter, determine that at least one of the particular number of prioritized fields is empty, alter the rule modification to include a dummy value, based on a field size of the at least one of the particular number of prioritized fields that is empty, in the at least one of the particular number of prioritized fields that is empty to ensure a match occurs, determine that at least one of the particular number of prioritized fields includes a range of values; resolve the range of values by converting the range of values to a plurality of different values to create a plurality of rules associated with the received rule modification, each of the plurality of rules including the particular number of prioritized fields, the particular number of prioritized fields each including a same value except for the at least one of the particular number of prioritized fields that includes the range of values, each of the at least one of the particular number of prioritized fields that includes the range of values including a different value, and each of the different values being associated with a value of the range of values; establish backtracking links to integrate the plurality of rules with the existing rule, and add the plurality of rules to the filter. - View Dependent Claims (16, 17, 18)
-
-
19. A non-transitory computer-readable medium comprising instructions, the instructions comprising:
-
one or more instructions, executable by a processor, to define a filter for a network device, the filter including a rule and a particular number of prioritized fields; one or more instructions, executable by the processor, to receive a rule modification for the filter; one or more instructions, executable by the processor, to determine that at least one of the prioritized fields does not include a value; one or more instructions, executable by the processor, to normalize the rule modification to include a dummy value for each of the at least one of the prioritized fields in the filter that does not include a value; one or more instructions, executable by the processor, to determine that at least one of the particular number of prioritized fields includes a range of values; one or more instructions, executable by the processor, to resolve the range of values by converting the range of values to a plurality of different values to create a plurality of rules associated with the received rule modification, each of the plurality of rules including the particular number of prioritized fields, the particular number of prioritized fields each including a same value except for the at least one of the particular number of prioritized fields that includes the range of values, each of the at least one of the particular number of prioritized fields that includes the range of values including a different value, and each of the different values being associated with a value of the range of values; one or more instructions, executable by the processor, to insert backtracking links into the filter; and one or more instructions, executable by the processor, to add the plurality of rules to the filter. - View Dependent Claims (20)
-
-
21. A non-transitory computer-readable medium comprising instructions, the instructions comprising:
-
one or more instructions, executable by a processor, to store a filter for a network device, the filter including a rule and a particular number of prioritized fields; one or more instructions, executable by the processor, to receive a rule modification for the filter, the rule modification including a field with a range of values; one or more instructions, executable by the processor, to resolve the range of values by converting the range of values to a plurality of different values to create a plurality of rules associated with the received rule modification, each of the plurality of rules including the particular number of prioritized fields, the particular number of prioritized fields each including a same value except for the at least one of the particular number of prioritized fields that includes the range of values, each of the at least one of the particular number of prioritized fields that includes the range of values including a different value, and each of the different values being associated with a value of the range of values; one or more instructions, executable by the processor, to perform a check for conflicts of the plurality of rules with the rule in the filter; and one or more instructions, executable by the processor, to backtrack one or more links to integrate the plurality of rules with the existing rule. - View Dependent Claims (22)
-
Specification