Version 24 (modified by Vic Thomas, 11 years ago) (diff)


Experimentation with GENI

1.0 Why GENI?

GENI might be right for your experiment if:

  • Your experiment requires more resources than would ordinarily be found in your lab. Since GENI is a suite of infrastructures it can potentially provide you with more resources than is typically found in any one laboratory. This is especially true for compute resources: GENI provides access to large testbeds with hundreds of PCs and to cloud computing resources.
  • Your experiment requires non-IP connectivity across resources. Some GENI aggregates allow you to set up Layer 2 connections between resources within the aggregate. Experimenters may install and run their own Layer 3 and above protocols on these resources. It is also possible to setup Layer 2 connections between many GENI aggregates that connect to GENI backbone networks (Internet2 and NLR). You can even set up your network to route through experimenter programmable switches in the GENI backbone.
  • Your experiment requires requires geographically distributed resources. Some GENI aggregates include resources distributed around the world.

2.0 An Experimenter's View of GENI

GENI is a suite of infrastructures for networking and distributed systems experimentation. GENI supports at-scale experimentation on shared, heterogeneous, highly instrumented infrastructure and enables deep programmability throughout the network.

As an experimenter you will need to know about GENI clearinghouses and GENI aggregates. A GENI clearinghouse authenticates experimenters and issues them credentials needed to obtain GENI resources for experimentation.

GENI aggregates provide resources to experimenters with GENI credentials. GENI has a number of different aggregates that provide a variety of resources for experimentation. An important aspect of planning your experiment is deciding what resources you need (type and numbers) and which aggregates might meet your needs.

The following figure illustrates the role of GENI clearinghouses and aggregates:

Clearinghouses and Aggregates

You will also need to know about GENI slices. A slice holds a collection of computing and communications resources capable of running an experiment or a wide area service. An experiment is a researcher-defined use of resources in a slice; an experiment runs in a slice. A researcher may run multiple experiments using resources in a slice, concurrently or over time.

3.0 GENI Aggregates

The following table lists GENI aggregates that are currently available for use by experimenters and the networks (GENI backbone network or the Internet) to which they connect. GENI has two backbone networks: Internet2 and National Lambda Rail (NLR). The Internet2 backbone provides 1Gbps of dedicated bandwidth for GENI experiments and the NLR backbone provides up to 30Gbps of non-dedicated bandwidth. Some aggregates that connect to GENI backbone networks may be connected to other resources on the network using Layer 2 VLANS, giving experimenters the option of running non-IP based Layer 3 and above protocols.

3.1 GENI aggregates currently available to experimenters:

Aggregate Description Compute Resources Programmable Network Wireless Network Connectivity Experimenter Tools
PlanetLab Testbed consisting of 1090 nodes at 513 sites around the world Virtual machines on PlanetLab nodes No No Internet Gush, Omni, SFI
GPO Lab myPLC PlanetLab installation consisting of 5 multi-homed nodes Virtual machines on PlanetLab nodes No No Internet2: IP; NLR: IP; Internet Gush, Omni, SFI
Utah ProtoGENI Over 400 co-located PCs that can be loaded with an experimenter specified OS image and connected in arbitrary topologies Complete PCs or virtual machines on PCs PCs can be set up as routers 18 nodes with 2 WiFi cards each Internet2: IP and Layer 2; Internet ProtoGENI Tools, Gush
Kentucky ProtoGENI Over 50 co-located PCs that can be loaded with an experimenter specified OS image and connected in arbitrary topologies. Strong instrumentation capabilities Complete PCs or virtual machines on PCs PCs can be set up as routers No Internet2: IP and Layer 2; Internet ProtoGENI Tools, Gush, REFERENCE TO INSTR TOOLS??
GPO Lab ProtoGENI 11 co-located PCs that can be loaded with an experimenter specified OS image and connected in arbitrary topologies Complete PCs PCs can be set up as routers No Internet2: IP and Layer 2; NLR: IP and Layer 2; Internet ProtoGENI Tools, Gush

Compute Resources

Aggregate Network Connectivity Experiment Tools
ISI Deter Testbed? ?? ProtoGENI Tools
Million Node GENI? Internet ProtoGENI Tools, Million Node GENI Tools
ORBIT? Internet ORBIT Tools

Programmable Network Resources

Aggregate Network Connectivity
Supercharged PlanetLab Platform Nodes? Internet2
ProtoGENI Backbone Nodes? Internet2
Georgia Tech BGP Mux? ??
Stanford OpenFlow network ??
Indiana U. Openflow network? ??
Rutgers OpenFlow network? ??
BBN OpenFlow network? Internet2 and NLR

3.2 GENI aggregates that will be available soon, with links to their GENI project page:

Compute Resources

CMU Homenet Nodes
CMU Emulab

Programmable Network Resources

CMU Wireless Emulator

3.3 Picking Resources for Your Experiment

As you plan your experiment you will want to consider:

  • The degree of control you need over your experiment. Do you need to tightly control the resources (CPU, bandwidth, etc.) allocated to your experiment or will best-effort suffice. If you need a tightly controlled environment you might want to consider the U. of Utah ProtoGENI aggregate that allocate entire PCs that can be connected in arbitrary topologies.
  • The desired network topology. Does your experiment have to be geographically distributed? What kinds of connectivity do you need between these geographically distributed locations. Almost all aggregates can connect using IP connectivity over the Internet. Many aggregates connect to one of the GENI backbones and allow you to set up IP connections with other resources on the backbone. This will give you a bit more control over the network. Some aggregates provide Layer 2 connectivity over a GENI backbone i.e. you can set up vlans between these aggregates and other resources on the backbone network. This allows you to run non-IP protocols across between the aggregate and other resources.
  • The number of resources you need from an aggregate. Aggregates vary from small installations such as the GPO Lab ProtoGENI aggregate that consists of eleven nodes to the PlanetLab and ProtoGENI aggregates that consist of hundreds of nodes.

To help you pick resources for your experiment, the following table shows examples of GENI aggregates that provide computing resources and the type of connectivity to these resources:

Table of aggregates providing compute resources

4.0 Experimenter Tools

4.1 Experiment Control Tools

GENI experiment control tools are used to create slices, add or remove resources to slices, and delete slices. Some tools may also help with the installation of experimenter specified software into resources in slices; starting, pausing, resuming and stopping the execution of an experiment; and monitoring of the resources in slices for failures. Examples of GENI experiment control tools include Gush, Omni, PlanetLab SFI and ProtoGENI Tools.

In addition to these experiment control tools, individual aggregates provide experimenters with additional tools to install and manage software on their resources. For example, the Million Node GENI aggregate provides a set of tools to manage the virtual machines it proves as computing resources.

4.2 Instrumentation and Measurement Tools

5.0 Tutorials

For a tutorial on using Omni tools to run experiments on GENI, see

Attachments (4)

Download all attachments as: .zip