Connection Management Endpoints for Distributed Messaging
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Distributed computing systems face challenges in establishing communication between DC processes and threads without excessive computing overhead and network contention, often relying on third-party solutions and inefficient TCP/IP exchanges, leading to inflexible and poorly performing systems.
Innovation Solution
A connection management scheme that enables connection-oriented frameworks to wire-up over connectionless transports using dedicated resources like CM endpoints and completion queues, eliminating the need for communication management threads and allowing non-blocking communication, thereby optimizing communication between DC processes.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If TCP/IP exchanges and third-party solutions are used for communication between DC processes, then communication can be established, but computing overhead increases and network contention occurs
Solution Approach 1:
The patent segments communication into two distinct channels: connection management communications and data communications. Connection management uses a dedicated endpoint with completion queues to establish connections, while data communication uses separate endpoints. This segmentation eliminates the need for TCP/IP handshaking overhead in data communication paths, reducing computing overhead while maintaining reliable connection establishment.
Solution Approach 2:
The patent introduces a connection manager as an intermediary component that handles connection establishment separately from data communication. The connection manager uses completion queues and fabric endpoints to mediate connection setup, allowing data communication to proceed without the overhead of third-party communication libraries and TCP/IP exchanges.
2Reliability
If dedicated sockets are used for each messaging connection, then communication reliability is improved, but device complexity and resource consumption increase
Solution Approach 1:
The patent makes fabric endpoints universal by enabling a single endpoint to handle multiple messaging connections simultaneously. Instead of creating dedicated sockets for each connection, the system reuses fabric endpoints across multiple connections, reducing endpoint management complexity while maintaining connection reliability through the connection manager's coordination.
3Reliability
If connection management uses separate dedicated threads, then connection establishment is reliable, but productivity decreases due to thread resource consumption
Solution Approach 1:
The patent extracts the thread resource requirement from connection management by implementing completion queues that handle connection establishment asynchronously. Instead of dedicating threads to manage connections, the system uses event-driven completion queues that notify application threads when connections are established, eliminating thread resource consumption while maintaining reliable connection management.
4Ease of operation
If blocking messaging schemes are used, then communication simplicity is maintained, but productivity decreases due to blocking operations
Solution Approach 1:
The patent implements non-blocking messaging operations where fabric endpoints and completion queues allow communication operations to proceed without blocking application threads. The system continuously processes multiple communication operations concurrently through event-driven architecture, maintaining operational simplicity while eliminating productivity losses associated with blocking waits.
Data Source
AI summary
Various embodiments are generally directed to techniques for multiply-connected messaging endpoints, such as for communication between processes of a distributed computing system. Some embodiments are particularly directed to communication over a connectionless fabric between distributed computing (DC) threads, or DC processes comprised thereof, that are implemented in a connection-oriented framework. In several embodiments, establishment of this communication may be referred to as wire-up. In many embodiments, various DC processes on a distributed computing device may utilize respective connection manager (CM) endpoints to establish communication via a common messaging endpoint.


