Sponsored by the National Science Foundation Behind the Scenes of GENI Experimentation featuring Content Centric Networking.

Slides:



Advertisements
Similar presentations
Sponsored by the National Science Foundation Working with Collaborators.
Advertisements

University of Kentucky GENI User Tools and the Control Plane Zongming Fei, Jim Griffioen University of Kentucky.
Sponsored by the National Science Foundation Lab Zero: A First Experiment.
Sponsored by the National Science Foundation 1 Lab Zero – November 6, 2014 Are you ready for the tutorial? 1.Grab a Worksheet and instructions 2.Did you.
Sponsored by the National Science Foundation Using Omni to Build Tools Sarah Edwards, GENI Project Office 23 July 2013 $ omni.py createsliver aliceslice.
Sponsored by the National Science Foundation An Introduction to GENI Tools Sarah Edwards GENI Project Office.
Using the jFed tool to experiment from zero to hero Brecht Vermeulen FGRE, July 7 th, 2015.
Sponsored by the National Science Foundation Omni: a command line GENI resource reservation tool Niky Riga, Sarah Edwards GENI Project Office 13 March,
OnTimeMeasure Integration with Gush Prasad Calyam, Ph.D. (PI) Tony Zhu (Software Programmer) Alex Berryman (REU Student) GEC10 Selected.
Sponsored by the National Science Foundation Tutorial: Advanced Topics in Networking Experiments using GENI Niky Riga, Sarah Edwards GENI Project Office.
Sarah Edwards, GENI Project Office
Andy Bavier, PlanetWorks Scott Baker, SB-Software July 27, 2011.
National Science Foundation Arlington, Virginia January 7-8, 2013 Tom Lehman University of Maryland Mid-Atlantic Crossroads.
Sponsored by the National Science Foundation GENI Exploring Networks of the Future Niky Riga, GENI Project Office
Using the jFed tool to experiment from zero to hero Brecht Vermeulen Thijs Walcarius GEC 22, March 24 th, 2015.
Sponsored by the National Science Foundation Towards an Ontology-savvy Aggregate Manager API Marshall Brinn GENI Program Office Sept. 17, 2015.
GEC 15 Houston, Texas October 23, 2012 Tom Lehman Xi Yang University of Maryland Mid-Atlantic Crossroads (MAX)
Visual Experiment Management Matt Strum, University of Utah.
Sponsored by the National Science Foundation 1 September 15, 2015 Are you ready for the tutorial? 1.Grab a Worksheet and instructions 2.Did you do the.
Sponsored by the National Science Foundation Behind the Scenes of GENI Experimentation An Introduction to GENI Tools Sarah Edwards, GENI Project Office.
Sponsored by the National Science Foundation GENI Exploring Networks of the Future
Sponsored by the National Science Foundation GENI Exploring Networks of the Future Sarah Edwards, GPO
Sponsored by the National Science Foundation GENI Terminology: How All the Pieces Fit Together Sarah Edwards GENI Project Office.
Sponsored by the National Science Foundation 1 GREESC15– May 25, 2015 Are you ready for the tutorial? 1.Grab a Worksheet and instructions 2.Did you do.
Sponsored by the National Science Foundation Lab Zero: A First Experiment using GENI Sarah Edwards, GENI Project Office.
Sponsored by the National Science Foundation LabWiki Tutorial (OMF/OML) Divya Bhat, Mike Zink, Pieter Becue, Brecht Vermeulen GEC20 July 8 th 2014, Ghent,
Sponsored by the National Science Foundation 1 Last updated April 1, 2013 Are you ready for the tutorial? 1.Sign In 2.Grab a Worksheet 3.Did you do the.
Sponsored by the National Science Foundation Tutorial: Introduction to Omni Niky Riga GENI Project Office GREESC13 $ omni.py createsliver aliceslice myRSpec.xml.
Sponsored by the National Science Foundation Getting Started With Your Own Experiment Sarah Edwards, GENI Project Office.
Sponsored by the National Science Foundation Tutorial: OpenFlow in GENI with Instrumentation and Monitoring Divya Bhat Shufeng Huang Niky Riga GENI Project.
Sponsored by the National Science Foundation Systematic Experimentation in GENI.
Sponsored by the National Science Foundation 1 ICDCS13: July 8, 2013 Are you ready for the tutorial? 1.Grab a Worksheet and instructions 2.Did you do the.
Sponsored by the National Science Foundation GENI Exploring Networks of the Future Sarah Edwards, GPO
Sponsored by the National Science Foundation 1 GEC16: March 20, 2013 Are you ready for the tutorial? 1.Did you do the pre-work? A.Are you able to login.
Sponsored by the National Science Foundation Lab Zero: A First Experiment using GENI.
Sponsored by the National Science Foundation Behind the Scenes of GENI Experimentation featuring Named Data Networking.
Behind the Scenes of GENI Experimentation Understanding GENI AM API and RSpec Sponsored by the National Science Foundation
Sponsored by the National Science Foundation Systematic Experimentation in GENI Sarah Edwards GENI Project Office.
Sponsored by the National Science Foundation Understanding the AM API through a simple Hadoop experiment.
Sponsored by the National Science Foundation 1 GREE SC: June 24, 2013 Are you ready for the tutorial? 1.Grab a Worksheet and instructions 2.Did you do.
Sponsored by the National Science Foundation GENI Aggregate Manager API Tom Mitchell March 16, 2010.
Behind the Scenes of GENI Experimentation Understanding GENI AM API and RSpec Sponsored by the National Science Foundation
Sponsored by the National Science Foundation Behind the Scenes of GENI Experimentation An Introduction to GENI Tools Sarah Edwards, GENI Project Office.
Sponsored by the National Science Foundation Tutorial: Experimenter Workflow and Topologies using GENI Niky Riga, Sarah Edwards GENI Project Office 13.
LAMP and INSTOOLS A configuration overview 118/05/2012 Raphael Dourado.
Sponsored by the National Science Foundation Lab Zero: A First Experiment using GENI Sarah Edwards GENI Project Office.
Sponsored by the National Science Foundation Getting Started With Your Own Experiment.
Sponsored by the National Science Foundation Today’s Exercise.
Sponsored by the National Science Foundation Tutorial: Advanced Topics in Networking Experiments using GENI Niky Riga, Sarah Edwards GENI Project Office.
Sponsored by the National Science Foundation 1 Lab Zero – October 20, 2014 Are you ready for the tutorial? 1.Grab a Worksheet and instructions 2.Did you.
Sponsored by the National Science Foundation GENI Experimenter Portal Service Developers Roundtable GENI Engineering Conference 16 Salt Lake City, Utah.
Sponsored by the National Science Foundation GENI Exploring Networks of the Future
Sponsored by the National Science Foundation GENI Exploring Networks of the Future
Behind the Scenes of GENI Experimentation An Introduction to GENI Tools Sponsored by the National Science Foundation.
Sponsored by the National Science Foundation 1 Lab Zero – March 14, 2014 Are you ready for the tutorial? 1.Grab a Worksheet and instructions 2.Did you.
Sponsored by the National Science Foundation Behind the Scenes of GENI Experimentation featuring Named Data Networking Sarah Edwards.
Sponsored by the National Science Foundation GENI Exploring Networks of the Future
Sponsored by the National Science Foundation Behind the Scenes of GENI Experimentation An Introduction to GENI Tools Sarah Edwards GENI Project Office.
Sponsored by the National Science Foundation Understanding the AM API through a simple Hadoop experiment.
Sponsored by the National Science Foundation Tutorial: Advanced Topics in Networking Experiments using GENI Niky Riga, Vic Thomas, Tim Upthegrove GENI.
Sponsored by the National Science Foundation Click Software Routers Sarah Edwards GENI Project Office.
Sponsored by the National Science Foundation Systematic Experimentation Sarah Edwards GENI Project Office.
Sponsored by the National Science Foundation GENI Terminology Sarah Edwards, GENI Project Office Violet Syrotiuk, Arizona State University.
Sponsored by the National Science Foundation 1 GEC16: March 19, 2013 Are you ready for the tutorial? 1.Sign In 2.Grab a Worksheet 3.Did you do the pre-work?
Using the jFed tool to experiment from zero to hero
Run a Complete Experiment
Understanding the AM API through a simple experiment
Getting Started With Your Own Experiment
Basic Tutorial Part II 31/12/2018.
GENI Exploring Networks of the Future
Presentation transcript:

