Version 37 (modified by, 8 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, Raven, 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, Instrumentation 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
Testbed for security experiments consisting of about 200 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 I2? NLR? Internet ProtoGENI Tools, SEER ORBIT Wireless Testbed 400 nodes, each with two 802.11 a/b/g interfaces, arranged in a grid. Nodes can be loaded with experimenter specified OS and software. Full access to nodes in the testbed MAC layer and above programmable by experimenter. Topology control by changing transmit power levels and noise floor. Yes ??? OMF Tools DOME 35 transit buses equipped with computers and a variety of wireless radios, stationary WiFi access points with buses authenticated for access, numerous organic access points. Virtual machines on an embedded computer running Linux No Yes: 802.11b/g AP, 802.11g PCI, XTend 900Mhz radio, 3G modem, and GPS Internet Million Node GENI Compute resources on thousands of platforms donated by individuals and institutions. Platforms may be mobile and/or behind firewalls and NATs. Experimenter software, written in a subset of Python, runs in sandboxes on Million Node GENI platforms. No Million Node GENI includes wireless platforms Internet ProtoGENI Tools, Million Node GENI Tools ViSE Kansei Supercharged PlanetLab Platform (SPP) Nodes Internet2 ProtoGENI Backbone Nodes Nodes at 5 Internet2 co-location sites. The ProtoGENI backbone runs Ethernet on a 1Gbps Internet2 wave, and slices it with VLANs. Researchers select the topology of VLANs on this infrastructure. No Yes No Internet2: Layer 2 and IP BGP Mux Internet2 Stanford OpenFlow Network Internet2 Indiana Openflow Network Internet2 Rutgers Openflow Network Internet2 GPO Lab Openflow Network OpenFlow testbed consisting of three OpenFlow-controlled switches (one each of HP, NEC, and Quanta) and an Expedient AM/OIM/FV stack. Computing resources provided by the GPO Lab myPLC and GPO Lab ProtoGENI aggregates Yes No Internet2: IP and Layer 2, NLR: IP and Layer 2 OpenFlow tools (NOX and Expedient), Omni

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

CMU Homenet Nodes
CMU Emulab
CMU Wireless Emulator
Data Intensive Cloud
Rutgers WiMAX

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 Getting Access to GENI

To use GENI for experimentation please contact Mark Berman.

6.0 Tutorials

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

For a tutorial on using ProtoGENI Tools to run experiments on GENI, see [to run experiments on GENI, see

Attachments (4)

Download all attachments as: .zip