1. 24 Sep, 2012 1 commit
    • Eric Eide's avatar
      Replace license symbols with {{{ }}}-enclosed license blocks. · 6df609a9
      Eric Eide authored
      This commit is intended to makes the license status of Emulab and
      ProtoGENI source files more clear.  It replaces license symbols like
      "EMULAB-COPYRIGHT" and "GENIPUBLIC-COPYRIGHT" with {{{ }}}-delimited
      blocks that contain actual license statements.
      This change was driven by the fact that today, most people acquire and
      track Emulab and ProtoGENI sources via git.
      Before the Emulab source code was kept in git, the Flux Research Group
      at the University of Utah would roll distributions by making tar
      files.  As part of that process, the Flux Group would replace the
      license symbols in the source files with actual license statements.
      When the Flux Group moved to git, people outside of the group started
      to see the source files with the "unexpanded" symbols.  This meant
      that people acquired source files without actual license statements in
      them.  All the relevant files had Utah *copyright* statements in them,
      but without the expanded *license* statements, the licensing status of
      the source files was unclear.
      This commit is intended to clear up that confusion.
      Most Utah-copyrighted files in the Emulab source tree are distributed
      under the terms of the Affero GNU General Public License, version 3
      Most Utah-copyrighted files related to ProtoGENI are distributed under
      the terms of the GENI Public License, which is a BSD-like open-source
      Some Utah-copyrighted files in the Emulab source tree are distributed
      under the terms of the GNU Lesser General Public License, version 2.1
  2. 09 Feb, 2008 1 commit
    • Dan Gebhardt's avatar
      Some very basic infrastructure for generalized tools was added. · 639758e6
      Dan Gebhardt authored
      Some parts very "hacky", lots of XXX / TODOs.
      BARELY tested!!!! Don't use on the production system yet.
      Need to verify that things didn't break, especially with the automanager,
      the bgmon.pl "outage detection stuff", etc...
      See code's todos and also the file
      At this point:
       - mangerclient & automanagerclient did not change.
       - The manager, when a probe request is received, looks at the DB table
         "tool_spec" to retrieve the proper wrapperpath, formal parameter list, etc..
       - The manager assembles a message and sends it out to the appropriate
         path probers, which operate on the request as they have been
         (no major internal changes to the path probers).
       - The path probers call the toolwrapper to run the tests
       - The toolwrappers return a canonical result for that type of metric.
       - The path probers send the result and the actual parameters used by the
         tool to the data collector.
       - The data collector uses the toolname and actual parameters to get an
         idx number. This idx is stored in the "measured_by" field of this
         measurement's entry in the "pair_data" table.
  3. 07 Feb, 2008 1 commit
    • Dan Gebhardt's avatar
      Initial changes to support tool generalization. All command-line · caa4023a
      Dan Gebhardt authored
      arguments and result parsing handled by separate application wrappers.
      Currently fping and iperf supported.
      Not fully functional at this point: user interface needs extending
      to support the generalization, as well as getting the results back
      to "opsrecv".
      Also merged some of Mike's changes to allow for "private" managers
      to use during testing.
  4. 02 Feb, 2008 1 commit
    • Dan Gebhardt's avatar
      Checking in Mike's changes: · 322dbb59
      Dan Gebhardt authored
      - latency measurements under 2 second intervals now operate in "continuous"
        mode: a single "ping" process runs per destination, versus the "normal"
        approach of forking a new fping process for each measurement instance.
      - Note, that I found a bug which is not fixed in this checkin: if a latency
        test is running in continuous mode and another latency measurement request
        is received with a shorter interval, the "continuous" ping process is not
        re-initialized with the new, shorter interval.
  5. 26 Jun, 2007 1 commit
    • Sachin Goyal's avatar
      · 9b756cf8
      Sachin Goyal authored
      Added randomness for initial starting of bw probes scheduled by
  6. 12 Jan, 2007 1 commit
  7. 01 Dec, 2006 2 commits
  8. 06 Oct, 2006 1 commit
    • Dan Gebhardt's avatar
      Improved outage detection. New state after "normal", called "lossCheck". · eba8aa61
      Dan Gebhardt authored
      Run pings 4/second for 4 seconds, and measure loss at end. If loss is
      100%, go onto highFreq state, and rest. If not 100%, go back to "normal"
      state, but run latency tests at 10 sec periods for 2 minutes.
      The result of the "lossCheck" is sent as a measurement result back to ops,
      as either "lossy" or "down".
  9. 05 Oct, 2006 1 commit
    • Dan Gebhardt's avatar
      - Added measurement rate adjustment when a path outage occurs (ping error). · 1b6b1337
      Dan Gebhardt authored
        Adjustment done with a state machine, described below. Time timeout on
        'fping' is proportional to the desired testing rate while in this
        "outage mode".
      - Bugfixes for running in an E-lab exp
      state transitions
      CurrentState   Input                 NextState
      normal         gotErr&PrevSucc       highFreq
                     else                  normal
      highFreq       <60sec&ERR            highFreq
                     >60sec&ERR            medFreq
                     SUCCESS               outageEnd
      medFreq        <10min&ERR            medFreq
                     >10min&ERR            lowFreq
                     SUCCESS               outageEnd
      lowFreq        ERR                   lowFreq
                     SUCCESS               outageEnd
      outageEnd      <120sec&SUCCESS       outageEnd
                     >120sec&SUCCESS       normal
                     ERR                   highFreq
  10. 02 Oct, 2006 1 commit
  11. 28 Sep, 2006 1 commit
    • Dan Gebhardt's avatar
      First update after an architectural change: · 53fcb773
      Dan Gebhardt authored
      - managerclients send their measurement request commands to the manager
        through the event system.
      - the automanagerclient sends its measurement requests to the manager
        using TCP.
      - The manager is the only entity to send measurement requests to the bgmons
        running on the nodes.
      - A queuing system on each bgmon orders requests based on test frequency,
        so that the fastest frequncy measurement is used.
  12. 25 Sep, 2006 1 commit
  13. 05 Sep, 2006 1 commit
  14. 29 Aug, 2006 1 commit
  15. 09 Aug, 2006 1 commit
  16. 25 Jul, 2006 1 commit
  17. 07 Jul, 2006 1 commit
  18. 16 Jun, 2006 1 commit
  19. 15 Jun, 2006 1 commit
  20. 06 Jun, 2006 1 commit
  21. 24 May, 2006 1 commit
  22. 22 May, 2006 1 commit
  23. 24 Apr, 2006 1 commit
  24. 23 Apr, 2006 2 commits
    • Dan Gebhardt's avatar
      Added a 60 second timeout to the ping exec. · a9bc92b5
      Dan Gebhardt authored
      Added ping error handling: timeout, ttl exceeded, and unknown.
       Values returned to ops are negative numbers. The meanings of these
       is listed in the top section of bgmon.pl
      Note, that these changes have not been tested but were not complex.
      testing is a definite TODO.
    • Kirk Webb's avatar
      · 74ef74d0
      Kirk Webb authored
      Commit the option I added to runbgmon/bgmon.pl that allows you to specify
      which port iperf is to use (-i <port>).  Also fix a minor issue with latency
      and bandwidth period option parsing.
  25. 21 Apr, 2006 2 commits
    • Kirk Webb's avatar
      · 910eeb4c
      Kirk Webb authored
      Changes to bgmon and friends to allow specification of an alternate experiment
      to listen/send with (expt event field).  This defaults to "__none".  I also
      put in options for specifying bandwidth and latency periods, and generally
      fixed up option parsing.
      The runbgmon script has also been changed to autodetect the pid/eid and pass
      this to bgmon.  You can override this with the "-e" switch.
    • Leigh Stoller's avatar
      Some reliability changes. · de676b89
      Leigh Stoller authored
      * opsrecv sends an ack back to bgmon for each packet it receives.
      * Rework caching code a bit, and rearrange slightly to deal with acks.
      Note that opsrecv does not deal with duplicates yet ... still thinking
      about that, but it actually does not matter too much if the info gets
      duplicated in the DP; multiple entries with the same data and the same
      timestamp *should* be harmless.
  26. 20 Apr, 2006 2 commits
  27. 05 Apr, 2006 1 commit
  28. 14 Mar, 2006 1 commit