Sponsored by the National Science Foundation Behind the Scenes of GENI Experimentation featuring Content Centric Networking

Sponsored by the National Science Foundation 2 Understanding the AM API –June 23, 2014 In Part 1 You Learned to… Log into the GENI Portal

Sponsored by the National Science Foundation 3 Understanding the AM API –June 23, 2014 Log into the GENI Portal Create a slice In Part 1 You Learned to…

Sponsored by the National Science Foundation 4 Understanding the AM API –June 23, 2014 Log into the GENI Portal Create a slice Launch the Flack experimenter tool In Part 1 You Learned to…

Sponsored by the National Science Foundation 5 Understanding the AM API –June 23, 2014 Log into the GENI Portal Create a slice Launch the Flack experimenter tool Set up a simple experiment –Add resources to your slice from an aggregate –Use the resources in your slice In Part 1 You Learned to…

Sponsored by the National Science Foundation 6 Understanding the AM API –June 23, 2014 Log into the GENI Portal Create a slice Launch the Flack experimenter tool Set up a simple experiment –Add resources to your slice from an aggregate –Use the resources in your slice Delete resources in your slice In Part 1 You Learned to…

Sponsored by the National Science Foundation 7 Understanding the AM API –June 23, 2014 In Part 2 You will Learn… What happens behind the scenes when you run an experiment on GENI New concepts: –GENI Resource Specifications (RSpecs) –GENI Aggregate Manager API (GENI AM API)

