Multi-Part TCP Over VPN with Segment-Level MSS and RTT Tuning
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
TCP performance degrades in VPN connections due to encapsulation overhead, leading to reduced throughput and inefficient use of bandwidth, especially in multi-hop networks with varying network capabilities.
Innovation Solution
Splitting the end-to-end TCP connection into two segments at the VPN concentrator, optimizing parameters such as Maximum Segment Size (MSS) and Round Trip Time (RTT) for each segment, thereby avoiding VPN-related encapsulation overhead and adapting to different network conditions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If a single end-to-end TCP connection is established over VPN, then connection simplicity is maintained, but TCP performance degrades due to encapsulation overhead
Solution Approach 1:
The patent divides the single end-to-end TCP connection into two separate TCP connections: one from the VPN client to the VPN concentrator, and another from the VPN concentrator to the target server. This segmentation allows each connection to be optimized independently, with the VPN concentrator acting as an intermediate TCP endpoint that terminates and re-establishes connections, thereby eliminating the performance degradation caused by VPN encapsulation overhead on the second hop.
2Productivity
If TCP connection is terminated at VPN concentrator and split into two segments, then throughput is improved by avoiding encapsulation overhead, but connection complexity increases
Solution Approach 1:
The VPN concentrator serves as an intermediary TCP endpoint that terminates the first TCP connection from the VPN client and initiates a second TCP connection to the target server. This intermediary approach allows the system to optimize each segment independently while maintaining transparent operation for end users, as the VPN concentrator automatically manages the connection splitting and parameter optimization without requiring client-side modifications.
3Reliability
If MSS is reduced to prevent fragmentation, then packet loss is reduced, but bandwidth utilization becomes inefficient
Solution Approach 1:
The patent applies different Maximum Segment Size (MSS) values to different segments of the TCP connection based on local network conditions. The VPN concentrator determines appropriate MSS values for each segment (client-to-congregator and concentrator-to-server) independently, allowing each segment to utilize the maximum available bandwidth for its specific network path while preventing fragmentation. This local optimization eliminates the need for a conservative global MSS reduction.
4Ease of operation
If end-to-end TCP connection is used, then parameter optimization is simple, but adaptation to varying network capabilities in multi-hop networks is poor
Solution Approach 1:
The system dynamically optimizes TCP parameters for each segment based on real-time network conditions. The VPN concentrator measures round-trip times (RTT) for each segment independently and adjusts TCP parameters such as window size and timeout values accordingly. This dynamic adaptation allows the system to respond to varying network capabilities in multi-hop environments without requiring manual configuration, as the VPN concentrator automatically tunes parameters based on observed performance metrics.
Data Source
AI summary
Based on an initiation request for a first connection from a Virtual Private Network (VPN) user device intended for a target, a second connection is established between a VPN concentrator and the VPN user device across a VPN tunnel and a third connection is established between the VPN concentrator and the target. The second connection is established with a first Maximum Segment Size (MSS) and the third connection is established with a second MSS. A first round trip time (RTT) for the second connection is measured. A second RTT for the third connection is measured. Parameters of at least one of the second connection or the third connection are optimized, where first parameters of the second connection are optimized based on the first RTT and second parameters of the third connection are optimized based on the second RTT.


