Commit 01c12f88 authored by Mike Hibler's avatar Mike Hibler

Update license and main README, exclude another directory from the release.

parent 7efcb569
......@@ -7,46 +7,48 @@ and healthd), this Emulab code snapshot comes with RESTRICTED RIGHTS.
Permission to use, copy, and modify this software is hereby
granted provided that the following conditions are met.
This snapshot of the Emulab/Netbed code:
-is for use only for research and education, by you and by those
who use services that you provide using this software,
-cannot be used for commercial purposes, and
-cannot be redistributed outside your research group.
By accepting this software, you agree
-to retain this notice and all included copyright and credit notices,
-that in order to improve the common platform, to return improvements to
the University of Utah under terms that allow us, without charge, to
use and redistribute them under this license,
By accepting this software, you agree:
-not to redistribute it, even within your organization;
-that within a month of the official Utah Emulab release you will upgrade
to that release and its license and destroy all copies of this snapshot;[*]
-to retain this notice and all included copyright and credit notices;
-to prominently give appropriate credit to "Emulab" and the University of
Utah in the primary user interface(s) to systems that use this
software, and in talks and all written and promotional material that
mention features or use of this software. In the Web interface this
includes maintaining the portion of the page header banner which
links to Utah's site and says "Built with Emulab" or, at our discretion,
a subsequent version which includes a reference to "Utah."
includes maintaining the portion of the page header banner that
links to Utah's site and says "Built with Emulab";
-to take reasonable steps to ensure these conditions are met (e.g.,
make your group's members aware of these terms, limit source access
to your group's members, and ensure your users are non-commercial).
make your group's members aware of these terms, and limit source access
to your group's members).
We request that you ask your users to cite the Emulab/Netbed OSDI 2002 paper
in papers containing results obtained from services based on this software.
It is the University of Utah's intention to provide you future improvements
It is the University of Utah's intention to provide future improvements
it makes to the software. The University cannot commit to any support.
THE UNIVERSITY OF UTAH ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS"
CONDITION. THE UNIVERSITY OF UTAH DISCLAIMS ANY LIABILITY OF ANY KIND
FOR ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
Contact emulab-dist@flux.utah.edu or 801-585-3271 if you wish to
explore alternate license terms. The terms may become more liberal in
a future formal release.
November 4, 2004
June 12, 2007
Flux Research Group
School of Computing
University of Utah
50 S. Central Campus Dr. Rm. 3190
Salt Lake City, UT 84112
[*] Within a month after the Affero General Public License version 3
(AGPLv3) is finalized, Utah expects to release the Emulab software
under that open source license.
A draft of AGPLv3 is available at http://gplv3.fsf.org/agplv3-dd1.txt.
It consists of the GNU General Public License version 3 (GPLv3) with a
single short added Section 13, which requires that the source be
freely available to users who interact with the software through a
network. GPLv3's last call draft is available at
http://gplv3.fsf.org/gpl-draft-2007-05-31.txt and is planned be
finalized by June 29, 2007.
This is a snapshot of the current source code for the software that runs
Netbed (Emulab++) at the University of Utah, as well as testbeds at other
sites:
Emulab at the University of Utah, as well as testbeds at other sites:
http://www.emulab.net/
This is a snapshot of a rapidly-evolving system, rather than an engineered
release. It contains all Netbed source required to build a running testbed, but
release. It contains all Emulab source required to build a running testbed, but
interaction with Utah will almost certainly be required to get things up and
running.
Netbed is being actively developed, so there will be features on deployed
Netbeds that are not included in this snapshot. Contact us (contact info at the
bottom of this file) if you are interested in receiving an updated version of
this source.
Emulab is being actively developed, so there will be features on deployed
Emulabs (in particular, Utah's) that are not included in this snapshot.
Contact us (contact info at the bottom of this file) if you are interested
in receiving an updated version of this source.
IMPORTANT NOTE
See the file LICENSE for restrictions on this snapshot.
In summary, you can't redistribute it, use it for commercial
purposes, must give appropriate credit to Utah and Emulab,
and return improvements to us. These terms may become more
liberal in a future formal release.
and return improvements to us. The intention is to release
the Emulab software under the AGPLv3 open source license
Real Soon Now.
HOW TO SETUP
Copy and localize the 'defs-example' file for your environment
and run "./configure". See doc/setup.txt for details.
See doc/setup.txt.
This source currently only builds on FreeBSD, and requires several packages;
the dependencies can be found in the Makefile for our 'meta-port' in
install/ports/emulab-boss .
the dependencies can be found in the Makefile for our 'meta-port's:
install/ports/emulab-boss and install/ports/emulab-ops.
HOW TO UPDATE
Start by looking at doc/update-testbed.txt.
......@@ -41,7 +41,8 @@ doc/* contains documentation for developers.
www/*.html and www/doc/*.html contain end-user documentation.
Good places to start would include:
- The doc/papers directory, which contains papers published about Netbed
- The search box at www.emulab.net for the absolute latest FAQs and info
- The doc/papers directory, which contains papers published about Emulab
- The user tutorial (www/tutorial/tutorial.html)
- The user FAQ (www/faq.html)
- The user authorization document (www/auth.html)
......@@ -54,49 +55,75 @@ Good places to start would include:
- Overview of some major systems (doc/overview.txt)
- Diagrams and brief explanations of the state machines used in the
system (www/doc/states.html and www/doc/*.gif)
- The instructions for building a running system from scratch (doc/setup*.txt)
- The instructions for building a running system from scratch
(doc/setup*.txt)
- Mail we have exchanged with others about hardware recommendations
(doc/hardware-mail.mbox)
Join the testbed-admins@flux.utah.edu mailing list:
http://www.flux.utah.edu/mailman/listinfo/testbed-admins
QUICK TOUR
- The Database maintains most testbed state.
- LibDB (db/libdb.pm.in) is the main DB interface for testbed software.
- sql/database-create.sql contains the DB schema.
* LibDB (db/libdb.pm.in) and the assorted modules (db/*.pm.in) are the
main DB interface for testbed software.
* sql/database-create.sql contains the DB schema.
- The Web Interface (www/*) is the primary means of managing the system.
- The Web Interface (www/*) is the primary means of managing and
interfacing with the system.
- startexp (tbsetup/startexp.in) is the backend for experiment creation;
Important scripts it calls include tbprerun (tbsetup/tbprerun.in)
and tbswap (tbsetup/tbswap.in).
- The tbsetup directory contains the bulk of the server-side experiment
setup and management code.
* startexp (tbsetup/startexp.in) is the backend for experiment creation;
Important scripts it calls include tbprerun (tbsetup/tbprerun.in)
and tbswap (tbsetup/tbswap.in).
* ns2ir (tbsetup/ns2ir/*) converts NS files to DB state (via TCL and XML).
* snmpit (tbsetup/snmpit.in) configures VLANs on switch hardware.
- ns2ir (tbsetup/ns2ir/*) converts NS files to DB state (via TCL).
- assign (assign/*) maps experiments to available hardware.
- snmpit (tbsetup/snmpit.in) configures VLANs on switch hardware.
- frisbee (os/frisbee.redux/*) uses multicast to rapidly deploy disk images.
- The frisbee subsystem (os/frisbee.redux, os/imagezip) is used for creation
and rapid deployment of disk images.
- tmcd (tmcd/*) is contacted by nodes as they boot up, to get configuration.
- capture and console (capture/*, tip/*) provide serial line access to nodes.
- The majority of the client-side (i.e., on each experiment node) boot-time
setup code is in the tmcd/common and tmcd/<os-name> directories. These
are mostly perl and sh scripts for adding accounts, configuring interfaces,
installing software, etc.
SOURCE TREE ORGANIZATION
account - Account creation and management
apache - Apache HTTPD configuration
assign - Resource allocation software
bugdb - Optional per-project bug database
capture - Node serial line server software
cdrom - Software related to CD-booting local and remote machines
collab - Optional per-project "collaboration" tools: CVS, jabber, mailman
db - Variety of interfaces to testbed state
delay - RHL9 patches for supporting "end-node" traffic shaping
dhcpd - DHCPD configuration
doc - Documentation (mainly internal)
event - Event System
firewall - Code and notes for per-experiment control net firewalls
hyperviewer - 3D experiment visualization tool
image-test - Test framework for auto-testing of new OS images
install - Site installation scripts
ipod - "Ping of Death" software
ir - NS-to-database interpreter (in TCL)
ipod - "Ping of Death" software/patches
lib - C/C++ interface libraries
mote - Initial testbed support for Berkeley/Crossbow motes
named - BIND configuration files
os - Client-side software (disk loading, route calculation, etc.)
patches - Patches needed to compile standard software packages
pelab - Preliminary support for "Flexlab"; an Emulab/PlanetLab hybrid
(http://www.cs.utah.edu/flux/flexlab/)
pxe - Software related to PXE-booting machines
rc.d - Server-side startup scripts
robots - Initial testbed support for mobile wireless (Garcia robots)
security - Tools for secure boss node access
sensors - Node monitoring daemons
sql - Database schema and initialization
......@@ -107,8 +134,9 @@ testsuite - Automated testing suite
tip - Node serial line client software
tmcd - Testbed master control daemon and client (for node configuration)
tools - Misc. infrastructure tools
utils - Testbed configuration and maintenence tools
utils - Testbed configuration and maintenance tools
vis - Experiment visualization
wiki - Support for per-project WIKIs
www - Web Interface / User Documentation
xmlrpc - Programatic XML-RPC interface to testbed
......@@ -121,5 +149,4 @@ We are happy to get on the phone with you, too,
for "big picture" issues and problems.
Jay Lepreau, lepreau@cs.utah.edu, 801-581-4285, and the Utah testbed crew.
February 1, 2004
]
June 12, 2007
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment