Multi-Core Firewall Session Data Sharing via Intermediary Mediator

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In multi-core systems, accurate communication between parallel processors is challenging, affecting computing performance due to issues like data consistency and security checks across cores.

Innovation Solution

A method and system for sharing session data between application firewall modules on different cores, where one core establishes a user session and stores data, and another core performs security checks by communicating with the first core using session identifiers, URL closure checks, cookie consistency checks, and form field consistency checks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple parallel processors are used to improve computing performance, then processing speed increases, but communication accuracy and data consistency between processors deteriorate

Engineering Contradiction:
Improvecomputing performanceVSAvoidcommunication accuracy
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent introduces a session manager as an intermediary component that mediates communication between multiple application firewall modules executing on different cores. The session manager maintains centralized session data and coordinates security checks across cores, ensuring data consistency while enabling parallel processing. When a security check is needed, the requesting core communicates with the session manager, which provides the necessary session information without requiring direct inter-core communication, thus maintaining reliability while preserving parallel processing benefits.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If session data is shared between cores, then security check efficiency improves, but data consistency and synchronization complexity increases

Engineering Contradiction:
Improvesecurity check efficiencyVSAvoiddata synchronization complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The session manager serves as a centralized intermediary that all cores access for session data. Instead of implementing complex peer-to-peer synchronization protocols between cores, each core communicates its security check requests to the session manager, which retrieves the appropriate session data and returns it. This approach improves security check efficiency by enabling parallel processing while avoiding the complexity of direct inter-core synchronization mechanisms.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The session manager creates and maintains copies of session data that can be efficiently accessed by multiple cores. Rather than having cores share a single mutable data structure requiring complex locking and synchronization, the session manager manages data copies that can be read concurrently by multiple cores, reducing synchronization overhead and improving security check efficiency while maintaining data consistency.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS8438626B2Systems and methods for processing application firewall session information on owner core in multiple core system
Publication Date: 2013.05.07 CITRIX SYSTEMS INC
  • US8438626B2 patent drawing
  • US8438626B2 patent drawing
  • US8438626B2 patent drawing

AI summary

The present invention is directed towards systems and methods for sharing session data among cores in a multi-core system. A first application firewall module executes on a core of a multi-core intermediary device which establishes a user session. The first application firewall module stores application firewall session data to memory accessible by the first core. A second application firewall module executes on a second core of the multi-core intermediary device. The second application firewall module receives a request from the user via the established user session. The request includes a session identifier identifying that the user session was established by the first core. The second application firewall module determines to perform one or more security checks on the request and communicates a portion of the request the first core. The second application firewall module receives and processes the security check results and instructions from the first core.