Cisco Application Velocity System User Guide (Software Version 5.0)
Frequently Asked Questions and Troubleshooting

Table Of Contents

Frequently Asked Questions and Troubleshooting

Frequently Asked Questions (FAQ)

Troubleshooting


Frequently Asked Questions and Troubleshooting


This chapter includes the following sections:

Frequently Asked Questions (FAQ)

Troubleshooting

Frequently Asked Questions (FAQ)

What is the Cisco Performance Suite?

Available in the hardware-based Cisco Application Velocity System, the Cisco Performance Suite is the industry's leading enterprise application performance optimization and monitoring solution. A transparent solution, the Cisco Performance Suite consists of the following product components:

Condenser: Transparently accelerates the performance of HTTP and HTTPS-based enterprise applications. See the Condenser Acceleration Software FAQ for more information.

AppScope Performance Monitor: Monitors the actual end-user experience of HTTP and HTTPS-based enterprise applications at the transaction level without requiring client software or client emulation agents.

AppScreen Web Application Firewall: Provides web application security and intrusion protection.

What are the Condenser Application Accelerator and Application Velocity System?

Available in the hardware-based Application Velocity System, the Condenser Application Accelerator is the leading solution that accelerates enterprise application performance, resulting in increased employee productivity, improved user experience, and reduced infrastructure costs. Using the broadest suite of optimization techniques available, the Condenser enables enterprises to optimize performance and improve access to critical business information. Cisco unlocks the value of existing enterprise investments and achieves significant returns by accelerating the performance of HTTP and HTTPS (SSL)-based web-applications including CRM, ERP, portals, and online collaboration.

What are the AppScope Performance Monitor and Application Velocity System?

Available in the hardware-based Application Velocity System, the AppScope Performance Monitor is the industry's only low-cost, low-complexity agentless end-to-end performance measurement solution for HTTP and HTTPS (SSL)-based applications. AppScope may be used independently to measure the end-user experience or in combination with the Condenser Application Accelerator Module to accelerate application performance.

Unlike existing solutions that require the deployment of additional software agents that emulate client requests and measure simulated response times at the object level, Cisco's AppScope technology measures true end-to-end application performance as seen by real end users. AppScope also accurately determines and reports both the server delay and network delay components associated with the user experience.

The AppScope Performance Monitor provides a sophisticated GUI-based reporting engine that enables enterprises to efficiently track application performance. AppScope's reporting engine provides detailed graphical performance monitoring results with drilldowns available via transactions (URL groups), source IP address groups, and source geography groups.

AppScope's web-based GUI configurator eases product configuration to enable fast deployment. In addition, all AppScope Performance Monitor data is stored in a self-contained relational database. This provides additional flexibility for an organization to use its own reporting tools, such as Crystal Reports, or create its own custom performance monitoring reports.

Does the Cisco Performance Suite or Application Velocity System require any special client/server software or configuration?

No. A truly transparent and automatic solution, Cisco products require no additional software or configuration changes on browser clients or origin/application servers and require no changes in origin/application server pages.

What is delta optimization technology?

Delta optimization eliminates redundant traffic on the network by computing and transmitting only the changes that occur in a web page between successive downloads of the same page or similar pages. This eliminates the need to download redundant information between successive visits to the page and instead enables the client to download only the changes to the page.

What is FlashForward object acceleration technology?

FlashForward object acceleration technology eliminates network delays associated with embedded cacheable web objects such as images, style sheets, JavaScript files, etc. FlashForward object acceleration places the responsibility for validating object freshness on the Condenser, rather than on the client, making it more efficient. With FlashForward, the client never needs to validate the freshness of browser-cached objects with the origin server, thus significantly accelerating page downloads, and reducing both upstream and downstream traffic associated with object validation requests.

What is just-in-time object acceleration technology?

Just as FlashForward accelerates delivery of embedded cacheable objects, just-in-time object acceleration enables acceleration of non-cacheable embedded objects, resulting in improved application response time. This feature eliminates the need for users to download these objects on each request. Instead, the Condenser automatically tracks the freshness of each of these objects in real-time. If a requested object has not changed, the Condenser instructs the client to use the cached version of the object. If an object has indeed changed, the Condenser delivers it to the client. The Condenser delivers the object only if it determines that the object has changed, guaranteeing the optimal application response times for all users, resulting in the fastest possible experience.

What is smart image optimization technology?

