Running WCAT

Running a WCAT test consists of the following steps:

1.Preparing the controller input files

2.Starting the WCAT clients

3.Starting the WCAT controller

4.Starting the WCAT, IIS, or Web server

5.The warmup period

6.The experimental period

7.The cooldown period

8.The reporting period

9.Preparing the output files

You begin a WCAT test by starting WCAT on the client computers and then starting WCAT on the controller computer. When you start WCAT on the controller, you specify the test you want to run and any special options for that test. You do not have to start WCAT on the server.

Preparing the Controller Input Files

A WCAT test actually begins before the first WCAT computer is started. The test begins with the design of the input files. The input files direct the test and specify the activities of the clients during the test. The input files are stored on and interpreted by the controller computer.

For a description of the WCAT input files, see “Controller Input Files,” earlier in this guide. For a description of how to design WCAT input files to test the configuration possibilities you want tested, see “Changing Client Workloads,” later in this guide.

In addition to the standard controller input files, you can prepare an optional performance counter input file on the WCAT controller. For more information on doing so, see “Using Performance Monitor Counters in a WCAT Test,” later in this guide.

Starting the WCAT Clients

The first step in a WCAT test run is to start the WCAT client program, Wcclient.exe, on the client computers. The client computers then attempt to connect to the controller computer. If the controller responds, the test proceeds; otherwise, the clients wait for 10 seconds and then try again to connect to the controller. This process is repeated until the clients connect to the controller or you stop the Wcclient.exe program.

You can start WCAT on as many clients as you want and leave them running for as long as you want. However, the WCAT controller accepts connections from only the number of clients specified in the configuration input file.

During the WCAT test, the WCAT clients simulate Web browsers by sending requests to the server. The clients keep in memory a log of statistics on the timing and frequency of requests sent to and received from the WCAT server. At the conclusion of the test, the clients send these statistics to the controller. The controller processes these statistics and records the information in the WCAT log file.

To start a WCAT client

1.On the client computer, click Start, select Programs, and click Command Prompt.

2.At the command prompt, type cd directory where directory is the directory in which the WCAT client software is installed. Doing so switches to that directory. By default, the files are installed in \WebClient.

3.At the command prompt, type client to start the WCAT client program.

The client then tries to connect to the controller computer. Until the client has connected to the WCAT controller, it displays the following message on-screen:

Connecting Connect Failed. Error = 10061 Failed to connect to server 111.11.11.1 Controller is either not running a test or the name or ip address incorrect Sleeping 10 seconds before trying to connect again....

This message indicates normal behavior of a WCAT client. It is not an error message.

To stop a WCAT client

1.On the client computer, click Start, select Programs, and click Command Prompt.

2.At the command prompt, type ctrl+c

Starting the WCAT Controller

After the clients are running, you start the WCAT controller program, Wcctl.exe, on the controller computer. The WCAT controller begins by locating and interpreting the controller input files. The controller uses the input files to send instructions to the clients. These instructions tell the clients which prepared test to run.

Optionally, the controller can also monitor server performance during the test. This option requires the optional testname.pfc input file, where testname is the name of the test you are running. If you use this option, the controller starts Performance Monitor on the server computer and prepares to monitor the counters you identify in testname.pfc.

The WCAT controller starts and monitors the WCAT test. When you start WCAT on the controller, you tell it which WCAT test to run. The controller begins the test by telling the WCAT clients which files to request, in which pattern and frequency.

WCAT can run both the tests provided with WCAT and tests that you create. The tests provided with WCAT are described in “WCAT Tests,” later in this guide. For information on creating WCAT tests, see “Designing Custom Tests,” later in this guide.

To start a WCAT controller

1.On the controller computer, click Start, select Programs, and click Command Prompt.

2.At the command prompt, type cd directory where directory is the directory in which the WCAT controller files are installed. Doing so switches to that directory. By default, the files are installed in \WebCtrl.

