Packet Processing Pipeline for Dynamic Flow Classification

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current communication networks face challenges in accurately classifying and measuring traffic flows, particularly in identifying new flows and dynamically reconfiguring processes to handle them efficiently, which affects network optimization, security, and quality of service.

Innovation Solution

A method and apparatus that utilize a packet processing pipeline to classify packets based on identified flows, with a separate processing unit operating at a slower speed to analyze packets not belonging to existing flows, defining new flows and configuring the pipeline to recognize and process them accordingly, enabling dynamic flow classification and measurement.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If a single processing unit is used to classify all packets, then device complexity is reduced, but processing speed and productivity are limited by the slower unit

Engineering Contradiction:
Improvepacket processing speedVSAvoidprocessing architecture
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The processing system is divided into two distinct units: a fast packet processing pipeline for classifying known flows and a slower processing unit for analyzing new flows. This segmentation allows each unit to be optimized for its specific function, with the fast pipeline handling the majority of packets at wire speed while the slower unit handles only the minority of new flow packets that require detailed analysis.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A flow classification table acts as an intermediary data structure between the fast packet processing pipeline and the slower processing unit. The table stores flow identification information and is used by the fast pipeline to quickly classify packets without needing to consult the slower processing unit for each classification decision, thereby reducing the impact of the slower unit on overall system performance.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Measurement precision

If all packets are analyzed by the slower processing unit, then measurement precision is improved, but productivity and processing time increase

Engineering Contradiction:
Improveflow classification accuracyVSAvoidpacket processing throughput
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

Instead of analyzing all packets with the slower processing unit, the system applies partial action by using the fast pipeline to handle the majority of packets (known flows) that can be classified without detailed analysis. The slower processing unit is applied only to the partial subset of packets (new flows) that require thorough analysis, achieving sufficient measurement precision for new flows while maintaining high overall productivity.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The fast packet processing pipeline performs preliminary classification action by quickly identifying packets that belong to known flows using the flow classification table. This preliminary action filters out the majority of packets before they reach the slower processing unit, allowing the slower unit to focus its resources only on packets that require detailed analysis, thus maintaining both precision and productivity.

Inventive Principle:
Principle #10Preliminary action

3Productivity

If the processing unit operates at wire speed, then productivity is maximized, but adaptability to new flows is reduced due to inability to perform detailed analysis

Engineering Contradiction:
Improvepacket processing speedVSAvoidnew flow detection capability
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The processing system is segmented into a fast pipeline for handling known flows and a slower processing unit for detecting new flows. The fast pipeline operates at wire speed and uses a flow classification table to quickly route packets, while the slower processing unit performs detailed analysis to detect and characterize new flows. This segmentation allows the system to maintain high productivity for known flows while preserving adaptability for new flow detection.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The slower processing unit provides feedback about newly detected flows back to the fast packet processing pipeline. Once the slower unit identifies a new flow and characterizes it, this information is fed back to update the flow classification table, enabling the fast pipeline to recognize and handle the new flow in the future at wire speed. This feedback mechanism ensures the system adapts to new flows while maintaining high processing speed.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS8582428B1Methods and apparatus for flow classification and flow measurement
Publication Date: 2013.11.12 MARVELL ASIA PTE LTD
  • US8582428B1 patent drawing
  • US8582428B1 patent drawing
  • US8582428B1 patent drawing

AI summary

A packet processing pipeline is configured to classify packets received via a network based on information in the received packets: (1) as belonging to one of a plurality of identified flows, or (2) as not belonging to any of the plurality of identified flows. For each received packet determined not to belong to one of the previously identified flows, the pipeline sends at least a portion of the packet or a corresponding packet descriptor to a processing unit. For each received packet determined not to belong to one of the previously identified flows, the processing unit defines a new flow corresponding to the packet based on an analysis of the portion corresponding packet descriptor, and configures the packet processing pipeline to handle the new flow.