Smart image optimization automatically reduces image file sizes while optimizing image quality, resulting in faster image download times, faster page renders, and more efficient bandwidth utilization. Smart image optimization strikes the perfect balance between image size and quality by using the fine granular approach of intelligently recompressing only low detail areas within images. This ensures that image sizes are significantly reduced (up to 90%) while maintaining rich visual detail. Smart image optimization works hand-in-hand with FlashForward object acceleration to enable the fastest image optimization and delivery available today.

What is smart redirect technology?

Some applications and content management systems enable enterprises to automatically redirect users from one page to another via HTML META tags. Unfortunately, using META-based page redirections causes poor download times because it forces the end user to issue freshness validation requests for every object in the redirected page, resulting in potentially significant page download delays. The smart redirect feature enables the Condenser to automatically and transparently convert HTML META tag-based redirections into more efficient HTTP header-based redirections in order to eliminate the need for unnecessary freshness validation requests. This results in significantly faster page response times without sacrificing the META tag-based redirection flexibility enabled by many enterprise applications.

What is adaptive dynamic caching technology?

Adaptive dynamic caching accelerates enterprise application performance and improves server system scalability by enabling the Condenser itself to fulfill requests for dynamic content, thus offloading application servers and databases. This not only significantly improves application response time, it also reduces server load and enables more concurrent users to be served, resulting in improved scalability and lower ongoing server upgrade costs. The Performance Assurance caching policy enables the Condenser to monitor server load in real-time and make intelligent closed-loop content expiration decisions so that site performance is maximized and existing hardware resources are used most efficiently, even during periods of peak traffic load.

What does the SSL Acceleration feature do?

The Condenser's SSL acceleration feature enables it to handle the SSL Handshake with clients, decrypt web requests from clients, transparently proxy them to the content server, condense the server responses (via the delta optimization and FlashForward capabilities), encrypt the condensed responses, and deliver them to clients within secure SSL connections.

The Condenser accelerates SSL performance by requiring only small delta optimized pages to be encrypted rather than the entire page. In addition, FlashForward object acceleration eliminates the vast majority of object validation requests from clients on subsequent page visits, resulting in a significantly reduced number of SSL-based transactions and a significant increase in SSL scalability. Integrated SSL capabilities make the Condenser the only transparent solution to deliver guaranteed secure content acceleration.

What does server connection offload do?

The server connection offload feature enables the Condenser to take on the overhead of managing network connections with browsers by maintaining persistent TCP connections with the web/application servers. In order to optimize overall performance as traffic levels change, the Condenser intelligently increases and decreases the number of persistent TCP connections to the web server(s) as load conditions dictate. This frees up web and application servers to focus solely on content generation, resulting in a significant improvement in web server capacity.

How is industry-standard text compression used?

Although standard text compression has become more popular, it typically provides only modest improvements in real world conditions and is not sufficiently powerful or robust for enterprise requirements. The Condenser leverages compression to further reduce the byte size of delta optimized pages. Reducing page sizes is key to accelerating download times. The Condenser combines delta optimization with compression to deliver optimal page size reductions because it enables the Condenser to send only the compressed version of what has changed to the client.

How does AppScope measure the end-user experience without the use of additional client, server, or synthetic transaction agents?

Because the AppScope Performance Monitor is a transparent reverse-proxy, it does not need to rely on passive sniffing mechanisms to monitor traffic. On the contrary, AppScope's unique proxy architecture enables it to accurately monitor both HTTP and HTTPS (SSL)-based traffic without comprising security by actively instrumenting each page for measurement on the fly. This page instrumentation enables the client to actively notify the AppScope server when the page has been fully received and rendered. This, combined with other gathered metrics, enables AppScope to accurately report the actual end-user experience at the transaction level rather than at the individual object level. AppScope's SSL-proxying capability makes it the only agentless solution that can monitor SSL-based traffic while retaining true end-to-end SSL-based security.

What is AppScope's Statistical Sampling mechanism?

Unlike existing performance monitoring solutions that require you to measure all user requests, AppScope's unique Statistical Traffic Sampling technology enables an enterprise to statistically sample user requests, making AppScope highly scalable for high-traffic applications. AppScope enables you to utilize your existing load-balancer to transparently direct a portion of the traffic for measurement. In environments where a load-balancer is not used, AppScope can be configured to see all of the traffic passing between client and server and simply measure a portion of the total.

Why is an agentless performance measurement solution superior to agent-based solutions?

