Applies To:
Show Versions3-DNS Controller versions 1.x - 4.x
- 4.2 PTF-10, 4.2 PTF-09, 4.2 PTF-08, 4.2 PTF-07, 4.2 PTF-06, 4.2 PTF-05, 4.2 PTF-04, 4.2 PTF-03, 4.2 PTF-02, 4.2 PTF-01, 4.2.0
9
Working with Quality of Service
- Overview of Quality of Service
- Understanding QOS coefficients
- Customizing the QOS equation
- Using the Dynamic Ratio option
Overview of Quality of Service
The Quality of Service mode is a dynamic load balancing mode that includes a configurable combination of the Round Trip Time (RTT), Completion Rate, Packet Rate, Topology, Hops, VS Capacity, and Kilobytes/Second (KBPS) modes. The Quality of Service mode is based on an equation that takes each of these performance factors into account. When the 3-DNS selects a virtual server, it chooses the server with the best overall score.
The Quality of Service mode has default settings that make it easy to use: simply specify Quality of Service as your preferred load balancing mode. There is no need to configure Quality of Service, but if you want to change the settings, you can customize the equation to put more or less weight on each individual factor. The following topics explain how to use and adjust the various settings.
Understanding QOS coefficients
Table 9.1 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.
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 the packet rate is measured in packets per second. - Normalization
The 3-DNS normalizes the raw metrics to values in the range of 0 to10. 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, by changing the coefficients to the values shown in Figure 9.1 , you are putting the most emphasis on completion rate.
Figure 9.1 QOS coefficients emphasizing completion rate
globals {
qos_coeff_rtt 50
qos_coeff_completion_rate 100
qos_coeff_packet_rate 1
qos_coeff_topology 0
qos_coeff_hops 0
qos_coeff_vs_capacity 0
qos_coeff_kbps 0
}
In the preceding example, if the completion rates for two virtual servers are close, the virtual server with the best packet rate is chosen. If both completion rates and packet rates are close, the round trip time (RTT) breaks the tie. In this example, the metrics for Topology, Hops, VS Capacity, and Kilobytes/Second modes are not used in determining how to distribute connections.
Customizing the QOS equation
You can customize the QOS equation globally, meaning that the equation applies to all wide IPs that use the Quality of Service mode. You can also customize individual wide IPs, in which case the global QOS equation settings are overwritten.
To modify global QOS coefficients using the Configuration utility
- In the navigation pane, click System.
The System - General screen opens. - On the toolbar, click Load Balancing.
The System - Load Balancing screen opens. - Define the global QOS coefficients in the Round Trip Time, Completion Rate, Hops, BIG-IP Packet Rate, Topology, VS Capacity, and Kilobytes/Second boxes.
- Click Update.
To modify QOS coefficients for a specific wide IP using the Configuration utility
- In the navigation pane, click Wide IPs.
- In the Wide IP column, click a wide IP name.
The Modify Wide IP screen opens. - On the toolbar, click Modify Pool.
The Modify Wide IP Pools screen opens. - In the Pool Name column, click the name of a pool.
The Modify Load Balancing screen opens. - Define the wide IP's QOS coefficients in the Round Trip Time, Completion Rate, Hops, BIG-IP Packet Rate, Topology, VS Capacity, and Kilobytes/Second boxes.
- Click Update.
To assign global QOS coefficients from the command line
- At the command prompt, type 3dnsmaint to open the 3-DNS Maintenance menu.
- On the 3-DNS Maintenance menu, choose Edit 3-DNS Configuration to open the wideip.conf file.
- Locate or add the globals statement. The globals statement should be at the top of the file.
- Refer to the example syntax shown in Figure 9.2 to define a global QOS equation.
Figure 9.2 Sample global QOS equation
globals {
qos_coeff_rtt 50
qos_coeff_completion_rate 5
qos_coeff_packet_rate 1
qos_coeff_topology 0
qos_coeff_hops 0
qos_coeff_vs_capacity 0
qos_coeff_kbps 0
}
To assign QOS coefficients for a specific wide IP from the command line
- At the command prompt, type 3dnsmaint to open the 3-DNS Maintenance menu.
- On the 3-DNS Maintenance menu, choose Edit 3-DNS Configuration to open the wideip.conf file.
- Locate the wideip statement you want to edit.
- Refer to the example syntax shown in Figure 9.3 to define a wide IP's QOS equation.
Figure 9.3 displays a wide IP definition that overrides the global QOS equation settings shown in Figure 9.2 .
Figure 9.3 QOS coefficient settings that override the global QOS settings
wideip {
address 192.168.101.50
service "http"
name "www.wip.domain.com"
ttl 60 // increase the domain default ttl
qos_coeff {
rtt 21
hops 0
completion_rate 7
packet_rate 5
topology 1
vs_capacity 0
kbps 0
}
pool {
name "Pool_1"
ratio 2 // applies to pool_lbmode == ratio
preferred qos
alternate ratio
address 192.168.101.50 ratio 2
address 192.168.102.50 ratio 1
address 192.168.103.50 ratio 1
}
pool {
name "Pool_2"
ratio 1
preferred rr
address 192.168.102.60 ratio 2
address 192.168.103.60 ratio 1
}
}
Using the Dynamic Ratio option
When the Dynamic Ratio option is turned on, the 3-DNS 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 default), the 3-DNS 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 turn on the Dynamic Ratio option using the Configuration utility
- In the navigation pane, click Wide IPs.
- In the Wide IP column, click a wide IP name.
The Modify Wide IP screen opens. - On the toolbar, click Modify Pool.
The Modify Wide IP Pools screen opens. - In the Pool Name column, click the name of a pool.
The Modify Load Balancing screen opens. - Check Use Dynamic Ratio.
- Click Update.
To turn on the Dynamic Ratio option from the command line
- At the command prompt, type 3dnsmaint to open the 3-DNS Maintenance menu.
- On the 3-DNS Maintenance menu, select Edit 3-DNS Configuration to open the wideip.conf file.
- Locate the wideip statement and the pool definition you want to edit.
- Add the syntax (shown in bold in Figure 9.4 ) to the pool definition.
Figure 9.4 Enabling dynamic ratio in a pool configuration
pool {
name <"pool_name">
[ ratio <pool_ratio> ]
dynamic_ratio yes
[ rr_ldns < yes | no > ]
[ rr_ldns_limit <number> ]
[ preferred < completion_rate | ga | hops | kbps | leastconn
| packet_rate | qos | random | ratio | return_to_dns | rr |
rtt | static_persist | topology | vs_capacity | null > ]
[ alternate < ga | kbps | null | random | ratio | return_to_dns
| rr | static_persist | topology | vs_capacity > ]
[ fallback < completion_rate | ga | hops | kbps | leastconn |
packet_rate | qos | random | ratio | return_to_dns | rr | rtt
| static_persist | topology | vs_capacity | null > ]
address <vs_addr>[:<port>] [ratio <weight>]
}
}