Distributed Session State Storage Using Hash-Based Node Selection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional approaches to storing session state data in multimedia delivery systems, such as those used in adaptive bitrate streaming, often rely on centralized managers that are difficult to scale and can create single points of failure, making it challenging to maintain session resilience across distributed systems.

Innovation Solution

A method for storing session state data across a plurality of nodes in a distributed system, where the location of the data is determined using a unique session identifier, allowing any node to locate and retrieve the data without relying on a centralized mechanism, enabling seamless session resumption across different nodes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If a centralized manager is used to store session state data, then session management is simplified and data location can be easily tracked, but the system becomes difficult to scale and creates a single point of failure

Engineering Contradiction:
Improvesession management simplicityVSAvoidsystem resilience
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The patent segments the centralized session state storage into distributed storage across multiple nodes. Each node maintains session state data locally, eliminating the single point of failure while maintaining session management functionality through decentralized architecture.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a hashing mechanism as an intermediary that maps session identifiers to specific node locations. This allows any node to determine where session state data is stored without requiring a centralized manager, resolving the contradiction between simplicity and resilience.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If session state data is distributed across multiple nodes, then system scalability and resilience are improved, but determining data location becomes more complex without a centralized mechanism

Engineering Contradiction:
Improvesystem resilienceVSAvoiddata location determination
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

Each node in the distributed system performs self-service by independently determining the location of session state data using the hashing mechanism. Nodes do not need to query a centralized directory or other nodes, as the hashing function directly provides the location information based on the session identifier.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent transforms the complex problem of distributed data location determination into a simple parameter-based lookup. By using the session identifier as input to a hashing function, the system converts an otherwise complex search problem into a direct calculation that yields the node location.

Inventive Principle:
Principle #35Parameter changes

3Ease of operation

If a centralized manager is used for session state storage, then data location is easily determined, but the system cannot easily scale to handle millions of concurrent sessions

Engineering Contradiction:
Improvedata location trackingVSAvoidsession handling capacity
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent segments session state storage across multiple nodes in the distributed system, allowing each node to handle a portion of the total session load. This segmentation enables linear scaling as nodes are added to the system, directly addressing the productivity limitation of centralized storage.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transitions from a single-dimension centralized storage model to a multi-dimensional distributed storage architecture. By introducing the node dimension and using hashing to map session identifiers to nodes, the system gains the ability to scale horizontally across multiple dimensions rather than being constrained by a single centralized point.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

Data Source

PatentEP3868081B1Distributed storage of state information and session recovery using state information
Publication Date: 2024.09.18 ARRIS ENTERPRISES LLC
  • EP3868081B1 patent drawingFigure 1
  • EP3868081B1 patent drawingFigure 2
  • EP3868081B1 patent drawingFigure 3

AI summary

A method for storing session state data of a session between a system having a plurality of nodes and a client device includes delivering a service to the client device during a session identified or otherwise specified by a session identifier. The service is delivered by a first of the plurality of nodes in the system. During the session, at least a second node in the system is selected on which session state data associated with the session is to be saved. The second node is selected based on the session identifier such that another node in the system is able to locate the session state data when stored on the second node from the session identifier without contacting a centralized mechanism that specifies where session state data is stored. The session state data is saved to the second node that is selected.