TCP Connection Pool Management for Proxy Server Efficiency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional methods for data access between a client and a server are inefficient due to the time-consuming process of establishing and maintaining TCP connections through a proxy server, leading to low data transmitting efficiency.

Innovation Solution

A method and device that determine the number of idle TCP connections between a client and a proxy server, allowing serial or parallel requests to be sent via existing idle connections or establishing new connections as needed, thereby optimizing the use of TCP connections to reduce resource and time consumption.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If TCP connections are established and disconnected for each data access between client and server, then connection reliability is maintained, but data transmitting efficiency deteriorates due to time consumption

Engineering Contradiction:
Improveconnection reliabilityVSAvoiddata transmitting efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system performs preliminary actions by establishing TCP connections in advance and maintaining them in an idle state for reuse. Connection pools are pre-configured with a certain number of TCP connections that are kept ready before actual data transmission needs occur, eliminating the need to establish connections at the moment of data access and thus improving transmission efficiency while maintaining reliability.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements continuity of useful action by maintaining TCP connections in an idle but persistent state rather than disconnecting them after use. These idle connections remain available for immediate reuse when new data transmission requests arrive, ensuring continuous data flow without interruption for connection establishment, thereby improving overall data transmitting efficiency while preserving connection reliability.

Inventive Principle:
Principle #20Continuity of useful action

2Productivity

If multiple TCP connections are established to handle parallel requests, then data transmitting efficiency is improved, but resource consumption increases

Engineering Contradiction:
Improvedata transmitting efficiencyVSAvoidresource consumption
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent merges multiple connection management operations into a unified connection pool system. Instead of establishing separate connections for each request or maintaining numerous individual connections, the system combines resource management at the connection pool level, allowing multiple requests to share and reuse connections from the pool. This reduces total resource consumption while maintaining the ability to handle parallel requests efficiently.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The connection pool implements universality by creating TCP connections that serve multiple purposes and multiple requests simultaneously. Each connection in the pool is a universal resource that can be allocated to any pending request, whether serial or parallel, making the connection infrastructure multi-functional and reducing the need for dedicated connections for each specific task, thereby optimizing resource utilization.

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

3Loss of time

If idle TCP connections are reused for serial requests, then time consumption is reduced, but connection management complexity increases

Engineering Contradiction:
Improvetime consumptionVSAvoidconnection management complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The connection pool system implements self-service by automatically managing the lifecycle of TCP connections. The system autonomously handles connection establishment, monitoring of idle connections, selection of appropriate connections for requests, and connection reuse without requiring manual intervention. This automated self-management reduces the perceived complexity for users while enabling efficient time-saving connection reuse.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent incorporates feedback mechanisms where the system continuously monitors the state of TCP connections (active, idle, available) and uses this information to make intelligent decisions about connection allocation and reuse. The feedback loop tracks connection usage patterns and adjusts connection pool management dynamically, optimizing the balance between time consumption and management complexity through data-driven decisions.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS9392081B2Method and device for sending requests
Publication Date: 2016.07.12 TENCENT TECHNOLOGY (SHENZHEN) CO LTD
  • US9392081B2 patent drawing
  • US9392081B2 patent drawing
  • US9392081B2 patent drawing

AI summary

A method for sending requests includes: determining, by a device comprising a processor, the requests and Transmission Control Protocol (TCP) connections between a client and a proxy server; and sending, by the device, the requests to the proxy server via idle TCP connections between the client and the proxy server to forward the requests to a Web server by the proxy server, or establishing, by the device, TCP connections between the client and the proxy server depending on whether the requests are serial or parallel requests, the number of the idle TCP connections between the client and the proxy server, and the number of TCP connections which are needed during sending the requests; and sending, by the device, the requests to the proxy server via the idle TCP connections and the established TCP connections to forward the requests to the Web server by the proxy server.