Dynamic Leaf Determination in Policy Tree Search

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In high-speed network processors, the dynamic determination of leaf nodes in policy search trees is challenging due to uneven policy distribution, leading to deep tree branches and inefficient policy matching.

Innovation Solution

A method for dynamic leaf generation in policy tree search optimization, where a policy tree builder determines whether a node is a leaf based on predefined policy count and range count limits, adjusting the tree structure recursively to balance tree depth and candidate list length.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Length of stationary object

If a static method is used to determine leaf nodes by putting a larger number of policies under a leaf node to shorten tree depth, then tree depth is reduced, but linear search time on candidate policies increases

Engineering Contradiction:
Improvetree depthVSAvoidlinear search time
Core Design Contradiction:
Length of stationary objectVSLoss of time

Solution Approach 1:

The patent applies dynamics by making the leaf node determination dynamic rather than static. The system evaluates multiple factors including policy count, range count, and distribution patterns to dynamically determine the optimal leaf node placement. This allows the tree structure to adapt to the actual policy distribution, balancing tree depth with candidate list length at each node based on real-time conditions rather than fixed rules.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent implements local quality by allowing different parts of the tree to have different leaf determination characteristics. Each node can have its own policy count and range count metrics evaluated independently, enabling localized optimization. Some branches may terminate earlier as leaves while others continue deeper, depending on the specific policy distribution in each region of the tree.

Inventive Principle:
Principle #3Local quality

2Adaptability or versatility

If the policy set size grows to meet user requirements, then policy coverage and adaptability improve, but policy matching complexity and processing time increase

Engineering Contradiction:
Improvepolicy coverageVSAvoidpolicy matching complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent applies segmentation by dividing the policy set into hierarchical tree structures with multiple levels of nodes. Each node represents a segment of the policy space, organized by dimensions such as source IP, destination IP, protocol, and port ranges. This segmentation allows the system to handle large policy sets by breaking them into manageable chunks distributed across the tree, reducing the complexity of policy matching compared to linear search through the entire policy set.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces multiple dimensions for organizing policies, including source IP ranges, destination IP ranges, protocol ranges, source port ranges, and destination port ranges. By adding these dimensional layers to the policy organization structure, the system can efficiently navigate and match policies in high-dimensional space, managing complexity through structured multi-dimensional indexing rather than flat policy enumeration.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Measurement precision

If tree branches extend deeply due to uneven policy distribution, then policy specificity is maintained, but search efficiency decreases

Engineering Contradiction:
Improvepolicy specificityVSAvoidsearch efficiency
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent implements feedback mechanisms by continuously evaluating policy count and range count metrics at each node during tree construction and updates. When policies are added or removed, the system recalculates these metrics and adjusts the tree structure accordingly, converting nodes to leaves or creating child nodes based on current conditions. This feedback loop ensures the tree maintains optimal balance between specificity and search efficiency as the policy set evolves.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent changes parameters such as policy count thresholds and range count thresholds to control leaf node determination. By adjusting these parameters, the system can optimize the balance between maintaining policy specificity through deeper branches and improving search efficiency through shallower trees. The parameters are tuned based on the characteristics of the policy set and performance requirements.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS12335154B2Dynamic leaf determination for tree creations for high-speed network policy search during data packet scanning
Publication Date: 2025.06.17 FORTINET INC
  • US12335154B2 patent drawing
  • US12335154B2 patent drawing
  • US12335154B2 patent drawing

AI summary

During high-speed network policy searching for data packets, an upper limit and a lower limit for a policy count are predefined for a ratio of the policy count to the sum of the policy count and the range count. A policy tree builder generates a policy tree image from a set of recursive operations on the raw policy set including an on-the-fly determination of whether a specific node is a leaf based on a leaf policy count limit, wherein for a selected dimension, the specific node is converted to the leaf if the policy count does not exceed the leaf policy count limit and the range count for the selected dimension does not exceed a product of the leaf policy count limit and a range count limit coefficient, and otherwise the specific node is converted to two or more child nodes. A network processor configures at least one set of registers, at least one set of tables, and at least one sequence of instructions according to the policy tree image.