Decision Tree Scope Factor for Packet Classification Efficiency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current packet classification methods are inefficient in handling the exponential growth of network bandwidth and increasing complexity of network applications, as they often trade memory for time and struggle to fully exploit redundancy in diverse rule sets, leading to performance issues in real-life network devices.

Innovation Solution

The method involves compiling a decision tree data structure using a classifier table with rules, where each node represents a subset of the search space and computes a scope factor to determine the number of cuts and child nodes, allowing for efficient packet classification by avoiding redundant rule searches and optimizing memory usage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If traditional packet classification methods are used, then memory resources are allocated to handle rule sets, but classification time increases and efficiency decreases

Engineering Contradiction:
Improvepacket classification timeVSAvoidclassification efficiency
Core Design Contradiction:
Loss of timeVSProductivity

Solution Approach 1:

The patent segments the rule set into multiple decision trees based on packet header fields. Each decision tree handles a specific subset of rules, allowing parallel processing and reducing the time each packet spends in classification. The search space is divided into regions, with each region having its own optimized decision tree structure.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary compilation of the classifier table into decision tree structures before actual packet classification. During this compilation phase, rules are pre-organized, redundant rules are identified and removed, and optimal tree structures are built. This preliminary processing reduces runtime classification time significantly.

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If comprehensive rule sets are used to handle diverse network applications, then classification accuracy improves, but memory requirements increase

Engineering Contradiction:
Improverule set coverageVSAvoidmemory usage
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The patent identifies and discards redundant rules during the compilation phase. Rules that are subsumed by more general rules or never match any packet are removed from the decision trees. This reduces memory usage while maintaining classification accuracy for all necessary packet types.

Inventive Principle:
Principle #34Discarding and recovering

Solution Approach 2:

The patent transforms the rule representation from a flat table structure to hierarchical decision trees with optimized parameter encoding. By changing how rules are stored and organized (from sequential table entries to tree nodes with selective field coverage), memory efficiency is improved while preserving full rule set functionality.

Inventive Principle:
Principle #35Parameter changes

3Measurement precision

If detailed rule inspection is performed to ensure accurate classification, then classification precision improves, but processing complexity increases

Engineering Contradiction:
Improveclassification accuracyVSAvoidprocessing complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent applies different levels of inspection detail to different regions of the search space. Each decision tree node inspects only the packet fields relevant to that specific region, rather than all fields uniformly. This local optimization maintains accuracy where needed while reducing unnecessary inspections elsewhere.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The classification process is segmented into multiple decision trees, each handling specific rule subsets. This segmentation reduces the complexity of individual trees, making them easier to process while collectively maintaining high classification accuracy through comprehensive coverage.

Inventive Principle:
Principle #1Segmentation

4Reliability

If redundant rule searches are performed, then all possible matches are checked, but time consumption increases

Engineering Contradiction:
Improverule matching completenessVSAvoidsearch time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent discards redundant rules during compilation by identifying rules that are completely subsumed by other rules. The subsumption relationship is detected through scope factor analysis, where rules with scope factors indicating they never match are removed. This maintains matching completeness for all valid rules while eliminating wasted search time on redundant ones.

Inventive Principle:
Principle #34Discarding and recovering

Solution Approach 2:

Redundant rule identification and removal is performed as a preliminary action during the compilation phase, before actual packet classification begins. This upfront processing ensures that the runtime classification process only searches through necessary rules, maintaining reliability while reducing time consumption.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10460250B2Scope in decision trees
Publication Date: 2019.10.29 MARVELL ASIA PTE LTD
  • US10460250B2 patent drawing
  • US10460250B2 patent drawing
  • US10460250B2 patent drawing

AI summary

A root node of a decision tree data structure may cover all values of a search space used for packet classification. The search space may include a plurality of rules, the plurality of rules having at least one field. The decision tree data structure may include a plurality of nodes, the plurality of nodes including a subset of the plurality of rules. Scope in the decision tree data structure may be based on comparing a portion of the search space covered by a node to a portion of the search space covered by the node's rules. Scope in the decision tree data structure may be used to identify whether or not a compilation operation may be unproductive. By identifying an unproductive compilation operation it may be avoided, thereby improving compiler efficiency as the unproductive compilation operation may be time-consuming.