Multi-Core GSLB Proximity Load Balancing via IP-Based Core Assignment

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Managing static proximity in multi-core GSLB appliances is challenging due to the complexity of determining the closest and best-suited server among numerous global servers, especially for a single processor.

Innovation Solution

A multi-core intermediary device communicates with a location database to allocate responsibility across cores based on source IP addresses, ensuring static proximity load balancing by directing domain name requests to the appropriate core for resolution.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If a single processor is used to manage global server load balancing, then device complexity is reduced, but productivity deteriorates due to the challenging decision-making process among numerous global servers

Engineering Contradiction:
Improveprocessor architectureVSAvoidserver selection speed
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent divides the single processor into multiple cores, allowing each core to handle specific geographic regions or server groups independently. This segmentation enables parallel processing of DNS requests, improving server selection speed while maintaining manageable complexity through organized division of labor

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a geographic dimension to the load balancing decision-making process by implementing location-based routing across multiple cores. Each core can be responsible for specific geographic regions, adding a spatial dimension that organizes the complexity and enables faster concurrent decision-making

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Productivity

If multiple cores are used in the GSLB appliance, then productivity improves through parallel processing, but device complexity increases due to core coordination requirements

Engineering Contradiction:
Improverequest processing capacityVSAvoidmulti-core coordination
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent assigns specific geographic regions or server groups to individual cores, giving each core specialized responsibility. This local quality approach reduces coordination overhead because each core makes independent decisions for its assigned region without requiring constant communication with other cores

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent implements a location database as an intermediary that stores geographic information and server mappings. This intermediary enables cores to independently determine the best server for any given client location without requiring inter-core communication, simplifying the multi-core coordination while maintaining high productivity

Inventive Principle:
Principle #24Intermediary (Mediator)

3Loss of time

If static proximity load balancing is implemented, then response time is reduced by directing clients to closest servers, but device complexity increases due to location database management

Engineering Contradiction:
Improveserver selection timeVSAvoidlocation database integration
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The patent pre-populates the location database with geographic information and server location data before operation. This preliminary action enables cores to quickly determine the closest server for any client by simple database lookup, reducing server selection time while keeping the database management complexity manageable through one-time setup

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentEP2517407B1Systems and methods for managing static proximity in multi-core GSLB appliance
Publication Date: 2016.03.02 CITRIX SYSTEMS INC
  • EP2517407B1 patent drawingFigure 1A
  • EP2517407B1 patent drawingFigure 1B
  • EP2517407B1 patent drawingFigure 1C

AI summary

The present invention is directed towards systems and methods for providing static proximity load balancing via a multi-core intermediary device. An intermediary device providing global server load balancing identifies a size of a location database comprising static proximity information. The intermediary device stores the location database to an external storage of the intermediary device responsive to determining the size of the location database is greater than a predetermined threshold. A first packet processing engine on the device receives a domain name service request for a first location, determines that proximity information for the first location is not stored in a first memory cache, transmits a request to a second packet processing engine for proximity information of the first location, and transmits a request to the external storage for proximity information of the first location responsive to the second packet processing engine not having the proximity information.