Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • TimePing:** /afs/slac/package/pinger/timeping.pl
    • Represents the old script to perform ping measurements and store raw data.
    • Stores raw data on nfs at:

      Code Block
      /nfs/slac/g/net/pinger/pinger_mon_data/ping-<YYYY>-<MM>.txt


    • The following files were moved from /nfs/slac/g/net/pinger/pinger_mon_data to /nfs/slac/g/net/pinger/pingerdata/hep/data.unite/pinger_mon_data:

      Code Block
      -rw-rw-r-- 1 pinger iepm      3271 Sep 28  2006 countries.txt
      -rw-r--r-- 1 pinger iepm   5149872 Jan  3  2013 gl-2008
      -rw-r--r-- 1 pinger iepm   1211063 Apr  1  2010 ping-1970-01.txt
      -rw-rw-r-- 1 pinger iepm  99615499 Jan 31  2005 ping-2005-01.txt
      -rw-r--r-- 1 pinger iepm 138793772 Feb 28  2005 ping-2005-02.txt
      -rw-r--r-- 1 pinger iepm 158497470 Mar 31  2005 ping-2005-03.txt
      -rw-r--r-- 1 pinger iepm 155739263 Apr 30  2005 ping-2005-04.txt
      -rw-r--r-- 1 pinger iepm 159409884 May 31  2005 ping-2005-05.txt
      -rw-r--r-- 1 pinger iepm  88631442 Jun 30  2005 ping-2005-06.txt
      -rw-r--r-- 1 pinger iepm 174529497 Jul 31  2005 ping-2005-07.txt
      -rw-r--r-- 1 pinger iepm 174095994 Aug 31  2005 ping-2005-08.txt
      -rw-r--r-- 1 pinger iepm 168049168 Sep 30  2005 ping-2005-09.txt
      -rw-r--r-- 1 pinger iepm 176094644 Oct 31  2005 ping-2005-10.txt
      -rw-r--r-- 1 pinger iepm 176201647 Nov 30  2005 ping-2005-11.txt
      -rw-r--r-- 1 pinger iepm 180734057 Dec 31  2005 ping-2005-12.txt
      -rw-r--r-- 1 pinger iepm 181186778 Jan 31  2006 ping-2006-01.txt
      -rw-r--r-- 1 pinger iepm 162866844 Feb 28  2006 ping-2006-02.txt
      -rw-r--r-- 1 pinger iepm 180516079 Mar 31  2006 ping-2006-03.txt
      -rw-r--r-- 1 pinger iepm 173759442 Apr 30  2006 ping-2006-04.txt
      -rw-r--r-- 1 pinger iepm 181055493 May 31  2006 ping-2006-05.txt
      -rw-r--r-- 1 pinger iepm 179011290 Jun 30  2006 ping-2006-06.txt
      -rw-r--r-- 1 pinger iepm 174613487 Jul 31  2006 ping-2006-07.txt
      -rw-r--r-- 1 pinger iepm 182841805 Aug 31  2006 ping-2006-08.txt
      -rw-rw-r-- 1 pinger iepm 180770346 Sep 30  2006 ping-2006-09.txt
      -rw-r--r-- 1 pinger iepm 189730786 Oct 31  2006 ping-2006-10.txt
      -rw-r--r-- 1 pinger iepm 220799957 Nov 30  2006 ping-2006-11.txt
      -rw-r--r-- 1 pinger iepm 229571478 Dec 31  2006 ping-2006-12.txt
      -rw-r--r-- 1 pinger iepm 227199839 Jan 31  2007 ping-2007-01.txt
      -rw-r--r-- 1 pinger iepm 214317728 Feb 28  2007 ping-2007-02.txt
      -rw-r--r-- 1 pinger iepm 245744520 Mar 31  2007 ping-2007-03.txt
      -rw-r--r-- 1 pinger iepm 238642470 Apr 30  2007 ping-2007-04.txt
      -rw-r--r-- 1 pinger iepm 243478362 May 31  2007 ping-2007-05.txt
      -rw-r--r-- 1 pinger iepm 240197802 Jun 30  2007 ping-2007-06.txt
      -rw-r--r-- 1 pinger iepm 240797168 Jul 31  2007 ping-2007-07.txt
      -rw-r--r-- 1 pinger iepm 229320024 Aug 31  2007 ping-2007-08.txt
      -rw-r--r-- 1 pinger iepm 223024643 Sep 30  2007 ping-2007-09.txt
      -rw-r--r-- 1 pinger iepm 237230240 Oct 31  2007 ping-2007-10.txt
      -rw-r--r-- 1 pinger iepm 222792696 Nov 30  2007 ping-2007-11.txt
      -rw-r--r-- 1 pinger iepm 230369872 Dec 31  2007 ping-2007-12.txt
      -rw-r--r-- 1 pinger iepm 280679672 Jan 31  2008 ping-2008-01.txt
      -rw-r--r-- 1 pinger iepm 268660800 Feb 29  2008 ping-2008-02.txt
      -rw-r--r-- 1 pinger iepm 284800144 Mar 31  2008 ping-2008-03.txt
      -rw-r--r-- 1 pinger iepm 254738571 Apr 30  2008 ping-2008-04.txt
      -rw-r--r-- 1 pinger iepm 283045082 May 31  2008 ping-2008-05.txt
      -rw-r--r-- 1 pinger iepm 253567530 Jun 30  2008 ping-2008-06.txt
      -rw-r--r-- 1 pinger iepm 277043096 Jul 31  2008 ping-2008-07.txt
      -rw-r--r-- 1 pinger iepm 265867437 Aug 31  2008 ping-2008-08.txt
      -rw-r--r-- 1 pinger iepm 272576870 Sep 30  2008 ping-2008-09.txt
      -rw-r--r-- 1 pinger iepm 290541757 Oct 31  2008 ping-2008-10.txt
      -rw-r--r-- 1 pinger iepm 290687870 Nov 30  2008 ping-2008-11.txt
      -rw-r--r-- 1 pinger iepm 303514542 Dec 31  2008 ping-2008-12.txt
      -rw-r--r-- 1 pinger iepm 302877695 Jan 31  2009 ping-2009-01.txt
      -rw-r--r-- 1 pinger iepm 273710166 Feb 28  2009 ping-2009-02.txt
      -rw-r--r-- 1 pinger iepm 306043767 Mar 31  2009 ping-2009-03.txt
      -rw-r--r-- 1 pinger iepm 293984550 Apr 30  2009 ping-2009-04.txt
      -rw-r--r-- 1 pinger iepm 307293039 May 31  2009 ping-2009-05.txt
      -rw-r--r-- 1 pinger iepm 297975758 Jun 30  2009 ping-2009-06.txt
      -rw-r--r-- 1 pinger iepm 315918646 Jul 31  2009 ping-2009-07.txt
      -rw-r--r-- 1 pinger iepm 321719374 Aug 31  2009 ping-2009-08.txt
      -rw-r--r-- 1 pinger iepm 302208942 Sep 30  2009 ping-2009-09.txt
      -rw-r--r-- 1 pinger iepm  85141878 Oct 15  2009 ping-2009-10-before-merge.txt
      -rw-r--r-- 1 pinger iepm 139176298 Oct 15  2009 ping-2009-10-merged.txt
      -rw-r--r-- 1 pinger iepm 289926170 Oct 31  2009 ping-2009-10.txt
      -rw-r--r-- 1 pinger iepm  76875864 Oct 14  2009 ping-2009-10.txt.bak
      -rw-r--r-- 1 pinger iepm 286196134 Nov 30  2009 ping-2009-11.txt
      -rw-r--r-- 1 pinger iepm 294000614 Dec 31  2009 ping-2009-12.txt
      -rw-r--r-- 1 pinger iepm 275647748 Jan 31  2010 ping-2010-01.txt
      -rw-r--r-- 1 pinger iepm 260805183 Feb 28  2010 ping-2010-02.txt
      -rw-r--r-- 1 pinger iepm 295723517 Mar 31  2010 ping-2010-03.txt
      -rw-r--r-- 1 pinger iepm  32801520 Apr  4  2010 ping-2010-04.txt
      -rw-rw-r-- 1 pinger iepm    126894 Sep 28  2006 pingtable.txt

       

