Packet Header Evaluation for High-Stream Binary Search Dispatch
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing network products and processing devices face scalability issues in managing a large number of data streams due to resource constraints and latency problems when using matchers or linear searches, making it difficult to support more than 128 concurrent streams efficiently.
Innovation Solution
A method and network product that employs a raw packet buffer, look-ahead evaluator, and high-performance binary search to determine whether incoming data packets belong to subscribed streams by extracting the first n words of the packet header, allowing parallel evaluation and dispatching of data packets, thereby reducing resource usage and latency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If a matcher is used for each subscribed stream to filter packets, then packet filtering accuracy is improved, but device complexity and resource consumption increase linearly with the number of streams
Solution Approach 1:
Multiple matchers are merged into a single evaluation unit that processes multiple stream identifiers simultaneously. Instead of having separate matchers for each stream, the patent combines their functionality into one unit that can evaluate packets against multiple subscribed stream identifiers in a unified manner, reducing overall device complexity while maintaining filtering accuracy.
Solution Approach 2:
The evaluation unit is designed to be universal, capable of handling multiple stream identification functions within a single component. This multi-functional unit can subscribe to and filter packets for multiple data streams simultaneously, eliminating the need for dedicated matchers for each stream and thereby reducing device complexity.
2Adaptability or versatility
If the number of matchers is increased to support more concurrent data streams, then adaptability is improved, but resource consumption and timing issues worsen
Solution Approach 1:
A single evaluation unit is designed to handle multiple stream subscriptions universally. This unit can dynamically subscribe to and filter packets for many different data streams without requiring proportional increases in hardware resources. The universal design allows the same hardware to adapt to different numbers of streams through configuration rather than physical expansion.
Solution Approach 2:
The system uses parameter-based configuration to adapt to different numbers of streams. Instead of adding hardware components, the evaluation unit adjusts its operational parameters (such as the number of stream identifiers it monitors) to match the required capacity. This allows scalable adaptability without linear resource consumption increases.
3Use of energy by moving object
If a linear search is used to evaluate data streams, then resource consumption is reduced, but processing speed and productivity deteriorate with high stream counts
Solution Approach 1:
Stream identifiers are pre-processed and organized into optimized data structures before runtime packet evaluation. This preliminary organization allows the evaluation unit to quickly locate matching streams without performing exhaustive linear searches during packet processing, thereby improving processing speed while maintaining low resource consumption during operation.
Solution Approach 2:
Instead of copying entire packet data for comparison, the system extracts and compares only relevant identifier fields. This selective copying of critical information enables faster evaluation without the overhead of processing complete packet contents, improving productivity while keeping resource usage low.
4Productivity
If direct matching of search properties to list items is used, then processing speed is improved, but the solution becomes infeasible for a large number of streams due to resource constraints
Solution Approach 1:
The evaluation process is segmented into distinct stages: packet reception, header extraction, identifier comparison, and packet routing. This segmentation allows complex matching operations to be broken down into manageable steps that can be efficiently implemented in hardware, maintaining processing speed while controlling device complexity through modular design.
Data Source
AI summary
The present disclosure relates a method for evaluating packets of subscribed data streams comprising receiving incoming data packets belonging to a plurality of data streams; buffering the incoming data packets in a raw packet buffer; extracting the first words of the incoming data packets and forwarding the extracted first words to a packet header buffer; evaluating the first words in the packet header buffer, wherein the evaluation comprises extracting information identifying a data stream, performing a binary search on the extracted information to determine whether the incoming data packet from which the information was extracted belongs to one of the subscribed data streams, storing the result in a packet evaluation result buffer; determining based on the result whether a data belongs a subscribed stream; reading, in case the data packet in the raw packet buffer belongs to one of the subscribed streams, the data packet from the raw packet buffer.


