When publishing content from a web server that is behind a ISA 2006 firewall, the ISA can be configured as Reverse Web Caching proxy, i.e. the ISA caches responses from the web server(s) and sends the cached content to the clients instead of requesting the content from the web servers again (see “Reverse proxy” on Wikipedia). On the one hand this could reduce the load of the web severs and on the other hand enables the clients to view content even if the web servers are offline.
In this Reverse Web Caching scenario it could be interesting to analyze if a specific request was forwarded to the web server(s) and, in this case, if the web server’s response is cached by the proxy for future client requests or if the proxy delivers content from its cache.
Fortunately, the ISA server provides detailed ISA Server Web proxy log entries that include the “Object Source” and “Cache Info” fields (see http://msdn.microsoft.com/en-us/library/aa503433.aspx):
- Object Source
The type of source that was used to retrieve the current object. A table of some possible values is provided in Object Source Values.
- Cache Info
A number reflecting the cache status of the object, which indicates the reasons why the object was or was not cached. The number logged is the sum of the values for all the conditions that are met. A table of the possible values is provided in Cache Information Values.
The “Object source” provides information about whether the object was retrieved from the cache or not (see possible value). The “Cache Info” field is a bit mask that includes various cache information (see http://msdn.microsoft.com/en-us/library/aa503433.aspx#_isa_cache_info_values); the most interesting values are:
- 0x00000001: Request should not be served from the cache.
- 0x40000000: Response should not be cached.