SendFile Main Topic | Previous

Testing the SendFile Applications


You can test the SendFile applications with Web server performance and stress tools such as the Microsoft Web Stress Tool or WCAT, both of which are included in the Windows 2000 Resource Kit. You can also use third-party tools.

You'll need a 100 megabits per second (Mbps) network, or better, to measure all but the slowest applications. A traditional 10 Mbps Ethernet can deliver approximately 1 megabyte (MB) per second. With the 8 kilobyte (KB) data file, file8k.txt, that's only 120 files per second. If you use a very small data file instead (less than 100 bytes) you might be able to obtain valid results on a 10 Mbps network, since there is a certain amount of per-file overhead and the cumulative overhead might be enough to prevent the network being swamped. Using a very small file size will highlight the differences in the ASP/ISAPI/CGI/static frameworks, perhaps unfairly. Conversely, using a huge file size would minimize the differences between the frameworks, and instead measure the capacity of the underlying network. Using an 8 KB file, which is a "typical" file size, avoids these extremes.

You'll also need several client computers to run Homer or WCAT, since a single client computer will not be able to generate enough load to push your server to its maximum throughput.

The test network should be disconnected from the rest of your network. The high volume of network traffic generated by the tests will interfere greatly with other users, and traffic from the other users will muddy the results. Ideally, the clients and the server should be connected by a network switch, not a hub. A hub will experience congestion.

If you have a fast server, a single 100 Mbps network segment may not be enough. A fast server will be able to swamp the 100 Mbps network. You can add additional network segments, if this is the case. The server must have a network card for each segment that it is connected to. The Homer/WCAT test controller must also be directly connected to each segment. The client computers should be connected to one segment only.

When you have the network, the clients, the controller, and the server all set up correctly, you can proceed to test the Sendfile applications. Use Homer or WCAT to create a test for each of the URLs listed above. Refer to the tools' documentation for details on setting up and running tests.

Multiprocessor Systems

If you have a multiprocessor server, you may want to see how it performs when some of the processors are disabled. You can do this by using Notepad to edit c:\boot.ini, which will look something like this:

[boot loader]
    timeout=30
    default=multi(0)disk(0)rdisk(0)partition(1)\WINNT
    [operating systems]
    multi(0)disk(0)rdisk(0)partition(1)\WINNT="Microsoft Windows 2000 Server" /fastdetect
    ; perhaps other, similar lines to boot different operating systems

Copy the line under [operating systems] that corresponds to the default entry under [boot loader] and append /numproc=N, where N is the number of processors you want to use. Be sure to add an explanatory note to the menu string. For example:

    [boot loader]
    timeout=30
    default=multi(0)disk(0)rdisk(0)partition(1)\WINNT
    [operating systems]
    multi(0)disk(0)rdisk(0)partition(1)\WINNT="Microsoft Windows 2000 Server" /fastdetect
    multi(0)disk(0)rdisk(0)partition(1)\WINNT="Microsoft Windows 2000 Server (2P)" /fastdetect /numproc=2
    ; perhaps other, similar lines to boot different operating systems

caution-icon

Caution

Take a backup of your boot.ini before making any modifications. Windows 2000 will not start without a valid boot.ini.

Note that uniprocessor systems use a different kernel than multiprocessor systems. Using /numproc=1 on a multiprocessor system will give you lower results than using the uniprocessor kernel. For information about installing a uniprocessor kernel on a multiprocessor system, search the InternetMicrosoft Knowledge Base.