Dynamic Communication Channel Switching for Network Adaptation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional client-server architectures face challenges in maintaining continuous communication, as synchronous communication provides a good user experience with good network connectivity but fails in lossy and noisy conditions, while asynchronous communication increases reliability but introduces latency, especially for mobile client devices with transient network connections.

Innovation Solution

Implementing a system that dynamically switches between synchronous and asynchronous communication channels based on network conditions, using a network decision engine to manage communication channels and select the appropriate channel for each communication request, ensuring seamless user experience across varying network connections.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If synchronous communication is used, then responsiveness and user experience are improved under good network conditions, but reliability deteriorates under lossy and noisy network conditions

Engineering Contradiction:
ImproveresponsivenessVSAvoidcommunication reliability
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The system dynamically switches between synchronous and asynchronous communication channels based on real-time network conditions. A network decision engine monitors connection quality and automatically selects the appropriate communication mode, transforming a static communication architecture into a dynamic one that adapts to changing network environments.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The invention changes the communication parameter from purely synchronous to a variable state that can switch between synchronous and asynchronous modes. This parameter change allows the system to optimize for responsiveness when network conditions are good while ensuring reliability when conditions deteriorate.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If asynchronous communication is used, then reliability is improved by guaranteeing message delivery, but user experience deteriorates due to introduced latency

Engineering Contradiction:
Improvemessage delivery guaranteeVSAvoidcommunication latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system employs dynamic communication channel selection, switching between asynchronous and synchronous modes based on network conditions. This dynamic approach prevents the system from being locked into a single mode that would always incur latency, allowing it to achieve reliability only when asynchronous mode is necessary.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The network decision engine periodically evaluates network conditions and switches communication modes accordingly. This periodic assessment ensures that the system transitions to asynchronous communication only when reliability is compromised, rather than operating in asynchronous mode continuously, thereby minimizing latency.

Inventive Principle:
Principle #19Periodic action

3Device complexity

If a single communication channel is used, then system complexity is reduced, but adaptability to varying network conditions deteriorates

Engineering Contradiction:
Improvecommunication channel structureVSAvoidnetwork condition adaptability
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The communication system is designed with multi-functionality, supporting both synchronous and asynchronous communication channels within a single architecture. The network decision engine acts as a universal controller that can manage either communication type, allowing the system to adapt to different network conditions without requiring separate dedicated systems.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The network decision engine serves as an intermediary layer between the application and the communication channels. It abstracts the complexity of managing multiple communication modes from the application logic, providing a simple interface while handling the complexity of channel selection and switching internally.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS11962635B2Dynamically switching between synchronous and asynchronous communication channels
Publication Date: 2024.04.16 VMWARE INC
  • US11962635B2 patent drawing
  • US11962635B2 patent drawing
  • US11962635B2 patent drawing

AI summary

Disclosed herein are systems and methods for dynamically switching between synchronous and asynchronous communication channels. A communication request can be received from an application, and a request identifier can be generated for the communication request. The communication request can be transmitted to an edge server application via a first communication channel. The first communication channel can be selected from a plurality of communication channels based at least in part on a policy. In an instance in which a condition specified by the policy is detected in the transmission of the communication request, a second communication channel can be selected from the plurality of communication channels. The communication request can be transmitted to the edge server application using the second communication channel.