Session Migration via Network Address Translation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing session management technologies in client-server environments face challenges such as inflexibility in responding to dynamic load changes, server failures, and high network overhead when migrating sessions between servers, particularly due to the complexity of modifying IP and MAC addresses, and the limitations of existing protocols like PPPoE.
Innovation Solution
The proposed solution employs a session manager that uses network address translation (NAT) to migrate client sessions between servers without requiring changes to client IP addresses or MAC addresses, allowing for transparent session management with reduced network overhead by transferring client contexts and pending requests between servers using a checkpoint-based process.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If process migration is used to achieve dynamic session management, then session flexibility and server failure response are improved, but network overhead increases due to the need to change network address and port information for all connected clients
Solution Approach 1:
The patent segments the session management process into two independent parts: process migration and network address management. The session context and process state are migrated between servers, while the network address (IP and port) remains constant. This segmentation allows process mobility without requiring clients to change their connection information, thus reducing network overhead while maintaining session flexibility.
Solution Approach 2:
The patent introduces a session manager as an intermediary component that handles the complexity of session migration. The session manager maintains the mapping between network addresses and actual server processes, allowing processes to be migrated behind the scenes without affecting client connections. This intermediary absorbs the complexity of address management and process migration coordination.
2Reliability
If IP address migration is used to maintain communication during session transfer, then session continuity is improved, but device complexity increases due to modifications required at data link layer and transport layer
Solution Approach 1:
Instead of migrating the IP address to follow the process (traditional approach), the patent inverts the approach by keeping the IP address stationary and migrating the process to the IP address. This inversion simplifies the network layer by avoiding the need to update routing tables, ARP caches, and transport layer states across the network, while still achieving session continuity through process migration.
3Ease of operation
If static session management is used to simplify system operation, then ease of operation is improved, but adaptability to dynamic load changes and server failures deteriorates
Solution Approach 1:
The patent implements self-service mechanisms where the session manager automatically monitors server load, detects failures, and performs session migration without manual intervention. The system self-adjusts to dynamic conditions by automatically reassigning sessions from overloaded or failed servers to available servers, maintaining both operational simplicity and adaptability to changing conditions.
Data Source
AI summary
Embodiments of the present invention include systems and methods of migrating sessions between computer systems. In one embodiment, the present invention includes a session migration method comprising managing, by a session manager, a session between a client and a first server using network address translation, managing, by a first server, a context for the client, wherein the context is related to the session, determining that the session is to be moved from the first server, identifying, by the session manager, a second server other than the first server to manage the context, sending the context from the first server to the second server; managing, by the session manager, the session between the client and the second server using network address translation, and managing, by the second server, the context.


