Reconfigurable Packet Processing Order Customization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current network devices have a static and fixed packet processing order for network functions, making it costly and difficult to customize without major redesigns, as the processing order is predefined during the design phase and cannot be easily changed.

Innovation Solution

A reconfigurable packet processing system that identifies and customizes the processing order of network functions based on flow parameters, allowing for dynamic execution and updating of packet processing orders, including applying different configurations without extensive reconfiguration.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If the packet processing order is predefined during the design phase, then the system structure is simple and stable, but the adaptability to customize processing orders is poor

Engineering Contradiction:
Improvecustomization of packet processing orderVSAvoidsystem redesign complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements a reconfigurable packet processing system where the processing order of network functions can be dynamically changed based on flow parameters. The system uses a state machine that can be reconfigured to execute different sequences of function units (e.g., NAT, ACLs, firewall) without hardware redesign, allowing the packet processing pipeline to adapt its structure and behavior runtime based on traffic requirements

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the operational parameters of the packet processing system by introducing flow parameters that determine processing order. Different packet flows can have different processing sequences defined by parameters such as priority levels, traffic types, or source/destination characteristics, allowing customization without structural changes

Inventive Principle:
Principle #35Parameter changes

2Ease of operation

If the packet processing order is fixed, then the system is stable and reliable, but the ease of operation for customization is poor

Engineering Contradiction:
Improvecustomization of processing orderVSAvoidreconfiguration time
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The system pre-defines multiple packet processing orders as configurable templates during system initialization or deployment. These pre-configured processing sequences can be selectively activated based on flow parameters, eliminating the need for runtime reconfiguration and reducing the time required to customize processing orders

Inventive Principle:
Principle #10Preliminary action

3Adaptability or versatility

If the processing order is customized without major redesign, then the adaptability is improved, but the device complexity increases

Engineering Contradiction:
Improveflexibility in packet processingVSAvoidreconfigurable system complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments the packet processing system into independent, modular function units (e.g., NAT module, ACLs module, firewall module) that can be individually configured and executed in different sequences. Each function unit is a self-contained component with well-defined interfaces, allowing flexible reordering without affecting the integrity of individual processing functions

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS10728055B2System and method for customizing packet processing order in networking devices
Publication Date: 2020.07.28 CITRIX SYSTEMS INC
  • US10728055B2 patent drawing
  • US10728055B2 patent drawing
  • US10728055B2 patent drawing

AI summary

The present disclosure is directed to packet processing via reconfigurable packet processing system. A network device is configured to identify a processing order of multiple function units based on a first flow parameter of a first packet, execute a first function unit according to the processing order, update a processing status for the first packet to indicate processing by the first function unit is complete, and transmit the first packet responsive to determining from the processing status that the processing order has been completed. The network device is configured to receive a second packet including a second flow parameter, identify the second packet as a response packet of the first packet based on the first and second flow parameters, identify a reverse of the first processing order of the multiple function units, and execute a second function unit according to the reverse processing order.