Sponsored by the National Science Foundation 8 Understanding the AM API –June 23, 2014 Tutorial Objectives By the end of this tutorial you should: –Feel comfortable running experiments on GENI –Have a basic understanding of how GENI works Later exercises may skip some of the basic steps in this tutorial to focus on new material –You may be given an RSpec to use rather than have you create one –You may use slices that have already been created and resources added to them For a description of the GENI concepts covered, see:

Sponsored by the National Science Foundation 9 Understanding the AM API –June 23, 2014 GENI Resource Specifications (RSpecs) RSpecs are XML documents that describe resources –VMs, links, etc. RSpec for a virtual machine with one interface:

Sponsored by the National Science Foundation 10 Understanding the AM API –June 23, 2014 RSpecs RSpec documents are exchanged by experimenter tools (e.g. Flack) and aggregates –Aggregates use RSpecs to describe what they have – Advertisement RSpecs –Experimenters use RSpecs to describe the resources they want – Request RSpecs –Aggregates use RSpecs to describe the resources allocated to an experimenter – Manifest RSpecs

Sponsored by the National Science Foundation 11 Understanding the AM API –June 23, 2014 The GENI AM API Experimenter tools and aggregates talk to each other using the GENI Aggregate Manager API (GENI AM API) Aggregate Manager Experimenter Tool ListResources(…) Advertisement RSpec CreateSliver(Request RSpec, …) Manifest RSpec ListResources(SliceName, …) Manifest RSpec What do you have? I have … I would like … You have … What do I have? You have …

Sponsored by the National Science Foundation 12 Understanding the AM API –June 23, 2014 The GENI AM API Experimenter tools and aggregates talk to each other using the GENI Aggregate Manager API (GENI AM API) Aggregate Manager Experimenter Tool ListResources(…) Advertisement RSpec CreateSliver(Request RSpec, …) Manifest RSpec ListResources(SliceName, …) Manifest RSpec What do you have? I have … I would like … You have … What do I have? You have …

Sponsored by the National Science Foundation 13 Understanding the AM API –June 23, 2014 Putting it all Together… Flack calls ListResources on all aggregates it knows about Aggregates send back advertisement RSpecs Flack uses information in the advertisements to populate its palette of resources What do you have? I have …

Sponsored by the National Science Foundation 14 Understanding the AM API –June 23, 2014 Putting it all Together… When you drag and drop resources on to the Flack canvas, it creates request RSpecs for these resources –To view the request Rspec click on “View” and select “Preview request documents” When you click “Submit”, Flack makes createSliver calls on the aggregates I would like …

Sponsored by the National Science Foundation 15 Understanding the AM API –June 23, 2014 Putting it all Together… Flack periodically calls sliverStatus on the aggregates to check on the status of your request When sliverStatus shows: –Resources have been allocated, Flack turns its canvas yellow –Resources are ready to use, Flack turns its canvas green

Sponsored by the National Science Foundation 16 Understanding the AM API –June 23, 2014 Putting it all Together… ListResources with a slice name returns a manifest RSpec Manifest includes names and ports used to ssh into VMs –Flack uses this information to help you log into your resources What do I have? You have …

