At the top of the results column on the
http://www.slac.stanford.edu/comp/net/iepm-bw.slac.stanford.edu/slac_wan_bw_tests.html
there are links to what were the current reference pages on the web for the various tools.

There is a very useful command in $bandsrc called 'show-probe-commands'. Look at the comment at the top of the code to see how to use it. It reads the toolspec data base and prints the commands that are executed. A useful tutorial can probably be written which shows how the commands are stored in the data base, and how the data base entries are turned into the actual commands executed. Look in the wiki for show-probe-commands. It may or may not be documented.

TOOLSPEC definitions, and plot specifications.

The plot specifications MUST BE ON ONE LINE with NO Carriage returns in them.  See the wiki on this.
 There is a script 'fetch-toolspecs' that the code calls to fetch the toolspecs from the TOOLSPEC table.
 Entries in the TOOLSPEC table look like the following when fectched by 'fetch-toolspecs'. Now the entries in the TOOLSPC table are used to do the individual plots in create-tool-plots and create-history.

29cal@iepm-bw: fetch-toolspecs \| more
\#destnode, toolname, testtype, datatoanalyze,  daystoanalyze
iepm-bw.bnl.org,mtlaytcp,background-syn,mtlaytcp:mtlaytcp=w p  lt 6 pt 6;mtlaytcp:rttmin=w lt 7 pt 5;
mtlaytcp:rttmax=w lt 2 pt  5;mtlaytcp:rttavg=w lt 3 pt 5,28

iepm-bw.bnl.org,owping,background,owping:tmin=w p lt  3;owping:tmed=w p lt 6;
owping:tmax=w p lt 37;owping:fmin=w p lt 1;owping:fmed=w  p lt 7;owping:fmax=w p lt 8,28

iepm-bw.bnl.org,pathchirp,background,pathchirp:pathchirp=w p lt 6  pt 6;
pathchirp:thrumin=w p lt 5 pt 1;pathchirp:thruavg=w p lt 7 pt 1;  pathchirp:thrumax=w p lt 3 pt  1,28
iepm-bw.bnl.org,pathload,background-syn,pathload:thrumin=w p lt  6;pathload:thrumax=w p lt 7,28
iepm-bw.bnl.org,ping,background,ping:max=w p  lt 7 pt 5;ping:avg=w p lt 2 pt 5;ping:min=w p lt 3 pt  5,28
iepm-bw.bnl.org,tlaytcp,background-syn,tlaytcp:tlaytcp=w p lt 6 pt  6;
tlaytcp:rttmax=axes x1y2  w p lt 2 pt 5;tlaytcp:rttavg=axes x1y2 w p lt 3 pt  5;
tlaytcp:rttmin=axes x1y2 w p lt 7 pt  5,28
iepm-bw.bnl.org,traceroute,background,traceroute:numhops=w p lt 6 pt  6,28
iepm-bw.caltech.ul-org,owping,background,owping:tmin=w p lt  3;owping:tmed=w p lt 6;
owping:tmax=w p lt 37;owping:fmin=w p lt 1;owping:fmed=w  p lt 7;owping:fmax=w p lt 8,28

Note that the filename for each type of data has as a suffix a string to indicate what the data is: i.e.,
mtlayctp= multi-stream thrulay
owping=owamp data
pathchirp=pathchirp data
etc.
Now within each file there is a heading (the first line) which indicates which data is in which column.
 

#date          time             tmin       tmed       tmax    fmin       fmed       fmax      tsent      tloss       tdup
terr    tjitter      fsent      floss       fdup       ferr    fjitter       thops                 fhops
06/17/2007 10:35:49         39       39.1       58.9       38.9       39.1       39.2        100          ?          ?
354    0.2        100          0          0           351          0       12_(consistently) 12_(consistently)
06/17/2007 10:40:38       39.1       39.2       62.2       38.8       38.9       39.1        100          ?         ?
?647   0.8        100          0          0          650        0.1       12_(consistently) 12_(consistently)

You may need to refer to the gnuplot guide while reading the following:
Note that on http://www.slac.stanford.edu/comp/net/iepm-bw.slac.stanford.edu/slac_wan_bw_tests.html there is a link called 'gnuplot configuration'. This points to a test that is run nightly to generate the correlations between colors and points in gnuplot. This is run nightly, because if gnuplot is updated, the color correspondence may change.

Let's disect the toolspec for owping:

iepm-bw.bnl.org,owping,background,owping:tmin=w p lt 3;owping:tmed=w p lt 6;owping:tmax=w p lt 37;
owping:fmin=w p lt 1;owping:fmed=w p lt 7;owping:fmax=w p lt 8,28

If the toolspec is active (there is a field in the table for deactivating it which is not shown to be in this command),
 
This spec says for the node iepm-bw.bnl.org, plot the following for the individual and history plots for owping for this node:
1. plot the column 'tmin' 'with points linetype 3' which is encoded as 'w p lt 3', which is a valid short form for gnuplot.
2. overplot the column 'tmed' 'with points linetype 6' which is encoded as 'w p lt 6'.
etc.
Thus the data in the columns tmin, tmed, tmax, fmin,fmed,fmax are overploted on the graph.
 
I will now go on to explain the 'datatoanalyze' field in the monitoring hosts table (http://www.slac.stanford.edu/comp/net/iepm-bw.slac.stanford.edu/monitoring-hosts.html)
Each monitoring host is has a plot specification for the http://www.slac.stanford.edu/comp/net/iepm-bw.slac.stanford.edu/slac_wan_bw_tests.html graphs.It is applied across all target hosts which it monitors. If there is no data for a particular type of test, it is ignored.
Let us look at one entry. (the one for iepm-bw.slac.stanford.edu):

ping:avg=axes x1y2 w i lt 1;ping:min=axes x1y2 w i lt 9;pathchirp:pathchirp=w p
lt 5 pt 1;iperf:iperf=w p lt 7 pt 18;miperf:miperf=w p lt 4 pt
6;tlaytcp:tlaytcp=w p lt 10;pathload:thrumin=w p lt 2;owping:tmin=axes x1y2 w l
lt 10;owping:fmin=axes x1y2 w l lt 4;mtlaytcp:mtlaytcp=w p lt 4 pt 6

This says, for all the nodes, overplot the following on the graph for that node
1. 'ping' data 'avg' with 'axes x1y2 with impulses linetype 1'  encoded in the gnuplot short form 'axes x1y2 w i lt 1'
2. 'ping' data min with 'axes x1y2 with impulses linetype 0' encodes in the gnuplot short form 'axes x1y2 w i lt 9'
3. 'pathchirp' data 'pathchirp' 'with points linetype 5 pointtype 1' encoded as 'w p lt 5 pt 1'
etc.
 Bear in mind that is a particular data type does not exist for a target node, it is ignored.
 
There is a table called 'PLOTSPECS' which enables you to specify other types of plots, such as scatterplots, overplot various data.
See :
http://www.slac.stanford.edu/comp/net/iepm-bw.slac.stanford.edu/html/scatterplots/iepm-bw.bnl.org.html
 for example.
I am not going to go thru this specification now as it follows the previous rules for specifyin the data. However if you have questions. please feel free to ask.

  • No labels