1. 14 Nov, 2002 5 commits
    • Mac Newbold's avatar
      Add the long-awaited check for nodes that have too many lans/links. For · 4f0c3572
      Mac Newbold authored
      now it is just hardcoded to 4, but could be done from the db too. Gives
      errors like this one, from a topo where node2 and node6 each have 5 links:
      
      *** /usr/testbed/devel/newbold/lib/ns2ir/parse.tcl:
          Too many links/LANs to node node2! Maximum is 4.
      *** /usr/testbed/devel/newbold/lib/ns2ir/parse.tcl:
          Too many links/LANs to node node6! Maximum is 4.
      *** /usr/testbed/devel/newbold/bin/batchexp:
          NS Parse failed!
      4f0c3572
    • Mac Newbold's avatar
      Finally, a check for links that want too much bandwidth. Right now it uses · 5eb5c6ed
      Mac Newbold authored
      the somewhat hacky fail-if-they-want-over-100mbps method, but could in the
      future draw the info from the database or something if it ends up being
      necessary.
      
      Setup Failure(255): Output as follows:
      
      *** /usr/testbed/devel/newbold/lib/ns2ir/parse.tcl:
          Bandwidth requested (150000) exceeds maximum of 100000 kbps!
      *** /usr/testbed/devel/newbold/lib/ns2ir/parse.tcl:
          [run] link0 has only a single node. LANs must have at least 2 nodes in them.
      *** /usr/testbed/devel/newbold/bin/batchexp:
          NS Parse failed!
      5eb5c6ed
    • Mac Newbold's avatar
      Lots of changes. · 349db7bf
      Mac Newbold authored
      First, fix up the isup generation code. When a node/OS doesn't send its
      own isups, but is pingable, we need to fork and ping it, and send ISUP
      when it pings. The code was there, but was broken. This fixes it. The one
      time that it may cause errant messages is in modes other than MINIMAL.
      When we get BOOTING, we check if it needs isup generated. If we have to
      ping it, when it pings we send ISUP. This means that if we are really in
      NORMAL mode, we might send ISUP before the node sends REBOOTED (or TBSETUP
      in NORMALv1), and it would look funny. But that case will be really rare,
      since everything that sends REBOOTED or TBSETUP has no reason not to send
      ISUP itself.
      
      Second, after mailbombing myself a couple of times, Kirk and I decided I'd
      better put some throttling in the notification code that stated uses. So
      now it throttles itself and digests the messages if they're sent too close
      together. The first message it gets will get sent immediately. If the next
      one is long enough after that, it sends it immediately too. If a message
      comes too soon after sending one, we queue it up, and send it later
      after enough time has passed. Currently it is set to wait 5 seconds
      between messages, so it will send up to 12 per second, and wait no more
      than 5 seconds before sending a message that is queued up.
      
      (Something similar to this may be a nice thing in the rest of our stuff,
      but it was made a lot easier by the fact that stated already had a polling
      loop in it. Without that, you'd have to use alarms or some other weird
      thing, which would be painful.)
      349db7bf
    • Leigh B. Stoller's avatar
      Minor changes; update the nickname when remote nodes checkin in case · a7c02305
      Leigh B. Stoller authored
      their real hostname changes.
      a7c02305
    • Leigh B. Stoller's avatar
      Change ntpinfo as per Dave's request. · 48629e9c
      Leigh B. Stoller authored
      48629e9c
  2. 13 Nov, 2002 2 commits
  3. 12 Nov, 2002 5 commits
  4. 11 Nov, 2002 1 commit
  5. 10 Nov, 2002 1 commit
  6. 09 Nov, 2002 1 commit
    • Shashi Guruprasad's avatar
      Updated nse.patch,tbnexthop.{cc,h} with all the recent nse changes. · fc580b5a
      Shashi Guruprasad authored
      tbnexthop.{cc,h} now contains setsockopts to install "ipfw fwd" rules.
      
      <netinet/ip_fw.h> has changed from FBSD 4.3 to 4.5 . Because boss has 4.3,
      compiling ipfw code on boss and running it on an experimental
      node doesn't work. Therefore, I now have a cvs checked in local copy of
      the 4.5 version of the file.
      
      nseinput.tcl now finds the CPU cycle speed from /var/run/dmesg.boot and
      passes the info to nse's RT scheduler which keeps track of real time
      using the TSC. The same info can be obtained by PERFMON ioctls but the
      kernel boot time measurement of the cpu cycle speed is more accurate than
      what perfmon can report
      fc580b5a
  7. 08 Nov, 2002 9 commits
  8. 06 Nov, 2002 5 commits
    • Shashi Guruprasad's avatar
      NSE related changes: · 05bc3bd4
      Shashi Guruprasad authored
        - Fixes the routing problem
        - A new type "sim" has been created but not in the DB. node_types and
          nodes remain unchanged. This will change after we figure out how
          to represent in the DB the local multiple virtnodes in one phynode case
          The frontend tb_compat.tcl adds the sim type and ptopgen associates
          a huge number of sim nodes to all local PCs.
        - All simulated nodes go into one pc untill I finish coding the distributed
          nse case. Also, sim nodes go through assign but with an explicit
          "fix-node" directive in the top file. A random free pc is chosen using
          the avail script in assign_wrapper. If we don't fix node it, assign
          maps sim nodes to multiple phy nodes even when a valid all to one
          mapping is possible.
        - Syntax for nse:
      
         $ns make-simulated {
      
             set simnode1 [$ns node]
             set simnode2 [$ns node]
      
         }
         ...
      
         The old syntax
      
         set nsenode [$ns nsenode]
         $nsenode make-simulated {
         }
      
         is deprecated
      
        - All 38 frontend tests in the testsuite pass
      
        - A new table v2pmap has been added to handle multiple virt nodes to
          one phy node mapping. This is used in "tmcc hostnames" currently.
      
        - The phy node that is picked to run nse is loaded with a custom image
          FBSD45-NSE . This can use the default FBSD kernel if there is a mechanism
          to run at 1000HZ, have options IPFIREWALL_FORWARD and PERFMON turned on.
          The image is in the 'testbed' group. Do not delete this image.
      
        - Static routes now adds routes for the case dst == nexthop. The routing
          graph would be disconnected otherwise and I need to traverse this in
          assign_wrapper for nse. On the client side, such a route is filtered out in
          libsetup.pm
      
        - sim nodes are also correctly visualized
      05bc3bd4
    • Mac Newbold's avatar
      Fix up small problem of permissions. We made flest an admin in the testdb, · 09e5437c
      Mac Newbold authored
      but it really should make the user an admin, whoever it is. Non-admins
      were not able to clear out old expts in the testdb properly before.
      09e5437c
    • Shashi Guruprasad's avatar
      Added the v2pmap table. Primary keys: pid,eid,vname . Contains the mapping · c999f4a4
      Shashi Guruprasad authored
      to a node_id. This table is used by tmcc hostnames to get the mapping.
      c999f4a4
    • Mac Newbold's avatar
      Fix duplicate vname problem. Instead of silently picking something else · a1d69682
      Mac Newbold authored
      for them, fail if they try to use the same vname for two nodes in the expt.
      a1d69682
    • Leigh B. Stoller's avatar
      Fix up regex problem that was created when the naming scheme for · 6df13ffe
      Leigh B. Stoller authored
      unnamed links was changed.
      6df13ffe
  9. 05 Nov, 2002 4 commits
  10. 04 Nov, 2002 7 commits