Server Load Balancing : Configuring profiles
 
Configuring profiles
A profile is a configuration object that defines how you want the FortiADC virtual server to handle traffic for specific protocols.
Table 14 describes usage for profile type, including compatible virtual server types, load balancing methods, and persistence methods.
Table 14: Profile usage
Profile
Usage
VS Type
LB Methods
Persistence
FTP
Use with FTP servers.
Layer 4
Round Robin, Least Connections, Fastest Response
Source Address, Source Address Hash
HTTP
Use for standard, unsecured web server traffic.
Layer 7, Layer 2
Layer 7: Round Robin, Least Connections, URI Hash, Full URI Hash, Host Hash, Host Domain Hash
 
Layer 2: Round Robin, Least Connections, Destination IP Hash
Source Address, Source Address Hash, Source Address-Port Hash, HTTP Header Hash, HTTP Request Hash, Cookie Hash, Persistent Cookie, Insert Cookie, Embedded Cookie, Rewrite Cookie
HTTPS
Use for secured web server traffic when offloading TLS/SSL from the backend servers. You must import the backend server certificates into FortiADC and select them in the HTTPS profile.
Layer 7, Layer 2
Same as HTTP
Same as HTTP, plus SSL Session ID
HTTP Turbo
Use for unsecured HTTP traffic that does not require advanced features like caching, compression, content rewriting, rate limiting, or source NAT. The profile can be used with content routes and destination NAT, but the HTTP request must be in the first data packet.
This profile enables packet-based forwarding that reduces network latency and system CPU usage. However, packet-based forwarding for HTTP is advisable only when you do not anticipate dropped packets or out-of-order packets.
Layer 7
Round Robin, Least Connections, Fastest Response
Source Address
RADIUS
Use with RADIUS servers.
Layer 7
Round Robin
RADIUS attribute
TCP
Use for other TCP protocols.
Layer 4, Layer 2
Layer 4: Round Robin, Least Connections, Fastest Response
Layer 2: Round Robin, Least Connections, Fastest Response, Destination IP Hash
Source Address, Source Address Hash
TCPS
Use for secured TCP when offloading TLS/SSL from the backend servers. Like the HTTPS profile, you must import the backend server certificates into FortiADC and select them in the TCPS profile.
Layer 7, Layer 2
Layer 7: Round Robin, Least Connections
Layer 2: Round Robin, Least Connections, Destination IP Hash
Source Address, Source Address Hash, Source Address-Port Hash, SSL Session ID
UDP
Use for other UDP protocols.
Layer 4
Round Robin, Least Connections, Fastest Response
Source Address, Source Address Hash
Table 15 provides a summary of the predefined profiles. You can select predefined profiles in the virtual server configuration, or you can create user-defined profiles, especially to include configuration objects like certificates, caching settings, compression options, and IP reputation.
Table 15: Predefined profiles
Profile
Defaults
LB_PROF_TCP
Session Timeout —100 seconds
Session Timeout after FIN —100 seconds
IP Reputation—disabled
LB_PROF_UDP
Session Timeout —100 seconds
IP Reputation—disabled
LB_PROF_HTTP
Client Timeout—50 seconds
Connect Timeout—5 seconds
Keep-alive Timeout—50 seconds
Request Timeout—50 seconds
Queue Timeout—5 seconds
Server Timeout—50 seconds
Compression—disabled
Caching—disabled
X-Forwarded-For—disabled
Source Address—disabled
IP Reputation— disabled
LB_PROF_TURBOHTTP
Session Timeout —100 seconds
Session Timeout after FIN —100 seconds
IP Reputation—disabled
LB_PROF_FTP
Session Timeout —100 seconds
Session Timeout after FIN —100 seconds
IP Reputation—disabled
LB_PROF_RADIUS
Session Timeout—300 seconds
LB_PROF_TCPS
Client Timeout—50 seconds
Connect Timeout—5 seconds
Queue Timeout—5 seconds
Server Timeout—50 seconds
Source Address—disabled
IP Reputation—disabled
Certificate—Factory
LB_PROF_HTTPS
Client Timeout—50 seconds
Connect Timeout—5 seconds
Keep-alive Timeout—50 seconds
Request Timeout—50 seconds
Queue Timeout—5 seconds
Server Timeout—50 seconds
Compression—disabled
Caching—disabled
X-Forwarded-For—disabled
Source Address—disabled
IP Reputation—disabled
Certificate—Factory
Before you begin:
You must have already created configuration objects for certificates, caching, and compression if you want the profile to use them.
You must have Read-Write permission for Load Balance settings.
To configure custom profiles:
1. Go to Server Load Balance > Profile.
The configuration page displays the Profile tab.
2. Click Add to display the configuration editor.
3. Give the profile a name, select a protocol type; then complete the configuration by specifying or selecting custom values as described in Table 16.
4. Save the configuration.
Table 16: Profile configuration guidelines
Protocol
Profile Configuration Guidelines
TCP
Timeout TCP Session
Client-side timeout for connections where the client has not sent a FIN signal, but the connection has been idle. The default is 100 seconds. The valid range is 1 to 86,400.
Timeout TCP Session after FIN
Client-side connection timeout. The default is 100 seconds. The valid range is 1 to 86,400.
IP Reputation
Enable to apply the FortiGuard IP reputation service. See “Managing IP reputation policy settings”.
UDP
Timeout UDP Session
Client-side session timeout. The default is 100 seconds. The valid range is 1 to 86,400.
IP Reputation
Enable to apply the FortiGuard IP reputation service.
HTTP
Client Timeout
Client-side TCP connection timeout. The default is 50 seconds. The valid range is 1 to 3,600.
Server Timeout
Server-side IP session timeout. The default is 50 seconds. The valid range is 1 to 3,600.
Connect Timeout
Multiplexed server-side TCP connection timeout. Usually less than the client-side timeout. The default is 5 seconds. The valid range is 1 to 3,600.
Queue Timeout
Specifies how long connection requests to a backend server remain in a queue if the server has reached its maximum number of connections. If the timeout period expires before the client can connect, FortiADC drops the connection and sends a 503 error to the client. The default is 5 seconds. The valid range is 1 to 3,600.
HTTP Request Timeout
Client-side HTTP request timeout. The default is 50 seconds. The valid range is 1 to 3,600.
HTTP Keepalive Timeout
The default is 50 seconds. The valid range is 1 to 3,600.
Source Address
Use the original client IP address as the source address in the connection to the real server.
X-Forwarded-For
Append the client IP address found in IP layer packets to the HTTP header that you have specified in the X-Forwarded-For Header setting. If there is no existing X-Forwarded-For header, the system creates it.
X-Forwarded-For Header
Specify the HTTP header to which to write the client IP address. Typically, this is the X-Forwarded-For header, but it is customizable because you might support traffic that uses different headers for this. Do not include the 'X-' prefix. Examples: Forwarded-For, Real-IP, or True-IP.
IP Reputation
Enable to apply the FortiGuard IP reputation service.
HTTP Once Only
When there is an initial HTTP request, use the load balancing algorithm to select the destination server; forward subsequent traffic for the same connection to the server that was selected when processing the initial request.
Compression
Select a compression configuration object. See “Configuring compression rules”.
Caching
Select a caching configuration object. See “Configuring caching rules”.
RADIUS
RADIUS
The system retrieves client information from the RADIUS Access-Request packet. However, if the listening port of the virtual server is 1813, the system retrieves client information from the RADIUS Accounting Start packet.
Note: The IP reputation feature is not available for RADIUS.
Timeout RADIUS Session
The default is 300 seconds. The valid range is 1 to 3,600.
FTP
Timeout TCP Session
Client-side timeout for connections where the client has not sent a FIN signal, but the connection has been idle. The default is 100 seconds. The valid range is 1 to 86,400.
Timeout TCP Session after FIN
Client-side connection timeout. The default is 100 seconds. The valid range is 1 to 86,400.
IP Reputation
Enable to apply the FortiGuard IP reputation service.
TCPS
Client Timeout
Client-side TCP connection timeout. The default is 50 seconds. The valid range is 1 to 3,600.
Server Timeout
Server-side IP session timeout. The default is 50 seconds. The valid range is 1 to 3,600.
Connect Timeout
Multiplexed server-side TCP connection timeout. Usually less than the client-side timeout. The default is 5 seconds. The valid range is 1 to 3,600.
Queue Timeout
Specifies how long connection requests to a backend server remain in a queue if the server has reached its maximum number of connections. If the timeout period expires before the client can connect, the system drops the connection and sends a 503 error to the client. The default is 5 seconds. The valid range is 1 to 3,600.
Source Address
Use the original client IP address as the source address in the connection to the real server.
IP Reputation
Enable to apply the FortiGuard IP reputation service.
SSL Ciphers
We recommend retaining the default list:
AES256-SHA:RC4-MD5:RC4-SHA:AES128-SHA:DES-CBC3-SHA
If necessary, you can edit the colon-separated list so that it includes the algorithms you require for this profile.
See “SSL offloading” for additional information.
Allow SSL Versions
We recommend TLSv1.2 or TLSv1.1. You have the following options:
SSLv2
SSLv3
TLSv1.0
TLSv1.1
TLSv1.2
Client SNI Required
Require clients to use the TLS server name indication (SNI) extension to include the server hostname in the TLS client hello message. Then, the FortiADC system can select the appropriate local server certificate to present to the client.
Local Certificate Group
A configuration group that includes the certificates this virtual server presents to SSL/TLS clients. This should be the backend servers’ certificate, NOT the appliance’s GUI web server certificate. See “Managing local certificates”.
Certificate Verify
Select a certificate validation policy. See “Configuring a certificate validator”.
HTTPS
HTTPS
Same as HTTP, plus the following certificate settings listed next.
SSL Ciphers
We recommend retaining the default list:
AES256-SHA:RC4-MD5:RC4-SHA:AES128-SHA:DES-CBC3-SHA
If necessary, you can edit the colon-separated list so that it includes the algorithms you require for this profile.
See “SSL offloading” for additional information.
Allow SSL Versions
We recommend TLSv1.2 or TLSv1.1. You have the following options:
SSLv2
SSLv3
TLSv1.0
TLSv1.1
TLSv1.2
Client SNI Required
Require clients to use the TLS server name indication (SNI) extension to include the server hostname in the TLS client hello message. Then, the FortiADC system can select the appropriate local server certificate to present to the client.
Local Certificate Group
A configuration group that includes the certificates this virtual server presents to SSL/TLS clients. This should be the backend servers' certificate, NOT the appliance's GUI web server certificate. See “Managing local certificates”.
Certificate Verify
Select a certificate validation policy. See “Configuring a certificate validator”.
HTTP Turbo
Timeout TCP Session
Client-side timeout for connections where the client has not sent a FIN signal, but the connection has been idle. The default is 100 seconds. The valid range is 1 to 86,400.
Timeout TCP Session after FIN
Client-side connection timeout. The default is 100 seconds. The valid range is 1 to 86,400.
IP Reputation
Enable to apply the FortiGuard IP reputation service.