Commit 60529980 authored by Chad Barb's avatar Chad Barb

The big one.

New look;
most of the changes are in menu.php3.

A lot of the changes in other files are s/<TD>/<TH>/
for table headers.

Also closed some tags, tweaked some table styles, etc..

No actual functionality should have changed.

Will be installing soon...
parent 2e142429
......@@ -43,20 +43,20 @@ echo "Below is the list of projects waiting for approval or denial. Click
<p>\n";
echo "<table width=\"100%\" border=2 cellpadding=0 cellspacing=2
align='center'>\n";
>\n";
echo "<tr>
<td rowspan=2>Act</td>
<td rowspan=2>Project Info</td>
<td rowspan=2>User</td>
<td>User Name</td>
<td>Title</td>
<td>E-mail</td>
<th rowspan=2>Act</th>
<th rowspan=2>Project Info</th>
<th rowspan=2>User</th>
<th>User Name</th>
<th>Title</th>
<th>E-mail</th>
</tr>
<tr>
<td>Proj Name</td>
<td>User Affil</td>
<td>Phone</td>
<th>Proj Name</th>
<th>User Affil</th>
<th>Phone</th>
</tr>\n";
while ($projectrow = mysql_fetch_array($query_result)) {
......@@ -84,7 +84,7 @@ while ($projectrow = mysql_fetch_array($query_result)) {
<td height=15 colspan=6></td>
</tr>
<tr>
<td align=center rowspan=2>
<td align=center valign=center rowspan=2>
<A href='approveproject_form.php3?pid=$pid'>
<img alt=\"o\" src=\"redball.gif\"></A></td>
<td rowspan=2>
......
......@@ -19,68 +19,49 @@ LOGGEDINORDIE($auth_usr);
echo "
<h2>Approve new users in your Project or Group</h2>
<p>
Use this page to approve new members of your Project or Group. Once
approved, they will be able to log into machines in your Project's
experiments. Be sure to toggle the menu options appropriately for
each pending user.
</p>
<p>
<center>
<h4>You have the following choices for <b>Action</b>:</h4>
<table cellspacing=2 border=0>
<tr>
<td colspan=4>
<h4>You have the following choices for <b>Action</b>:</td>
<tr>
<tr>
<td>&nbsp</td>
<td>Postpone</td>
<td>-</td>
<td><b>Postpone</b></td>
<td>Do nothing; application remains, pending a decision.</td>
</tr>
<tr>
<td>&nbsp</td>
<td>Deny</td>
<td>-</td>
<td><b>Deny</b></td>
<td>Deny user application and so notify the user.</td>
</tr>
<tr>
<td>&nbsp</td>
<td>Nuke</td>
<td>-</td>
<td><b>Nuke</b></td>
<td>Nuke user application. Kills user account, without
notice to user. Useful for
bogus project applications.</td>
</tr>
<tr>
<td>&nbsp</td>
<td>Approve</td>
<td>-</td>
<td><b>Approve</b></td>
<td>Approve the user</td>
</tr>
</table>
</center>
<p>
<table cellspacing=2 border=0>
<tr>
<td colspan=4>
<h4>You have the following choices for <b>Trust</b>:</td>
<tr>
<br />
<h4>You have the following choices for <b>Trust</b>:</h4>
<table cellspacing=2 cellpadding=4 border=0>
<tr>
<td>&nbsp</td>
<td>User</td>
<td>-</td>
<td><b>User</b></td>
<td>User may log into machines in your experiments</td>
</tr>
<tr>
<td>&nbsp</td>
<td>Local Root</td>
<td>-</td>
<td><b>Local Root</b></td>
<td>User may create/destroy experiments in your project and
has root privileges on machines in your experiments</td>
</tr>
<tr>
<td>&nbsp</td>
<td>Group Root</td>
<td>-</td>
<td><b>Group Root</b></td>
<td>In addition to Local Root privileges, user may also
approve new group members and
modify user info for other users within the group. This
......@@ -88,14 +69,13 @@ echo "
like.</td>
</tr>
</table>
<center>
<br />
<b>Important group
<a href='docwrapper.php3?docname=groups.html#SECURITY'>
security issues</a> are discussed in the
<a href='docwrapper.php3?docname=groups.html'>Groups Tutorial</a>
<a href='docwrapper.php3?docname=groups.html'>Groups Tutorial</a>.
</b>
</center><br>
</center><br />
\n";
......
......@@ -30,15 +30,15 @@ chdir("buildui");
<param name=expcreateurl
value="<?php echo $TBBASE?>/beginexp.php3">
<pre>
We're sorry, NetBuild in unable to run,
as it seems your browser doesn't support Java.
NetBuild requires Java.
You should either enable Java in your browser,
download the latest version of a Java-compliant browser
(such as Netscape or Internet Explorer,) or quit using that
browser that doesn't support Java, you hippie.
If you want to use NetBuild,
you should either enable Java in your browser
or use the latest version of a Java-compliant browser
(such as Mozilla, Netscape or Internet Explorer.)
If you decide its worth it (and we think you will,) come back and enjoy NetBuild.
Once you've gotten your Java on,
please come back and enjoy NetBuild.
We'll still be here waiting for you.
- Testbed Ops
......@@ -49,13 +49,13 @@ We'll still be here waiting for you.
<h2>Basic usage:</h2>
<list>
<li>
<p>Drag Nodes and LANs from the <i>Palette</i> on the left into the <i>Workarea</i> in the middle.</p>
Drag Nodes and LANs from the <i>Palette</i> on the left into the <i>Workarea</i> in the middle.
</li>
<li>
<p>To link a Node to a Node (or to a LAN,) select the node (by clicking it,) then hold "ctrl" and click on the node (or LAN) you wish to link it to.</p>
To link a Node to a Node (or to a LAN,) select the node (by clicking it,) then hold "ctrl" and click on the node (or LAN) you wish to link it to.
</li>
<li>
<p>Clicking the "create experiment" button will send you to the Emulab "create experiment" web page, automatically generating and sending an NS file for your designed topology along. From that page, you may create the experiment and/or view the generated NS file.</p>
Clicking the "create experiment" button will send you to the Emulab "create experiment" web page, automatically generating and sending an NS file for your designed topology along. From that page, you may create the experiment and/or view the generated NS file.
</li>
</list>
<p>
......
......@@ -16,79 +16,46 @@ PAGEHEADER("Documentation");
<ul>
<li><b><a href = "docwrapper.php3?docname=auth.html">
How to get an account on the Testbed</a></b>
<p>
<li><b><a href="tutorial/docwrapper.php3?docname=tutorial.html">
Emulab "Getting Started" Tutorial</a></b>
<p>
<li><b><a href="docwrapper.php3?docname=faq.html">
Frequently Asked Questions (FAQ)</a></b>
<p>
</ul>
<h3>Reference Material</h3>
<ul>
<li><b><a href="tutorial/docwrapper.php3?docname=advanced.html">
Emulab Advanced Tutorial</a></b>
<p>
<li><b><a href="tutorial/docwrapper.php3?docname=nscommands.html">
Emulab-specific NS Extensions Reference Manual</a></b>
<p>
<li><b><a href="doc/docwrapper.php3?docname=tmcd.html">
Testbed Master Control Daemon (TMCD) Reference Manual</a></b>
<p>
<li><b><a href = "docwrapper.php3?docname=swapping.html">
Node Usage Policies</a></b>
<p>
<li><b><a href = "doc/docwrapper.php3?docname=netbuilddoc.html">
NetBuild Reference Manual</a></b>
<p>
<li><b><a href = "docwrapper.php3?docname=security.html">
Security Issues</a></b>
<p>
<li><b><a href = "docwrapper.php3?docname=groups.html">
About Project Groups</a></b>
<p>
<li><b><a href = "doc/docwrapper.php3?docname=internals.html">
Emulab Internals</a></b><img src="new.gif">
<p>
<li><b><a href = "doc/docwrapper.php3?docname=hw-recommend.html">
Want to build your own Testbed?</a></b>
<p>
<li><b><a href = "docwrapper.php3?docname=hardware.html">
Current Hardware Overview</a></b>
<p>
<li><b><a href = "docwrapper.php3?docname=software.html">
Current Software Overview</a></b>
<p>
</ul>
<h3>Miscellaneous</h3>
<ul>
<li><b><a href = "docwrapper.php3?docname=news.html">
Current and Past Emulab News Items</a></b>
<p>
<li><b><a href = "docwrapper.php3?docname=policies.html">
Administrative Policies and Disclaimer</a></b>
<p>
<li><b><a href = "docwrapper.php3?docname=pubs.html">
Publications</a></b>
<p>
<li><b><a href = "docwrapper.php3?docname=sponsors.html">
Emulab Sponsors</a></b>
</ul>
......
......@@ -5,75 +5,56 @@
-->
<h1>Introduction to Netbuild</h1>
<h2>Basic usage:</h2>
<list>
<ul>
<li>To create a Node, click and drag the "new node" icon in the
palette (the left panel) to the work area (the middle panel.)</li>
<p>
<li>To link two nodes together, click one node, then hold "ctrl" and
click the node you want to link it to.</li>
<p>
<li>To create a LAN, click and drag the "new LAN" icon in the palette
to the work area.</li>
<p>
<li>To link a node to a LAN, click the node, then hold "ctrl" and
click on the LAN you want to link it to (or vice versa.)</li>
<p>
<li>Note that you may not link a LAN directly to a LAN.
<p>
<li>Nodes and LANs may be moved around the work area by clicking and
dragging them.</li>
<p>
<li>Nodes, links, and LANs may be eliminated by dragging them into the trash.</li>
<p>
<li>Little circles between links and nodes represent the network
interface on that node, and may not be moved or eliminated (though
eliminating the attached link will get rid of them.)</li>
<p>
<li>When your experiment topology has been built, clicking "create
experiment" will take you into the testbed experiment creation
page; from there, you may view the generated NS file as well as create
an actual experiment.</li>
</list>
<p>
</ul>
<h2>Selection:</h2>
<list>
<ul>
<li>Clicking a single item in the work area will select it.</li>
<p>
<li>Clicking a single item while holding down shift will add it to the
pool of selected items (unless it was already selected, then it will
become deselected.)</li>
<p>
<li>Clicking an empty part of the canvas will deselect everything.</li>
<p>
<li>Clicking an empty part of the canvas and dragging will create a
selection rectangle. When the mouse button is released, all items in
the rectangle will be selected.</li>
<p>
<li>When multiple items are selected, clicking one selected item and
dragging it will drag all selected items.</li>
<p>
<li>When multiple items are selected, clicking one selected item and
dragging it into the trash will eliminate all selected items.</li>
</list>
<p>
</ul>
<h2>Properties:</h2>
<list>
<ul>
<li>When one item is selected, a properties view will open in the
rightmost panel. This is where properties, including name, may be
set.</li>
<p>
<li>Invalid characters typed into a properties text box will be
ignored.</li>
<p>
<li>If a property is "&lt;auto&gt;," it will automatically be determined in
the experiment creation process. Change this to specify your own value
for the property.</li>
<p>
<li>Clicking "default" will reset the property of the adjoining box to
its default value (in many cases "&lt;auto&gt;.")</li>
<p>
<li>If multiple items of the same type are selected, some boxes may
show up as "&lt;multiple&gt;." This means that the value of this property is
different between at least two nodes in the selection. Changing such a
......@@ -81,13 +62,10 @@ property value (or setting it to default) will result in <i>all</i>
selected nodes assuming the new value for that property. Some
properties (such as name and IP address) may not be set simultaneously
in this way.</li>
<p>
<li>If multiple items of varying types are selected, the property
boxes will still appear on the right, but may be in a collapsed state.
Clicking the '+' will expand one of these.</li>
<p>
<li>Clicking the '-' on an expanded box will collapse it again.</li>
<p>
<li>Click "copy selection" to make a duplicate of the current
selection.</li>
</list>
</ul>
......@@ -8,20 +8,17 @@
</center>
<ul>
<li><b><a href="#nodeboot">Node Boot Process</a></b>
<p>
<li><b><a href="#exptstatus">Experiment Status</a></b>
<p>
<li><b><a href="#nodealloc">Node Allocation</a></b>
<p>
<li><b><a href="#userstatus">User Status</a></b>
</ul>
<hr>
<a name="nodeboot">
<a name="nodeboot"></a>
<h3>Node Boot Process</h3>
<img align="right" src="nodeboot.gif">
<p>
The node boot process shows the legal state transitions a node may
make during its cycle of rebooting. The NORMALv1 subgraph shows the
normal boot cycle. If a node starts out off, it is in the SHUTDOWN
......@@ -37,6 +34,7 @@ SHUTDOWN state to start the cycle over again. This machine is labeled
NORMALv1 because there will be other, more detailed versions of the
NORMAL machine that come in the near future, to better aid in error
recovery.
</p>
<p>
The MINIMAL machine shows what a minimally compliant custom operating
system image or kernal will do. Even an OS that doesn't support any
......@@ -47,6 +45,7 @@ the custom OS supports ping replies, Emulab software will use ping to
infer when the node has moved to the ISUP state. In this way, an OS
without any Emulab-specific capabilities can comply with the state
machine transitions properly.
</p>
<p>
A special case of the normal boot process is the disk reloading
cycle. When we reload a disk, the node starts out in the SHUTDOWN
......@@ -54,6 +53,7 @@ state. It then proceeds through the BOOTING, RELOADSETUP, RELOADING,
and RELOADDONE states as it performs the reloading tasks. This
granularity gives us the ability to perform appropriate error recovery
in a timely fashion while nodes are reloading.
</p>
<p>
The transitions shown between the different machines show how a node
can move from one machine or mode to another. A node that has been
......@@ -64,14 +64,14 @@ RELOAD. When the reload has completed, it moves back to NORMALv1
again. These are called Mode Transitions, and they define
relationships between machines that govern the same state data, in
this case the node boot status data.
<p>
</p>
<br clear="right">
<a name="exptstatus">
<a name="exptstatus"></a>
<h3>Experiment Status</h3>
<img align="right" src="exptstatus.gif">
<br clear="left">
<p>
The experiment status state machine shows the states that an Emulab
experiment may be in at any given time. Experiments always start as
NEW experiments. During PRERUN, they are loaded into the database, and
......@@ -87,12 +87,13 @@ returned to the SWAPPED state, it may proceed to activate again, or it
may be terminated. When termination starts, it moves to the
TERMINATING state, and then the TERMINATED state, where it may be
safely removed from the Emulab database.
<p>
</p>
<br clear="right">
<a name="nodealloc">
<a name="nodealloc"></a>
<h3>Node Allocation</h3>
<img align="right" src="nodealloc.gif">
<p>
The node allocation state machie also governs nodes, like the node
boot process, but instead of their boot status, it governs their
allocation status. A node that is not reserved and has a fresh copy of
......@@ -108,12 +109,13 @@ to the standard image. A node in the FREE_DIRTY state may then be
reserved again, or may move to the RELOAD state prior to becoming a
FREE_CLEAN node. (FREE_DIRTY nodes are typically only reserved by
experiments in the same project as used them last.)
<p>
</p>
<br clear="right">
<a name="userstatus">
<a name="userstatus"></a>
<h3>User Status</h3>
<img align="right" src="userstatus.gif">
<p>
The user status state machine shows the states a user's account may be
in at any given time. A user who applies for an account on Emulab
starts out as a NEWUSER. When they perform the email address
......@@ -125,7 +127,10 @@ were granted for each project in which they are a member. At any time
their account may be FROZEN, at which time their access is temporarily
suspended. They may be returned to ACTIVE status after being FROZEN. A
user account may safely be deleted in any state.
<p>
</p>
<br clear="right">
<hr>
......@@ -186,7 +186,7 @@ numeric <tt>gid</tt> for that group. The <tt>ADDUSER</tt> reply has
the following fields:
<blockquote>
<table border=0 cellpadding=0 cellspacing=0>
<table border=0 cellpadding=0 cellspacing=0 class="nogrid">
<tr>
<td><font size=4><tt>LOGIN</tt></td>
<td>&nbsp&nbsp&nbsp</td>
......
......@@ -80,7 +80,7 @@ another group. Users may create shared directories by using the unix
nodes after a new experiment is started, only those members of the
group will get accounts on the nodes; other members of the same
project, not in the group, will not get accounts.
</li>
<li>
Emulab uses NFS mounted filesystems for <tt>/users</tt> and
<tt>/proj</tt> on the experimental nodes. Because of the nature of
......@@ -91,7 +91,7 @@ project directory and in the home directories of other members of the
group, can be can be "compromised" by a group member. Please note that
no other directories are NFS mounted; other projects and users on
Emulab are safe.
</li>
<li>
It is important to remember that granting "root" permissions to a user
in the project (or default group) and "user" permissions in a
......@@ -109,7 +109,7 @@ including Bob. The correct approach is to specify "user" permissions
in the default group, and either "user" or "root" in the subgroup
(depending on whether subgroup members are mutually trust each other
and need to create experiments).
</li>
<li>
Equally dangerous is specifying different levels of trust for a user
that is in multiple subgroups of a project. In this case, any
......@@ -120,31 +120,22 @@ another user Bob who is in both subgroups, then Joe can access Bob's
files when creating an experiment in one of the subgroups, but not the
other. If Joe is really not supposed to access Bob's files, then Joe
should not have "root" permission in a subgroup that contains Bob.
</li>
</ul>
<table cellspacing=2 border=0>
<tr>
<td colspan=4>
<h4>You have the following choices for <b>Trust</b>:</td>
<tr>
<center><h4>You have the following choices for <b>Trust</b>:</h4>
<table>
<tr>
<td>&nbsp</td>
<td>User</td>
<td>-</td>
<td>User may log into machines in your experiments</td>
</tr>
<tr>
<td>&nbsp</td>
<td nowrap=1>Local Root</td>
<td>-</td>
<td>User may create/destroy experiments in your project and
has root privileges on machines in your experiments</td>
</tr>
<tr>
<td>&nbsp</td>
<td nowrap=1>Group Root</td>
<td>-</td>
<td nowrap=1>Group Root&nbsp;&nbsp;</td>
<td>In addition to Local Root privileges, user may also
approve new group members and
modify user info for other users within the group. This
......@@ -152,3 +143,4 @@ should not have "root" permission in a subgroup that contains Bob.
like.</td>
</tr>
</table>
</center>
\ No newline at end of file
......@@ -13,6 +13,7 @@ PAGEHEADER("Home");
?>
<p>
Welcome to Emulab. Emulab (sometimes called the Utah Network Testbed)
is a new and unique type of experimental environment: a
universally-available "Internet Emulator" which provides a
......@@ -24,7 +25,7 @@ the hardware level:
packet loss, latency, bandwidth, packet ordering,
buffer space all can be user-defined. Even the operating system disk
contents can be securely and fully replaced with custom images.
</p>
<p>
The Testbed currently features high-speed Cisco switches connecting,
with over 5 miles of cabling, 168 core nodes (PCs) and 160 edge nodes
......@@ -36,7 +37,7 @@ machines, including root access if desired. Until we finish designing
and building smarter scheduling and state-saving software, and obtain
the disk space, scheduling is manual and done at coarse granularity
(days).
</p>
<p>
We provide some default software (e.g. Redhat Linux and FreeBSD on the PCs,
NetBSD on the Sharks) that many users want. The basic software
......@@ -45,10 +46,10 @@ root access, DNS service, compilers and linkers. But fundamentally,
the software you run on it, including all bits on the disks, is
replaceable and up to you. The same applies to the network's
characteristics, including its topology: configurable by users.
<br><br>
</p>
<br /><br />
<a href='pix/side-crop-big.jpg'>
<img src='pix/side-crop-small.jpg' align=right></a>
<img src='pix/side-crop-small.jpg' align=right /></a>
<h3>Links to help you get started:</h3>
<ul>
......
This diff is collapsed.
......@@ -91,22 +91,22 @@ echo "<center><b>
View: $view
</b></center><br>\n";
echo "<table border=2 cellpadding=2 cellspacing=1
echo "<table border=2 cellpadding=2 cellspacing=2
align='center'>\n";
echo "<tr>
<td align=center>ID</td>
<td align=center>Type (Class)</td>
<td align=center>Up?</td>\n";
<th align=center>ID</th>
<th align=center>Type (Class)</th>
<th align=center>Up?</th>\n";
if ($isadmin) {
echo "<td align=center>PID</td>
<td align=center>EID</td>
<td align=center>Name</td>
<td align=center>Default<br>OSID</td>\n";
echo "<th align=center>PID</th>
<th align=center>EID</th>
<th align=center>Name</th>
<th align=center>Default<br>OSID</th>\n";
}
else {
echo "<td align=center>Free?</td>\n";
echo "<th align=center>Free?</th>\n";
}
echo "</tr>\n";
......
......@@ -6,27 +6,29 @@
<center>
<h1>Administrative Policies</h1>
</center>
<p>
Most any legitimate research/experimental use is allowed, including
use by companies. Of course, when demand exceeds supply we will have
to assign priorities to projects, but the hardware base will be expanding.
</p>
<h2>Acceptable Use, Allocation Priority, Reporting, Governance, Disclaimer</h2>
<p>
Our current and anticipated policies follow. We expect these to
evolve as experience demands, and we are open to constructive
suggestions concerning them.
</p>
<h3>Acceptable Use</h3>
<p>
In principle, almost any research or experimental use of the testbed
by experimenters that have a need for it is appropriate.
</p>
<p>
"Abuse" of the facility or its other users, in any form, will of course
result in termination of access. Abuse includes using the facility
for other than a project's stated purpose.
</p>
<h3>Allocation Priority</h3>
<p>
When the testbed become oversubscribed we will be allocating its
resources based on some function-- currently vague but in roughly
this order-- of
......@@ -41,48 +43,49 @@ educational value,
affiliation with an academic institution,
whether the project is funded/peer-reviewed,
and for commercial users, their willingness to help defray costs, i.e., pay.
</p>
<p>
Many development-oriented commercial experiments and evaluations will
be allowed, but low priority.
be allowed, but with lower priority.
</p>
<h3>Reporting</h3>
<p>
In order to assess the testbed's impact and report to our sponsors, we
simply require notice of all publications or patents to which the testbed
contributed. Formal acknowledgement in such publications is required
as well. Something like the following:
</p>
<blockquote>
"We blah blah blah ...
emulab.net, the Utah Network Emulation Testbed,
which is primarily supported by NSF grant ANI-00-82493 and Cisco Systems."
</blockquote>
<p>
Finally, we will be soliciting feedback and suggestions from
our users.
</p>
<h3>Governance</h3>
<p>
An administrative board, including representatives from our major
sponsors, will be involved in setting broad policy and have review
authority. Typically, a small executive committee composed of members
from the University of Utah Flux research group will decide most
resource allocation issues.
</p>
<p>
A Technical Advisory Board is also being formed, containing distinguished
members of the network and distributed systems research communities.
</p>
<h3>Disclaimer</h3>
<p>
We are providing broad access to the testbed in the hopes that it will
be useful, but we do so WITHOUT ANY WARRANTY; without even the implied
be useful, but we do so <b>WITHOUT ANY WARRANTY</b>; without even the implied
warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
</p>
<p>
We disclaim all liability from errors in results or security breaches
<b>WE DISCLAIM ALL LIABILITY</b> from errors in results or security breaches
resulting from emulab's use. The system has been in production use for
over a year, but is constantly undergoing rapid development, so
significant amounts of code are always new.
......@@ -91,3 +94,4 @@ must realize that high security is unlikely in i) such a new and rapidly
evolving system, ii) where users have such complete control over
hardware and software resources, and iii) in such a public facility
that will attract attack.
</p>
\ No newline at end of file
......@@ -26,11 +26,9 @@ PAGEHEADER("Projects that have actively used emulab.net");
function GENPLIST ($query_result)
{
echo "<tr>
<td><h4>Name</td>
<td><h4>Institution</td>
<th>Name</th>
<th>Institution</th>
</tr>\n";
echo "<tr></tr>\n";
echo "<tr></tr>\n";
while ($projectrow = mysql_fetch_array($query_result)) {
$pname = $projectrow[name];
......@@ -79,11 +77,9 @@ $query_result =
"order by name");
if (mysql_num_rows($query_result)) {
echo "<tr></tr>\n";
echo "<tr></tr>\n";
echo "<tr><td colspan=2 align=center>
<h4>Other projects registered on Emulab.Net</h4>
</td>
echo "<tr><th colspan=2>
Other projects registered on Emulab.Net:</h4>
</th>
</tr>\n";
GENPLIST($query_result);
}
......
......@@ -20,7 +20,6 @@
<h3>Documents:</h3>
<ul>
<ul>
<li> <img src="/new.gif" alt="&lt;NEW&gt;"> <cite>Netbed: An Integrated Experimental Environment</cite>,
White et al, SIGCOMM'02 Poster Abstract, to appear August 2002.
......@@ -42,11 +41,8 @@
A one-page "glossy" testbed overview</a>
</ul>
<br />
<h3>Older Talks:</h3>
<p>
<ul>
<li> <b>emulab.net: An Emulation Testbed for Networks and Distributed Systems</b>,
full presentation at Intel, June 2001.
......
......@@ -13,41 +13,41 @@ PAGEHEADER("Search Emulab Documentation");
?>
<center>
<table border=5>
<table border=0 cellpadding=4 cellspacing=0 class="nogrid">
<FORM method=get ACTION="/cgi-bin/webglimpse/usr/testbed/webglimpse">
<tr><td align=center colspan=2 valign=middle>
<tr>
<th>