...

  • Check the data has been gathered:
  • Analyze
    • There is a group of analysis scripts, that pick up zipped data; do their analysis, aggregate data and prepare web reports.
      • Note that to be included in the analyzed data the host must be in NODEDETAILS.
    • The first script to be executed is wrap-analyze-hourly.pl (which is executed by calling the wrapper analyze-all.pl --date 1days from the trscronjob) which takes as input data the output of getdata.pl (raw data) and from this aggregates the data to by day and writes the latest  to the /nfs/slac/g/net/pinger/pingerreports/hep/<metric>/ directory with the file name <metric><size><by><yyyy><mm>-<dd>.txt.gz., this is referred to as the hourly analyzed data. The wrap-analyze-hourly.pl script is run daily from the trscrontab on pinger and by default analyzes the data gathered for yesterday. 
      The output appears as:

      Code Block
      cottrell@pinger $ head /tmp/minimum_rtt-100-by-node-2006-09-28.txt 
      0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 
      pinger.slac.stanford.edu manila.global.net.pg 547.877 548.021 547.934 548.611 548.680 548.069 549.023 548.124 548.687 547.573 548.639 549.181 547.998 548.302 547.858 547.464 548.470 548.251 547.849 547.708 548.463 547.473 547.651 547.732 pinger.slac.stanford.edu manila.global.net.pg
      pinger.slac.stanford.edu lobelia.physics.wisc.edu 61.089 60.958 61.037 61.332 60.958 61.262 61.073 61.093 61.040 61.086 60.974 60.979 60.956 61.070 60.942 61.035 61.994 61.022 60.927 60.957 61.091 61.009 61.024 60.974 pinger.slac.stanford.edu lobelia.physics.wisc.edu

      The fikes names appear as:

      Code Block
      /nfs/slac/g/net/pinger/pingerreports/hep/minimum_rtt/minimum_rtt-100-by-node-2006-09-28.txt.gz
      

      By default the above file is created once thus the directory appears as:

      Code Block
      57cottrell@pinger:~>ls -l /nfs/slac/g/net/pinger/pingerreports/hep/minimum_rtt/minimum_rtt-100-by-node-2011-05*
      -rw-rw-r--  1 pinger   iepm 492144 May  2 02:17 /nfs/slac/g/net/pinger/pingerreports/hep/minimum_rtt/minimum_rtt-100-by-node-2011-05-01.txt.gz
      -rw-rw-r--  1 pinger   iepm 545968 May  3 02:17 /nfs/slac/g/net/pinger/pingerreports/hep/minimum_rtt/minimum_rtt-100-by-node-2011-05-02.txt.gz
      -rw-rw-r--  1 pinger   iepm 561661 May  4 02:17 /nfs/slac/g/net/pinger/pingerreports/hep/minimum_rtt/minimum_rtt-100-by-node-2011-05-03.txt.gz
      -rw-rw-r--  1 pinger   iepm 566550 May  5 02:17 /nfs/slac/g/net/pinger/pingerreports/hep/minimum_rtt/minimum_rtt-100-by-node-2011-05-04.txt.gz
      -rw-rw-r--  1 pinger   iepm 537127 May  6 02:17 /nfs/slac/g/net/pinger/pingerreports/hep/minimum_rtt/minimum_rtt-100-by-node-2011-05-05.txt.gz
      -rw-rw-r--  1 pinger   iepm 538830 May  7 02:17 /nfs/slac/g/net/pinger/pingerreports/hep/minimum_rtt/minimum_rtt-100-by-node-2011-05-06.txt.gz
      -rw-rw-r--  1 pinger   iepm 488360 May  8 02:17 /nfs/slac/g/net/pinger/pingerreports/hep/minimum_rtt/minimum_rtt-100-by-node-2011-05-07.txt.gz
      -rw-rw-r--  1 pinger   iepm 499020 May  9 02:17 /nfs/slac/g/net/pinger/pingerreports/hep/minimum_rtt/minimum_rtt-100-by-node-2011-05-08.txt.gz
      -rw-rw-r--  1 pinger   iepm 563840 May 10 02:17 /nfs/slac/g/net/pinger/pingerreports/hep/minimum_rtt/minimum_rtt-100-by-node-2011-05-09.txt.gz
      -rw-rw-r--  1 pinger   iepm 583454 May 11 02:17 /nfs/slac/g/net/pinger/pingerreports/hep/minimum_rtt/minimum_rtt-100-by-node-2011-05-10.txt.gz
      -rw-rw-r--  1 cottrell iepm 577949 May 12 22:08 /nfs/slac/g/net/pinger/pingerreports/hep/minimum_rtt/minimum_rtt-100-by-node-2011-05-11.txt.gz
      -rw-rw-r--  1 cottrell iepm    102 May 12 17:25 /nfs/slac/g/net/pinger/pingerreports/hep/minimum_rtt/minimum_rtt-100-by-node-2011-05-12.txt.gz
      

      Example output format. Following the 1st line in the file there is 1 line like the following per day/per host pair.  Between the initial and final src_name and tgt_name tokens there are 24 tokens one for each hour of the day, missing data is identified by a dot followed by a space (. ), e.g.:

      Code Block
      icfamon.dl.ac.uk lns62.lns.cornell.edu 108.871 . . . . . . . . 108.892 . . . . . . . . . . . . . 109.620 icfamon.dl.ac.uk lns62.lns.cornell.edu
      


      The first line in the file contains a label for each of the time slots (e.g. hours):

      Code Block
      0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23


      Example output filename for the minimum_rtt metric:

    • The remaining analyze scripts (wrap-analyze-daily.pl, wrap-analyze-monthly.pl, wrap-analyze-allmonths.pl, and wrap-analyze-allyears.pl) take as input the data from wrap-analyze-hourly.pl, wrap-analyze-daily.pl, and wrap-analyze-allmonths.pl and create files of the form:  

      Code Block
      /nfs/slac/g/net/pinger/pingerreports/hep/<metric>-<size>-by-<site|node>(-<YYYY>?)(-<mm>?)(-<dd>?).txt.gz
      /nfs/slac/g/net/pinger/pingerreports/hep/<metric>-<size>-by-<site|node>-<60|120|365>days.txt.gz
      /nfs/slac/g/net/pinger/pingerreports/hep/<metric>-<size>-by-<site|node>-<allmonths|allyears>.txt.gz
      


    • There are ~ 16 metrics:

      <option value="MOS">Mean Opinion Score</option>
      <option value="alpha">Directivity</option>
      <option value="average_rtt" selected>Average Round Trip Time</option>
      <option value="conditional_loss_probability">Conditional Loss Probability</option>
      <option value="duplicate_packets">Duplicate Packets</option>
      <option value="ipdv">Inter-Packet Delay Variation</option>
      <option value="iqr">Inter-Quartile Range</option>
      <option value="maximum_rtt">Maximum Round Trip Time</option>
      <option value="minimum_packet_loss">Minimum Packet Loss</option>
      <option value="minimum_rtt">Minimum Round Trip Time</option>
      <option value="out_of_order_packets">Out of Order Packets</option>
      <option value="packet_loss">Packet Loss</option>
      <option value="throughput">TCP Throughput (kbits/s)</option>
      <option value="unpredictability">Ping Unpredictability</option>
      <option value="unreachability">Ping Unreachability</option>
      <option value="zero_packet_loss_frequency">Zero Packet Loss Frequency</option>

      Information on these can be found at http://www.slac.stanford.edu/comp/net/wan-mon/tutorial.html. 


    • More information can be found on running getdata.pl and the analyze scripts to recover missing data.
  • PRM
    • /afs/slac/package/pinger/prm/prm.pl
    • The script prm.pl, is used to create csv files for the analyzed data which can then be used by PingER motion charts or PingER Executive Plots.
    • The script requires a configuration file, which contains entries for all the reports prm should create. These entries are of the form:

      Code Block
      <metric name>    <monitoring site>    <country||continent>    <tick>    (<filter>?)


    • It gets its data from pingtable.pl either by calling it locally or by accessing it via the web.
    • The reports created by prm are available online.
    • The reports are used by the metric motion plots, the metric maps and the executive plots.
    •   An example of the output is seen below:

      allyearly,?,1998,1999,2000,2001,2002,2003,2004,2005,2006,2007,2008,2009,2010

      EDU.SLAC.STANFORD.N3-to-Afghanistan,.,.,.,.,.,.,.,.,.,.,12.504,4.481,9.257,5.284

      EDU.SLAC.STANFORD.N3-to-Albania,.,.,.,.,.,.,.,.,.,.,.,4.949,7.133,4.590

       later it is atomically copied to files in the permanent directory

      A period(.) means there was no data.

      There is a directory with lots of these analyses, see https://www-iepm.slac.stanford.edu/pinger/prmout/

