- 12 Apr, 2004 13 commits
-
-
Leigh B. Stoller authored
-
Mike Hibler authored
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
dump. I need to add more stuff though.
-
Leigh B. Stoller authored
for now I am leaving max_speed slot of interface_types table in place.
-
Leigh B. 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.
-
Leigh B. Stoller authored
-
Leigh B. 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.
-
Leigh B. 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.
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
that can specified in the XML.
-
Leigh B. Stoller authored
the 3rd and 4th floor maps.
-
- 09 Apr, 2004 12 commits
-
-
Leigh B. Stoller authored
no freebsd support. The primary change is that tmcd now sends down a list of setting to apply to each interface, and that list is turned into a hash table, and provided to rc.config, which passes them along to the machine dependent routine in liblocsetup. Then in the linux version of liblocsetup there is a bunch of new code to configure wireless links using iwconfig and iwpriv, using the settings array. All of this is bound to change once we get more experience with it.
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
mentions you need to restart the event system to fire off the start command again. Currently, you cannot name the startcmd in a tevc command cause its name is unknown. Something to do with how objects are renamed in the parser and that they are not done below top level (inside a subroutine). Not sure how you get around that.
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
there is not default imageid, so it can generate an error!
-
Leigh B. Stoller authored
arbitrary interface settings associated with the virtual part of the topology.
-
Jay Lepreau authored
-
Jay Lepreau authored
Declaring the host is not required. Point to internals slides.
-
Jay Lepreau authored
-
- 08 Apr, 2004 6 commits
-
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
where we do other interface table cleanup).
-
Leigh B. Stoller authored
* Return interface_settings info for the node, across all interfaces for which there is info in the interface_settings table. * Prepend tags; INTERFACE and INTERFACE_SETTINGS to make it possible to tell them apart at the client.
-
Robert Ricci authored
intuit the default value from BOSSNODE .
-
Robert Ricci authored
-
Leigh B. Stoller authored
settings to the nodes when they configure their interfaces. Added primarily for wireless interface support.
-
- 07 Apr, 2004 9 commits
-
-
Leigh B. Stoller authored
not to run linktest.
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
invoked from the RPC server.
-
Leigh B. Stoller authored
down when invoked from the RPC server.
-
Leigh B. Stoller authored
probably not the final form for this stuff, but is fine for initial development of wireless support. tb-set-protocol $lan0 "80211g" tb-set-lan-accesspoint $lan0 $nodew1
-
Leigh B. Stoller authored
an "is_accesspoint" boolean to virt_lans. The former defaults to "ethernet" but can be set to anything (80211a, 80211b, etc) in the NS file. The is_accesspoint is temporary, and simply allows you to set which node is the accesspoint in the NS file. This slot will probably move to another table at some point. Added interface_capabilities table, which is intended to list the capabilities and the default values, for interfaces listed in the interface_types table. This allows a more flexible description of interfaces, expecially wireless devices. Initially, I have seeded the table with just the default protocol (ethernet) and the speed. For example, the fxp: fxp | protocols | ethernet | fxp | ethernet_defspeed | 100000 | As you can see, protocols is plural, and is intended to be a comma separated list. So, for the atheros wireless card: ath | protocols | 80211a,80211b,80211g | ath | 80211a_defspeed | 54000 | ath | 80211b_defspeed | 11000 | ath | 80211g_defspeed | 54000 | I gave up on using the entire row as a primary key; this is just too painful from perl/php/python where hashes are the most popular data structure, and duplicate columns get overwritten.
-
Mike Hibler authored
with every DOS partition. It was only used by NTFS and has been replaced by equally hacky changes to the NTFS library. The benefit of the latter is that it at least works all the time on Linux and all FreeBSD versions.
-
Mike Hibler authored
Add a new interface to the library to enable us to use the whole-disk device rather than having to (figure out and) use a specific slice device.
-
Leigh B. Stoller authored
statement.
-