1. 15 Apr, 2004 7 commits
  2. 13 Apr, 2004 4 commits
  3. 12 Apr, 2004 15 commits
    • Leigh Stoller's avatar
      0a559704
    • Mike Hibler's avatar
      Getting back ETIMEDOUT from a socket read should not be fatal to capture. · 76e1528a
      Mike Hibler authored
      Now it is treaded just like ECONNRESET.
      
      Also, don't clobber the read errno with the intermediate sigsetmask call
      (though it should never fail and errno should never be affected)
      
      Change warn() to warning() to avoid conflict with standard BSD library
      routine.  This showed up when statically linking capture.
      76e1528a
    • Leigh Stoller's avatar
    • Mike Hibler's avatar
      update info for Aerospace Corp emulab · d5d27bca
      Mike Hibler authored
      d5d27bca
    • Leigh Stoller's avatar
      Oops, add back something I cut by mistake. · ad178ab3
      Leigh Stoller authored
      ad178ab3
    • Leigh Stoller's avatar
      Initial tutorial for using wireless links. Basically a fast brain · 7c9c072e
      Leigh Stoller authored
      dump. I need to add more stuff though.
      7c9c072e
    • Leigh Stoller's avatar
      Initialize interface_capabilities table from interface_types table; · 49b3b319
      Leigh Stoller authored
      for now I am leaving max_speed slot of interface_types table in place.
      49b3b319
    • Leigh Stoller's avatar
      The core of the wireless support code. · 86155d03
      Leigh Stoller authored
      * ptopgen:
      
         1. Change to using interface_capabilities table to get the default
            speed for an interface type.
      
         2. The wrinkle is that an interface can have multiple speeds,
            depending on the protocol that is requested. In the wireless case the
            table looks like:
      
      	| type             | capkey            | capval               |
      	+------------------+-------------------+----------------------+
      	| ath              | protocols         | 80211a,80211b,80211g |
      	| ath              | 80211a_defspeed   | 54000                |
      	| ath              | 80211b_defspeed   | 11000                |
      	| ath              | 80211g_defspeed   | 54000                |
      
         3. We use the above info to tell us the default speed for links, based
            on the particular protocol.
      
         4. And lastly, create "air" switches for each of 80211a, 80211b, 80211g,
            and specify links from the switches to the nodes that have interfaces
            that support those protocols. At the moment, there is a hardwired
            list of 80211a, 80211b, 80211g in ptopgen, so create 3 new air
            switches and links from each of the nodes to each of the switches.
            Rob says that assign can handle this just fine (using the same
            interface on a node to connect to three different air switches, at
            different speeds).
      
      * assign_wrapper:
      
         1. First off, I had to increase the bogousity factor of how we determine
            that a delay node is required (requires_delay() routine) on a link or
            lan. Using the interface_capabilities table, I determine the default
            speed for each protocol on each interface type.
      
         2. When calling requires_delay() I now the pass the lan so that we can
            get the "protocol" of the link/lan and use that to find the default
            speed. The main reason for all this crud is that if a user specifies
            a bandwidth of 54Mb on a wired ethernet, we want to make sure we
            insert a delay node, but not if the user is using 80211g. As it was,
            delay nodes would be skipped cause there are now nodes with
            interfaces that support those speeds. This change also allows to know
            that a delay node should be inserted on a wireless link, if we ever
            wanted to do something as silly as that!
      
         3. Okay, so now onto the actual wireless support!  Whenever the protocol
            for a lan is not "ethernet" spit out links to fake lan nodes, sorta
            like we used to do with ethernet lans before Rob made all those great
            changes to assign. So, a lan with protocol 80211a will get fake links
            to the 80211a air switch that ptopgen spits out (see above).  We
            currently bypass all delay node processing on wireless lans, and in
            fact we avoid most post-processing (after assign) of wireless lans
            (no vlans, veths, etc). At some point we can bring certain things
            back in (like emulated links) but that will be some time! See
            comments above about ptopgen.
      
         4. Added a section to copy over the virt_lan_settings and
            virt_lan_member_settings to the interface_settings table, for each
            node's interfaces in the mapped experiment. I also make up the ssid
            for the lan, and add the protocol to the settings so that the client
            side knows what it is supposed to do. I also set the acesspoint since
            that requires MAC addresses, and this is easiest place to get and set
            the MAC (all of the nodes in a lan need to know the MAC of the node
            acting as the access point). In the virtual topology, the accesspoint
            is specified as a node name.
      
      * tbsetup/ns2ir:
      
         1. Add tb-set-lan-protocol(lan, protocol) to set the protocol to one of
            ethernet, 80211a, 80211b, 80211g. Defaults to ethernet.
      
         2. Add tb-set-lan-accesspoint(lan, accesspoint) to set the name of the
            access point for a lan. Obviously this makes sense for only wireless
            links; ignored for wired links.
      
         3. Add tb-set-lan-setting(lan, setting, value) to specify a setting that
            applies to the entire lan. At present, these are ignored for wired
            lans. Both setting and value are strings.
      
         4. Add tb-set-node-lan-setting(lan, node, setting, value) to specify a
            setting that applies to a particular node in a lan. At present, these
            are ignored for wired lans. Both setting and value are strings.
      86155d03
    • Leigh Stoller's avatar
    • Leigh Stoller's avatar
      Add a "wireless" link from the Node Status page. · 495e3cee
      Leigh Stoller authored
      Remove isadmin() restriction from floormap pages; at some point I
      assume we make the floormaps publically available.
      
      Make MEB the default argument to the floormap page until such time
      that we need something fancier.
      
      Add a link to the wireless tutorial I am currently throwing up onto
      paper.
      495e3cee
    • Leigh Stoller's avatar
      Minor change to SHOWNODE() routine, which is called from various · f99a377a
      Leigh Stoller authored
      places. Change $short optional argument to a flags argument, and add a
      NOPERM flag, which allows display of a node to people without
      permission to view that node. The display is cut back to node type,
      and a couple of other things that are not private. I also added a
      section on the Interfaces of a node, using the interfaces table for
      the node, joined with the interface_types and interface_capabilities
      tables. This gives more specific information about a node then is
      possible using the generic node_types table.
      f99a377a
    • Leigh Stoller's avatar
      Sanitize page arguments. · 21489966
      Leigh Stoller authored
      21489966
    • Leigh Stoller's avatar
      Add TBvalid_node_id() · 620cdf02
      Leigh Stoller authored
      620cdf02
    • Leigh Stoller's avatar
      Add virt_lan_settings and virt_lan_member_settings to list of tables · c7be9c11
      Leigh Stoller authored
      that can specified in the XML.
      c7be9c11
    • Leigh Stoller's avatar
      Use the real MEB maps we got from someplace. At present, using just · ca0e8a11
      Leigh Stoller authored
      the 3rd and 4th floor maps.
      ca0e8a11
  4. 09 Apr, 2004 12 commits
  5. 08 Apr, 2004 2 commits