Version 8 (modified by, 6 years ago) (diff)


Understanding the GENI AM API through a simple experiment


Understand how resources are described and reserved in GENI. Learn how to customize those resources using standard mechanisms. Use multiple tools to act on a slice and reserve resources.

While doing this experiment, use and understand the following terms: resource specification (RSpec), sliver, and aggregate manager API (AM API)

What you will learn

At the end of this exercise, you will be able to:

  • Use and understand the following terms:
    • Resource Specification (aka RSpec)
    • sliver
    • Aggregate Manager API (AM API)
  • Customize the resources/RSpec you reserve using standard mechanisms:
    • understand that an RSpec is an XML file
    • understand that resources are reserved using the aggregate manager API (AM API)
    • understand how to load a topology using an RSpec
    • have edited an RSpec using a tool (Flack)
    • have reserved and deleted resources using a command line tool (omni)
    • know how to specify the image to load on a compute node
    • know how to have software automatically loaded and run on a compute node
    • have run a simple layer 2 experiment
  • Use multiple tools to act on a slice and reserve resources
    • understand that all tools use common mechanisms to describe resources (RSpecs) and to reserve resources (the AM API)
    • learn how to use omni to reserve resources
    • learn how to use Flack to edit RSpecs
  • Understand the strengths of different types of GENI racks

Experiment Topology and Setup

Tutorial Setup

Use the Omni GENI client to reserve two VMs connected by a Layer 2 circuit.

Then arrange for automatic installation and execution of software on these nodes (performing basic traffic measurement tests), and manually log in to inspect the results.


  • Part I: Design/Setup
    • Step 1: Design Experiment
    • Step 2: Establish Management Environment
    • Step 3: Obtain Resources
  • Part II: Execute
    • Step 4: Configure and Initialize Services
    • Step 5: Execute Experiment
    • Step 6: Analyze and Visualize Experiment