- Aug 06, 2003
-
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
their per-node batch command jobs. Termination of batch jobs does not happen until all nodes have reported status.
-
- Aug 05, 2003
-
-
Mike Hibler authored
-
Leigh B. Stoller authored
-
Kirk Webb authored
on the Emulab web server. Some notes: 1) Public user web directories are now disabled - links from above the DocumentRoot to user devel trees must now be used. 2) Internal access exceptions to production and devel directories are specified for the testbed root dir, and inherited by upper directories. - Simplifies configuration complextity 3) External access to system (e.g., / /usr /var, etc) are disallowed now - Previously, symlinks could allow access to system directories. - Individual exceptions must be introducted when access to a specific directory is required.
-
Mac Newbold authored
-
Leigh B. Stoller authored
projects during debugging.
-
Leigh B. Stoller authored
has a bunch of data structure hacking in an attempt to bring some sanity to the code. Still a long way to go ...
-
Leigh B. Stoller authored
short. Sheesh.
-
Leigh B. Stoller authored
* Parser: Added new tb command to set the name of the sync server: tb-set-sync-server <node> This initializes the sync_server slot of the experiment entry to the *vname* of the node that should run the sync server for that experiment. In other words, the sync server is per-experiment, runs on a node in the experiment, and the user gets to chose which node it runs on. * tmcd and client side setup. Added new syncserver command which returns the name of the syncserver and whether the requesting node is the lucky one to run the daemon: SYNCSERVER SERVER='nodeG.syncserver.testbed.emulab.net' ISSERVER=1 The name of the syncserver is written to /var/emulab/boot/syncserver on the nodes so that clients can easily figure out where the server is. Aside: The ready bits are now ignored (no DB accesses are made) for virtual nodes; they are forced to use the new sync server. * New os/syncd directory containing the daemon and the client. The daemon is pretty simple. It waits for TCP (and UDP, although that path is not complete yet) connections, and reads in a little structure that gives the name of the "barrier" to wait for, and an optional count of clients in the group (this would be used by the "master" who initializes barriers for clients). The socket is saved (no reply is made, so the client is blocked) until the count reaches zero. Then all clients are released by writting back to the sockets, and the sockets are closed. Obviously, the number of clients is limited by the numbed of FDs (open sockets), hence the need for a UDP variant, but that will take more work. The client has a simple command line interface: usage: emulab-sync [options] -n <name> Optional barrier name; must be less than 64 bytes long -d Turn on debugging -s server Specify a sync server to connect to -p portnum Specify a port number to connect to -i count Initialize named barrier to count waiters -u Use UDP instead of TCP The client figures out the server by looking for the file created above by libsetup (/var/emulab/boot/syncserver). If you do not specify a barrier "name", it uses an internal default. Yes, the server can handle multiple barriers (differently named of course) at once (non-overlapping clients obviously). Clients can wait before a barrier in "initialized." The count on the barrier just goes negative until someone initializes the barrier using the -i option, which increments the count by the count. Therefore, the master does not have to arrange to get there "first." As an example, consider a master and one client: nodeA> /usr/local/etc/emulab/emulab-sync -n mybarrier nodeB> /usr/local/etc/emulab/emulab-sync -n mybarrier -i 1 Node A waits until Node B initializes the barrier (gives it a count). The count is the number of *waiters*, not including the master. The master is also blocked until all of the waiters have checked in. I have not made an provision for timeouts or crashed clients. Lets see how it goes.
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
* Change Home page title to: Emulab - Network Emulation Testbed Home * Change mainsite robot meta tags to include a description, set to the same as the new home page title above. * Remote now sites get standard "noindex" robot directive; crawlers will follow links on remote sites but not index them in their search engines. * Add a fixed link to www.emulab.net/netemu.php3 on all sites; used to be on mainsite only; that was dumb! * Minor cosmetic changes to netemu.php3.
-
- Aug 04, 2003
-
-
Robert Ricci authored
-
Robert Ricci authored
-
Robert Ricci authored
Also, allow cisco switch types to be called 'catalyst', since that is technically a more correct name (ie. there are non-cat Ciscos.)
-
Mike Hibler authored
-
Mike Hibler authored
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
syncserver (if any) for the experiment, and whether the node is also the actual syncserver and should start the daemon.
-
Mac Newbold authored
Take out a /~newbold/www/ that worked its way in there somehow, and change all the links that should be relative instead of absolute, so that it works more consistently in normal/devel trees.
-
Leigh B. Stoller authored
(soon to be working) sync server. When non-null (set by parser) that node will start a sync server and other nodes will know to use it. Returned by tmcd of course.
-
Leigh B. Stoller authored
they are going when you decrease the bandwidth.
-
- Aug 01, 2003
-
-
Leigh B. Stoller authored
of the exit code to see if the parser had been KILLed by the system. Since the parser now runs on ops, increase the limit from from 60 to 180 seconds, but also increase the nice level.
-
Mike Hibler authored
-
Mike Hibler authored
-
Jay Lepreau authored
-
Jay Lepreau authored
-
Leigh B. Stoller authored
global counter (with the increment I was using, the rule number could easily go past the max (65535) number (and why is the max a short anyway)) with very large experiments.
-
- Jul 31, 2003
-
-
Leigh B. Stoller authored
syslogging to a fraction of its former self. Actually, its mostly been moved under if (verbose) tests. Instead, just syslog the number of bytes returned for each request. Added a signal handler to change the verbosity of a running tmcd. To turn on verbosity: kill -USR1 `cat /var/run/tmcd.pid` To turn off verbosity: kill -USR2 `cat /var/run/tmcd.pid` You can send the signal to individual children, but that would be silly and pointless.
-
Leigh B. Stoller authored
Also a couple perf hacks: * Local vnodes can start with the password/group file from the physnode, since locally they will be the same anyway. This avoids a blizzard of accounts requests at startup, which is by far the biggest chunk of data returned (well, except for host tables). * To help serialize boot startup, vnodesetup now waits for the jail to finish starting up before it exits. It does this via a "goofy" mechanism I will not bother to describe.
-
Leigh B. Stoller authored
-
Kirk Webb authored
1) Use libtb's reporting funcs rather than my own (the former are better) 2) Produce more informational "malformed interface record" errors.
-
- Jul 30, 2003
-
-
Leigh B. Stoller authored
exitcode of -1 (magic 64 bit is set!) is not a recoverable error since it typically means someone called die(), and thats an uncontrolled error.
-
Kirk Webb authored
/share. I made it a FAQ question, if you can't tell from the commit!
-
Leigh B. Stoller authored
not have to wait 3 minutes for it to finish before he can watch his experiment swapin fail for some other reason. I adopted the same pid mechanism as in eventsys_control.in, which uses a slot in the experiments table. Running "prerender" puts the render into the background and stores the pid. Running "prerender -r" kills a running prerender and removes the existing info from the DB. Fixed the problem with swapmod not restoring the old vis; swapmod now kills any running prerender, and restarts one if the swapmod fails (the prerun of the new NS file starts up another prerender in the background). Add setpriority() call in prerender to nice it and children to 15.
-
Robert Ricci authored
-
Leigh B. Stoller authored
-
Robert Ricci authored
nodes that there were in the top file.
-
Robert Ricci authored
recognizes it properly.
-