Connection-Specific Event Lists for Communication Packet Processing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The existing software layered approach for communication frameworks requires redundant checks through multiple layers for each data packet, even if some layers are not necessary, leading to CPU cycle consumption and inefficiency.

Innovation Solution

Assigning a unique communication data structure to each connection that includes an event list specifying the required software communication modules and their ordering, allowing subsequent packets to bypass unnecessary checks by using the pre-determined event list for processing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a strictly layered approach is used where each layer examines every data packet, then comprehensive processing coverage is achieved, but CPU cycles and processing time are consumed redundantly

Engineering Contradiction:
Improveprocessing coverageVSAvoidprocessing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary action by determining the required software communication modules for each connection once at connection establishment time and storing this information in an event list. This preliminary determination eliminates the need for redundant module checking for each subsequent data packet, as the module requirements are pre-established based on connection type and administrative policies.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system segments the processing approach by creating connection-specific event lists that contain only the relevant software modules for that particular connection. Instead of a monolithic layered approach where all layers process all packets, each connection is segmented into its own processing path with only the necessary modules, reducing redundant processing while maintaining comprehensive coverage for each connection type.

Inventive Principle:
Principle #1Segmentation

2Reliability

If all data packets are processed through multiple communication layers, then thorough security and protocol checking is ensured, but processing efficiency decreases due to redundant checks

Engineering Contradiction:
Improvesecurity checkingVSAvoidprocessing efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system applies local quality by tailoring the processing path for each connection based on its specific requirements. Different connection types (e.g., LAN vs. Internet) receive different event lists with appropriately selected modules. This ensures that each connection undergoes the specific security and protocol checks it needs while avoiding unnecessary checks for other connection types, thereby maintaining thorough security checking while improving processing efficiency.

Inventive Principle:
Principle #3Local quality

3Device complexity

If a fixed layered architecture is used, then system simplicity is maintained, but flexibility to optimize processing paths for different connections is lost

Engineering Contradiction:
Improvesystem simplicityVSAvoidprocessing path flexibility
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The system introduces dynamics by making the processing path flexible and adaptive based on connection characteristics. The event lists are dynamically selected at connection establishment time based on the connection type and applicable administrative policies. This allows the system to adapt the processing path for each connection while maintaining a relatively simple underlying architecture of reusable software modules, thus achieving both simplicity and flexibility.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS7480291B2Method and system for processing communications packets according to event lists
Publication Date: 2009.01.20 ORACLE AMERICAN INC
  • US7480291B2 patent drawing
  • US7480291B2 patent drawing
  • US7480291B2 patent drawing

AI summary

In an embodiment of the present invention, a first communication packet is assigned to a first communication data structure that is unique to a first connection comprising the first communication packet. A first event list is selected from a database based on a classification of the first communication packet. The first event list identifies a first plurality of communication modules (e.g., socket layer, TCP layer, IP layer, IP security layer, firewall layer, etc.) and an ordering thereof, specific for the needs of the first connection. The first communication packet is processed through the first plurality of communication modules based upon the ordering specified in the first event list. A reference contained in the data structure marks the current packet position though the plurality of communication modules.