Applies To:

Show Versions Show Versions

Manual Chapter: Configuration Guide for the BIG-IP® Link Controller: 14 - Managing HTTP and FTP Traffic
Manual Chapter
Table of Contents   |   << Previous Chapter   |   Next Chapter >>


14

Managing HTTP and FTP Traffic


Introducing HTTP and FTP traffic management

The BIG-IP® local traffic management system offers several features that you can use to intelligently control your HTTP, HTTPS, and FTP traffic. Examples of these features are the insertion of headers into HTTP requests and the compression of HTTP server responses.

These features are available through configuration of HTTP or FTP profiles. A profile is a group of settings, with values, that corresponds to a specific type of traffic, such as HTTP traffic. A profile defines the way that you want the BIG-IP system to manage that traffic type.

In addition to HTTP and FTP profiles, the BIG-IP system includes other features to help you manage your application traffic, such as health monitors for checking the health of HTTP and FTP services, and iRulesTM for querying or manipulating HTTP header or content data.

Table 14.1 summarizes the capabilities within the BIG-IP system for managing HTTP and FTP traffic and shows the BIG-IP object that you configure to implement each feature.

Table 14.1 Summary of the BIG-IP system features related to HTTP and FTP traffic control
Feature
Description
Configuration Object
Monitoring of HTTP, HTTPS, and FTP ports on pool members
You can associate an HTTP, HTTPS, or FTP monitor with the members of a pool to ensure that pool members are ready and able to receive traffic on specific ports.
Load balancing pool

HTTP, HTTPS, and FTP health monitors
Session persistence
You can ensure that HTTP sessions persist to the same pool member across connections.
Persistence profile and iRule
Redirection of HTTP requests
By configuring an HTTP profile or writing an iRule, you can instruct the BIG-IP system to redirect HTTP traffic based on URI, status code, or content.
HTTP Profile and iRule
Chunking of requests and responses
You can configure the BIG-IP system to unchunk or rechunk HTTP responses.
HTTP profile
Pipelining
The BIG-IP system supports HTTP pipelining.
HTTP profile
IPv4-to-IPv6 compatibility
Ensures compatibility between IP version 4 and IP version 6 clients and servers when using the FTP protocol.
FTP profile

 

Configuring HTTP standard profile settings

You can configure HTTP profiles to ensure that HTTP traffic management suits your specific needs. These configuration settings are organized into several categories on the New HTTP Profile screen in the Configuration utility: General Properties, Settings, Compression, and RAM Cache. You can configure these settings when you create a profile, or after profile creation by modifying the profile's settings. For specific procedures on configuring a profile, see Chapter 13, Understanding Profiles .

For the profile settings that appear in the Properties and Settings areas of the HTTP Profile screen, you can specify values where none exist, or modify any default values to suit your needs. For information about other HTTP profile settings, see Configuring FTP profile settings .

Understanding HTTP profile settings

You can use the default http profile as is, or create a custom HTTP profile. The http profile is considered a default profile because it does not inherit setting values from a parent profile.

Table 14.2 shows the profile settings for an HTTP type of profile. For those settings that have default values, you can retain those default settings or modify them. Following this table are descriptions of the settings and the procedure for changing them.

 

Table 14.2 Settings of an HTTP profile
Setting
Description
Default Value
Name
Specifies the user-supplied name of the profile. You must specify a name for your profile.
No default value
Parent Profile
Specifies the profile from which your custom profile is derived.
http
Response Chunking
Specifies how to handle chunking for HTTP responses. Possible values are Unchunk, Rechunk, Selective, and Preserve.
Selective
Redirect Rewrite
Allows you to modify HTTP redirections. Possible values are Matching, All, Nodes, or None.
None
Maximum Header Size
Specifies the maximum size in bytes that the BIG-IP system allows for HTTP headers.
32768
Pipelining
Enables or disables HTTP pipelining.
Enabled
Insert XForwarded-For
Inserts an XForwarded-For header into an HTTP request, to use with connection pooling. This feature adds the IP address of the client as the value of the XForwarded-For header.
Disabled
LWS Maximum Columns
Specifies the maximum width allowed for an HTTP header that is inserted into an HTTP request.
80
LWS Separator
Specifies the separator that the BIG-IP system should use between HTTP headers when a header exceeds the maximum width allowed.
\r\n
Maximum Requests
Specifies the maximum number of HTTP requests that the system allows for a single Keep-Alive connection.
0

 

Before configuring an HTTP profile, it is helpful to have a description of certain settings that you might want to change.

Specifying a profile name

To create an HTTP profile, you must specify a unique name for the profile. The Name setting is one of only two settings for which you must actively specify a value when creating an HTTP profile; all other settings have default values.

To specify a profile name, simply locate the Name setting and type a unique name for the profile.

Specifying a parent profile

Every profile that you create is derived from a parent profile. You can use the default http profile as the parent profile, or you can use another HTTP profile that you have already created.

To specify a parent profile, locate the Parent Profile setting and select a profile name.

Configuring chunking

Sometimes, you might want to inspect and/or modify HTTP application data, such as compressing the content of an HTTP response. Such inspections or modifications require that the response be unchunked, that is, not in chunked encoding. Using the Response Chunking settings, the BIG-IP system can unchunk a chunked response before performing an action on that response.

