TCP Connection Redirection via Proxy Chain Segmentation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current TCP flow control mechanisms take longer to converge to available bandwidth due to large round trip times (RTT), requiring manual configuration or deployment of specialized devices in Wide-Area-Network optimizers, which is inefficient and cumbersome.
Innovation Solution
Deploying a chain of TCP proxies between end-points to dynamically redirect TCP connections, allowing each segment to run its own TCP flow control algorithm independently, thereby reducing end-to-end transfer times without modifying the end-hosts' TCP network stack.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of time
If TCP flow control algorithm is fine-tuned for greater RTT, then convergence time to available bandwidth is improved, but manual configuration and parameter management complexity increases
Solution Approach 1:
The patent introduces a proxy server as an intermediary between the client and origin server. The proxy server establishes separate TCP connections to both the client and the origin server, acting as a mediator that bridges the long-distance communication path. This intermediary enables the client to communicate with the origin server through the proxy, effectively dividing the long RTT path into shorter segments managed by the proxy server.
Solution Approach 2:
The patent segments the end-to-end TCP connection into multiple independent connection segments: one between the client and proxy server, and another between the proxy server and origin server. Each segment runs independent TCP flow control algorithms with their own congestion windows. This segmentation allows each segment to converge independently based on its own RTT characteristics, rather than requiring the entire end-to-end path to use a single tuned parameter set.
2Loss of time
If WAN optimizer is deployed at both ends of communication, then TCP flow control convergence is improved, but device deployment complexity and protocol customization requirements increase
Solution Approach 1:
The patent employs a proxy server as an intermediary that implements WAN optimization functionality centrally rather than requiring deployment at both ends. The proxy server establishes independent TCP connections to the client and origin server, implementing flow control and congestion management at the intermediary point. This eliminates the need for specialized WAN optimizer devices at both client and server locations, reducing deployment complexity while maintaining optimization benefits.
3Loss of time
If segmented TCP connection via proxies is established, then convergence time to available bandwidth is reduced, but connection establishment complexity increases
Solution Approach 1:
The patent performs preliminary actions by having the proxy server pre-establish TCP connections to both the client and the origin server before actual data transfer begins. The proxy server initiates and maintains these connections in advance, so that when data needs to be transferred, the pathway is already established and optimized. This preliminary connection setup eliminates the need for complex dynamic connection establishment during data transfer.
Solution Approach 2:
The proxy server autonomously manages the segmented TCP connections, handling connection establishment, maintenance, and termination without requiring complex coordination between client and origin server. The proxy server independently manages its own connections to both endpoints, implementing self-service connection management that simplifies the overall system architecture compared to coordinated multi-endpoint management.
Data Source
AI summary
A method for establishing a TCP connection between a first end-point and a second end-point includes: establishing a first TCP connection between the first end-point and the second end-point; the second end-point dynamically deciding on redirecting the first TCP connection via a chain of proxies that interconnects the first end-point and the second end-point; based upon a case of a redirection decision by the second end-point occurring, the first end-point establishing a new TCP connection with the first proxy of the chain of proxies; and establishing a segmented TCP connection between the first end-point and the second end-point via the chain of proxies and transferring data between the first end-point and the second end-point through the chain of proxies.

