Bidirectional Message Routing in Multi-Tenant Clusters

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The OpenStack Swift system faces challenges in establishing a secure and persistent bidirectional communication channel between a central management system and nodes across insecure networks, particularly in a multitenant, multi-network distributed environment, where secure management and monitoring are necessary to prevent unauthorized access and ensure data integrity.

Innovation Solution

A node router process at the controller node receives messages wrapped in routing envelopes with universally unique identifiers (UUIDs) and ephemeral IDs, using secure virtual private network tunnels to route messages between services on different nodes, ensuring secure communication and reestablishing connections after network interruptions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a central management system establishes communication channels with multiple distributed nodes over insecure networks, then the system achieves multitenant, multi-network distributed management capability, but the security and persistence of communication channels cannot be guaranteed

Engineering Contradiction:
Improvemultitenant multi-network distributed management capabilityVSAvoidsecurity and persistence of communication channels
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent introduces a control plane as an intermediary between management systems and data plane nodes. The control plane establishes secure persistent channels (Unix domain sockets, named pipes, or secure TCP sockets) with each node, mediating all communication. This allows the management system to communicate securely with distributed nodes without exposing itself directly to insecure networks, resolving the contradiction between distributed management capability and communication security.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If secure persistent communication channels are established between the central management system and distributed nodes, then communication security is improved, but the system complexity increases due to channel management overhead

Engineering Contradiction:
Improvecommunication securityVSAvoidchannel management overhead
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The control plane implements self-service mechanisms for channel management. It automatically discovers nodes on the network, dynamically establishes secure communication channels with them, and maintains channel persistence. This automation eliminates the need for manual channel configuration and reduces management overhead, allowing secure communication to be maintained without proportionally increasing system complexity.

Inventive Principle:
Principle #25Self-service

3Reliability

If manual configuration of secure communication channels is performed for each node, then communication security can be ensured, but the ease of operation and deployment is significantly reduced

Engineering Contradiction:
Improvecommunication securityVSAvoiddeployment simplicity
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The control plane performs preliminary actions by proactively discovering nodes and establishing secure communication channels before any management operations are required. Nodes are automatically registered with the control plane, and communication channels are pre-configured and validated. This eliminates the need for operators to manually configure security parameters, making deployment simple while maintaining security through automated best-practice configurations.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9787587B2Method and apparatus for bidirectional message routing between services running on different network nodes
Publication Date: 2017.10.10 NVIDIA CORP
  • US9787587B2 patent drawing
  • US9787587B2 patent drawing
  • US9787587B2 patent drawing

AI summary

Methods and systems are disclosed for secure bi-directional message routing between services running on a different nodes in a computer cluster. According to some embodiments, a multi-tenant computer cluster is accessed online via a controller. The controller, acting as central management system, may establish secure independent connections with each of the many nodes. Messages from the controller to any given node, and vice versa, are wrapped in a routing envelope and transferred over an independent and secure virtual private network tunnel. This allows the plurality of nodes to be centrally managed and utilized as a cluster while not being allowed to communicate with each other.