Possible values for this setting are Unchunk, Rechunk, Selective, and Preserve. The default value is Selective.

Table 14.3 describes each of these values and the action that the BIG-IP system takes, depending on whether an original response is chunked or unchunked.

 

Table 14.3 Chunking behavior of the BIG-IP system
Setting
Original response is chunked
Original response is unchunked
Unchunk
The BIG-IP system unchunks the response and processes the HTTP content, and passes the response on as unchunked. The connection closes when all data is sent to the client as indicated by the Connection: Close header.
The BIG-IP system processes the HTTP content and passes the response on untouched.
Rechunk
The BIG-IP system unchunks the response, processes the HTTP content, re-adds the chunk trailer headers, and then passes the response on as chunked. Any chunk extensions are lost.
The BIG-IP system adds transfer encoding and chunking headers on egress.
Selective
Same as Rechunk.
The BIG-IP system processes the HTTP content and then passes the response on untouched.
Preserve
The BIG-IP system leaves the response chunked, processes the HTTP content, and passes the response on untouched. Note that if HTTP compression is enabled, the BIG-IP system does not compress the response.
The BIG-IP system processes the HTTP content and then passes the response on untouched.

 

Specifying the maximum header size

With the Maximum Header Size setting, you can specify the maximum size that the BIG-IP system allows for HTTP headers. The default value is 32768 and is represented in bytes.

Enabling support for pipelining

Normally, a client cannot make a request until the previous request has received a response. HTTP/1.1 pipelining allows clients to make requests even when prior requests have not received a response. For this to succeed, however, destination servers must include support for pipelining. This feature enables that support on the BIG-IP system.

To enable pipelining, locate the Pipelining setting and check the box. By default, this feature is set to Enabled.

Inserting an XForwarded For header

When using connection pooling, which allows clients to make use of existing server-side connections, you can insert the XForwarded For header into a request. When you configure the BIG-IP system to insert this header, the target server can identify the request as coming from a client other than the client that initiated the connection. The default setting is Disabled.

Configuring the maximum columns for linear white space

The LWS Maximum Columns setting specifies the maximum number of columns allowed for a header that is inserted into an HTTP request.

To configure the LWS Maximum Columns setting, specify a maximum value. The default value for this setting is 80.

Configuring a linear white space separator

The LWS Separator setting specifies the separator that the BIG-IP system should use between HTTP headers when a header exceeds the maximum width specified by the LWS Maximum Columns setting.

To configure the LWS Separator setting, specify a value for the separator. This setting has no default value.

Specifying a maximum number of requests

The Maximum Requests setting specifies the maximum number of requests that the system allows for a single Keep-Alive connection. When the specified limit is reached, the final response contains a Connection: close header is followed by the closing of the connection. The default setting is 0, which in this case means that the system allows an infinite number of requests per Keep-Alive connection.

Configuring FTP profile settings

You can tailor FTP profile settings to your specific needs. For those settings that have default values, you can retain those default settings or modify them. You can modify any settings either when you create the profile, or at any time after you have created it. For specific procedures on configuring a profile, see Chapter 13, Understanding Profiles .

Table 14.4 lists these configurable settings, along with a short description of each and the default values. Following this table are descriptions of specific settings.

Table 14.4 Configuration settings of an FTP profile
General property
Description
Default Value
Name
Specifies the user-supplied name of the profile. Specifying a name for your profile is required.
No default value
Parent Profile
Specifies the profile from which your custom profile is derived.
ftp
Translate Extended
Ensures compatibility between IP version 4 and IP version 6 clients and servers when using the FTP protocol.
Enabled
Data Port
Allows the FTP service to run on an alternate port.
20

 

Before configuring an FTP profile, it is helpful to have a description of certain node settings that you might want to change.

Specifying a profile name

To create an FTP profile, you must specify a unique name for the profile. The Name setting is one of only two settings for which you must actively specify a value when creating an FTP profile; all other settings have default values.

Specifying a parent profile

Every profile that you create is derived from a parent profile. In the Parent Profile setting, you can select the default ftp profile as the parent profile, or you can select another FTP profile that you have already created.

Specifying a Translate Extended value

Because IP version 6 addresses are not limited to 32 bits (unlike IP version 4 addresses), compatibility issues can arise when using FTP in mixed IP-version configurations.

Enabled by default, the Translate Extended setting causes the BIG-IP system to automatically translate FTP commands when a client-server configuration contains both IP version 4 and IP version 6 systems. For example, if a client system running IP version 4 sends the FTP PASV command to a server running IP version 6, the BIG-IP system automatically translates the PASV command to the equivalent FTP command for IP version 6 systems, EPSV.

The BIG-IP system translates the FTP commands EPRV and PORT in the same way.

It is highly unlikely that you will need to change the default value (Enabled) for this setting. The only case where you might want to disable this setting is when sending an EPSV command to an IP version 4 system, such as when testing an FTP server.

Specifying a data port

The Data Port setting allows the FTP service to run on an alternate port. You can use the default port number 20, or specify another port number.




Table of Contents   |   << Previous Chapter   |   Next Chapter >>

Was this resource helpful in solving your issue?




NOTE: Please do not provide personal information.



Incorrect answer. Please try again: Please enter the words to the right: Please enter the numbers you hear:

Additional Comments (optional)