Persistent Bidirectional Connection for Client-Server Communication

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current communication methods between client applications and application servers often result in significant processing overhead due to the repeated establishment and termination of unidirectional communication links, which is resource-intensive and inefficient.

Innovation Solution

Establishing a persistent bidirectional connection between client applications and application servers using a web view, allowing for continuous communication via a platform-agnostic format, reducing the need for frequent link establishment and termination.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If unidirectional communication links are established for each session, then information can be transmitted between client application and application service, but processing overhead increases due to repeated establishment and termination of communication links

Engineering Contradiction:
Improveinformation transmissionVSAvoidprocessing overhead
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

A persistent bidirectional communication link is established in advance between the client application and application service before actual data transmission begins. This preliminary establishment of the communication channel eliminates the need for repeated link creation and termination during subsequent sessions, thereby reducing processing overhead while maintaining reliable information transmission.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If unidirectional communication links are established for each session, then data can be transmitted from transmitting device to receiving device, but resource utilization increases due to frequent link establishment and termination

Engineering Contradiction:
Improvedata transmissionVSAvoidresource utilization
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The persistent bidirectional communication link remains continuously active throughout the application lifecycle, allowing data transmission to occur without interruption or repeated connection establishment. This continuous communication channel maintains productivity while significantly reducing resource utilization by eliminating the energy-consuming processes of frequent link setup and teardown.

Inventive Principle:
Principle #20Continuity of useful action

3Loss of energy

If communication links are terminated after data transmission, then resources are freed, but processing overhead increases due to repeated link establishment

Engineering Contradiction:
Improveresource freeingVSAvoidlink establishment time
Core Design Contradiction:
Loss of energyVSLoss of time

Solution Approach 1:

The persistent communication link is established in advance and maintained throughout the application lifecycle, eliminating the need for repeated link establishment procedures. This approach trades the continuous occupation of communication resources for the elimination of time-consuming link setup processes, thereby reducing processing overhead and improving overall system efficiency.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11683359B2Methods and systems for persistent communications between client applications and application servers
Publication Date: 2023.06.20 INTUIT INC
  • US11683359B2 patent drawing
  • US11683359B2 patent drawing
  • US11683359B2 patent drawing

AI summary

Certain aspects of the present disclosure provide techniques for communicating between an application executing on a client device and a server using a persistent connection. An example method generally includes initializing a persistent connection between an application executing on a client device and a server. Information about an event within the application is received. Communications between the application and the server are performed via streaming data related to the information about the event carried on the persistent connection. Generally, the streaming data may be translated from an application-native format to a platform-agnostic format and may include application-specific information. One or more actions are taken within the application based on the streaming data related to the event and carried on the persistent connection.