Order of running jobs in trscrontab

 

Code Block
##############Basic PingER files scripts follow ######################
#Update nodes.cf (Perl dump of Guthrie config) from the NODEDETAIL Guthrie database, add by Cottrell 1/31/07 Though node.pl is called from runall.pl, runall.pl is not called until 5am, so it is updated here first to be sure.It takes about 3 seconds to run
pinger 30 0,6,12,18 * * * /afs/slac/package/pinger/guthrie/node.pl -o > /afs/slac/package/pinger/nodes.cf  #Takes about 30 secs
# Create the offsite.nodes list of nodes to ping from Guthrie NODEDETAILS database, add by Cottrell 1/3/2107 takes ~25 minutes
# The following files are created:
# /afs/slac.stanford.edu/www/comp/net/mon/offsite.nodes #txt file of all node, format: name address #comment
# /afs/slac.stanford.edu/g/www/www-iepm/pinger/beacons.txt #txt file of Beacons
# /afs/slac.stanford.edu/g/www/www-iepm/pinger/pinger.xml #xml file for non SLAC MA
# /afs/slac.stanford.edu/package/pinger/pinger2/share/pinger/pinger.xml  #xml file for SLAC MA
lnxcron 00 23 * * * /afs/slac/package/pinger/write_offsitenodes.pl > /afs/slac/g/www/www-iepm/pinger/host-warnings.txt 2>&1 #takes ~15  minutes on Pinger
#--------------Normal complete set for getdata.pl----------------------
pinger;200 32 1 * * * /afs/slac/package/pinger/getdata.pl > /afs/slac/g/www/www-iepm/pinger/slaconly/getdata.err #Takes ~20 minutes 7/31/2019
#Minimal subset is /afs/slac/package/pinger/getdata_all.pl -h pinger.slac.stanford.edu #Takes < 1 minute for pinger.slac.stanford.edu
#-----------------analyze-hourly.pl runs first for both 100B & 1000B pings, by-host, by site--------------------------
lnxcron;120 55 2 * * * /afs/slac/package/pinger/analysis/analyze-all.pl --date 1days #Takes 25:14 10/20/2011 (55 mins 9/21/2011, 70 minutes 5/11/2018)
#-----------------analyze-daily-------------------------------------------
pinger;300 30 4 * * * /afs/slac/package/pinger/analysis/wrap-analyze-daily.pl --basedir /nfs/slac/g/net/pinger --use/metric --dataset hep # Takes ~ 5 hours for whole month on pinger 11/10/2012
#------------------analyze-monthly.pl for defaults by-node, size=100B takes about 60 minutes--------------
lnxcron 12 10 * * * /usr/local/bin/bsub -W 200 -o /dev/null -q xxl /afs/slac/package/pinger/analysis/wrap-analyze-monthly.pl --basedir /nfs/slac/g/net/pinger --usemetric --dataset hep > /dev/null #Takes about 55mins 9/19/2011, 61 mins 10/9/2019 on pinger or 7 mins on rhel6 11/13/2011.
#------------------sites-per-country---------------------------------------
pinger 00 09 * * * /afs/slac/package/pinger/sites-per-country.pl #Takes anout 10 minutes, run after analyze monthly

...

/usr/local/share/pinger/ is accessed by:

 


  • ping_data.pl - the script is called from getadata.pl as the remote MA's web server interface to get data from a remote MA.  The use of /usr/local/share/pinger is only used by non SLAC MAs. It is not needed in the pinger.slac.stanford.edu MA.

...