FlowSifter Counting Automaton for L7 Field Extraction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing network devices struggle with online L7 field extraction due to the difficulty in automated translation from grammar representations to automata implementations and the need for efficient context-switching and line-speed processing, as they must handle millions of concurrent multiplexed network flows without buffering, which current solutions either require high production costs or use unoptimizable parsing models.
Innovation Solution
A computer-implemented system, FlowSifter, that generates a counting automaton from a context-free grammar-based extraction specification, using counting regular grammars and automata to efficiently extract L7 fields by transforming the specification into an equivalent regular grammar and optimizing the parsing model with counters and guards, allowing for automated optimization and efficient context-switching.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If hand optimized parsing solutions are used, then parsing performance is improved, but production cost increases and error susceptibility increases
Solution Approach 1:
The system uses automated translation tools that convert grammar representations to automata implementations without requiring manual optimization. The grammar translator automatically generates optimized parsing code from high-level grammar specifications, making the system self-sufficient in producing optimized parsers without human intervention in the optimization process.
Solution Approach 2:
The patent replaces manual mechanical optimization processes with automated computational translation. Instead of hand-optimizing parsing code, the system uses grammar translation mechanisms that automatically convert grammatical specifications into optimized automata implementations, substituting human expertise with automated systems.
2Productivity
If hand optimized parsing solutions are used, then parsing performance is improved, but error susceptibility increases
Solution Approach 1:
The automated translation system eliminates human errors in optimization by using consistent, rule-based conversion from grammar representations to automata. The system translates grammatical specifications uniformly without introducing human errors in the optimization process, thereby improving reliability while maintaining performance.
Solution Approach 2:
Manual optimization processes that are prone to human errors are replaced with automated computational translation. The grammar translator systematically converts grammatical rules into automata implementations, eliminating errors associated with manual coding while preserving parsing performance through automated optimization.
3Adaptability or versatility
If recursive descent parsing with code execution is used, then parsing flexibility is improved, but automated optimization becomes impossible
Solution Approach 1:
The patent segments the parsing system into two independent parts: a high-level grammar representation layer that provides flexibility and a separate automata implementation layer that enables automation. The grammar translator acts as an intermediary that converts flexible grammatical specifications into automated automata, allowing both flexibility and automation to coexist.
Solution Approach 2:
The grammar translator serves as an intermediary between the flexible grammar representations and the automated automata implementations. It converts high-level grammatical specifications into optimized automata code, enabling automated optimization while preserving the flexibility of the original grammar-based approach.
4Productivity
If selective parsing is used to achieve line-speed extraction, then throughput is improved, but automated translation and optimization becomes difficult
Solution Approach 1:
The patent changes the fundamental parameter of the parsing model from traditional CFGs to Counting Regular Grammars (CRGs). This parameter change enables the grammar to naturally represent selective parsing capabilities while maintaining regular language properties that are suitable for automated translation and optimization, achieving both high throughput and automation.
Solution Approach 2:
The grammar system dynamically adapts to different parsing needs through automated optimization. The CRG framework allows the system to automatically adjust parsing behavior for different protocols and requirements, enabling line-speed extraction performance while maintaining automated translation capabilities through the structured grammar formalism.
Data Source
AI summary
A computer-implemented system is provided for implementing application protocol field extraction. The system includes: an automata generator configured to receive the extraction specification that specifies data elements to be extracted from data packets and generate a counting automaton; and a field extractor configured to receive a data flow and operates to extract data elements from the data packets in accordance with the counting automaton. The extraction specification is expressed in terms of a context-free grammar, where the grammar defines grammatical structures of data packets transmitted in accordance with an application protocol and includes counters used to chronicle parsing history of production rules comprising the grammar.


