TCP Connection Migration via Connection Filters

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Centralized computing systems face challenges in load balancing due to difficulties in migrating applications from one machine to another while maintaining connections with remote applications, leading to inefficient resource utilization.

Innovation Solution

A method for migrating TCP connections between computing nodes by establishing, pausing, and reestablishing connections using connection filters and daemons, which maintain and restore the connection state, including virtual IP addresses and snapshot management.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If applications are migrated from one machine to another for load balancing, then resource utilization is improved, but connection continuity with remote applications deteriorates

Engineering Contradiction:
Improveresource utilizationVSAvoidconnection continuity
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system segments the connection management by introducing connection filters that separate the application layer from the network layer. The connection filter on the source machine captures outgoing connections, extracts connection information, and forwards it to the destination machine, enabling independent migration of applications without disrupting the connection state.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Connection filters act as intermediaries between applications and the network. The filter intercepts connection requests, processes connection information, and maintains connection state independently of application location. This intermediary mechanism allows applications to be migrated while the filter ensures continuous connection management.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If connections are maintained during application migration, then connection continuity is improved, but system complexity increases

Engineering Contradiction:
Improveconnection continuityVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The connection filter operates autonomously to manage connections during migration. It automatically captures connection information, determines destination machines based on load conditions, and forwards connection state without requiring application-level intervention. This self-service approach maintains connections while avoiding the complexity of coordinated multi-component protocols.

Inventive Principle:
Principle #25Self-service

3Productivity

If load balancing is implemented in centralized computing systems, then system efficiency is improved, but difficulty in maintaining connections increases

Engineering Contradiction:
Improvesystem efficiencyVSAvoidconnection management difficulty
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The connection filter performs preliminary actions by capturing and preserving connection information before the application is migrated. It stores connection state in advance, allowing the application to be moved to a different machine without establishing new connections. This preliminary capture of connection state simplifies load balancing by decoupling connection management from application location.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS8090836B1TCP connection migration
Publication Date: 2012.01.03 CA TECH INC
  • US8090836B1 patent drawing
  • US8090836B1 patent drawing
  • US8090836B1 patent drawing

AI summary

A method is provided for migrating a connection between two computing nodes of a computing center. The method includes establishing the connection between a remote application and a local application on a first computing node, pausing the local application, restoring the local application to a second computing node, and reestablishing the connection between the remote application and the local application on the second computing node. A connection filter on the first computing node can maintain connections while the local application is paused. An application scheduler routine can cause the application to be restored on the second computing node where a second connection filter obtains connection information and reestablishes the connection to the remote application.