This directory contains the code for the Enable advice server. This server was written for the Enable project: http://www-didc.lbl.gov/ENABLE/ A short design document can be found at: http://www-didc.lbl.gov/ENABLE/enable-design.txt Short summary: this server can be used to run a set of network tests to from the enable server host to a list of client hosts, with the results stored in a database. There is a client api (currently python only) to query the results of this database. This data is designed to be used to tell the client what the optimal TCP buffer settings to a given server should be. This service would typically be installed on a data server host for large files (like the globus gsiftp server) This has been tested with python version 2.0: http://www.python.org/ It may or may not work with older versions of python. It also requires the python XML-RPC module, available from: http://www.pythonware.com/products/xmlrpc/ Currently supported network tests: ping pipechar Coming soon: pchar iperf nettest The ping test module of the Enable server currently only supports Linux and Solaris. If you are using some other OS, you will probably need to edit enable_net.py Make sure pipechar (http://www-didc.lbl.gov/~jin/network/net-tools.html) is installed and in your path. ------------------------------------ Instructions for use: 1) download the python XML-RPC module from the above URL, unzip it, and set PYTHONPATH to point to it. e.g.: mkdir $HOME/lib/python cp xmlrpclib.py xmlrpcserver.py $HOME/lib/python setenv PYTHONPATH $HOME/lib/python 2) add default hosts to the file enable.cfg 3) start the server: ./enable.py note: currently the server prints out LOTS of debug messages 4) try out the client: ./enable_test_client.py ----------------------------------------- Files: REAME: this file enable.cfg: sample config file enable.py: enable server enable_test_client.py: enable client enable_config.py: class to handle parsing config file enable_net.py: class to handle network tests enable_db.py: class to handle enable database ----------------------------------------- Caveats: only 1 pipechar can run at a time, so it is normal for many of the scheduled pipechar tests to return an error. Hopefully it will run the next time. Probably need to figure out a way to guarantee that pipechar will run, or get Jin to get his nscd program stable. Be careful not to set the frequency of pipechar testing too high. Also, pipechar sometimes just silently exits, with no results and no error messages. Bug report submitted. Note: the following functionality is not yet finished ability to add hosts automatically from log files support for iperf/nettest ability to age hosts out of the db ability to compare current test results with previous results and throw out possibly bad results lots more Please send comments/bug fixes/etc. to bltierney@lbl.gov