Peer-to-Peer Cluster Membership Management via Distributed Nodes

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing cluster architectures face challenges in maintaining accurate cluster membership and facilitating transparent failover and load balancing without increasing complexity, particularly in detecting node failures and ensuring consistent configuration across all nodes.

Innovation Solution

Implementing a peer-to-peer communication channel where each node maintains its own cluster membership by accessing cluster information stored in commonly accessible storage, using timers to detect failed nodes, and employing an augmented stub for failover and load balancing, allowing each node to independently manage cluster membership and configuration updates.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If a centralized cluster communication channel is used where one central node determines cluster membership and disseminates information to other members, then cluster membership management is simplified, but the central node becomes a single point of failure and the system loses fault tolerance

Engineering Contradiction:
Improvecluster membership management complexityVSAvoidfault tolerance
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The patent divides the centralized cluster membership management function into distributed components. Each node maintains its own cluster membership information independently, eliminating the single central authority. The cluster membership database is segmented across multiple nodes, with each node holding a copy or portion of the membership information, thereby distributing the management responsibility and eliminating the single point of failure.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements replication of cluster membership information across multiple nodes. Each node maintains a local copy of the cluster membership database, ensuring that even if one node fails, the membership information remains available on other nodes. This copying mechanism provides fault tolerance while maintaining simplified access to membership data.

Inventive Principle:
Principle #26Copying

2Reliability

If each node maintains independent cluster membership information through peer-to-peer connections, then fault tolerance and availability are improved, but the complexity of maintaining consistent cluster membership across all nodes increases

Engineering Contradiction:
Improvefault toleranceVSAvoidcluster membership consistency management
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements a feedback mechanism where nodes periodically exchange cluster membership information through peer-to-peer connections. Each node monitors the consistency of its local membership database against information received from other nodes and automatically corrects discrepancies. This continuous feedback loop maintains consistency across the distributed system without requiring complex manual management.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent employs periodic synchronization of cluster membership information among nodes. At regular intervals, nodes exchange their membership databases and reconcile differences, ensuring consistency across the cluster. This periodic action prevents drift in membership information while avoiding the need for continuous complex coordination protocols.

Inventive Principle:
Principle #19Periodic action

3Reliability

If traditional load balancing and failover mechanisms are used, then service continuity is maintained during node failures, but the complexity of implementing transparent failover and maintaining accurate cluster membership increases significantly

Engineering Contradiction:
Improveservice continuityVSAvoidfailover implementation complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent enables nodes to autonomously detect failures and perform failover operations without complex centralized coordination. Each node independently monitors the health of other nodes through peer-to-peer connections and automatically redirects traffic from failed nodes. The cluster membership information is self-updating, with nodes automatically adding or removing members based on observed operational status, eliminating the need for complex manual failover management.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent pre-distributes complete cluster membership information to each node before failures occur. Each node maintains an up-to-date list of all cluster members and their statuses, enabling immediate failover decisions without requiring complex real-time coordination during failure events. This preliminary distribution of information simplifies the failover execution process.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS8601101B1Cluster communications framework using peer-to-peer connections
Publication Date: 2013.12.03 ORACLE AMERICAN INC
  • US8601101B1 patent drawing
  • US8601101B1 patent drawing
  • US8601101B1 patent drawing

AI summary

Various embodiments of a system and method for each node in a cluster including a peer-to-peer communication channel compiling and maintaining its own cluster membership are disclosed. In one embodiment, each cluster node may be coupled to every other node and commonly-accessible storage through a network. When a node starts up and attempts to join the cluster, it may access cluster information data stored in the commonly-accessible storage. This information may include a list of all nodes that are potential cluster members. Based on the cluster membership information, the joining node may request a peer-to-peer connection with each potential cluster member. When such a request results in establishment of a connection, the joining node may add the name of the target node to its cluster membership list. Likewise, when a member node grants a connection to a node, it may add the joining node to its cluster membership list.