Cluster Node Session Retention via Hash-Based Redistribution
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In computer cluster systems, maintaining session connectivity is challenging when new nodes join or existing nodes leave, leading to loss of sessions due to changes in traffic distribution and lack of session information, resulting in inefficient routing and interface management.
Innovation Solution
Each node in the cluster detects new or departing nodes, recalculates hash values, and pushes session information to ensure seamless transition, using a combination of heartbeat packets and hash functions to maintain session ownership and routing accuracy.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If new nodes are added to the cluster for capacity, then the processing power and bandwidth of the cluster are increased, but session connectivity is lost due to changes in traffic distribution
Solution Approach 1:
The system performs preliminary actions by detecting new nodes through heartbeat packets before they fully integrate into traffic distribution. Session information is proactively pushed to new nodes and existing nodes are updated with preference lists before traffic patterns change, preventing session loss rather than recovering it afterward
Solution Approach 2:
The system uses heartbeat packets as continuous feedback to monitor cluster composition. When a new node joins, the feedback mechanism triggers recalculation of hash values and updates of session information, ensuring traffic distribution adapts while maintaining session connectivity
2Ease of operation
If nodes are removed from the cluster for maintenance, then system maintenance is enabled, but session connectivity is lost due to traffic distribution changes
Solution Approach 1:
Before removing a node for maintenance, the system performs preliminary actions by detecting the node's departure through missed heartbeat packets. Session information is redistributed to remaining nodes and preference lists are updated before the node is fully removed, ensuring seamless maintenance without session loss
Solution Approach 2:
The heartbeat mechanism provides feedback that detects when a node stops responding. This feedback triggers the session redistribution process, allowing the system to adapt to node removal while maintaining session connectivity through updated hash calculations and preference lists
3Measurement precision
If hash values are recalculated when nodes join or leave, then traffic distribution accuracy is improved, but session information is lost for the recalculated hash values
Solution Approach 1:
The system creates copies of session information and distributes them to multiple nodes. When hash values are recalculated due to node additions or removals, the copied session information on other nodes ensures that sessions are not lost, as the preference list mechanism allows any node to handle sessions originally assigned to removed or new nodes
Solution Approach 2:
The system changes parameters by maintaining flexible session ownership where sessions can be reassigned between nodes based on updated hash values. The preference list parameter allows dynamic reassignment of sessions without losing session information, adapting traffic distribution while preserving connectivity
Data Source
AI summary
Described embodiments provide systems and methods for pushing session information to a newly joined node in a cluster of nodes. In the cluster, each node may maintain a session table of existing sessions. One or more nodes may detect a new node has joined the cluster. Each node, responsive to the detection, may apply a hash function on a tuple of each session of the existing sessions in the session table of the node to determine whether one or more existing sessions are identified to be owned by the new node as a result of the hash function. Each node, responsive to identifying that one or more sessions are to be owned by the new node, may push corresponding session information to the new node. The new node may become configured to receive a packet corresponding to the one or more sessions and to process the packet.


