Preemptive Address Mapping for Global Server Load Balancing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional global load balancing methods via domain name resolution are not scalable for a large number of client devices and fail to consider client and server location aspects, leading to inefficient distribution of requests among host servers.

Innovation Solution

Preemptive address mapping based on attributes associated with client network addresses, where a pre-computed mapping data is used to direct client devices to the most suitable servers, considering geographical proximity and load balancing policies, allowing for efficient and fast server selection during runtime.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If traditional DNS round-robin algorithm is used for load balancing, then implementation is simple, but it fails to consider client and server location aspects leading to inefficient request distribution

Engineering Contradiction:
Improveimplementation simplicityVSAvoidrequest distribution efficiency
Core Design Contradiction:
Ease of manufactureVSProductivity

Solution Approach 1:

The system pre-computes and stores optimal server mappings for various client network addresses in a DNS server before actual DNS queries occur. This preliminary computation considers client and server location attributes, network conditions, and server load status to determine the best server for each client type, thereby avoiding complex real-time calculations while maintaining efficient request distribution

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The invention changes the parameters used in DNS resolution from simple round-robin rotation to location-aware and condition-aware mapping. By incorporating client network address attributes, server geographic location, network conditions, and server load status as key parameters, the system transforms the DNS lookup process into an optimized routing decision that balances both simplicity and efficiency

Inventive Principle:
Principle #35Parameter changes

2Speed

If exhaustive set of redirection answers is pre-computed for all possible client network addresses, then runtime query speed is fast, but the amount of data to be prepared and stored is large

Engineering Contradiction:
Improveruntime query speedVSAvoiddata volume
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

Instead of creating a uniform exhaustive mapping for all possible client addresses, the system applies local quality by generating specific pre-computed mappings only for actually observed or anticipated client network addresses. Each entry in the pre-computed data is tailored to specific client attributes and their optimal server mappings, reducing overall data volume while maintaining fast lookup performance for relevant cases

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system performs partial pre-computation by focusing on the subset of client network addresses that are actually observed or expected to query the DNS server, rather than exhaustively preparing mappings for all theoretically possible addresses. This partial action approach achieves fast runtime queries for actual clients without the overhead of storing data for hypothetical addresses that never occur

Inventive Principle:
Principle #16Partial or excessive action

3Reliability

If mapping relationship is updated frequently to reflect changing server load and attributes, then load balancing accuracy is improved, but the complexity of maintaining and updating the mapping data increases

Engineering Contradiction:
Improveload balancing accuracyVSAvoidmapping data maintenance complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system implements periodic updates of the pre-computed mapping data at scheduled intervals rather than continuous real-time updates. Between update cycles, the DNS server uses the existing pre-computed mappings for fast resolution. This periodic approach maintains acceptable load balancing accuracy while significantly reducing the operational complexity compared to continuous updates

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

The system incorporates feedback mechanisms where DNS query patterns, server load status, and network conditions are monitored and fed back into the pre-computation process. When significant changes are detected in server attributes or load patterns, the system triggers selective updates of affected mapping entries rather than comprehensive re-computation, thereby maintaining accuracy while managing complexity

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS9948706B2Preemptive address mapping for server load balancing
Publication Date: 2018.04.17 APPLE INC
  • US9948706B2 patent drawing
  • US9948706B2 patent drawing
  • US9948706B2 patent drawing

AI summary

A method and an apparatus for global server load balancing are described. Attributes of a set of network addresses may be maintained. Each network address may be assignable to a device capable of accessing a service via a domain name. A set of servers may be provided for hosting the service of the domain name. A mapping relationship between the network addresses and a set of preferences among the servers may be determined based on the attributes. Multiple network addresses may share a common preference. An association data may be generated to represent the mapping relationship. Multiple network addresses may be collectively represented in the association data to be associated with a common preference. A device can reach one of the servers according to the association data in real time asynchronous to when the association data is generated.