3 README WebStone 2.0 Release version
5 WARNING: WebStone 2.0 results should not be compared with WebStone 1.1
6 results. Even under the same fileset performance will not be
9 Please see the notes for 2.0beta6 for quick and dirty install
10 This version includes a port of the webstone source code to Windows
11 NT. This port is still in progress, so it is not possible to guarantee
12 that everything is working correctly - however in our test configurations
13 it has performed correctly. Note that the supporting scripts and report
14 generating code has not been ported to NT yet.
16 This version also institutes some basic run rules to eliminate the
17 lack of conformity in Webstone performance quotes.
18 To report Webstone numbers, some basic rules should be followed:
20 1) The fileset used for the test must be the fileset.standard fileset
21 included in the distribution. Tests of CGI performance must be
22 with the file filelist.cgi-heavy, and tests of NSAPI performance
23 must be carried out with filelist.dynamic-heavy
25 2) The run time should be set for 10 minutes, and the number of
26 clients should vary from 20 clients to 100 clients in increments
27 of 10. When a connections/second time is quoted, it must include
28 information about the number of clients involved.
30 3) Any special TCP/IP tuning which the server has recieved should
31 be documented, as well as HTTPD server version and configuration
32 information such as logging, DNS lookups and number of threads.
35 README - WebStone 2.0beta6
37 WARNING: Do not compare WebStone 2.0 results with WebStone 1.0 results.
38 WebStone 2.0 introduces significant changes in testing methodology
41 This is the WebStone benchmark. Quick and dirty install:
43 - put this directory (WebStone) on a seperate machine (the "controller")
44 - "./webstone -setup", which does the following:
46 This script may fail if you don't have a Web browser or
47 Perl5. Don't worry, unless you want to use the GUI.
49 If the GNU autoconf fails for your OS, please forward the
50 error messages, and any porting hints, to the author.
52 This may not be necessary, since IRIX binaries are included.
53 - edit conf/testbed to reflect your site
54 See the doc/FAQ-webstone.html for details.
55 - ./webstone -genfiles will put the files in conf/fileset
58 - to display a table of results: ./webstone -results
60 If you'd like to try out the GUI for WebStone:
61 - run "./webstone -setup", as above.
62 - make sure you have a Web browser installed
67 README: This document.
68 README.FIRST: Quick and dirty directions.
69 README.DynamicWorkload: Information on the CGI and NSAPI workloads.
70 webstone: wrapper shell script for everything.
72 -gui: start the GUI mode
73 -kill: kill stray WebStone processes
74 -genfiles: build files (from conf/fileset)
75 and rcp onto the server $SERVER
76 - results: print table of results
77 -setup: initial make and setup
78 -silent: runs in the background
79 -tail: tail -f of most recent run
81 Files of interest (./src):
82 Makefile, *.c, *.h: The Webstone source code
84 Files of interest (./bin):
85 checkfilelist: uses rsh to check web server for files in filelist.
86 genfiles, genrand: generates files of arbitrary length.
87 getstats: Collects network statistics from Web server, clients.
88 killbench: terminates stray WebStone processes.
89 rebootall: reboots all WebStone webclients.
90 runbench: wrapper script for WebStone.
91 webmaster: WebStone controller executable.
92 webstone: WebStone client executable.
93 wscollect: reports results in tabular format.
95 Files of interest (./conf):
96 filelist: default list of files on the Web server,
97 with workload description.
98 filelist.photo: Model of a popular Web site
99 containing photographic images.
100 filelist.ss: Model of SGI's Silicon Surf WWW site.
101 fileset: list of files for genfiles to create.
102 testbed: config file describing Web server, client, and network setup.
104 Documentation (./doc):
105 FAQ.html: The FAQ, current as of this distribution.
106 LICENSE: Legal status of WebStone.
107 testbed.help: Explains the parameters in conf/testbed.
108 webstone-white-paper.ps: The original WebStone white paper.
109 webstone.gif: The WebStone logo.
111 Additional documentation:
112 FAQ.html: Frequently Asked Questions, with answers
113 webstone.ps: PostScript white paper on WebStone
115 Problems, etc. may be addressed to the WebStone mailing list.
116 Read the FAQ for details.
118 Release Notes (2.0 beta6):
119 * fixed a bug for Web servers not on port 80
120 * further changes to bin/wscollect.pl
122 Release Notes (2.0 beta5):
123 * numerous minor fixes suggested by gcc -Wall -pedantic
125 * changed bin/wscollect.pl to use Perl formats
127 Release Notes (2.0 beta4):
128 * added #include <sys/time.h> to bench.h
129 * changed webclient located to $TMPDIR - this should help people
130 who don't want to run WebStone as root
131 * changed check for libm to floor() instead of sqrt(). Apparently
132 some systems implement sqrt() in libc - let's hope no one implement
133 floor() in libc and sqrt() in libm!
135 Release Notes (2.0 beta3):
136 * more portability fixes
137 * successfully compiled on FreeBSD 2.2, IRIX without any source
140 Release Notes (2.0 beta2):
141 * additional timezone fixes for SunOS
143 Release Notes (2.0 beta1):
144 * fixed a bug in the rexec portion of webmaster.c
145 * fixed a bug in the usage() routine of webmaster.c
146 * added bin/genfiles-from-filelist.sh
147 - bin/genfiles-from-filelist.sh <filename>
148 - generates appropriate-length files from <filename>
149 - <filename> must contain three fields:
150 <relative URL> <weight> #<size in bytes>
151 example: /file.html 1 #1024
152 * added bin/mine-logs.pl
153 - usage: mine-logs.pl <filename>
154 where <filename> is an http server log file
155 - writes a WebStone workload to standard output
157 Release Notes (2.0 alpha5):
158 * revised default testbed file
159 * changed wscollect to wscollect.pl for consistency
160 * changed webstone-gui to webstone-gui.pl for consistency
161 * added some NT porting hints
162 * added autoconf, which should help Linux and SunOS porting
164 Release Notes (2.0 alpha4):
165 * added SunOS and Linux portability elements
166 * new scheme for random access to pages
167 * converted several static arrays to dynamic pointers
169 Release Notes (2.0 alpha2):
170 * fixed per-page statistics
171 * new, client-independent data-passing scheme
172 * added support for proxy servers
174 Release Notes (2.0 alpha1):
175 * new filelist scheme - however, this breaks per-page statistics
179 * Improved webclient performance by combining GET and ACCEPT
180 HTTP headers in one write() call.
181 * Improved webclient performance on systems that always attempt
182 to map protocol names to numbers using YP.
183 * WARNING: since the old code introduced a significant latency
184 in some systems, DO NOT compare WebStone 1.1 results
185 with results generated by any previous versions.
187 Release Notes (1.0.3):
188 * Netscape Server 1.1.2 exposed a couple bugs, which I've now fixed.
190 Release Notes (1.0.2):
191 * Fixed runbench so that ITERATIONS, MINCLIENTS, and MAXCLIENTS don't
192 have to have a common denominator any more.
193 * Fixed a few cosmetic bugs.
195 Release Notes (1.0.1):
196 * Fixed select() bug in webmaster
198 Release Notes (1.0 final):
199 * Fixed the "Error reading 2nd timing info" bug
200 * Fixed numerous bugs in the GUI
201 * Froze feature set. Work can now begin on WebStone 1.1
203 Release Notes (1.0b3):
204 * New Web browser GUI
205 NOTE: most Web browsers take up substantial CPU time.
206 If you run the GUI, we recommend that you make the controller
207 a separate machine, and don't run any WebStone clients on it.
209 Squashed some dubious error messages, fixed some client-
210 controller communications problems.
212 Changes the units and order of the final summary statistics.
213 Basically, this is for my own convenience, so I don't have to
214 massage the data quite so much before using it. wscollect
215 now reports only the metrics I regard as important - but all
216 metrics are still reported in the runs/*/run files.
220 This file and all files contained in this directory are
221 copyright 1995, Silicon Graphics, Inc.
223 This software is provided without support and without any obligation on the
224 part of Silicon Graphics, Inc. to assist in its use, correction, modification
225 or enhancement. There is no guarantee that this software will be included in
226 future software releases, and it probably will not be included.
228 THIS SOFTWARE IS PROVIDED "AS IS" WITH NO WARRANTIES OF ANY KIND INCLUDING THE
229 WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE,
230 OR ARISING FROM A COURSE OF DEALING, USAGE OR TRADE PRACTICE.
232 In no event will Silicon Graphics, Inc. be liable for any lost revenue or
233 profits or other special, indirect and consequential damages, even if
234 Silicon Graphics, Inc. has been advised of the possibility of such damages.