1. 23 Aug, 2017 1 commit
  2. 18 Aug, 2017 1 commit
  3. 01 Aug, 2017 1 commit
  4. 31 May, 2017 1 commit
  5. 22 Feb, 2016 1 commit
  6. 11 Jul, 2015 1 commit
  7. 15 Jun, 2015 1 commit
  8. 11 Sep, 2014 2 commits
  9. 28 Jul, 2014 1 commit
  10. 03 Mar, 2014 1 commit
  11. 17 Sep, 2013 1 commit
  12. 05 Sep, 2013 1 commit
    • Leigh Stoller's avatar
      Add option to check for and prune stale vlans from switch fabric. · 77f31539
      Leigh Stoller authored
      Run as follows:
      
      boss> wap perl snmpit_test --prunestalevlans --impotent
      
      which will tell you about them. Remove the --impotent option to
      actually remove them.
      
      Only numbered lans are considered; ones that derive from entries in
      the lans table. Named vlans are skipped since those are generally
      created by hand (often via the switch CLI).
      
      Caveat; vlans left on trunk links are still a bit of problem since
      listvlans returns the other side of the trunk. Needs to be fixed.
      77f31539
  13. 30 Aug, 2013 1 commit
  14. 28 Aug, 2013 2 commits
  15. 27 Aug, 2013 1 commit
  16. 23 Apr, 2013 1 commit
  17. 22 Mar, 2013 1 commit
  18. 25 Feb, 2013 1 commit
  19. 22 Jan, 2013 1 commit
  20. 03 Jan, 2013 1 commit
  21. 02 Jan, 2013 1 commit
  22. 18 Dec, 2012 1 commit
  23. 17 Dec, 2012 1 commit
  24. 28 Nov, 2012 1 commit
    • Leigh Stoller's avatar
      Fix a bug I introduced a couple of months ago that was causing · b2322b88
      Leigh Stoller authored
      swapmod to leave behind vlans on the switch. As a side effect,
      add a "class" field to the vlans table so that we can determine if a
      stale vlan is a control or experimental vlan (since we now support
      building experimental vlans on the control stack, so the stack no
      longer tells us what kind of vlan it is).
      b2322b88
  25. 06 Nov, 2012 1 commit
  26. 24 Oct, 2012 1 commit
  27. 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
      (AGPLv3).
      
      Most Utah-copyrighted files related to ProtoGENI are distributed under
      the terms of the GENI Public License, which is a BSD-like open-source
      license.
      
      Some Utah-copyrighted files in the Emulab source tree are distributed
      under the terms of the GNU Lesser General Public License, version 2.1
      (LGPL).
      6df609a9
  28. 27 Aug, 2012 2 commits
    • Leigh Stoller's avatar
      Add lan table locking to assist with avoiding race conditions when · de0c1000
      Leigh Stoller authored
      operating on shared lans.
      de0c1000
    • Leigh Stoller's avatar
      Add support for experimental networks on the control network. · df048b11
      Leigh Stoller authored
      So what if your testbed has a control network but no experimental
      network? In the past you were SOL, but with this commit you can now
      create links and lans on the control network that look just like
      an experimental network link/lan.
      
      To make this work, ptopgen sports a new option (-C) that will put the
      control network links and wires and switches into the ptop file.
      
      libvtop generally operates as normal, but need to arrange for the
      physical ports to be put into dual tag/trunk mode, where the native
      vlan is the Control network. This is done with by setting attributes
      on the lan table entry that indicate dual and what to use for the
      native vlan. snmpit looks for these attributes.
      
      There are a couple of places that use the stack name (Control or
      Experiment) to determine if a vlan is control or experimental. This is
      not longer truu, and so need to use an attribute in the lan table
      entry. 
      
      The last bit of the puzzle is that snmpit has to be careful when
      disabling trunking on these ports. When this happens, all vlans are
      cleard from the ports (by the device layer), including the Control
      network itself, which would make the node unreachable. I had to add
      some special cases to watch for that, and return the ports to the
      control network.
      
      To turn this on, create a ControlNetVlans and enable it. The mapper
      looks for this and passes the -C argument to ptopgen.
      
      Nothing special in the NS file, except you have to turn on vlan
      encapsulation; tb-set-vlan-emulation vlan
      
      No delay nodes, but linkdelays work okay. Works for openvz containers
      as well.
      df048b11
  29. 03 Aug, 2012 1 commit
  30. 17 Jul, 2012 1 commit
  31. 11 Apr, 2012 1 commit
    • Leigh Stoller's avatar
      So this commit allows a vlan to be "shared" bewteen experiments. By · dae29101
      Leigh Stoller authored
      shared, I mean that an experiment can request that a port be put into
      a vlan belonging to another experiment. This started out as a hack to
      support openflow enabled vlans in Geni, but then I got a request to
      make it a little more general purpose. You all know how that goes.
      
      Okay, say you have an experiment E1 in some project and that
      experiment has a link or lan call "lan0". You want other experiments
      to be able to stick ports in that vlan. On boss, you would do this
      after E1 is swapped in:
      
      boss> wap sharevlan -o testbed,E1 lan0 mysharedlan
      
      The -o option says to make the vlan open to anyone; without that
      option, only admins can swap in an experiment that requests a port in
      lan0.  The token "mysharedlan" is just a level of indirection for the
      NS file (or rspec).
      
      Next you create a new experiment E2, and in your NS file:
      
      	$ns make-portinvlan $n1 "mysharedlan"
      
      which says to create a lan with a interface on node n1, in the vlan
      named by the token mysharedlan. The token keeps specific pid/eids out
      of the NS file. 
      
      When E2 is swapped in, assign does its thing, and the selected port is
      added to the members list for lan0 in testbed,E1 and then we call
      snmpit with the syncvlansfromtables (-X) option to get the port added.
      
      When E2 is swapped out, we undo the members list and call snmpit with
      the -X option again.
      
      The access issue is a bit of hack of course (open or admins) but I did
      not want to invent a new permission mechanism (yet).
      
      And of course, this is still a work in progress.
      dae29101
  32. 30 Nov, 2011 1 commit
  33. 19 Oct, 2011 1 commit
  34. 07 Oct, 2011 1 commit
  35. 14 Sep, 2011 1 commit
  36. 05 Jul, 2011 2 commits