Fast update filter
First Claim
1. A method comprising:
- receiving, by a device, a rule modification for a filter,the filter including an existing rule and a plurality of fields;
determining, by the device, that at least one of the plurality of fields includes a range of values;
converting, by the device, 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 plurality of fields,the plurality of fields each including a same value except for the at least one of the plurality of fields that includes the range of values,each of the at least one of the plurality of fields that includes the range of values including a respective, different value, andeach of the different values being associated with a value in the range of values;
establishing, by the device, one or more backtracking links to search for a best match in the plurality of rules; and
adding, by the device and with out recompiling entirety of the filter, 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
20 Claims
-
1. A method comprising:
-
receiving, by a device, a rule modification for a filter, the filter including an existing rule and a plurality of fields; determining, by the device, that at least one of the plurality of fields includes a range of values; converting, by the device, 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 plurality of fields, the plurality of fields each including a same value except for the at least one of the plurality of fields that includes the range of values, each of the at least one of the plurality of fields that includes the range of values including a respective, different value, and each of the different values being associated with a value in the range of values; establishing, by the device, one or more backtracking links to search for a best match in the plurality of rules; and adding, by the device and with out recompiling entirety of the filter, the plurality of rules to the filter. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A device comprising:
-
a memory; and a processor, connected to the memory, to; receive a rule modification for a filter, the filter including an existing rule and a plurality of fields; determine that at least one of the plurality of fields includes a range of values; convert 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 plurality of fields, the plurality of fields each including a same value except for the at least one of the plurality of fields that includes the range of values, each of the at least one of the plurality of fields that includes the range of values including a respective, different value, and each of the different values being associated with a value in the range of values; establish one or more backtracking links to search for a best match in the plurality of rules; and add the plurality of rules to the filter without recompiling entirety of the filter. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A non-transitory computer-readable medium containing instruction, the instructions comprising:
one or more instructions which, when executed by at least one processor, cause the at least one processor to; receive a rule modification for a filter, the filter including an existing rule and a plurality of fields; determine that at least one of the plurality of fields includes a range of values; convert 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 plurality of fields, the plurality of fields each including a same value except for the at least one of the plurality of fields that includes the range of values, each of the at least one of the plurality of fields that includes the range of values including a respective, different value, and each of the different values being associated with a value in the range of values; establish one or more backtracking links to search for a best match in the plurality of rules; and add the plurality of rules to the filter without recompiling entirety of the filter. - View Dependent Claims (16, 17, 18, 19, 20)
Specification