Load-Balancing Cluster Using Virtual IP and Firewall Mechanism

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing load-balancing cluster systems face challenges in efficiently distributing traffic and managing TCP connections across multiple servers with identical virtual IP addresses, leading to potential duplicate responses and inconsistent state among cluster members.

Innovation Solution

A load-balancing cluster system using an n-port switch connected to multiple servers, where each server has a unique MAC address and a shared virtual IP address, with a firewall mechanism and heartbeat process to manage traffic distribution and server selection, ensuring that only one server handles a connection and maintaining consistent state through hash functions and firewall rules.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple servers share the same virtual IP address in a load-balancing cluster, then traffic distribution and load balancing are improved, but duplicate responses and inconsistent state among cluster members occur

Engineering Contradiction:
Improvetraffic distribution efficiencyVSAvoidresponse consistency
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent segments the shared virtual IP address functionality by introducing unique MAC addresses for each server while maintaining a common virtual IP. This segmentation allows the system to distribute traffic to multiple servers (improving productivity) while each server maintains distinct network identity (preventing duplicate responses and ensuring reliability). The switch uses the unique MAC addresses to differentiate between servers, ensuring that responses are not duplicated while still allowing load balancing across the cluster.

Inventive Principle:
Principle #1Segmentation

2Reliability

If a dedicated load balancing switch is used to manage traffic distribution, then traffic management reliability is improved, but system cost and complexity increase

Engineering Contradiction:
Improvetraffic management reliabilityVSAvoidsystem architecture complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements self-service by enabling standard switches to perform load-balancing functions through software-based MAC address table management. Instead of requiring specialized dedicated load-balancing hardware, the system uses readily available switches configured with virtual IP-MAC address mappings. This approach maintains traffic management reliability while significantly reducing system complexity and cost by eliminating the need for proprietary load-balancing devices.

Inventive Principle:
Principle #25Self-service

3Device complexity

If standard switches are used instead of dedicated load balancing switches, then system cost and complexity are reduced, but traffic distribution precision and control capability deteriorate

Engineering Contradiction:
Improvesystem architecture complexityVSAvoidtraffic distribution precision
Core Design Contradiction:
Device complexityVSManufacturing precision

Solution Approach 1:

The patent applies preliminary action by pre-configuring the switch's MAC address table with virtual IP to physical MAC address mappings before traffic distribution begins. This pre-establishment of address mappings ensures that standard switches can achieve precise traffic distribution without requiring complex real-time decision-making capabilities. The switch efficiently forwards packets based on these pre-computed mappings, maintaining traffic distribution precision while using simple, cost-effective hardware.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentEP2248016B1Load-balancing cluster
Publication Date: 2016.09.21 LEVEL 3 COMMUNICATIONS LLC
  • EP2248016B1 patent drawingFigure 1
  • EP2248016B1 patent drawingFigure 2
  • EP2248016B1 patent drawingFigure 3

AI summary

A load-balancing cluster includes a switch having a plurality of ports; and a plurality of servers connected to at least some of the plurality of ports of the switch. Each server is addressable by the same virtual Internet Protocol (VIP) address. Each server in the cluster has a mechanism constructed and adapted to respond to connection requests at the VIP by selecting one of the plurality of servers to handle that connection, wherein the selecting is based, at least in part, on a given function of information used to request the connection; and a firewall mechanism constructed and adapted to accept all requests for the VIP address for a particular connection only on the server that has been selected to handle that particular connection. The selected server determines whether it is responsible for the request and may hand it off to another cluster member.