Emulab is a network testbed, giving researchers a wide range of environments in which to develop, debug, and evaluate their systems. The name Emulab refers both to a facility and to a software system. The primary Emulab installation is run by the Flux Group. There are also installations of the Emulab software at more than two dozen sites around the world, and Emulab is used as the base for other testbeds including GENI, PRObE, and DETER. Emulab is widely used by computer science researchers in the fields of networking and distributed systems. It is also designed to support education, and has been used to teach classes in those fields.
Emulab is a public facility, available without charge to most researchers worldwide. It provides integrated access to a wide range of experimental environments:
Emulab unifies all of these environments under a common user interface, and integrates them into a common framework. This framework provides abstractions, services, and namespaces common to all, such as allocation and naming of nodes and links. By mapping the abstractions into domain-specific mechanisms and internal names, Emulab masks much of the heterogeneity of the different resources.