RAM-Based Packet Classification Using Bloom Filters and Rule Segmentation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
High-speed packet networks face challenges in efficiently storing and looking up classification rules due to the high cost, power consumption, and limited capacity of ternary content-addressable memory (TCAM) devices, which restrict the number of rules that can be supported by a single network device.
Innovation Solution
The method involves using random-access memory (RAM) to store rule entries, grouping rule patterns into extended rule patterns, and employing Bloom filters to reduce search time, allowing for efficient classification and lookup of data items by matching classification keys against rule entries in RAM and TCAM, while optimizing the use of TCAM for infrequent or low-frequency rules.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If TCAM is used to store classification rules, then lookup speed and flexibility are improved, but power consumption and chip area increase significantly
Solution Approach 1:
The patent segments the rule set into two parts: frequently occurring rules are stored in fast RAM memory, while less frequent rules are stored in TCAM. This segmentation allows the system to benefit from fast lookup for common rules without paying the full cost of TCAM for all rules, thereby reducing overall power consumption while maintaining high lookup speed for the majority of cases.
Solution Approach 2:
The patent introduces a dynamic rule distribution mechanism where rules are automatically classified and distributed between RAM and TCAM based on their occurrence frequency. The system dynamically adjusts which rules reside in which memory type, optimizing the balance between lookup speed and power consumption based on actual traffic patterns.
2Adaptability or versatility
If TCAM is used to store classification rules, then flexibility in rule definition is improved, but chip area increases
Solution Approach 1:
The patent segments the rule storage functionality between two memory types: RAM stores the majority of rules with full TCAM-like flexibility for frequently used patterns, while TCAM stores only the essential less frequent rules. This segmentation reduces the total chip area required while preserving the flexibility advantage of TCAM for rules that truly need it.
Solution Approach 2:
The patent applies local quality by providing different storage characteristics in different parts of the system: RAM provides cost-effective storage for common rules, while TCAM provides flexible storage for specialized rules. Each memory type is used where it provides the most value, optimizing the overall system area while maintaining necessary flexibility.
3Productivity
If TCAM is used to store classification rules, then lookup efficiency is improved, but the number of supported rules is limited
Solution Approach 1:
The patent segments the rule storage capacity between RAM and TCAM, allowing the system to support a much larger total number of rules than TCAM alone could handle. Frequently accessed rules reside in RAM enabling efficient lookup, while less frequent rules are stored in TCAM, collectively expanding the total rule capacity beyond what a single TCAM could provide.
Solution Approach 2:
The patent implements a dynamic rule distribution system that automatically manages which rules are stored in RAM versus TCAM based on access frequency. This dynamic allocation allows the system to maintain high lookup efficiency for common rules while accommodating a larger overall rule set in the combined memory architecture.
Data Source
AI summary
A method for classification includes extracting respective classification keys from a collection of data items and receiving a corpus of rules for matching to the classification keys. At least some of the rules include masked bits in addition to the unmasked bits. Rule patterns are extracted from the corpus, defining different, respective sequences of masked and unmasked bits to which one or more of the rules conform. The rule patterns are grouped into extended rule patterns, such that the respective set of unmasked bits in any rule pattern is a superset of the unmasked bits in the extended rule pattern into which it is grouped. Rule entries corresponding to the rules are computed using the extended rule patterns and are stored in a random access memory (RAM). The data items are classified by matching the respective classification keys to the rule entries in the RAM.