Sponsored by the National Science Foundation 17 Understanding the AM API –June 23, 2014 Putting it all Together… When you deleted your resources, Flack called deleteSliver on the aggregates

Sponsored by the National Science Foundation 18 Understanding the AM API –June 23, 2014 Hands-On Exercise* Reinforce new concepts using a Future Internet Architecture (FIA) based experiment –New concepts: RSpecs and AM API Experiment uses a Content Centric Networking (CCN) architecture –CCN: Access information by name rather than by going to a host that has that information E.g. Ask for “forecast for Davis, CA” rather than going to * Based on a classroom exercise developed by Sonia Fahmy, Ethan Blanton & Sriharsha Gangam of Purdue U.; Christos Papadopoulos & Susmit Shannigrahi of Colorado State U.

Sponsored by the National Science Foundation 19 Understanding the AM API –June 23, 2014 The Exercise Load an RSpec into Flack –Instead of drawing the topology ourselves (saves time) Edit the RSpec using Flack but don’t “submit” Save the request RSpec generated by Flack into a file Make GENI AM API calls to send the request RSpec, check status of resources, etc. –Use the Omni experimenter tool Run a CCN application (Optional) Visualize the experiment using the GENI Desktop and GEMINI instrumentation tool

Sponsored by the National Science Foundation 20 Understanding the AM API –June 23, 2014 Omni: Resource Reservation tool A command line experimenter tool Useful for making AM API calls on aggregates Written in and scriptable from Python Works with aggregates that implement the GENI AM API –InstaGENI and ExoGENI racks, ProtoGENI, PlanetLab, FOAM (OpenFlow AM) $ omni.py createsliver aliceslice myRSpec.xml INFO:omni:Loading config file omni_config INFO:omni:Using control framework pgeni INFO:omni:Slice urn:publicid:IDN+pgeni.gpolab. expires within 1 day on INFO:omni:Creating sliver(s) from rspec file INFO:omni:Writing result of createsliver for INFO:omni:Writing to ‘aliceslice-manifest-rspe INFO:omni: INFO:omni: Completed createsliver: Options as run: aggregate: framework: pgeni native: True Args: createsliver aliceslice myRSpec.xml Result Summary: Slice urn:publicid:IDN+pgeni Reserved resources on Saved createsliver results to aliceslice-man INFO:omni: ===================================

Sponsored by the National Science Foundation 21 Understanding the AM API –June 23, 2014 Omni Command Workflow createslicelistmyslicesgetversionrenewslicecreatesliverlistresourcessliverstatusdeletesliver Repeat for each aggregate Repeat for each aggregate Create Slice Create Sliver Cleanup Legend: AM API command

Sponsored by the National Science Foundation 22 Understanding the AM API –June 23, 2014 GENI AM API Calls Used listresources: Get an advertisement rspec listing the resources at an aggregate createsliver: Request resources from an aggregate sliverstatus: Get status of resources allocated to a slice at an aggregate deletesliver: Delete resources allocated to a slice by an aggregate For a complete list of GENI AM API calls see:

Sponsored by the National Science Foundation 23 Understanding the AM API –June 23, 2014 Corresponding Omni Commands omni –a aggregatename listresources omni –a aggregatename createsliver slicename requestRSpec omni –a aggregatename sliverstatus slicename omni –a aggregatename listresources slicename omni –a aggregatename deletesliver slicename A useful utility (distributed with Omni): readyToLogin –a aggregatename slicename –Gives you the ssh commands you need to log into your nodes readyToLogin.py parses the output of listresources and sliverstatus to determine the hostname, port and username for the ssh commands

Sponsored by the National Science Foundation 24 Understanding the AM API –June 23, 2014 Tutorial Structure Configure Omni (Step 2.2 of instructions) View and edit an RSpec using Flack (Steps 3.2 – 3.5) Request resources specified in RSpec using Omni (Step 3.6) When resources are ready, log into a node to run the CCN application (Step 5) (Optional) Visualize the experiment using the GENI Desktop and GEMINI –GENI Instrumentation and Measurement system –Tutorial on GENI Desktop/GEMINI 1.30pm

Sponsored by the National Science Foundation 25 Understanding the AM API –June 23, 2014 Tutorial Tips Cut-and-paste is your friend! –Cut-and-paste URLs, commands, etc. from instructions into text boxes, terminal windows, etc If at any step you don’t understand why you are doing something, ask! If you fall behind, let us know! –We will help you catch up