Agentless solutions such as AppScope eliminate the need for you to deploy additional software agents or plug-ins on clients, servers, or elsewhere. In addition, agentless solutions eliminate the need for the software vendor to invest capital in the development and delivery of agent software. This decreased complexity results in simplified product deployment and a significantly decreased total cost of ownership (TCO). In addition, many existing agent-based solutions can only measure the response times associated with agents that periodically issue synthetic transactions. These solutions cannot measure the actual end-user experience. AppScope measures the actual end-user experience.

Can AppScope be used to monitor SSL-based applications?

Yes, AppScope's SSL-proxying capability makes it the only agentless solution that can monitor SSL-based traffic while retaining true end-to-end SSL-based security. When deployed as an SSL Proxy, AppScope maintains end-to-end SSL-based security because all traffic between client and origin server is encrypted via SSL.

What does the Management Console do?

Integrated within the Application Velocity System, the centralized browser-based Management Console enables the administrator to manage and monitor groups of application appliances via a standard browser. The Management Console enables you to access the configuration, system information, and performance reports (on the AVS 3180). These management and monitoring capabilities simplify and reduce the time and cost associated with ongoing system management tasks.

On which platforms are the Performance Suite and Application Velocity System products available?

The Performance Suite is available in the Cisco AVS 3120 Application Velocity System, which also includes a Device Management Console that allows you to manage and configure one or more AVS 3120 devices. The full Management Console, with device management and reporting features, is available in the Cisco AVS 3180 Management Station.

How do I enable product redundancy and fail-over?

The built-in Availability Manager allows you to deploy a cluster of two or more application appliances with high availability and load balancing. One active Availability Manager appliance can manage one standby appliance and other additional appliances. If the active appliance is found to be down, the standby appliance takes over the load balancing role.

The Cisco AVS products can also be deployed with existing load balancers to provide redundancy and fail-over. In this configuration, the load balancer automatically bypasses an unavailable application appliance device when it detects that it is no longer responding.

Which load balancers have Cisco Networks certified as Cisco-compatible?

Cisco has certified the following load balancers for use with the Application Velocity System products: Cisco Arrowpoint, Cisco LocalDirector, F5 Networks Big/IP, Alteon AceDirector, Resonate Central Dispatch, and Foundry Server Iron.

How can I change the IP address of the AVS 3110 application appliance once it has been installed?

You can run the $AVS_HOME/appliance/bin/appliance-netconf.py utility or edit the network configuration file /etc/sysconfig/network-scripts/ifcfg-eth0 using a text editor and change the IPADDR= directive.

Note that you must run the appliance-netconf.py script from the appliance console.


Note This item applies only to the AVS 3110 device. For the AVS 3120 and AVS 3180 devices, use the CLI command set interface to change the IP address.


How can I change the host name of the AVS 3110 application appliance?

Edit the network configuration file /etc/sysconfig/network using a text editor and change the HOSTNAME= directive.


Note This item applies only to the AVS 3110 device. For the AVS 3120 and AVS 3180 devices, use the CLI command set hostname to change the host name.


How do I access the application appliance remotely?

The only way to access the appliance remotely is by using the SSH facility.

Troubleshooting

The application appliance is not receiving requests, nor is it delivering responses. What should I do?

Verify that network connectivity is established for the application appliance.

Verify that the application appliance server processes are up and running:

Use the following UNIX command to verify that the application appliance http process is running:

ps -aef | grep -i http 

If you are using a web browser to test the application appliance, verify that its proxy setting is not configured to bypass the application appliance node.

Although the application appliance is receiving requests and is delivering responses, it does not appear to be delivering condensed content. What should I do?

Verify that the useragent.conf configuration file explicitly includes the browser User Agent string for the browser originating the requests to the application appliance. Only browsers with User Agent strings identified in the useragent.conf configuration file will receive condensed responses. Note that the useragent.conf configuration file supports the use of regular-expression matching.

Verify the following parameters in the fgn.conf configuration file:

DeltaOptimize is set to On. Condensation will not occur if this parameter is set to Off.

CacheRoot is set to a valid directory path. Condensation will not occur if this parameter is not valid.

Verify that the content associated with the problematic URLs is no smaller than 1024 bytes and no larger than 250 KB. By default, the application appliance will not condense responses outside of these size ranges. This size range can be configured using the MinCondensablePage and MaxCondensablePage parameters, respectively.

