This directory contains two software packages. Both are structured similarly to the Harvest distribution.

invalid.tar.Z has the source code for the modified Harvest cached for the pure invalidation approach for maintaining Web cache consistency. The code includes changes to both the httpd accelerator code and the proxy cached code. Due to our experimental setup (see our paper on "maintaining strong cache consistency in the Web"), the proxy and the accelerator communicate about real client addresses via the field "LCJ-Host". You need to search for the string "LCJ-Host" in the codes and change the place whether the string appears in order to use the incoming client addresses as the real client address.

ttl2.tar.Z has the source code for the improved Harvest cached for the adaptive TTL approach. It issues "if-modified-since" requests, instead of the regular GET requests, for cache hits on expired documents. The polling-every-time approach is implemented by simply changing this code to skip the TTL checking and go straight to sending "if-modified-since" requests.

The following files in both packages are used for our trace-replay experiments and are not related to the Harvest codes: pei.client.c, client.c, modifier.c, hot-modifier.c, time-master.c. Also here is a separate implementation of Web cache that can support invalidation.

Please read the following copyright notice before you download invalid.tar.Z and ttl2.tar.Z.

**********************************************************************
* Copyright (c) 1996, 1997. All rights reserved.
*
* The modifications to the Harvest Software were developed by:
*
* Pei Cao, Chengjie Liu, C. Y. Chan, Rahul Kapoor and Dhaval Shah
*
* at Computer Science Department, University of Wisconsin-Madison.
*
* The modified versions are provided ``as is'', without express or
* implied warranty, and with no support nor obligation to assist
* in its use, correction, modification or enhancement. We assume
* no liability with respect to the infringement of copyrights,
* trade secrets, or any patents, and are not responsible for
* consequential damages. Proper use of this software is
* entirely the responsibility of the user.
*
**********************************************************************
* Copyright (c) 1994, 1995. All rights reserved.
*
* The Harvest software was developed by the Internet Research Task
* Force Research Group on Resource Discovery (IRTF-RD):
*
* Mic Bowman of Transarc Corporation.
* Peter Danzig of the University of Southern California.
* Darren R. Hardy of the University of Colorado at Boulder.
* Udi Manber of the University of Arizona.
* Michael F. Schwartz of the University of Colorado at Boulder.
* Duane Wessels of the University of Colorado at Boulder.
*
* This copyright notice applies to software in the Harvest
* ``src/'' directory only. Users should consult the individual
* copyright notices in the ``components/'' subdirectories for
* copyright information about other software bundled with the
* Harvest source code distribution.
*
* TERMS OF USE
*
* The Harvest software may be used and re-distributed without
* charge, provided that the software origin and research team are
* cited in any use of the system. Most commonly this is
* accomplished by including a link to the Harvest Home Page
* (http://harvest.cs.colorado.edu/) from the query page of any
* Broker you deploy, as well as in the query result pages. These
* links are generated automatically by the standard Broker
* software distribution.
*
* The Harvest software is provided ``as is'', without express or
* implied warranty, and with no support nor obligation to assist
* in its use, correction, modification or enhancement. We assume
* no liability with respect to the infringement of copyrights,
* trade secrets, or any patents, and are not responsible for
* consequential damages. Proper use of the Harvest software is
* entirely the responsibility of the user.
*
* DERIVATIVE WORKS
*
* Users may make derivative works from the Harvest software, subject
* to the following constraints:
*
* - You must include the above copyright notice and these
* accompanying paragraphs in all forms of derivative works,
* and any documentation and other materials related to such
* distribution and use acknowledge that the software was
* developed at the above institutions.
*
* - You must notify IRTF-RD regarding your distribution of
* the derivative work.
*
* - You must clearly notify users that your are distributing
* a modified version and not the original Harvest software.
*
* - Any derivative product is also subject to these copyright
* and use restrictions.
*
* Note that the Harvest software is NOT in the public domain. We
* retain copyright, as specified above.
*
* HISTORY OF FREE SOFTWARE STATUS
*
* Originally we required sites to license the software in cases
* where they were going to build commercial products/services
* around Harvest. In June 1995 we changed this policy. We now
* allow people to use the core Harvest software (the code found in
* the Harvest ``src/'' directory) for free. We made this change
* in the interest of encouraging the widest possible deployment of
* the technology. The Harvest software is really a reference
* implementation of a set of protocols and formats, some of which
* we intend to standardize. We encourage commercial
* re-implementations of code complying to this set of standards.
*
**********************************************************************