Sponsored by the National Science Foundation 26 Understanding the AM API –June 23, 2014 CONFIGURE OMNI Step 2.2

Sponsored by the National Science Foundation 27 Understanding the AM API –June 23, 2014 Configuring Omni Omni reads a configuration file omni_config to: –Find locations of ssl certs and ssh key files ssl certs are used to secure communication between Omni and the aggregates ssh key pairs are used log into compute resources –Find standard nicknames for aggregates e.g. you can refer to the InstaGENI rack at NYSERNet as nysernet-ig instead of

Sponsored by the National Science Foundation 28 Understanding the AM API –June 23, 2014 Creating an Omni Config File 1.Download the GENI bundle from the GENI Portal $ omni-configure 2. Run omni-configure in a terminal window

Sponsored by the National Science Foundation 29 Understanding the AM API –June 23, 2014 VIEW AND EDIT RSPEC Steps 3.2 – 3.5

Sponsored by the National Science Foundation 30 Understanding the AM API –June 23, 2014 Tips Remember cut-and-paste! Errors in URLs or other text boxes will cause your experiment to fail For this exercise, do not use Flack to submit your RSpec

Sponsored by the National Science Foundation 31 Understanding the AM API –June 23, 2014 REQUEST RESOURCES Step 3.6

Sponsored by the National Science Foundation 32 Understanding the AM API –June 23, 2014 Tips Successful return from Omni createsliver means your RSpec was submitted to the AM It does not mean: –The RSpec was correct –The resources are available Use readyToLogin to monitor your resources –Wait until the status turns to “ready” before using

Sponsored by the National Science Foundation 33 Understanding the AM API –June 23, 2014 LEARN ABOUT CCN While we wait for our resources to become ready…

Sponsored by the National Science Foundation 34 Understanding the AM API –June 23, 2014 Content Centric Networking … also known as Named Data Networking PRINCIPLE Focus on what you need; not on where you find it TODAY Must know the location of information (aka URL) –Search engines map the what to the where –Most Internet information look-ups start with search engines CCN (NDN) New network architecture reflects Internet usage CCN protocols cache data at all network levels –routers, hosts

Sponsored by the National Science Foundation 35 Understanding the AM API –June 23, 2014 CCNX An implementation of CCN by Xerox PARC Our exercise uses CCNX software –Software runs on all nodes in our experiment –All nodes cache information that passes through them –When a node gets a data request it: Returns data from local cache, if available Passes request to neighbor if data not in cache Caches data returned by neighbor

Sponsored by the National Science Foundation 36 Understanding the AM API –June 23, 2014 Our Experiment Data Source (dsrc1): Holds precipitation data from 1 Jan 1901 to 31 Jan 1902 (data from NOAA) Intermediate node (router). Requests not in local cache forwarded to data source. Researcher (rschr) fetches precipitation data by name (e.g. precip data from 1901/01/01 to 1901/01/02). Requests not in local cache forwarded to router. Collaborator (collab) also fetches data by name. Requests not in local cache forwarded to researcher.

Sponsored by the National Science Foundation 37 Understanding the AM API –June 23, 2014 Our Experiment Log into the researcher node (rsrchr) and fetch data –Use a client program already installed on the node Installed using an install script in the RSpec Note how long it takes to get data Fetch same data again and note time If time permits –Repeat the above at the collaborator node (collab) Data is not in local cache but in rsrchr node cache –Fetch new data at the collaborator node (collab) Data is not in local cache or in rsrchr node cache Optional: Use GENI Desktop/GEMINI to view graphs of traffic on links –Helps visualize when data comes from a local cache and when it comes from a neighbor

Sponsored by the National Science Foundation 38 Understanding the AM API –June 23, 2014 RUN THE CCN APPLICATION Step 5

Sponsored by the National Science Foundation 39 Understanding the AM API –June 23, 2014 Tip Cut-and-paste ssh command from readyToLogin into a terminal to log into the rsrchr node. Example: $ ssh -p i /Users/vthomas/.ssh/geni_key_portal

Sponsored by the National Science Foundation 40 Understanding the AM API –June 23, 2014 VISUALIZE EXPERIMENT Optional

Sponsored by the National Science Foundation 41 Understanding the AM API –June 23, 2014 FINISH Step 7

Sponsored by the National Science Foundation 42 Understanding the AM API –June 23, 2014 Finish Don’t Delete YET!!! We will clean up after Part 3