Verify that your condensation policies are correctly defined. Are the problematic URLs configured to receive condensation?

Verify that the MIME types of the content associated with the problematic URLs are not included in the mimetypes.conf configuration file. The application appliance will not condense responses with MIME types identified in the mimetypes.conf configuration file.

Verify that the content associated with the problematic URLs does not contain the following non-condensable content:

Inline frame (IFRAME tags)

External JavaScript includes (SCRIPT tags including the SRC attribute)

Embedded objects (OBJECT tags)

These elements are passed through uncondensed. Note that all JavaScript code embedded in a page is passed through uncondensed and in the exact order in which it appears in the origin page. This avoids problems related to JavaScript dependencies and execution order.

Use the command

ls -l cacherootDirectory 

to verify that the user who started the application appliance node has full read and write permissions for the CacheRoot directory.

Verify that JavaScript is supported/enabled in the browser originating the requests to the application appliance. The application appliance will not condense responses to requests from browsers that do not support JavaScript or have it disabled.

Although the application appliance is receiving requests and is delivering responses, it does not appear to be delivering compressed content. What should I do?

Verify the following parameters in the fgn.conf configuration file:

CompressContent is set to On. Compression will not occur if this parameter is set to Off.

Verify that your condensation policies are correctly defined. Are the problematic URLs configured to receive compression?

Verify that the browser originating the requests to the application appliance can accept gzip-compressed content. The application appliance will only deliver gzip-compressed responses to browsers that include an "Accept-Encoding: gzip" or an "Accept-Encoding: x-gzip" HTTP request header. Responses to requests that do not contain this request header will be delivered uncompressed.

Verify that the configuration settings for the BaseFileCompress and HTTP10Compress parameters in the fgn.conf file are set correctly. By default neither base files nor HTTP 1.0 responses will receive gzip compression (that is, the default value for both is "Off").

I am seeing unexpected condensation behavior. What should I do?

If you are using Per-URL condensation, verify that the content associated with the problematic URLs is receiving repeated requests from a given user. In this mode, a base file is created for each URL and condensed content is delivered for subsequent visits to that same page (that is, the page is condensed against previous versions of the same page/URL). Note that the end-user must request the base page for the first visit to a given URL. Although the application appliance can be configured to gzip-compress them, they will be larger in size than subsequent delta pages. As a result, (in the absence of edge-caching) if many unique users visit a given page, the application appliance will need to deliver the base page on each user's first visit.

Note that the base files are always marked as cacheable via the HTTP Cache-Control response header. As a result, caches within the application appliance-to-client path will cache application appliance base files. When this occurs, the edge-cache will fulfill requests from new visitors for the base file, reducing the load on the application appliance node, and improving the condensation levels delivered.

Determine the nature of content delivered by parameterized URLs (that is, those that embed a "?" character). The application appliance automatically parses parameterized requests to eliminate the "?" and the characters that follow in order to identify the unique part of the URL. This unique URL is then used to create the base file. The application appliance uses this feature to map multiple parameterized URLs to a single canonical URL. For example, the two URLs http://www.servers.com/books?id=235 and http://www.servers.com/books?id=576 would both be reduced to the URL http://www.servers.com/books. As a result, both of these parameterized URLs would share the same base file that represents the canonical URL http://www.servers.com/books. Condensation levels will be relatively low if these original URLs reference two pages that do not share much content or layout (that is, relatively large delta files could be delivered for requests across parameterized URLs that do not share content or layout).

Generating a Core File

On rare occasions, it may become necessary to have the application appliance node dump core information in order to debug or aid in troubleshooting operational problems. Follow these steps to generate a core file:


Step 1 Within the configuration file $AVS_HOME/perfnode/conf/httpd.conf, specify the directory where the core file is to be written by using the CoreDumpDirectory keyword. For example:

CoreDumpDirectory /tmp

This example directive will place the core files within the /tmp directory. The default directory is $AVS_HOME/perfnode/logs/coredump.

Step 2 Generate the core file by executing the following commands:

# ulimit -c unlimited
# cd $AVS_HOME/perfnode/bin
# ./fgnctl start


Once a core file has been produced, you should see an entry similar to the following in the error log:

[Wed Sep  8 13:39:40 2004] [notice] child pid 3790 exit signal Segmentation fault (11), 
possible coredump in /tmp

Currently, log rotation is not supported for these core files. As a result, you must manage these files to avoid running out of disk space.