Persistent Connection Load Balancing via Virtual Channels
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing technologies face challenges in maintaining persistent and efficient connections between client devices and remote computing resources, particularly in managing load balancing and connection management across multiple server instances, which affects data transmission and resource utilization.
Innovation Solution
The implementation of a load-balancing service that routes connection requests to different server instances via virtual internet protocol (VIP) addresses, allowing for the establishment of multiple virtual channels over a single physical connection, and includes mechanisms for dynamically managing connections based on data exchange thresholds and time intervals to optimize resource allocation and reduce costs.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If multiple separate physical connections are established between client devices and remote computing resources, then connection reliability and data transmission capability are improved, but device complexity and coupling costs increase
Solution Approach 1:
The patent combines multiple virtual channels (audio upload, audio download, video upload, video download) into a single physical connection between client devices and remote computing resources. This single connection carries multiple logical channels, reducing the number of physical connections needed while maintaining all necessary communication functions, thereby reducing device complexity and coupling costs while preserving connection reliability.
Solution Approach 2:
The patent segments a single physical connection into multiple virtual channels, each handling different types of data transmission (audio upload, audio download, video upload, video download). This allows the system to maintain multiple independent data streams over one physical connection, achieving the reliability benefits of multiple connections without the complexity of managing separate physical links.
2Productivity
If persistent connections are maintained between client devices and remote computing resources, then data transmission efficiency is improved, but resource usage increases
Solution Approach 1:
The patent implements dynamic connection management where the system monitors data transmission activity and automatically drops connections that have been inactive for a specified threshold period. This dynamic approach allows persistent connections to be maintained when needed for efficient data transmission, while automatically releasing resources when connections are not in use, thus balancing transmission efficiency with resource conservation.
Solution Approach 2:
The system periodically evaluates connection activity and applies a threshold-based rule to determine whether to maintain or drop connections. This periodic assessment ensures that connections are kept alive only when actively transmitting data, preventing unnecessary resource consumption from idle persistent connections while maintaining efficiency when data transmission is occurring.
3Loss of energy
If connections are dropped after idle threshold time, then resource usage is reduced, but connection establishment time increases
Solution Approach 1:
The system pre-establishes persistent connections before data transmission is needed, allowing connections to be ready for immediate use. The connections are maintained in an active state during idle periods up to a threshold, so when data transmission is required, the connection is already established and can begin transmitting immediately without requiring a new connection setup.
Solution Approach 2:
The system maintains connections in a buffered state during idle periods, providing a cushion of ready-available connectivity. By keeping connections alive beyond immediate use and dropping them only after a threshold idle period, the system prepares for potential future transmission needs without immediately incurring the full cost of persistent connection maintenance, balancing resource usage with response time.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Techniques for creating a persistent connection between client devices and one or more remote computing resources, which may form a portion of a network-accessible computing platform. This connection may be considered "permanent" or "nearly permanent" to allow the client device to both send data to and receive data from the remote resources at nearly any time. In addition, both the client device and the remote resources may establish virtual channels over this single connection. If no data is exchanged between the client device and the remote computing resources for a threshold amount of time, then the connection may be severed and the client device may attempt to establish a new connection with the remote computing resources.