Installation and Performance Tuning of Microsoft Scalable Web Cache 3.0 (and TWC)

We recommend that you read this article before downloading and implementing SWC 3.0.

Click here to install the Microsoft Scalable Web Cache (SWC 3.0)

Note: This is a self extracting file containing everything you will need.

On This Page

SWC 3.0 Components
Setting Up and Running SWC
SWC 3.0 Logfile Post-Processing
SWC 3.0 Requirements


The Microsoft Scalable Web Cache (SWC) 3.0 is an HTTP 1.0 compliant caching front-end for Web requests.

SWC 3.0 and Trusted user Web Cache (TWC) API set extend the SWC 2.0 driver (located at In addition to the features provided by SWC 2.0, including high-performance in serving static requests, binary logging format, and scalability in symmetric multiprocessor machines, SWC 3.0 also supports keep-alive requests, dynamic requests, and CGI requests, while maintaining similar performance and scalability.

This article summarizes how to optimally configure Windows 2000, SWC 3.0, and the user mode drivers. Information about the TWC API set in included in the download.

SWC 3.0 Components

Heres what is included in SWC 3.0:

  • Swc.sys: Kernel-mode swc 3.0 driver

  • Twcnt.lib and Twccore.lib: User-mode libraries for user-mode code to work with SWC 3.0

  • Twcapi.txt: The document describing API exposed by twcnt.lib and twccore.lib

  • Twcshutdown.exe: Utility to shutdown the user-mode application and cgigate.exe

  • Cgigate.exe: Cgi gateway

  • Swcpp.exe: Tool for post-processing swc.log

Setting Up and Running SWC

To set up and run SWC, follow these steps:

  1. Copy the swc.sys drivers to %SystemRoot%\system32\drivers directory

  2. Copy the server.reg file to the server and run
    regini server.reg

    to set up the registry parameters on the server.

  3. Change the parameters in swc.reg according to the configuration of your machine.

    The Parameters SmallBufferSize and LargeBufferSize are in Megabytes (MB) and need to be adjusted according to the configuration of your server. The buffers are allocated from physical memory, so set the sizes accordingly.

    You may also need to change the following registry values:
    a) LogDrive
    b) VirtualRootName
    c) VirtualRootPath

  4. 4. Copy swc.reg file to the server and run
    regini swc.reg

    to set up the registry parameters for the SWC.SYS driver.

  5. Copy cgigate.exe, twcshutdown.exe, and your TWC application to your VirtualRoot directory

  6. Follow these steps to start SWC 3.0 and the TWC application:

    a) net stop w3svc
    b) net start swc
    c) net start w3svc
    d) Once IIS 5.0 and SWC.SYS starts successfully, go to your VirtualRoot direcotoy and start your TWC application and cgigate.exe
    e) SWC/TWC 3.0 drivers are up and running now.

  7. 7. Here are the steps to stop SWC/TWC drivers

    a) run twcshutdown.exe
    b) net stop w3svc
    c) net stop swc

SWC 3.0 Logfile Post-Processing

SWC logs all transactions in a binary format. In order to view the logs generated by SWC, you must first batch process the logs using the post-processing tool Swcpp.exe that is included with the SWC 3.0 distribution.

The log file is created at the root of the LogDrive (specified in Swc.reg). Make a copy of the file (for example: copy swc.log snapshot02222000.log) and then post process the log copy.

Command Line Options:
-o specifies an output file name.
-l specifies the log file to be processed
-s specifies the step increment (default = 10000)

Sample Usage:

swcpp -o snapshot02222000.txt -l snapshot02222000.log -s 100000

SWC 3.0 Requirements

SWC 3.0 requires Windows 2000 Server Service Pack 1 or higher.