Server Resource Availability Reporting for Dynamic Load Balancing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing network systems fail to dynamically adjust client request distribution across application servers based on varying resource capacities, leading to delays and unbalanced load distribution due to the lack of real-time resource availability information.
Innovation Solution
Implementing a method to report the availability status of resources within a network by inserting resource availability status information into SIP messages, allowing client applications to intelligently distribute traffic according to the availability of resources at each server, thereby adapting to dynamic changes and reducing overload.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If load balancers use heartbeat methods to watch server availability, then server availability monitoring is achieved, but the load balancers do not have a view of dynamic changes of resource availability behind the controller
Solution Approach 1:
The server sends periodic availability status messages containing resource availability information to the load balancer. This feedback mechanism ensures the load balancer continuously receives updated information about resource availability, resolving the contradiction between monitoring server availability and losing resource availability information.
Solution Approach 2:
The server proactively sends availability status messages before client requests arrive, allowing the load balancer to have advance knowledge of resource availability. This preliminary action enables the load balancer to make informed routing decisions without waiting for request failures or timeouts.
2Productivity
If load balancers use round-robin or weighted round-robin algorithms to distribute requests, then request distribution is achieved, but the remaining available application servers are overloaded
Solution Approach 1:
The load balancer transitions from static round-robin distribution to dynamic distribution based on real-time resource availability information. The algorithm adjusts request routing based on the current state of resources behind each server, enabling dynamic load balancing that prevents overload while maximizing productivity.
Solution Approach 2:
The load balancing algorithm changes from fixed parameters (round-robin order or weights) to variable parameters based on resource availability status. The system monitors resource availability parameters and adjusts routing decisions accordingly, allowing flexible adaptation to changing server conditions.
3Ease of operation
If client applications request services from available application servers, then service access is achieved, but delays occur due to overloaded application servers
Solution Approach 1:
The system implements feedback loops where servers report their resource availability status to load balancers, which then use this information to route requests to less loaded servers. This feedback mechanism prevents client requests from reaching overloaded servers, reducing processing delays while maintaining ease of service access.
Solution Approach 2:
The load balancer performs preliminary assessment of server availability before routing client requests. By evaluating resource availability status in advance, the system directs requests to appropriate servers proactively, preventing delays that would occur if requests were routed without prior knowledge of server capacity.
Data Source
AI summary
Methods, systems, and computer-readable media for reporting an availability status of resources associated with a server in a network in a network are described. According to one aspect, a computer-implemented method of reporting an availability status of resources associated with a server in a network includes determining the availability status of resources associated with the server. The availability status of resources is then inserted into a resource availability status header of a message. The message including the availability status of resources associated with the server is then sent.


