Distributed Global Access Points for Resilient Load Balancing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing load balancing techniques face challenges such as single points of failure, delays in propagating changes, and loss of control over request distribution, particularly in DNS-based and anycast configurations, which affect the resilience and efficiency of resource distribution across computing devices.
Innovation Solution
A distributed set of global access points using anycast routing techniques to advertise global network addresses, selecting endpoints based on load balancing algorithms, and employing Network Address Translation (NAT) and encapsulation to route requests efficiently and resiliently, thereby avoiding single points of failure and maintaining control over request distribution.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If a load balancer is used to distribute requests among servers, then resource distribution efficiency is improved, but a single point of failure is created
Solution Approach 1:
The patent segments the load balancing function by eliminating the centralized load balancer and instead implementing distributed load balancing through DNS servers. Each DNS server independently performs load balancing decisions, distributing the load balancing function across multiple nodes rather than concentrating it in a single device, thereby eliminating the single point of failure while maintaining resource distribution efficiency.
Solution Approach 2:
The patent introduces DNS servers as intermediaries between clients and servers to perform load balancing. Instead of using a dedicated load balancer, the DNS server acts as a mediator that translates domain names to server addresses based on load balancing algorithms, thereby distributing requests without creating a single point of failure.
2Reliability
If DNS load balancing is used to avoid single points of failure, then system reliability is improved, but delay in propagating changes occurs
Solution Approach 1:
The patent implements dynamic DNS record management that allows real-time updates of server address mappings. When server status changes or load conditions vary, the DNS server dynamically adjusts the load balancing configuration and immediately propagates these changes to clients, eliminating the propagation delay inherent in traditional DNS load balancing while maintaining high availability.
Solution Approach 2:
The patent incorporates feedback mechanisms where DNS servers continuously monitor server status and load conditions, then use this feedback to dynamically adjust load balancing decisions. This real-time feedback loop enables immediate propagation of changes without the delays associated with traditional DNS caching mechanisms, while still distributing requests across multiple servers to avoid single points of failure.
3Productivity
If anycast routing is used for load balancing, then request distribution is improved, but control over routing is lost
Solution Approach 1:
The patent applies local quality by implementing load balancing control at the DNS server level rather than relying on network-wide anycast routing. Each DNS server independently makes load balancing decisions based on local knowledge of server status and load conditions, maintaining control over request distribution while achieving effective load balancing without ceding routing control to external network infrastructure.
Data Source
AI summary
A system and method for management of communications for components of a global accelerator system is provided. The global accelerator system includes client devices communicating with a global access point via a public network to access various endpoints that can host services. In turn, a global access point communicates to various endpoints, which are organized into different data centers, via a private network. The global access point creates and manages separate TCP connections between the client and global access point and the client and endpoint to improve latency experienced by clients. Additionally, each TCP connection can be managed by specifying different congestion control and windowing parameters to leverage higher throughput between the global access point and a selected endpoint.


