Applies To:

Show Versions Show Versions

Manual Chapter: Policy Management Guide for the BIG-IP WebAccelerator Module: 12 - Configuring Connections Rules
Manual Chapter
Table of Contents   |   << Previous Chapter   |   Next Chapter >>


12

Configuring Connections Rules


Managing connections

The WebAccelerator system manages connections from:

  • The user's browser to the WebAccelerator system.
  • The WebAccelerator system to the origin servers.

The WebAccelerator system uses these connections to process requests for content.

By default, the WebAccelerator system creates or reuses connections to the origin servers as needed to service client requests as efficiently as possible. Because sites often use a pool of web or application servers, this default behavior may not be appropriate. This is true if, for your site, the same physical origin or application server must handle all of the requests received for a given session. In these cases, you must specify appropriate connections rules and associated connection mapping for the WebAccelerator system to use to manage these connections.

The connection settings that you specify for connections rules only apply to connections that the WebAccelerator system uses for requests. When you configure connections rules for a node, the WebAccelerator systems uses those settings only when handling requests that match the node. Connections rules are not relevant to responses that match a node.

Organizing connections rules in the Request Type Hierarchy tree

You organize connections rules in the Request Type Hierarchy tree, with any associated connections rules assigned to the leaf node. The WebAccelerator system applies connections rules only against leaf nodes in the Request Type Hierarchy tree. The Request Type Hierarchy tree is described in Chapter 4, Introducing the Request Type Hierarchy Tree .

Each leaf node in the Request Type Hierarchy tree has one connections rule defined for it. This rule identifies the connection type that the WebAccelerator system uses for requests that map to a specified node in the hierarchy. The connections rule's connection type only applies when the WebAccelerator system sends a request to the origin server for fresh content.

Connections rules are inherited from a parent node in their entirety. Unlike other caching rules, where you can add or remove parameters to existing rules, you cannot edit existing connections rules, you can only override them.

Specifying a connection type for connections rules

When configuring connections rules, you specify one of the following connections type options:

  • Default
  • One-to-one connection mapping
  • Request-based connection pool mapping

Regardless of the type of connection you choose, the WebAccelerator system only creates new connections to the origin servers when it needs them, and the WebAccelerator system needs connections to the origin servers only when it sends a request to the origin servers for content.

Using the default connection type

The default connection type option provides no mapping between the client connections and the WebAccelerator system's origin server connections.

When you select default, the WebAccelerator system creates a single pool of connections to the origin servers. The WebAccelerator system reuses connections from this pool when it receives new client connections for which it must request new content from the origin server to service.

Using one-to-one connection mapping

The one-to-one connection mapping option provides a unique connection to the origin server for each unique client connection.

When you select one-to-one connection mapping, the WebAccelerator system sends a request to the origin server for fresh content for a request, and creates a unique connection for the purpose of servicing the requests coming from that client connection. Because most browsers create two connections when browsing a site, it is likely that the WebAccelerator system will create two or more unique connections to the origin server for each client.

When the client receives the response and drops the connection to the WebAccelerator system, the WebAccelerator system drops the corresponding connection to the origin servers. If the client subsequently reconnects to the WebAccelerator system, the WebAccelerator system creates, as needed, a new connection to the origin server.

Authenticated (NTLM) connections require one-to-one connection mapping and all NTLM-authenticated connections use one-to-one connections by default. One-to-one connection mapping is the most secure connection type, but it is also the slowest mapping option.

Using request-based connection pool mapping

The request-based connection pool mapping option allows you to pool and reuse origin server connections to service multiple client connections.

When you select request-based connection pool mapping, the WebAccelerator system maps connections in a pool to a request, based on the elements it finds in the request. By specifying the elements in a request that the WebAccelerator system should use to map to a connection, you ensure that all requests with certain parameters are always mapped to a particular origin server.

Request-based connection pool mapping is most useful if, for your site, you want the WebAccelerator system to send all session traffic to the same origin server in a pool of servers. For example, if your application server sets a cookie that carries information about the origin server, such as server ID, and you want all future requests with that same cookie value sent to the same application server, you can create a connections rule with the request-based connection pool mapping option and base its parameters on that particular cookie. This connections rule will prompt the WebAccelerator system to send requests to the to the specified application server.

For more information, see Configuring request-based connection pool mapping rules .

Note

Request-based connections are optimized for situations, such as server IDs, with relatively few distinct request values determining which connection to use. For other types of requests, such as those determining connections based on session IDs, you get better performance using one-to-one connection mapping instead of request-based connection pool mapping.

Matching to multiple connections rules

If a request element matches parameters in two or more connections rules, the WebAccelerator system takes the union of the matching parameter values to determine which connection pool to use. If the rules that match specify different pool behavior (one indicates using the same pool and the other indicates using a unique pool), the WebAccelerator system uses a unique connection pool.

Configuring request-based connection pool mapping rules

