ISA Server 2004 FAQ: Caching

This frequently asked questions (FAQ) document provides answers to questions commonly asked about caching in Microsoft Internet Security and Acceleration (ISA) Server 2004.

Q

What is the maximum cache size?

A

The maximum size for a single cache file is 64 gigabytes (GB). If you require a larger cache store, you can split it into several files over different drives.

Q

In Cache Settings, what does the term "percentage of free memory to use for caching" mean? Is it a percentage of available free memory, or total RAM?

A

This option does not indicate the percentage of available memory that ISA Server uses for caching, but rather the percentage of total RAM ISA Server uses for caching. This memory is allocated during the startup of the Microsoft Firewall service, and changes to this setting only take effect when you restart the Microsoft Firewall service. To reset this, do the following: On the Configuration node of ISA Server Management, right-click Cache, and then click Properties. On the Advanced tab, specify the required value in Percentage of free memory to use for caching.

Q

Can I change the location of the default cache file?

A

When you configure a drive for caching, ISA Server creates a cache content file (Dir1.cdat) in the drive:\urlcache folder. You can specify an alternative cache file location on the drive, including an environment variable such as %cacheDirectory%. If the specified folder does not exist, ISA Server will warn you that the specified location is not valid and will try to create the folder. For any alternative cache folder, the Network Service must have read permissions from the root partition and any parent folder for the folder. On the cache folder itself, the following permissions are required:

  • Network Service: Full Control
  • System: Full Control
  • Administrators: Full Control

If you do not set permissions correctly, the following error event may be issued in the Event Viewer:

  • Event ID: 14176. Disk cache drive:\urlcache\Dir1 failed to initialize. Identify the reason for cache failure by examining previous recorded events, or the error code. Check that the disk is connected and that it is not corrupt.

Q

When configuring caching I received event 14193 "Cache was initialized with less memory cache than configured. This is because there is not enough free memory available for ISA Server caching." What does this indicate?

A

This event is generated when the Web proxy fails to allocate memory cache based on: (size of RAM) × percentage of free memory to use for caching. It may happen when there is no free virtual memory to allocate. In this case, the Web proxy will allocate a smaller size and issue the event.

Q

When the cache is full, how does ISA Server determine what to purge from the cache, to make space available for new items?

A

To make space, random URLs are removed as required. However, there is some built-in logic that means that the most recently used objects are less likely to be removed.

Q

People connecting to my publishing Web site seem to be getting an old version. Why?

A

Ensure reverse caching is not enabled. Create a rule to ensure that nothing is cached for requests for the published Web site from outside your enterprise.

Q

Is reverse caching enabled by default? If so, how can I disable it?

A

After installation, the cache is disabled by default, and you enable it by configuring a cache drive and space for it. When you enable caching, both forward and reverse caching are enabled. To disable reverse caching for specific sites, create a cache rule that disables caching of https://published_size/* urls.

Q

How can I determine if caching is working?

A

You can view cache performance counters in the operating system Performance Monitor. To do this, click Start, click Run, and in the Open dialog box, type perfmon.

Right-click the graph pane, and then select Add Counters. In the Performance Object drop-down list, select ISA Server cache. Then select the counters you want to view from the list. You can read about cache counters under the Additional Resources section in ISA Server online Help.

Q

Can I cache Secure Sockets Layer (SSL) responses?

A

Yes, you can configure that SSL responses should be cached by right-clicking the cache rule, and selecting Cache SSL responses on the Advanced tab. Note that this setting only affects SSL traffic that is bridged. Tunneled SSL traffic cannot be cached.

Q

In ISA Server 2004 by default, 10 percent of the RAM is allocated for caching objects. Why is the default RAM allocation so low?

A

The optimal allocation will depend on the configuration. You can read more about optimal cache settings in different scenarios in ISA Server Performance Best Practices.

Q

When ISA Server starts, I see an alert message that the cache did not initialize properly. What could be causing this?

A

This often happens when the cache was not shut down properly, for example, if a service terminated unexpectedly or the computer stopped.

Q

Can I ensure availability of updates and fixes by caching Windows Update?

A

No, Windows Update transfers data used Background Intelligent Transfer Service (BITS). BITS allows an application to download a file in portions, and uses HTTP range headers to do this. ISA Server does not support caching of ranges.

Q

Can I cache compressed content?

A

In a Web publishing scenario, ISA Server allows the traversal of compressed responses from the Web server to the client, if the client sends an Accept-Encoding header indicating that it will accept compressed content. However, compressed content will not be cached. Note that ISA Server does not support traversal of compression responses in a forward proxy scenario, and does not support inspection of compressed response bodies in any direction.