Read Me
NLANR/DAST Multicast Beacon v1.4-0
February 4, 2011
Mitch Kutzko - mitch@dast.nlanr.net
General installation notes
See INSTALL.
Perl Requirements
If your Perl installation doesn't already have it, you'll need
to install Time::HiRes. (Darwin installs seem to be the only
ones I've tested under that don't already have it.)
You can use:
/usr/bin/perl -MCPAN -e shell
and at the prompt enter:
install Time::HiRes
to install Time::HiRes for those OS's. If it's the first time
you run CPAN, you'll have to go through the Perl Inquisition
while it figures out where and how to install what it needs, but
then it should be much simpler thereafter. I used all the
default values to the many, many questions when I installed to
the PowerPC I used for this, and it worked out fine.
* The Beacon is a perl script. It requires Perl 5.6 or better.
You'll need to compile and install everything in the tarball
to get it to run.
* This version of the Beacon generates five ten as output:
central_loss.html, local_loss.html, central_rtt.html, local_rtt.html,
central_jitter.html, local_jitter.html, frac_lost.html, beacon_info.html,
history.txt, and prevhistory.txt. Loss is the loss seen during
the interval between web refreshes. Frac is the
instantaneous fractional loss value for that particular
Receiver Report. Central_loss is a matrix of the interval
loss as seen by all the Beacons reporting their local data
back to a specified Central Server via TCP.
* IMPORTANT: The Beacon isn't a web server, and doesn't play one on TV.
It's totally up to you to find a way to get the information it generates
served to the web if that's what you want to do.
However, for those that don't have the ability to serve their
own data, a copy of the data from multicast group 233.4.200.18, port 10004,
as seen by the DAST Central Beacon Server will generally be available
at: http://jhereg.ncsa.uiuc.edu and/or http://beacon.dast.nlanr.net.
* The Beacon software (as well as a list of Known Issues) can be found at:
http://dast.nlanr.net/projects/beacon/
* Unfortunately, as much as we'd like to, we don't have the time or
resources to help you debug what's wrong with your Perl install under
some OS, or help you figure out why you can't get the module to compile.
Those questions are left to the alert Beacon user. When you figure
out what was wrong, please send us mail at beacon@dast.nlanr.net,
and we'll add your problem and your solution to our Beacon FAQ. (So check
the FAQ first -- Maybe the solution to your problem is already there.)
* The Beacon creates a file, "multicastbeacon.PID", in the output directory
to hold the process ID of the running copy of the Beacon so that duplicate
copies aren't started by accident.
* There is a mailing list set up for discussion of the current Beacon at
beacon@dast.nlanr.net.
* Anyone is welcome to use this version of the Beacon, but we ask two things.
First, that you credit NLANR and link back to the NLANR/DAST web page for
the Beacon (http://dast.nlanr.net/projects/beacon), and second, that you
give us feedback on how you're using the Beacon, and what bugs, comments,
ideas, or changes you have for it. Please share those with the listserv
at beacon@dast.nlanr.net. (You can subscribe by sending an email to
majordomo@dast.nlanr.net, with "subscribe beacon@dast.nlanr.net" in the
body. This list is publicly archived at
http://archive.ncsa.uiuc.edu/lists/beacon.)
* Finally, NLANR would like to specifically acknoweldge the invaluable
assistance from LBL's Deb Agarwal in finding the problems with the old RTP
library, and providing the impetus to move to the new RTP library and
finaly get this release up and running. (Thanks, Deb!) Kudos also go
out to NCSA's Jon Dugan, for getting the new RTP library SWIG'd and
available to me on a next-day basis. (Thanks, Jon!) NLANR/DAST's
John Estabrook also resides in the "couldn't have done it without you"
category, for his help in solving some of the more esoteric and "interesting"
bugs found in the RTP library. (Thanks, John!)
Enjoy!
Mitch
-----------------------
Information about v1.4-0:
This version requires Perl 5.6 or better, and does *not* require you to
be root on the box you wish to install on. However, you do need to make
and install Perl Module "Net::Multicast::Beacon", so if you don't have
root, you'll have the additional step of needing to tell Perl where you
installed the module.
This version produces the following files as the main output:
central_loss.html
local_loss.html
fract_lost.html
central_rtt.html
local_rtt.html
central_jitter.html
local_jitter.html
beacon_info.html
history.txt
prevhistory.txt
The "central_loss.html" file is the one you are mostly likely interested in.
------------------------------------------------------------------------------
Command Line Options/Examples:
./beacon
Starts Beacon using only settings from beacon.conf.
./beacon -o /home/beacon/outputfiles
Specifies the directory to write output HTML and txt files to.
Don't specify a trailing slash.
Config file entry: OUTPUTDIR
./beacon --outputdir /home/beacon/outputfiles
Same as previous.
./beacon -n or ./beacon --noshutdownmsg
Does NOT write a shutdown message to HTML files when Beacon is shutdown.
Config file entry: NOSHUTDOWNMSG
./beacon -c beacon.ncsa.uiuc.edu
Specifies the (optional) Central Server to send TCP reports back to.
./beacon --centralservername beacon.ncsa.uiuc.edu
Same as previous.
./beacon -i or ./beacon --showip
Show Beacon IP addresses in the HTML output.
Config file entry: SHOWIP
./beacon -r or ./beacon --showreports
Show count of RRs during each interval in the HTML output.
Config file entry: SHOWREPORTS
./beacon -s or ./beacon --showssrc
Show unique SSRC ID numbers for each Beacon in the HTML output.
Config file entry: SHOWSSRC
./beacon -j\ or ./beacon --contactname
Specify Beacon contact's name on command line.
Config file entry: CONTACTNAME
./beacon -k or ./beacon --contactinfo
Specify Beacon contact's info (email, phone, etc.) on command line.
Config file entry: CONTACTINFO
./beacon -l or ./beacon --contactlocation
Specify Beacon contact's physical location on command line.
Config file entry: CONTACTLOCATION
./beacon -w or ./beacon --writehistory
Output statistics to CSV flat text file every 10 minutes.
History file name is history.txt.
Config file entry: WRITEHISTORY
./beacon -e or ./beacon --erasehistory
Erase existing history file at startup. If this option is not specified,
output will be appended to the existing history file if there is one.
Config file entry: ERASEHISTORY
./beacon -y or ./beacon --silencetest
Enables periodic Silence tests.
Config file entry: SILENCETEST
./beacon -z or ./beacon --bursttest
Enables periodic Burst tests.
Config file entry: BURSTTEST
./beacon --notifyemail beaconadmin@xyz.edu
Specifies the email address to send alarm notifications to.
Not yet implemented.
Config file entry: NOTIFYEMAIL
./beacon -m beaconadmin@xyz.edu
Same as previous.
./beacon -a or ./beacon --background
Causes Beacon process to run in background at startup.
Config file entry: BACKGROUND
./beacon -f 141.142.98.209
Specifies which interface to use if more than one NIC is present.
Config file entry: INTERFACE
./beacon --interface 141.142.98.209
Same as previous.
./beacon -g 233.4.200.19 -p 10002 -t 127
Specifies group, port, and ttl on command line, instead of using settings
in beacon.conf.
Config file entry: GROUP, PORT, TTL
./beacon --group 233.4.200.19 --port 10002 --ttl 127
Same as previous.
./beacon -b or ./beacon.pl --becentralserver
Act as a Central Beacon Server. Only one server is needed for multiple
Beacons. To participate with an existing Central Server, you only need to
run one Beacon that points to the existing Central Server.
Config file entry: BECENTRALSERVER
./beacon -q or ./beacon --syslog
Writes output that would normally have gone to STDOUT to SysLog instead.
For example, if you're running Linux, you'd look in
/var/log/messages for that output.
Config file entry: SYSLOG
./beacon -d N or ./beacon --debug N
Sets debug level of Beacon script to integer N. Only 1 and 2 are currently used.
Config file entry: DEBUG
./beacon -v or ./beacon --version
Shows Beacon version information.
./beacon -h or ./beacon --help
Gives this message.
------------------------------------------------------------------------------
KNOWN BUGS, version 1.4-0
* -make install- bug under Darwin
There's a problem we're currently looking into with the
autoconf/make machinery under the Darwin OS that doesn't
perform the actual -make install- correctly. The install
appears to run correctly under all other OSs we've tested.
The workaround is to go into the .../src directory after
the -make install- successfully completes and run a
chmod +x beacon
on the freshly made beacon executable. You can now run
it directly with
./beacon
there in the .../src directory or copy it to /usr/local/bin
or wherever else you like to put it on your path manually.
* True hostname of Central Server in beacon.conf bug
There is also a bug in the TCP connection machinery for
the TCP Central Server reports that currently requires
you to use the true hostname of the Central Server you
want to send reports to.
This is the CENTRALSERVERNAME setting in
.../src/beacon.conf.
For example, the actual hostname for the alias of
"beacon.ncsa.uiuc.edu" we're using as the Central Beacon
Server here at NCSA is "jhereg.ncsa.uiuc.edu". For the
moment, you must set
CENTRALSERVERNAME = jhereg.ncsa.uiuc.edu
to get your individual Beacons to connect correctly.
The "beacon.ncsa.uiuc.edu" alias won't work at the
moment.
------------------------------------------------------------------------------
Please share your comments, questions, bug reports, concerns, and feedback
with us via the "beacon" listserv at beacon@dast.nlanr.net. You can
subscribe to it by sending an email to "majordomo@dast.nlanr.net", with
"subscribe beacon@dast.nlanr.net" in the body. This list is publicly
archived at http://archive.ncsa.uiuc.edu/lists/beacon.
Thanks!