Select Page

BIG-IP LTM: Load Balancing Methods

by | 9-Feb-2020 | ADC, F5, LTM

Applied version

  • BIG-IP LTM
    Focus on version 15.X, 14.X
    Less focus on earlier version

BIG-IP LTM Load Balancing Methods

 

Load balancing behavior on CMP-enabled virtual servers

The CMP (Clustered Multiprocessing) feature allows specific platforms with multiple processing cores to use multiple Traffic Management Microkernel (TMM) instances to increase traffic management capacity.

However, there are some caveats worth to take notes about CMP:

  • Connections are distributed among the available TMM processes
  • Some variables data are not shared between TMM instances (ex: Tcl global variables)
  • Load balancing algorithm is applied independently in each TMM

 

Because each TMM handles load balancing independently from the other TMMs, distribution across the pool members may appear to be incorrect when compared with a non-CMP enabled virtual server.

Example: Round Robin Method, 4 Pool Members, 4 Connections

non-CMP enabled:

Connection 1 (TMM0): Pool Member 1

Connection 2 (TMM0): Pool Member 2

Connection 3 (TMM0): Pool Member 3

Connection 4 (TMM0): Pool Member 4

CMP enabled:

(2 TMM instances)

Connection 1 (TMM0): Pool Member 1

Connection 2 (TMM1): Pool Member 1

Connection 3 (TMM0): Pool Member 2

Connection 4 (TMM1): Pool Member 2

 

Member vs Node

Some load balancing methods have an option to choose between node and (pool) member.

  • Node: distribute traffic to the servers in the pool based on metrics of the nodes “globally” on the BIG-IP
  • Member: distribute traffic to the servers in the pool based on metrics of the pools members inside the pool itself

 

Static vs Dynamic Load Balancing Methods

  • Static load balancing methods don’t collect and use any traffic metrics from the load balancing resources (nodes or pool member) to distribute traffic.
  • Dynamic load balancing methods collect and use collected traffic metrics from the load balancing resources to distribute traffic.

 

Performance-based load balancing methods

Some dynamic load balancing methods that rely on performance monitors (example: snmp_dca, real_server).

This type of load balancing distribute traffic based on collected real time performance metric.

To use this load balancing method you need to:

  • Apply a performance monitor at the node level of the pool members
    • Example of performance monitor: snmp_dca, real_server
  • Ensure the node/server is able to supports the data collection by performance monitor
    • Other than SNMP performance monitor, performance monitors require their specific plug-in file to be installed on the actual server

 

Load Balancing Methods Description

(1) Round Robin

Round Robin method passes each new connection request to the next server in line, eventually distributing connections evenly across the array of machines being load balanced.

 

(2) Ratio (member), Ratio (node)

The BIG-IP system distributes connections among pool members or nodes in a static rotation according to ratio weights that you define.

In this case, the number of connections that each system receives over time is proportionate to the ratio weight you defined for each pool member or node.

 

(3) Dynamic Ratio (member), Dynamic Ratio (node)

The Dynamic Ratio methods select a server based on various aspects of real-time server performance analysis.

These methods are similar to the Ratio methods, except that with Dynamic Ratio methods, the ratio weights are dynamic based on continuous monitoring of the servers.

*To implement Dynamic Ratio load balancing, you must first install and configure the necessary server software for these systems, and then install the appropriate performance monitor.

 

(4) Least Connections (member), Least Connections (node)

The Least Connections methods are relatively simple in that the BIG-IP system passes a new connection to the pool member or node that has the least number of active connections.

*If the OneConnect feature is enabled, the Least Connections methods do not include idle connections in the calculations when selecting a pool member or node. The Least Connections methods use only active connections in their calculations.

 

(5) Ratio Least Connections

The Ratio Least Connections methods cause the system to select the pool member according to the ratio of the number of connections that each pool member has active.

 

(6) Weighted Least Connections (member), Weighted Least Connections (node)

Similar to the Least Connections methods, these load balancing methods select pool members or nodes based on the number of active connections.

However, the Weighted Least Connections methods also base their selections on server capacity.

  • The Weighted Least Connections (member) method specifies that the system uses the value you specify in Connection Limit to establish a proportional algorithm for each pool member. The system bases the load balancing decision on that proportion and the number of current connections to that pool member.
  • The Weighted Least Connections (node) method specifies that the system uses the value you specify in the node’s Connection Limit setting and the number of current connections to a node to establish a proportional algorithm.

 

(7) Fastest (node), Fastest (application)

The Fastest methods select a server based on the least number of current sessions.

These methods require that you assign both a Layer 7 and a TCP type of profile to the virtual server.

*If the OneConnect feature is enabled, the Least Connections methods do not include idle connections in the calculations when selecting a pool member or node. The Least Connections methods use only active connections in their calculations.

 

(8) Observed (member), Observed (node)

With the Observed methods, nodes are ranked based on the number of connections. The Observed methods track the number of Layer 4 connections to each node over time and create a ratio for load balancing.

 

(9) Predictive (member), Predictive (node)

The Predictive methods use the ranking methods used by the Observed methods, where servers are rated according to the number of current connections. However, with the Predictive methods, the BIG-IP system analyzes the trend of the ranking over time, determining whether a node’s performance is currently improving or declining. The servers with performance rankings that are currently improving, rather than declining, receive a higher proportion of the connections.

 

(10) Least Sessions

The Least Sessions method selects the server that currently has the least number of entries in the persistence table. Use of this load balancing method requires that the virtual server reference a type of profile that tracks persistence connections, such as the Source Address Affinity or Universal profile type.

*The Least Sessions methods are incompatible with cookie persistence.

0 Comments

Submit a Comment

Your email address will not be published. Required fields are marked *