Applies To:
Show VersionsBIG-IP versions 1.x - 4.x
- 4.6.4, 4.6.3, 4.6.2
15
Inbound Load Balancing
- Working with load balancing modes for inbound traffic
- Understanding inbound load balancing on the Link Controller
- Configuring inbound load balancing
- Modifying a wide IP
Working with load balancing modes for inbound traffic
The Link Controller uses load balancing modes to distribute DNS name resolution requests on multiple links, sent by local DNS servers, to the best available virtual server in the Link Controller configuration. This is known as inbound load balancing. This chapter first describes how inbound load balancing works on the Link Controller, explains the various static and dynamic load balancing modes, and then describes how to configure them.
Understanding inbound load balancing on the Link Controller
The Link Controller has external IP addresses configured for each network or ISP link that it manages. The external IP addresses are configured as virtual servers on the Link Controller, and these virtual servers belong to a wide IP pool on the Link Controller. The translations for the virtual servers direct the incoming requests to the appropriate content servers (for example, a web server or a database server) on the internal network. This process is known as inbound load balancing.
When the Link Controller receives a name resolution request from a local DNS server, the system uses a load balancing mode to select the best available virtual server in a wide IP. Once the Link Controller selects the best virtual server, it constructs the DNS answer and sends the answer back to the requesting client's local DNS server, using the best available link. The DNS answer, or resource record, is an A record that contains one or more virtual server IP addresses.
The Link Controller chooses a virtual server from a wide IP pool using either a static load balancing mode or a dynamic load balancing mode. A static load balancing mode selects a virtual server based on a pre-defined pattern. A dynamic load balancing mode selects a virtual server based on current performance metrics.
Within each pool, you can specify up to three load balancing modes that the system uses in sequential order: the preferred method, the alternate method, and the fallback method. The preferred method is the first load balancing mode that the Link Controller uses for load balancing. If the preferred method fails to select a virtual server, the system then uses the alternate method for load balancing. If the alternate load balancing mode fails to select a virtual server, the system uses the fallback load balancing mode. If the fallback method fails, then the Link Controller randomly picks an available virtual server.
The Link Controller supports several modes for inbound load balancing. Table 15.1 shows a complete list of the load balancing modes, indicates where you can use each mode, and indicates whether the mode is static or dynamic. The sections following the table describe how each load balancing mode works.
Load Balancing mode |
Preferred method |
Alternate method |
Fallback method |
Static mode |
Dynamic mode |
---|---|---|---|---|---|
Completion Rate |
X |
|
|
|
X |
Drop Packet |
X |
X |
X |
X |
|
Explicit IP |
|
|
X |
X |
|
Global Availability |
X |
X |
|
X |
|
Hops |
X |
|
|
|
X |
Kilobytes/Second |
X |
X |
|
|
X |
Least Connections |
X |
X |
|
|
X |
Packet Rate |
X |
X |
|
|
X |
Quality of Service |
X |
|
|
|
X |
Random |
X |
X |
|
X |
|
Ratio |
X |
X |
|
X |
|
Round Robin |
X |
X |
X |
X |
|
Round Trip Time |
X |
|
|
|
X |
Static Persist |
X |
X |
|
X |
|
VS Capacity |
X |
X |
|
|
X |
Static load balancing modes distribute requests across the network according to predefined patterns, and take virtual server availability into account. Dynamic load balancing modes distribute requests to virtual servers that show the best current performance. The performance metrics taken into account depend on the particular dynamic mode you are using.
Using static load balancing modes
The Link Controller supports the following static load balancing modes:
- Drop Packet
- Explicit IP
- Global Availability
- Random
- Ratio
- Round Robin
- Static Persist
The static load balancing modes perform load balancing, based on predefined criteria, as described in the following sections.
Drop Packet mode
When you specify the Drop Packet load balancing mode, the Link Controller does nothing with the packet, and simply drops the request. (Note that a typical LDNS server iteratively queries other authoritative name servers when it times out on a query.) We recommend that you use the Drop Packet load balancing mode only for the fallback method. The Link Controller uses the fallback method when the preferred and alternate load balancing modes do not provide at least one virtual server to return as an answer to a query.
Explicit IP mode
When you specify the Explicit IP mode, the Link Controller returns the IP address that you specify as the fallback IP as an answer to the query. Note that the IP address that you specify is not monitored for availability before being returned as an answer. When you use the Explicit IP mode, you can specify a disaster recovery site to return when no load balancing mode returns an available virtual server. We recommend that you use the Explicit IP load balancing mode only for the fallback method. The Link Controller uses the fallback method when the preferred and alternate load balancing modes do not provide at least one virtual server to return as an answer to a query.
Global Availability mode
The Global Availability load balancing mode uses the virtual servers included in the pool in the order in which they are listed. For each connection request, this mode starts at the top of the list and sends the connection to the first available virtual server in the list. Only when the current virtual server is full or otherwise unavailable does Global Availability mode move to the next virtual server in the list. Over time, the first virtual server in the list receives the most connections and the last virtual server in the list receives the least number of connections.
Random mode
The Random load balancing mode sends connections to virtual servers in a random, uniform distribution pattern. The Random mode is useful for certain test configurations.
Ratio mode
The Ratio load balancing mode distributes connections among a pool of virtual servers as a weighted Round Robin. For example, you can configure the Ratio mode to send twice as many connections to a T1 link, and only half as many connections to a DSL link.
The Ratio load balancing mode requires that you define a ratio weight for each virtual server in a pool. The default ratio weight for a server or a pool is set to 1. Figure 15.1 shows a sample connection distribution for Ratio mode.
Round Robin mode
The Round Robin load balancing mode distributes connections in a circular and sequential pattern among the virtual servers in a pool. Over time, each virtual server receives an equal number of connections.
Figure 15.2 shows a sample of the connection distribution pattern for Round Robin mode.
Static Persist mode
The Static Persist load balancing mode provides static persistence of local DNS servers to virtual servers; it consistently maps an LDNS IP address to the same available virtual server for the duration of the session. This mode guarantees that certain transactions are routed through a single transaction manager (for example, a BIG-IP system or other server array manager); this is beneficial for transaction-oriented traffic, such as e-commerce shopping carts, online trading, and online banking.
Using dynamic load balancing modes
All dynamic load balancing modes make load balancing decisions based on the metrics collected by the big3d agents running in each data center. The big3d agents collect the information at set intervals that you define when you set the global timer variables. If you want to use the dynamic load balancing modes, you must run one or more big3d agents in each of your data centers, to collect the required metrics.
The Link Controller supports the following dynamic load balancing modes:
- Completion Rate
- Hops
- Kilobytes/Second
- Least Connections
- Packet Rate
- Round Trip Times (RTT)
- Quality of Service (QOS)
- VS Capacity
Completion Rate mode
The Completion Rate load balancing mode selects the virtual server that currently maintains the least number of dropped or timed-out packets during a transaction between a Link Controller and the client LDNS.
Figure 15.3 shows a sample connection distribution pattern for the Completion Rate mode.
Figure 15.3 Completion Rate load balancing mode
Hops mode
The Hops load balancing mode is based on the traceroute utility, and tracks the number of intermediate system transitions (router hops) between a client LDNS and each Link Controller. Hops mode selects a virtual server in the data center that has the fewest router hops from the LDNS.
Kilobytes/Second mode
The Kilobytes/Second load balancing mode selects a virtual server that is currently processing the fewest number of kilobytes per second.
Least Connections mode
The Least Connections load balancing mode selects a virtual server on the Link Controller that currently hosts the fewest connections.
Packet Rate mode
The Packet Rate load balancing mode selects a virtual server that is currently processing the fewest number of packets per second.
Figure 15.4 shows a sample connection distribution for the Packet Rate mode.
Round Trip Times mode
The Round Trip Times (RTT) load balancing mode selects the virtual server with the fastest measured round trip time between a Link Controller and a client LDNS.
Figure 15.5 shows a sample connection distribution for the Round Trip Times mode.
Figure 15.5 Round Trip Times mode
Quality of Service mode
The Quality of Service load balancing mode uses current performance information to calculate an overall score for each virtual server, and then distributes connections based on each virtual server's score. The performance factors that the Link Controller takes into account include:
- Round trip time
- Hops
- Completion rate
- Packet rate
- Link Capacity
- VS Capacity
- Kilobytes/Second
The Quality of Service load balancing mode is a customizable load balancing mode. For simple configurations, you can easily use this load balancing mode with its default settings. For more advanced configurations, you can specify different weights for each performance factor in the equation.
You can also configure the Quality of Service load balancing mode to use the dynamic ratio feature. With the dynamic ratio feature turned on, the Quality of Service mode becomes similar to the Ratio mode, where the connections are distributed in proportion to ratio weights assigned to each virtual server. The ratio weights are based on the QOS scores: the better the score, the higher the percentage of connections the virtual server receives.
Understanding QOS coefficients
Table 15.2 lists each Quality of Service (QOS) coefficient, its scale, a likely upper limit for each, and whether a higher or lower value is more efficient.
Coefficient |
How measured |
Default weight |
Example |
More efficient setting |
---|---|---|---|---|
Round trip time |
Microseconds |
50 |
2,000,000 |
Lower |
Completion rate |
Percentage of successfully transferred packets (0-100%) |
5 |
100% |
Higher |
Hops |
Number of intermediate systems transitions (hops) |
0 |
64 |
Lower |
Packet rate |
Packets per second |
1 |
700 |
Lower |
Link Capacity |
Link bandwidth and cost analysis |
30 |
2,000,000 |
Lower |
VS capacity |
Number of nodes up |
0 |
20 |
Higher |
Kilobytes/second |
Kilobytes per second throughput |
3 |
15000 |
Lower |
If you change the default QOS coefficients, keep the following issues in mind.
- Scale
The raw metrics for each coefficient are not on the same scale. For example, completion rate is measured in percentages, while packet rate is measured in packets per second. - Normalization
The Link Controller normalizes the raw metrics to values in the range of 0 to 10. As the QOS value is calculated, a high measurement for completion rate is good, because a high percentage of completed connections are being made, but a high value for packet rate is not desirable because the packet rate load balancing mode attempts to find a virtual server that is not overly taxed at the moment. - Emphasis
You can adjust coefficients to emphasize one normalized metric over another. For example, on the Link Controller, the Link Capacity coefficient is set to 1000 by default. If the link capacity scores for two virtual servers are not close, the virtual server with the most available capacity is chosen. If the link capacity scores for both virtual servers are close, the round trip time (RTT) breaks the tie.
Customizing the QOS equation
You can customize the QOS equation for individual wide IPs to tailor Quality of Service load balancing to best match your load balancing requirements.
To modify QOS coefficients using the Configuration utility
- In the navigation pane, click Link Configuration, and then click Inbound LB.
The Wide IPs list screen opens. - In the Wide IP column, click a wide IP name.
The Wide IP Properties screen opens. - Click the Wide IP Load Balancing tab.
The Load Balancing Options screen opens. - Modify the QOS coefficients in the Round Trip Time, Completion Rate, Hops, Packet Rate, Link Capacity, VS Capacity, or Kilobytes/Second boxes.
- Click Apply.
Using the Dynamic Ratio option
When the Dynamic Ratio option is turned on (the default), the Link Controller treats QOS scores as ratios, and it uses each server in proportion to the ratio determined by the QOS calculation. When the Dynamic Ratio option is turned off, the Link Controller uses only the server with the highest QOS score for load balancing, (in which case it is a winner takes all situation) until the metrics information is refreshed.
To change the Dynamic Ratio option setting using the Configuration utility
- In the navigation pane, click Link Configuration, and then click Inbound LB.
The Wide IPs list screen opens. - In the Wide IP column, click a wide IP name.
The Wide IP Properties screen opens. - Click the Wide IP Load Balancing tab.
The Load Balancing Options screen opens. - Note that the dynamic ratio option is on by default.
- To turn the dynamic ratio option off, clear the Use Dynamic Ratio check box.
- To turn the dynamic ratio option on, check the Use Dynamic Ratio box.
- Click Apply.
VS Capacity mode
The VS Capacity load balancing mode creates a list of the virtual servers, weighted by capacity, then picks one of the virtual servers from the list. The virtual servers with the greatest capacity are picked most often, but over time all virtual servers are returned. If more than one virtual server has the same capacity, then the Link Controller load balances using the Random mode among those virtual servers.
We recommend that you do not use the VS Capacity load balancing mode on the Link Controller because it manages only its own virtual servers.
Configuring inbound load balancing
This section describes how to configure inbound load balancing on the Link Controller. You configure inbound load balancing at the wide IP level.
When you define a wide IP, you specify the preferred and alternate load balancing methods to use in selecting a virtual server within the wide IP pool. You can find instructions on how to configure these load balancing methods in the section, Defining a wide IP .
Understanding wide IPs
After you configure the virtual servers they manage, you need to group the configured virtual servers into wide IPs. A wide IP is a mapping of a fully-qualified domain name (FQDN) to a set of virtual servers that host the domain's content, such as a web site, an e-commerce site, or a CDN.
Before defining the first wide IP, you should do the following:
- Gather your configuration information for the Link Controller so you can easily see which virtual servers have the content you want to map to a domain name.
- Decide which load balancing modes to use for the wide IP pool.
Understanding wide IP pools
A wide IP contains a pool definition. A pool is a group of virtual servers that the Link Controller load balances. The virtual servers on a Link Controller are associated with a specific link, and they load balance inbound requests over the links. You should configure a wide IP for each link, so that you can configure a pool that contains that link's virtual servers.
Defining a wide IP
After you determine which virtual servers you should place in which wide IP pool, you are ready to add the first wide IP to the configuration. Note that for the Link Controller, you configure only one pool in the wide IP.
To define a wide IP using the Configuration utility
- In the navigation pane, click Link Configuration, and then click Inbound LB.
The Wide IPs list screen opens. - Click the Add button.
The Define Wide IP (Step 1 of 2) screen opens. - Add the wide IP name and port settings, and click Next.
The Define Wide IP (Step 2 of 2) screen opens. - In the Available list, click the virtual servers that you want to add to the pool, and click the Add (-->>) button.
The virtual servers become part of the Members list for the wide IP. - Click Finish.
The wide IP is added to your configuration.
Repeat this process for each wide IP you want to add. For help on defining wide IPs and pools, click Help on the toolbar.
Using wildcard characters in wide IP names
The Link Controller supports wildcard characters in both wide IP names and wide IP aliases. You can use the wildcard characters to simplify your maintenance tasks if you have a large quantity of wide IP names and/or wide IP aliases. The wildcard characters you can use are: the question mark ( ? ), and the asterisk ( * ). The guidelines for using the wildcard characters are as follows:
- The question mark ( ? )
- You can use the question mark to replace a single character, with the exception of dots ( . ).
- You can use more than one question mark in a wide IP name or alias.
- You can use both the question mark and the asterisk in the same wide IP name or alias.
- The asterisk ( * )
- You can use the asterisk to replace multiple consecutive characters, with the exception of dots ( . ).
- You can use more than one asterisk in a wide IP name or alias.
- You can use both the question mark and the asterisk in the same wide IP name or alias.
The following examples are all valid uses of the wildcard characters for the wide IP name, www.mydomain.net.
- ???.mydomain.net
- www.??domain.net
- www.my*.net
- www.??*.net
- www.my*.*
- ???.my*.*
- Common.Bigip.Failover.AwaitPeerDeadDelay
- www.*.???
Modifying a wide IP
Once you have defined the basic settings for a wide IP, you can modify the wide IP settings, the load balancing properties, and the virtual server members at any time.
Modifying the basic wide IP settings
When you first add a wide IP to the configuration, you configure the basic settings. You may later decide to modify those settings.
To modify an existing wide IP using the Configuration utility
- In the navigation pane, click Link Configuration, and then click Inbound LB.
The Wide IPs list screen opens. - Click the name of the wide IP that you want to modify.
The Wide IP Properties screen opens. - Make any changes that you want, and click Apply. For help on the specific settings, click the Help button.
Modifying the load balancing properties
When you first add a wide IP, the load balancing properties are set to a default configuration. You can later change the load balancing modes, adjust the QOS coefficients, set up LDNS Round Robin, or modify the pool time-to-live (TTL).
To modify the load balancing properties for a wide IP using the Configuration utility
- In the navigation pane, click Link Configuration, and then click Inbound LB.
The Wide IPs list screen opens. - Click the name of the wide IP that you want to modify.
The Wide IP Properties screen opens. - Click the Wide IP Load Balancing tab.
The Load Balancing Options screen opens. - Make any changes that you want, and click Apply. For help on the specific settings, click the Help button.
Changing the load balancing methods
By default, the preferred load balancing method is set to Quality of Service, and the alternate and fallback load balancing methods are set to Round Robin. For details on these load balancing modes as well as the additional load balancing modes, see Working with load balancing modes for inbound traffic .
Using the round robin LDNS wide IP attribute
Round robin LDNS is an attribute that you can use in conjunction with any load balancing mode. The round robin LDNS attribute allows the Link Controller to return a list of available virtual servers, instead of a single virtual server. Certain browsers keep the answer returned by DNS servers. By enabling this attribute, the Link Controller returns a maximum of 16 virtual servers as the answer to a DNS resolution request. This provides browsers with alternate answers if a virtual server becomes unavailable.
Adjusting the QOS coefficients
You can adjust the QOS coefficients to best match your load balancing requirements. By default, only the Link Capacity coefficient has a value. For more information on working with the QOS coefficients, see Understanding QOS coefficients .