AVANU’s WebMux supports 3 primary load-balancing scheduling method algorithms.
Weighted Fastest Response
Along with these primary scheduling methods, there are additional options that include Weighted, Persistent, and combined Weighted and Persistent that give WebMux a total of ten (10) different load balancing behaviors to choose from.
Both the Least Connections and Round Robin have the Weighted and Persistent along with combined Weighted and Persistent options. The Weighted Fastest Response has the Persistent option.
WebMux Additional Scheduling Options
The Persistent option instructs the WebMux to send a returning client back to the original server it connected to, as long as the client reconnects to the server farm within the set Persistent timeout period. This is regardless of the base scheduling method used. The timeout period is set or changed in the WebMux Network Administration settings.
This is beneficial in cases where the servers do not track sessions and clients might disconnect and reconnect expecting to continue a session. Without the Persistent option, the client can be sent to a different server upon returning.
For example, in the case of HTTP services, a client may disconnect immediately after retrieving a resource from a web page, but may make several reconnections to retrieve other resources on the same web page. Although the duration of time could be very minimal between a user’s disconnection and reconnection, each reconnection could potentially send the client to a different server for each of the retrieval.
This would not be a problem for a basic HTTP site, where all the servers in the farm have the same exact copy of the site. However for session dependent services, the Persistent option would be essential to maintain an uninterrupted service rather than sending a client to a different server mid-session that would cause interruption to the user’s experience.
Many modern services may already have a means of tracking sessions within a server cluster. With these service types, the Persistent option is not necessary.
The Weighted scheduling option is when a value can be assigned for the amount of network traffic sent to each server. A farm may consist of a variety of servers built with different amounts of memory or CPU speeds. Thus, the network traffic capacity handling and performance from each server will be different from each other within the server cluster. This option prevents any server within the farm from being overwhelmed.
The weighted value of a server is a ratio of the total weight of all the servers in the farm. For example, assigning a weight of 100 to one server and 50 to another server will have the same effect as setting the weight of 2 to one server and 1 to another server. In both cases, the ratio between the servers is 2:1 and the server with the highest weight will be favored to get twice as many connections than the lower weighted server.
WebMux Load Balancing Scheduling Methods
With the Least Connections scheduling method, WebMux will send new clients to servers with the least amount of active connections. There will be occasions when clients remain connected to a server for an extended amount of time where other servers may accumulate more client connections than others.
As with any of the load balancing scheduling methods, one cannot always expect to see a leveling of distribution. As connections come and go or remain connected, different servers may gain or lose connections sooner than others. But, the selection of servers to send a client to will continue to be a dynamic decision according to the servers with the Least Connections at the time a client connects to a farm.
The Least Connections/Persistent scheduling method instructs WebMux to direct clients that disconnect and reconnect within the persistent timeout period back to the same server they originally connected to, bypassing the load balancing algorithm. New client connections are distributed to the servers according to the Least Connections algorithm.
Weighted Least Connections
When WebMux is configured with the Weighted Least Connection scheduling method, the server weight ratio will prioritize and take precedence over the Least Connections scheduling algorithm. The load balancing schedule then prioritizes between servers of equal ratio.
Weighted Least Connections/Persistent
When WebMux is configured with the Weighted Least Connection/Persistent scheduling method, servers are first prioritized by weight ratio. Then for new connections, WebMux uses the Least Connections scheduling algorithm to prioritize between servers of equal ratio. If a connection is a reconnect within the persistence timeout period, the WebMux will bypass the server weight and load balancing algorithm where it sends the clients’ connection directly to the server it was previously connected to.
In a Round Robin scheduling method, WebMux sends client connections to the next available server in a sequential manner. If all connections are of equal in duration and activity, it would be reasonable to expect Round Robin to result in the most even distribution of connections to the servers. However, it must be considered that in real world scenarios not all connections will have equal activity and duration. So, even with Round Robin, there may be some servers carrying more connections than others; especially in cases where clients tend to remain connected for long periods of time.
With Round Robin/Persistent, WebMux distributes new connections to the servers in a sequential manner according to the Round Robin algorithm. However, connections that disconnect and reconnect within the persistence timeout period are sent back to the same server they originally connected to, bypassing the load balancing algorithm.
Weighted Round Robin
When WebMux is configured with the Weighted Round Robin scheduling method, the server weight ratio will prioritize and take precedence over the Round Robin scheduling algorithm. The load balancing algorithm then distributes connections in a sequential manner between servers of equal ratio.
Weighted Round Robin/Persistent
Servers are first prioritized by weight ratio when WebMux is configured with the Weighted Round Robin/Persistent scheduling method. Then, for new connections, the Least Connections algorithm distributes connections in a sequential manner between servers of equal ratio. If a connection is a reconnect within the persistence timeout period, it will bypass the server weight and load balancing algorithm and is sent directly to the server it was previously connected to.
Weighted Fastest Response
The WebMux Weighted Fastest Response scheduling method calculates a value based on the number of current connections, divided by the server weight. The server with the lowest value is determined to be the server that can provide the fastest response.
Weighted Fastest Response/Persistent
With the WebMux configured using the Weighted Fastest Response/Persistent scheduling method, WebMux will distribute new connections to the servers according to the Weighted Fastest Response scheduling algorithm. However, connections that disconnect and reconnect within the persistence timeout period are sent back to the same server they originally connected to, bypassing the load balancing algorithm.
Other terms for a Network Traffic Manager (NTM) include application delivery network controller (ADC), load balancer (LB), hardware load balancer (HLB), network load balancer (NLB), server load balancer (SLB), and local traffic manager (LTM), network load balancing methods solutions.