MPTCP Session Load Balancing via Token Extraction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current systems for multipath transmission control protocol (MPTCP) session load balancing in clusters face inefficiencies due to the need for packet steering, stateful session stores, and synchronization, leading to reduced goodput and increased costs, especially in horizontally scaled processor architectures and public cloud deployments.
Innovation Solution
Implementing a two-tier clustering architecture where the first tier of processors performs TCP-level load balancing and uses tokens for connection persistency, eliminating the need for packet steering and session store look-ups, and encapsulation by ensuring all subflows of an MPTCP session are load-balanced to the same node in the second tier, using a distributed hash table for token storage and lookup.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If packet steering, stateful session store, and synchronization are used to steer MPTCP subflows to the same node, then connection persistency is improved, but processing overhead and device complexity increase significantly
Solution Approach 1:
The patent extracts the connection tracking function from the data plane to the control plane. The first tier processor extracts and stores the token from the primary connection in a data structure, separating the steering logic from the packet processing path. This eliminates the need for complex packet steering, stateful session stores, and synchronization in the data plane, resolving the contradiction between connection persistency and processing overhead.
Solution Approach 2:
The patent performs preliminary action by storing the token and associated processor mapping in a data structure during the primary connection establishment phase. This pre-computation and pre-storage of routing information eliminates the need for real-time lookups and steering decisions during subsequent subflow processing, reducing processing overhead while maintaining connection persistency.
2Reliability
If two-hop steering within the cluster is implemented to steer subflows to the same node, then connection persistency is improved, but goodput decreases dramatically due to increased packet processing overhead
Solution Approach 1:
The patent extracts the steering function from the packet data plane to the control plane token management system. By storing tokens and their associated processor mappings in advance, the system eliminates the need for two-hop steering and real-time packet manipulation, allowing packets to flow directly to the destination processor without intermediate steering operations, thus maintaining high goodput while ensuring connection persistency.
Solution Approach 2:
The patent creates a copy of the routing information (token to processor mapping) in a data structure that can be quickly queried. This copying of essential routing metadata allows for O(1) lookup time during subflow establishment, eliminating the need for complex multi-hop steering operations and maintaining packet processing efficiency.
3Reliability
If packet encapsulation and steering are used for MPTCP subflows, then connection persistency is improved, but Packet Per Second (PPS) limit is reduced due to steered packets counting toward the limit
Solution Approach 1:
The patent extracts the connection identification function to the token-based control plane system. By removing packets from the steering pipeline and allowing them to flow directly to the destination processor using the pre-computed token mappings, the system eliminates encapsulation and steering overhead. This ensures that steered packets no longer consume PPS capacity, resolving the contradiction between connection persistency and PPS limit.
4Reliability
If stateful session store and lookup are implemented for each subflow, then connection persistency is improved, but processing time and operational complexity increase
Solution Approach 1:
The patent performs preliminary action by pre-computing and storing the token-to-processor mapping in a data structure during primary connection establishment. This eliminates the need for stateful session store and lookup operations during subflow processing, reducing processing time from O(n) to O(1) while maintaining connection persistency through the token mechanism.
Solution Approach 2:
The patent extracts the session state management function to the control plane token system. By storing only the essential token and its mapping in the data structure rather than maintaining full session states, the system eliminates complex stateful lookups while preserving connection persistency, significantly reducing processing time and operational complexity.
Data Source
AI summary
Systems and methods for establishing a multipath connection include a first processor of a first cluster forwarding a first request from a client to establish a first connection with a server to a second processor of a second cluster. A third processor of the first cluster receives a second request to establish a multipath connection between the client and the server. The third processor forwards the second request to the second processor responsive to determining that the second request is to establish a multipath connection. The second processor establishes the multipath connection that includes the first connection and a second connection used as paths of the multipath connection.


