GEC21Agenda/GettingStartedWithGENI

GEC21 Tutorial: Getting Started with GENI

Schedule

This tutorial spans two sessions:

Monday 10.15am - 11.30am, 01.30pm - 03.00pm and 03:30pm - 05:30pm

Session Leaders

Sarah Edwards
GPO
Vic Thomas
GPO
Niky Riga
GPO

Agenda / Details

This three-part tutorial session is for those with little to no experience running experiments on GENI. Attendees will be introduced to key GENI concepts, will run simple experiments on GENI and learn the basics of debugging their GENI experiments. By the end of this session participants should feel comfortable running their own experiments on GENI.

Part I: Develop a basic understanding of the experiment workflow by doing a simple experiment. Understand the role of the data and control interfaces on each compute node.

Part II: 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.

Part III: Pick a DIY exercise and run an experiment on your own applying concepts and tools learned in Parts I and II.

Familiarity with the material presented in this session will be assumed in other tutorials at GEC.

Pre-Requisites

There are no pre-requisites for this tutorial.

Attendees should have done the  pre-work (getting a GENI account, installing GENI tools, etc).

The following background will be helpful for this tutorial:

Results

In Part I, attendees will run their first complete experiment in GENI.

At the end of Part I, attendees will be able to:

  • Use and understand the following terms:
    • Experimenter
    • Project
    • Slice
    • Aggregate
    • Resource
    • Resource Specification (aka RSpec)
  • Do the complete experiment workflow:
    • understand how to use their GENI Experimenter Portal account to join a project and create a slice
    • know how to draw an experimental topology and reserve resources using a graphical tool (Jacks/jFed)
    • know how to log into compute resources using ssh and a private key
    • know how to manually load software onto a compute node
    • understand the purpose of the control and data interfaces
    • know how to delete resources

In Part II, attendees will run their second complete experiment in GENI.

At the end of Part II, attendees will be able to:

  • Use and understand the following terms:
    • Resource Specification (aka RSpec)
    • sliver
    • Aggregate Manager API (AM API)
  • Customize the resources they reserve using standard mechanisms:
    • understand that a resource specification (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) as well as by hand
    • 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)
  • Understand the strengths of different types of GENI racks

In Part III attendees will pick an exercise from a selection of topics in the areas below:

  • network configuration (e.g. learn how to configure static routes)
  • demonstrate a networking principle (e.g. observe TCP behavior under various delays)
  • write and run a program for an experiment (e.g. modify code from a git repository and test it on GENI)
  • practice an intermediate GENI skill (e.g. write an install script)

Tutorial materials

Part I: A first experiment using GENI

  • Instructions (jFed): web [pdf]
  • Instructions (Jacks): web [pdf]
  • Slides: pptx Download
  • Worksheets: [docx] [pdf]

Working with Collaborators

  • Slides: pptx Download (starts on 67)

Break for Talk and Lunch

Part II: Understanding the AM API using a simple experiment

  • Instructions (jFed): web [pdf]
  • Instructions (Jacks): web [pdf]
  • Appendix: web [pdf]
  • Slides: pptx Download
  • Worksheets: [docx]

Getting started with your own experiment

  • Advanced Topics
  • Solving Common Issues
  • Getting Help
  • Slides: pptx Download

Part III: Work on your own on assigned exercises

Network Software GENI/System Administration
beginner  Network Debugging using `ping`, `tcpdump`, and `nc`
 IP Routing Using Static Routes
 GENI Desktop with CCNx (cont. of Lab One)
intermediate  Effect of RTT and Window Size on TCP Throughput
 TCP behavior with competing traffic
 Modify a Layer 2 ping program (`pingPlus`) (use ExoGENI) Automate installing a Webserver using a custom install script
advanced  Compare Performance of Different TCP Options Create a software router using custom install scripts
 XORP (1 page)
Click

Want to do this exercise at home or in the classroom? Complete information for these exercises is available.

Attachments