How to Use the Emulab Public Network Testbeds
Jay Lepreau, Mac Newbold, Rob Ricci (University of Utah)
Chris Alfeld (University of Wisconsin, Madison)

(Day One)

Note: This tutorial is offered as both a half-day morning session and a full-day version that includes an afternoon lab session.

Content:

Half-Day Tutorial: This tutorial focuses on how to effectively use Emulab (http://www.emulab.net), a new, public experimental resource for research, education, or development in networking and distributed systems. Over 35 research projects, 25 institutions and 2 remote networking classes have already used Emulab. Other similar Emulabs have been built and more are planned.

The base Emulab is a time-and space-shared reconfigurable "network emulator," comprised of hundreds of PCs, miles of cable, and lots of code. Emulab allows full "root" access and lets anyone run their own custom software, including OS. Using a Web interface and the "ns" networking simulation language or a Java GUI, remote users can configure, in minutes, any number of these machines, Ethernet cables, traffic generators, etc. into a network of arbitrary topology and link characteristics, running arbitrary programs. An integrated event system provides both scripted and interactive control of all aspects of the emulated network and user software. In addition, with trivial changes to their "ns" scripts, users can shift the mapping of many experiments between pure simulation, pure emulation, or a mixture of both. Emulab also provides the doorway to a growing set of machines physically distributed around the Internet. This recent work gives flexible access to a testbed whose links are the live Internet.

In addition to teaching how to use Emulab, some time will be spent outlining how Emulab works internally, how to build your own and how to join the distributed testbed. Finally, we will discuss how Emulab is used in education today and future plans for the project.

Full-Day Tutorial: Following the morning's introduction, the afternoon will primarily be a hands-on "lab session" in which you will use remote Emulabs to learn-by-doing. We expect attendees to pair up at laptops, as we lead you through a series of increasingly sophisticated mini-projects that exercise many Emulab features. Depending on time and interest, we will undertake one or more projects suggested by attendees. The afternoon will also include more detail on Emulab internals and issues in building your own.

For more information see www.emulab.net and www.emulab.net/tutorial.html.

Intended Audience:

This tutorial is intended for researchers, educators, and developers in networking, distributed systems, or simulation, especially those interested in new methods of experimentation, validation, or instruction. Anyone frustrated by the difficulty of configuring real machines for experiments! Industry professionals can benefit, as Emulab is relevant to testing and performance evaluation of any system that involves a network. It would be helpful, but not required, to have some familiarity with the "ns" simulator.

Full-Day Tutorial: Enrollment will be limited. You are strongly encouraged on bringing a laptop with a browser, ssh client and Ethernet/802.11 NIC installed. Users with a laptop will be given priority in enrollment.

Speaker's Biography:

JAY LEPREAU is a faculty member in the University of Utah's School of Computing, where he heads the Flux Research Group. His research interests and history originate in operating systems, but from there extend into networking, distributed systems, programming languages, component-based systems, information and resource security, and even a pinch of software engineering and formal methods. In 1994 he founded the prestigious OSDI conference series and was its first program chair. He conceived and leads the Emulab project.

Jay will be joined by Mac Newbold, Rob Ricci and Chris Alfeld who are experienced instructors and key developers of the Emulab. The instructors will act as roving lab assistants during the afternoon session. In addition, an educator using Emulab remotely and a director of another Emulab will make guest appearances to outline their experiences.