3.At the command prompt, type run testname [options] where testname is the name of the prepared WCAT test you are running and options is options for that test. The test name does not include the test’s filename extension. If you do not supply a test name, WCAT runs the 1ktest01 test. The possible test options you can use are described in “Using Command Line Options,” later in this guide.

Note

WCAT uses the name of a particular test to name that test’s output log file and optional performance results file. If you run a test more than once, WCAT overwrites any existing output files with the same test name. To preserve output files from a test before running the test again, use the -e option with the run command.

When the controller’s preparatory work is complete, it begins responding to client requests for connections to the controller. The controller allows the clients to connect to the controller one at a time, until the number of clients specified in the configuration input file for the test is reached. The status message “All clients started” appears in the controller’s command prompt window when the required number of clients have successfully connected to the controller.

If more than the required number of clients attempt to connect, the controller ignores the extra clients. If fewer than the required number of clients connect, the controller waits indefinitely for the others. You should start troubleshooting client status and connection to the network if the “All clients started” message does not display by the end of the warmup period.

When the required number of clients have connected, the controller sends test instructions to the clients. The client computers display on-screen messages reflecting the receipt of these instructions. By default, the controller monitors the test on TCP/IP port 7232.

Starting the WCAT, IIS, or Web Server

Next, start the Internet Information Server and HTTP Service on the WCAT server.

The Warmup Period

The warmup period begins after the clients have received their instructions from the controller. During the warmup period, the clients start sending requests for Web pages to the server. However, the data collected by the clients and controller during the warmup period is not included in the output files, because work done during this period does not properly represent the full workload imposed on the server.

Typically, servers respond more slowly during the warmup period than subsequently. This slow response comes from the fact the servers have not yet loaded frequently used pages into the file system cache, frequently used objects into the IIS Object Cache, or frequently used instructions into the processor cache.

The Experimental Period

The experimental period is the body of the test. The length of the experimental period is referred to as the duration of the test, in other words the total test time minus the warmup and cooldown periods. During the experimental period, the clients request Web pages from the server based upon the controller’s instructions. As the clients work, they gather statistics on their own behavior and on the response of the server.

The controller is also active during the experimental period. The controller keeps track of the elapsed time of the test. It also monitors the Performance Monitor counters on the server computer, if that option is selected.

During the experimental period, you might see one or more status messages displayed in the clients’ command prompt windows. These status messages provide information about the progress of the test.

The Cooldown Period

When the experimental period stops, the cooldown period begins.

During the cooldown period, the controller directs the clients to stop sending requests to the server. The clients complete requests in progress and continue to gather performance data. However, the data collected during the cooldown period is not included in the output files, because work done during this period does not properly represent the full workload imposed on the server.

The Reporting Period

The reporting period occurs after the test. During the reporting period, the clients send the controller the data they collected during the test. After the controller has received all data, the controller closes all client connections. The clients then return to their pretest state. They resume periodic attempts to reconnect to the controller until you stop WCAT.

At the end of the test, the results are computed and written to Scripts\testname.log, where testname is the name of the test run. A single line of information from the log file appears on each client’s screen. This single line contains the total number of pages read, the average number of pages read per second, and the actual number of pages read by each client.

Preparing the Output Files

During a WCAT test, the controller monitors the operation of the server and collects data on the response of the server to the test. The controller also collects data from the clients during the cooldown period.

When the controller has gathered data from the clients, it calculates information from and summarizes that data. The controller then displays a brief summary of the data in its command prompt window and writes all data to the output log file.

If the optional performance counter option is used with the run command, the controller adds a Performance Counters section to the log file and creates a performance results file from the data it has collected. For more information about the output files, see “Analyzing the WCAT Log” and “Interpreting a Performance Results File,” later in this guide.

After the controller writes the output files, the controller program stops and closes connections to the client computers. Then the specified test is complete. If you are running multiple tests by using a batch file, the next test is automatically started.

When the controller closes the client connections, each client attempts to reconnect to the controller until the client program (wcclient.exe) is stopped explicitly on each computer running that program.