Intermediary Device Session State Synchronization for Failover

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Maintaining a session with a large, dynamic state in a standby intermediary device is challenging when the primary device fails, as the secondary device lacks initial state information, leading to disruptions in service and user experience.

Innovation Solution

An active-standby appliance pair is deployed, where the secondary device maintains the same session state as the primary device by receiving and parsing application protocol data and session metadata, allowing seamless session resumption upon primary device failure without requiring user re-login.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the secondary device maintains the same session state as the primary device by receiving and parsing application protocol data and session metadata, then seamless session resumption is achieved, but device complexity increases

Engineering Contradiction:
Improvesession availabilityVSAvoidstate maintenance mechanism
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The secondary device performs preliminary actions by continuously receiving and parsing application protocol data and session metadata from the primary device before any failure occurs. This preliminary state synchronization ensures that when the primary device fails, the secondary device already possesses the necessary session state information to resume service seamlessly without requiring user re-login or data recovery operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements copying by creating a replicated session state on the secondary device that mirrors the primary device's state. The secondary device maintains copies of session metadata and protocol data, enabling it to take over the primary device's responsibilities immediately upon failure detection while preserving all session information needed for continuous operation.

Inventive Principle:
Principle #26Copying

2Difficulty of detecting and measuring

If deep packet inspection is performed to gain visibility into session state, then troubleshooting capability improves, but processing time increases

Engineering Contradiction:
Improvesession state visibilityVSAvoidpacket processing time
Core Design Contradiction:
Difficulty of detecting and measuringVSLoss of time

Solution Approach 1:

The secondary device performs deep packet inspection and session state parsing in advance during normal operation, rather than only when failures occur. This preliminary analysis builds up the session state information needed for troubleshooting and failover, distributing the processing workload over time rather than concentrating it at critical moments.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system maintains continuous deep packet inspection and session state monitoring as an ongoing process during normal traffic flow. By keeping the secondary device continuously analyzing packets and updating session state information, the system ensures both troubleshooting capability and failover readiness without interrupting primary device operations or requiring additional processing bursts during critical events.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS11388243B2Method for resumption of an application session with a very dynamic and very large state in a standby intermediary device when the primary device fails
Publication Date: 2022.07.12 CITRIX SYSTEMS INC
  • US11388243B2 patent drawing
  • US11388243B2 patent drawing
  • US11388243B2 patent drawing

AI summary

The present disclosure is directed towards systems and methods of maintaining a session via an intermediary device. A first device intermediary to a client and a plurality of servers receives a packet of a session. The packet of the session includes application protocol data and application session metadata used to maintain a state of an application accessed via the session. The first device marks a session state of the session to an update state. The first device determines that a second device intermediary to the client and the plurality of servers is in a ready state and the session state of the session is in the update state. The first device forwards the application protocol data and the application session metadata of the packet to the second device to maintain, on the second device, the same state of the application accessed via the session provided by the first device.