Client-Side TCP Pooling for Remote Application Acceleration

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing solutions for improving the performance of remotely-accessed applications are limited by the need for installing and maintaining network appliances or servers at multiple remote sites, which is resource-intensive and not feasible for sporadic access, and do not effectively address delays due to congested WAN links and low-bandwidth connections.

Innovation Solution

A client-side acceleration technique that dynamically deploys and executes an acceleration program to pool transport layer connections, enabling multi-protocol compression, multiplexing, buffering, and caching, and encrypts communications, thereby improving performance without requiring dedicated appliances or servers at each access point.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If an appliance is deployed within the enterprise network to perform acceleration functions, then latency on the enterprise network is reduced and server load is reduced, but delays due to congested WAN links and low-bandwidth remote connections are not effectively addressed

Engineering Contradiction:
Improvelatency on enterprise networkVSAvoideffectiveness across diverse network conditions
Core Design Contradiction:
Loss of timeVSAdaptability or versatility

Solution Approach 1:

The patent introduces an intermediary acceleration appliance that sits between remote clients and enterprise servers, performing protocol translation and data compression. This intermediary handles the complexity of acceleration functions centrally, allowing clients to access applications without modifying their existing network interfaces or installing client-side software.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent replaces mechanical network infrastructure modifications with software-based protocol translation and data processing. Instead of requiring physical changes to network equipment or client devices, the solution uses software to compress data, translate protocols, and manage connections dynamically.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Productivity

If accelerator servers or appliances are installed on the client-side LAN, then client-side acceleration is achieved, but time, expense and resources are consumed for installation and maintenance at each remote site

Engineering Contradiction:
Improveclient-side acceleration performanceVSAvoidinfrastructure deployment complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent creates a universal acceleration appliance that can serve multiple remote sites and support various protocols (HTTP, FTP, Telnet, etc.) through a single platform. The appliance performs multiple functions including compression, protocol translation, connection pooling, and caching, eliminating the need for separate solutions at each location.

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

Solution Approach 2:

The patent uses connection pooling where a single physical connection from the acceleration appliance to the server is copied and shared among multiple clients. This allows multiple users to access the same application simultaneously through pooled connections, reducing the total number of connections required and simplifying infrastructure.

Inventive Principle:
Principle #26Copying

3Reliability

If multiple connections are established for each application on the client, then application functionality is maintained, but connection establishment overhead and network resource consumption increase

Engineering Contradiction:
Improveapplication functionalityVSAvoidnetwork resource consumption
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent merges multiple client connections into a single pooled connection at the acceleration appliance. Multiple applications from different clients share the same physical connection to the server, consolidating network resources and reducing the total number of connections while maintaining individual application functionality through protocol translation and connection multiplexing.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent implements connection pooling that maintains persistent connections between the acceleration appliance and servers, keeping them open for repeated use rather than establishing new connections for each request. This continuous connection state eliminates repeated connection establishment overhead and keeps network resources in a ready, useful state.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS8700695B2Systems and methods for providing client-side accelerated access to remote applications via TCP pooling
Publication Date: 2014.04.15 CITRIX SYSTEMS INC
  • US8700695B2 patent drawing
  • US8700695B2 patent drawing
  • US8700695B2 patent drawing

AI summary

The present invention is directed towards systems and methods for dynamically deploying and executing acceleration functionality on a client to improve the performance and delivery of remotely accessed applications. In one embodiment, the client-side acceleration functionality is provided by an acceleration program that performs a transport layer connection pooling technique for improving performance of communications and delivery of a remotely-accessed application. The acceleration program establishes a transport layer connection from the client to the server that can be used by multiple applications on the client, or that is otherwise shared among applications of the client. The acceleration program maintains the transport layer connection open to reduce the number of transport layer connection requests and number of transport layer connections established with the server for an application or multiple applications running on the client.