This manual page documents briefly the
rabid , program.
It is designed to test the performance of POP email servers by reading all
messages from randomly selected accounts as fast as possible. A future version
will support rate limiting to provide a constant load (for testing SMTP
servers).
The
pop-server parameter specifies the IP address or name of the mail server that the mail
is to downloaded from. If you want to specify a port other than port 110 then
enclose the host address in
square brackets and have the port address immidiately following. If you want
a DNS lookup for every connection (for testing round-robin DNS) then
immediately preceed the host address with a '+' character.
The
user-list-filename is the name of a file which contains a list of user's email addresses and
passwords. It will have one address per line and the password follows the
address with a space to seperate.
If a
conversion-filename is specified then the names in this file will be taken as a template and
expanded to make the real names (NB the passwords are not expanded).
See the
postal(8) man page for details of the expansion process.
The
processes parameter is the number of processes that should be forked off to attempt
seperate connections. A well configured mail server won't accept an unlimited
number of connections so make sure you don't specify a number larger than the
number your mail server is configured to handle. Also for sensible results
make sure that you don't use enough to make your server thrash as the results
won't be representative of real-world use.
The
max-connections-per-minute parameter is for limiting the number of connections that the program
makes. This is designed to be used when you want to test the performance
of other programs when the system is under load. The default is 24000
connections per minute.
The
messages-per-connection parameter specifies the maximum number of messages to download in a single POP
session. The default is -1 (unlimited).
The
local-address parameter specifies which local IP address(es) are used to make the outbound
connections. Specified in the same way as the remote address. This is good
for testing LocalDirectors or other devices that perform differently depending
on which source IP address was used.
The
-a command turns on all logging. All message data received will be logged. This
will make it slow and it may not be able to saturate a fast Ethernet link...
The
-s switch specifies the percentage of connections which are to use
TLS AKA
SSL. Use 0 for no SSL, or 100 for always SSL, or any number in between. Default is
0.
The
-i switch specifies the percentage of IMAP connections (default is POP).
The
-b switch allows you to specify breakage strings. Currently the only option is
for Qmail POP server which adds an extra blank line at the end of each
message.
-b qmail-pop means to not report this as an error.
-d download-percentage[:delete-percentage] allows you to specify what percentage of the messages are downloaded and what
percentage of the downloaded messages are deleted. Default is 100%.
The
-z switch allows you to specify a debugging file base. From this base one file
is created for each thread (with a ':' and the thread number appended), each
file is used to log all IO performed by that thread for debugging purposes.
The
-Z switch is the same but creates a separate file for each connection as well
with an attitional ':' appended followed by the connection number.
BUGS
Doesn't actually do SSL or IMAP yet.
RETURN CODES
0
No Error
1
Bad Parameters
2
System Error, lack of memory or some other resource
AUTHOR
This program, it's manual page, and the Debian package were written by
Russell Coker <russell@coker.com.au>.