ADC

Content accelerator

Important

The content accelerator feature is no longer supported on the Citrix ADC appliance.

Content accelerator is a Citrix ADC feature that you can use in a Citrix ByteMobile T1100 deployment, to store data on a Citrix ByteMobile T2100 appliance.

Storing data on a T2100 appliance saves bandwidth and improves response time. This is because Citrix ADC does not have to connect to the server for repeated requests for the same data.

Note: Content accelerator works with a Citrix ByteMobile Premium license. Contact customer support for more information and for obtaining the license.

How content accelerator works

When a load balancing or content switching virtual server receives a client request, the Citrix ADC appliance evaluates a content accelerator policy that you have bound to the virtual server. The policy filters the requests to identify the ones to which to apply the content accelerator feature.

Note:

For HTTP requests, the content accelerator feature can serve partial content in response to single byte-range requests.

The following figure illustrates the operations that the appliance performs when a client request arrives at a virtual server configured to use the content accelerator feature:

How content accelerator works

The process flow is as follows:

  1. Client sends request.
  2. Citrix ADC forwards the request to the server.
  3. Server responds with the predefined size of the response (specified by the accumResSize parameter of the add ca action command).
  4. Citrix ADC computes a hash of the response sent by the server.
  5. Citrix ADC looks up the hash on the T2100 appliance.
  6. A successful lookup indicates that the data is available and the T2100 appliance sends the data to the Citrix ADC.

    Note: When a lookup does not succeed, the Citrix ADC fetches all of the requested data from the server, and simultaneously serves the data to the client and updates the data on the T2100 appliance. The T2100 appliance can be configured to specify the number of requests after which to cache the data.

  7. Citrix ADC sends the response to the client.

Configure content accelerator

Before configuring the content accelerator feature, you must enable it on the Citrix ADC appliance.

You can configure the content accelerator feature to use one or multiple T2100 appliances. You must add each T2100 appliance as a service and bind these services to a load balancing virtual server that is dedicated to distributing the load between the configured T2100 appliances.

You must also configure a content accelerator action to lookup the data on the T2100 appliance. The action must also specify the T2100 load balancing virtual server and the size of data (in KB) to be fetched from the server to calculate the hash.

The action must be bound to a content accelerator policy that defines the traffic on which to perform content acceleration. The content accelerator policy must be bound to a content switching or load balancing virtual server that receives client traffic. Alternatively, you can bind the policy globally to be applicable to all virtual servers.

To configure content accelerator by using the command line interface

At the command prompt, do the following:

  1. Enable the content accelerator feature.

    enable ns feature ca

  2. Identify the T2100 appliances and add each as a service on the Citrix ADC appliance.

    add service <name> <IPAddress> <serviceType> <port>

    Example:

    > add service T2100-A 10.102.29.61 HTTP 30
    > add service T2100-B 10.102.29.62 HTTP 40
    > add service T2100-C 10.102.29.63 HTTP 50
    <!--NeedCopy-->
    

    Note: The services must be of type HTTP only.

  3. Create a load balancing virtual server for the T2100 appliances. Specify the token load balancing method and the rule shown in the following syntax.

    add lb vserver <name> <serviceType> <IPAddress> <port> -lbMethod TOKEN -rule "http.req.url.after_str(\"/lookup/\") alt http.req.url.path.SKIP(1).PREFIX(64)"
    <!--NeedCopy-->
    

    Example:

    add lb vserver T2100-lbvserver HTTP 10.102.29.64 99 -lbMethod TOKEN -rule "http.req.url.after_str(\"/lookup/\") alt http.req.url.path.SKIP(1).PREFIX(64)"
    <!--NeedCopy-->
    
  4. Bind the T2100 services to the load balancing virtual server that you created for them.

    bind lb vserver <name> <serviceName>

    Example:

    > bind lb vserver T2100-lbvserver T2100-A
    > bind lb vserver T2100-lbvserver T2100-B
    > bind lb vserver T2100-lbvserver T2100-C
    <!--NeedCopy-->
    
  5. Define a content accelerator action.

    add ca action <name> accumResSize <KBytes> -lbvserver <string> -type lookup

    Example:

    > add ca action ca_action1 -type lookup -lbvserver T2100-lbvserver -accumResSize 60

  6. Define a content accelerator policy.

    add ca policy <name> -rule <expression> -action <name>

    Example: To create a content accelerator policy that caches all video formats.

    > add ca policy ca_mp4_pol -rule ns_video -action ca_action1

    where ns_video is a built-in expression.

  7. Bind the content accelerator policy to either a virtual server that receives traffic or globally to the Citrix ADC system.

    bind lb vserver <name> -policyName <string>

    bind cs vserver <name> -policyName <string>

    bind ca global -policyName <string> -priority <num> -type <type>

    Example: To apply the content accelerator policy to a virtual server named “traf_rec”

    > bind lb vserver traf_rec -policyName ca_mp4_pol

    Example: To apply the content accelerator policy for all traffic reaching the Citrix ADC.

    > bind ca global -policyName ca_mp4_pol -priority 100 -type RES_DEFAULT

  8. Save the configuration.

    save ns config

Configuring content accelerator by using the GUI

  1. Navigate to System > Settings > Configure Advanced Features and select Content Accelerator.
  2. Create a service for each of the T2100 appliances.
    1. Navigate to Traffic Management > Load Balancing > Services.
    2. Click Add and specify the relevant details. In the Server field, make sure you specify the IP address of the T2100 appliance. In the Protocol field select HTTP.
  3. Create a virtual server and bind the T2100 services to it.
    1. Navigate to Traffic Management > Load Balancing > Virtual Servers.
    2. Click Add and specify the relevant details.
    3. In the Method and Persistence tab, specify the Method as Token.
    4. In the Policies tab, specify the rule as http.req.url.after_str("/lookup/") alt http.req.url.path.SKIP(1).PREFIX(64).
    5. In the Services tab, select the T2100 services that you want to bind to the virtual server.
  4. Create a content accelerator action.
    1. Navigate to Optimization > Content Accelerator > Actions.
    2. Specify the relevant details.
  5. Create a content accelerator policy.
    1. Navigate to Optimization > Content Accelerator > Policies.
    2. Click Add, specify the policy rule, and associate the content accelerator action.
  6. Bind the content accelerator policy globally or to a virtual server.
    1. Navigate to Optimization > Content Accelerator.
    2. Under the Content Accelerator Policy Manager [REQUEST] or Content Accelerator Policy Manager [RESPONSE] sections, bind the content accelerator policy globally or to a virtual server.
Content accelerator