NAME
server - RSerPool Server (PE) for multiple example services
SYNOPSIS
server [-local=address:port,address,...] [-asapannounce=address:port]
[-identifier=PE_identifier] [-policy=policy_specification]
[-poolhandle=pool_handle] [-quiet] [-registrar=address:port]
[-rereginterval=milliseconds] [-runtime=milliseconds]
[-uptime=seconds] [-downtime=seconds] [-logcolor=on|off]
[-logappend=filename] [-logfile=filename] [-loglevel=0-9]
[-cspserver=address:port] [-cspinterval=milliseconds]
server [-calcapp] [-capcapacity=calculations_per_second]
[-capcleanshutdownprobability=probability]
[-capcookiemaxcalculations=calculations]
[-capcookiemaxtime=seconds]
[-capkeepalivetransmissioninterval=milliseconds]
[-capkeepalivetimeoutinterval=milliseconds] [-capmaxjobs=max_jobs]
[-capobject=name] [-capscalar=scalae_file]
[-capvector=vector_file]
server [-chargen] [-chargenmaxthreads=threads]
server [-daytime]
server [-discard]
server [-echo]
server [-fractal] [-fgpcookiemaxpackets=messages]
[-fgpcookiemaxtime=milliseconds] [-fgpfailureafter=messages]
[-fgpmaxthreads=threads] [-fgptestmode]
[-fgptransmittimeout=milliseconds]
server [-pingpong] [-pppfailureafter=messages] [-pppmaxthreads=threads]
server [-scripting] [-sskeeptempdirs] [-ssmaxthreads=threads]
[-sstransmittimeout=milliseconds]
[-keepaliveinterval=milliseconds] [-keepalivetimeout=milliseconds]
DESCRIPTION
server is an example Reliable Server Pooling (RSerPool) pool element (PE)
that provides multiple services. Upon startup, one service has to be
selected by the command-line parameters. To start multiple services, run
multiple instances. server provides the following services:
CalcApp
Calculation application model for performance tests. See
http://duepublico.uni-duisburg-
essen.de/servlets/DerivateServlet/Derivate-16326/Dre2006-final.pdf
for more information.
CharGen
Sending as much character data as possible.
Daytime
Sending back current time of day.
Discard
Discarding incoming data.
Echo Echoing back incoming data.
Fractal
Fractal generator with cookie-based failover.
PingPong
Simple request-response example using cookies for failover.
Scripting
Remote execution of scripts with upload/download of input/output
data. Could for example be used for distributing simulation runs.
Take care of security when using this service!
ARGUMENTS
The following options are available:
Common Pool Element Parameters:
-local=address:port,address,...
Sets the local endpoint address(es).
-asapannounce=address:port|auto|off
Sets the multicast address and port the ASAP instance
listens for ASAP Server Announces on.
-identifier=PE_identifier
Sets a fixed PE identifier. Handle with care!
-policy=policy_specification
Sets the pool policy and its parameters (default is Round
Robin). Supported policy specifications:
RoundRobin (default policy)
WeightedRoundRobin:weight
Random
WeightedRandom:weight
LeastUsed
LeastUsedDegradation:increment
PriorityLeastUsed:increment
LeastUsedDPF:dpf_value
Priority:priority
...
-poolhandle=pool_handle
Sets the PH to a non-default value; otherwise, the
default setting is the service-specific default.
-quiet Do not print startup and shutdown messages.
-rereginterval=milliseconds
Sets the PE’s re-registration interval.
-runtime=seconds
After the configured number of seconds, the service is
shut down. Floating-point values (e.g. 30.125) are
possible.
-uptime=seconds
After negative exponential randomized uptime, the PE
service goes down for a configured downtime. After that,
it comes up again. This option can be used for testing
the failure handling procedures.
-downtime=seconds
After negative exponential randomized downtime, the PE
service comes up again. This option can be used for
testing the failure handling procedures.
Logging Parameters:
-logappend=filename
Write logging output to a file (default is stdout);
output will be appended to given file.
-logcolor=on|off
Turns ANSI colorization of the logging output on or off.
-logfile=filename
Write logging output to a file (default is stdout); given
file will be overwritten.
-loglevel=0-9
Sets the logging verbosity from 0 (none) to 9 (very
verbose). It is recommended to use at least a value of 2
to see possibly important error messages and warnings.
ASAP Protocol Parameters:
-registrar=address:port
Adds a static PR entry into the Registrar Table. It is
possible to add multiple entries.
-registrarannouncetimeout=milliseconds
Sets the timeout for ASAP announces via multicast.
-registrarconnecttimeout=milliseconds
Sets the timeout for ASAP connection establishment.
-registrarconnectmaxtrials=trials
Sets the maximum number of ASAP connection establishment
trials.
-registrarrequesttimeout=milliseconds
Sets the timeout for ASAP requests.
-registrarresponsetimeout=milliseconds
Sets the timeout for waiting to receive ASAP responses.
-registrarrequestmaxtrials=trials
Sets the maximum number of ASAP request trials.
Component Status Protocol (CSP) Parameters:
-cspinterval=milliseconds
Sets the interval for the CSP status updates in
milliseconds. By default, the content of the environment
variable CSP_INTERVAL is used. If not defined, no CSP
status reports will be sent.
-cspserver=address:port
Sets the address of a CSP monitor server. By default, the
content of the environment variable CSP_SERVER is used.
If not defined, no CSP status reports will be sent.
Service Parameters:
-calcapp
Starts the CalcApp service.
-capcapacity=calculations_per_second
Sets the service capacity in calculations per
second.
-capcleanshutdownprobability=probability
Sets the probability for sending state cookies to
all sessions before shutting down.
-capcookiemaxcalculations=calculations
Sets the cookie interval in calculations.
-capcookiemaxtime=seconds
Sets the cookie interval in seconds.
-capkeepalivetransmissioninterval=milliseconds
Sets the keep-alive transmission interval in
milliseconds.
-capkeepalivetimeoutinterval=milliseconds
Sets the keep-alive timeout in milliseconds.
-capmaxjobs=max_jobs
Sets the an upper limit for the number of
simultaneous CalcApp requests.
-capobject=name
Sets the object name for scalar hierarchy.
-capscalar=scalar_file
Sets the name of vector scalar file.
-capvector=vector_file
Sets the name of vector output file.
-chargen
Starts the CharGen service.
-chargenmaxthreads=threads
Sets an upper limit for the number of
simultaneous CharGen sessions.
-daytime
Starts the Daytime service.
-discard
Starts the Discard service.
-echo Starts the Echo service.
-fractal
Starts the Fractal Generator service.
-fgpcookiemaxpackets=messages
Send cookie after given number of Data messages
-fgpcookiemaxtime=milliseconds
Send cookie after given number of milliseconds.
-fgpfailureafter=messages
After the set number of data packets, the server
will terminate the connection in order to test
failovers.
-fgpmaxthreads=threads
Sets an upper limit for the number of
simultaneous Fractal Generator sessions.
-fgptestmode
Generate simple test pattern instead of
calculating a fractal graphics (useful to
conserve CPU power when debugging).
-fgptransmittimeout=milliseconds
Sets transmit timeout in milliseconds.
-pingpong
Starts the PingPong service.
-pppfailureafter=messages
After the set number of messages, the server will
terminate the connection in order to test
failovers.
-pppmaxthreads=threads
Sets an upper limit for the number of
simultaneous PingPong sessions.
-scripting
Starts the Scripting service.
-sskeeptempdirs
Turns on keeping all temporary files for
debugging. Handle with care!
-ssmaxthreads=threads
Sets an upper limit for the number of
simultaneous sessions.
-sstransmittimeout=milliseconds
Sets the transmission timeout in milliseconds.
-sskeepaliveinterval=milliseconds
Sets the keep-alive interval in milliseconds.
-sskeepalivetimeout=milliseconds
Sets the keep-alive timeout in milliseconds.
ENVIRONMENT
server uses the environment variables CSP_SERVER and CSP_INTERVAL to
define a CSP server to send reports to in the specified interval.
DIAGNOSTICS
If loglevel>0, log messages will be printed to stdout or into a specified
log file.
SEE ALSO
For a detailed introduction to RSerPool, see:
http://duepublico.uni-duisburg-
essen.de/servlets/DerivateServlet/Derivate-16326/Dre2006-final.pdf
Thomas Dreibholz’s RSerPool Page:
http://tdrwww.iem.uni-due.de/dreibholz/rserpool/
AUTHORS
Dr. Thomas Dreibholz
http://tdrwww.iem.uni-due.de/dreibholz/rserpool/
mailto://dreibh@iem.uni-due.de