Firewall Search Tree Node Segmentation for Rule Lookup Efficiency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current firewall systems face inefficiencies in rule lookup processes due to the use of linear lists and inadequate tree data structures, leading to increased memory requirements and slow performance when handling large sets of rules across multiple packet fields.
Innovation Solution
A search tree is generated by dividing parent nodes into child nodes based on the intersection of rules and field bounds, reducing storage needs and improving lookup efficiency by minimizing rule duplication across nodes.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If a linear list is used to implement the set of rules, then the implementation is simple, but the rule lookup time increases significantly (O(n) worst case)
Solution Approach 1:
The patent segments the rule set into a tree data structure where rules are divided and distributed across multiple nodes. The root node contains a subset of rules, and child nodes contain further subdivisions. This segmentation allows the lookup process to eliminate large portions of the rule set at each level, reducing time complexity from O(n) to O(log n) while maintaining manageable implementation complexity through systematic node creation and rule assignment.
2Speed
If conventional tree data structures are used with heuristics to divide rules, then lookup speed improves, but memory or storage requirements increase
Solution Approach 1:
The patent applies local quality by creating specialized node types with specific properties suited to their function. Leaf nodes store rule subsets optimized for final matching, while internal nodes contain only the necessary routing information to guide lookups. This localized optimization ensures that each node contains only the minimal required data structure elements, reducing overall memory consumption while maintaining fast lookup performance through appropriate data organization at each level.
3Adaptability or versatility
If the number of rules in the set of rules increases to handle various packet fields, then the firewall coverage improves, but the rule lookup efficiency decreases
Solution Approach 1:
The patent transitions from a one-dimensional linear rule list to a multi-dimensional tree structure. Rules are organized across multiple dimensions corresponding to different packet fields (source IP, destination IP, source port, destination port, protocol). Each level of the tree can filter on different fields, creating a multi-dimensional filtering space. This dimensional expansion allows comprehensive rule coverage for complex packet inspection while maintaining efficient lookup through hierarchical navigation that eliminates large portions of the rule set at each dimension.
Data Source
AI summary
Apparatus and methods are provided for implementing a firewall in a network infrastructure component. A method comprises generating a search tree for a plurality of rules. The search tree comprises a first node having a first field bounds and a first set of rules of the plurality of rules, and a plurality of child nodes for the first node. Each child node has child field bounds based on an intersection of the first field bounds and the first set of rules, and each child node is assigned a respective subset of the first set of rules based on the respective child field bounds. The method further comprises receiving a first packet, identifying a first child node of the plurality of child nodes based on values for one or more fields of the first packet, and applying the respective subset of rules assigned to the first child node to the first packet.