To create a request-based connection pool mapping rule, you specify the parameter that the WebAccelerator system should look for in a request, and the value it must have for it to match to the rule. You also specify the WebAccelerator system connection behavior if the request matches the rule.

Request-based connection pool mapping rules are based on the following HTTP request data type parameters:

  • Protocol
  • Host
  • Path
  • Extension
  • Method
  • Query parameter
  • Unnamed query parameter
  • Path segment
  • Cookie
  • User Agent
  • Referrer
  • Header
  • Client IP
Note

For the Path parameter, you can specify either a full path or a path prefix. For more information, see Paths as prefixes , located in Chapter 6.

Specifying a value group

A value group is a collection of variation rule parameter values. The purpose of a value group is to enable you to specify several different parameter values for the same variation rule. Each value can prompt a different behavior by the WebAccelerator system. When configuring a connections rule with request-based connection pool mapping, you can specify a value group, rather than a single value for each connections rule parameter.

For example, when you configure a matching connections rule based on a cookie, you can only specify a single set of values for the cookie, and whether there is a match or not a match. On the other hand, if you use a request-based connection pool mapping rule, you can specify a value group for a cookie, such as sessionID.

You can use the flexibility of the value group to easily specify different behaviors for different values. In this example, there is a site that has three application servers with session IDs, where each session ID begins with a specific application server numerical ID, followed by a period and a session number, as shown in the following example:

1.AA0B3Ef72l
2.H86jT2i284K
3.b31u40FNLsms

For this type of site, you can create a value group for the sessionID cookie consisting of several rules, as follows:

  • When cookie sessionID begins with 1., use a unique connection pool.
  • When it begins with 2., use a unique connection pool.
  • When it begins with 3., use a unique connection pool.
  • For all other values, use the same connection pool.

With this connections rule and associated value group, the WebAccelerator system sends any requests where the sessionID cookie begins with 1. to application server 1 using a unique connection pool. The WebAccelerator system only directs requests to this pool if the requests contains the sessionID cookie to use this pool. The WebAccelerator system uses unique pools for requests where the sessionID cookie begins with 2., and 3.. All other values, where the sessionID cookie does not represent a valid application server, can share the same connection pool.

To create a connections rule with a request-based connection pool mapping rule

  1. On the Main tab of the navigation pane, click Policies.
    The Policies screen opens, displaying a list of acceleration policies.
  2. Click Edit next to the acceleration policy that you want to edit.
    The Policy Editor screen opens.
  3. From the Request Type Hierarchy tree, click the node for which you want to configure the rule.
  4. On the acceleration policy menu bar, click Connections.
    The Connections rules screen opens.
  5. Click the button next to Request-based connection pool mapping.
    The screen refreshes, displaying the Connection Mapping Criteria area.
  6. From the Add Parameter list, select an HTTP request data type parameter, and click the Add button.
    The Parameter Identity screen opens.
  7. Configure the value groups as required and click the Save button.

For a new or modified acceleration policy to be in effect for your site, you must publish it. See Publishing acceleration policies , located in Chapter 3, for more information.

Configuring a connections rule example

This section of the chapter provides information about how to configure an example connections rule. For this example site, you have three top-level nodes in the Request Type Hierarchy as follows:

  • Home
    Specifies the rules related to the home page.
  • Applications
    Specifies the rules related to the applications for the site, with child nodes, such as:
    • Default
      Specifies the rules related to non-search related applications.
    • Search
      Specifies the rules related to your site's search application.
  • Images
    Specifies the rules related to graphics images.
Note

See, To create the Home, Application, and Images nodes for the example Request Type Hierarchy tree , located in Chapter 4, for specific instructions about how to create the Request Type Hierarchy tree.

For this example, your site uses session IDs (in the form of a cookie called sessionID) to ensure that all requests in a given session are sent to the same origin server. All requests for images from your site are sent to a specific origin server identified by a unique subdomain, regardless of the session ID information.

For this site, you want to add a connections rule to your Applications node and another to your Home node. These rules are identical. In them, indicate a one-to-one connection mapping. The WebAccelerator system sends all requests for image data to the image server because of the domain information that appears on those requests, therefore, you do not have to configure a connections rule for the Images node because the default connection type is appropriate.

To create the connections rule example

  1. On the Main tab of the navigation pane, click Policies.
    The Policies screen opens, displaying a list of acceleration policies.
  2. Click Edit next to the acceleration policy that you want to edit.
    The Policy Editor screen opens.
  3. From the Request Type Hierarchy tree, click the Applications node.
  4. On the acceleration policy menu bar, click Connections.
    The Connections rules screen opens.
  5. Click the button next to One-to-one connection mapping.
  6. Click the Save button.
  7. Repeat steps 3 through 6 for the Home node.

For a new or modified acceleration policy to be in effect for your site, you must publish it. See Publishing acceleration policies , located in Chapter 3, for more information.




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)