[[PageOutline]] = GENI Regional Workshop at NEIU on September 18-19, 2015 = == Friday morning == * Introduction to GENI - by Niky Riga, GPO [http://groups.geni.net/geni/raw-attachment/wiki/GENIExperimenter/Tutorials/TrainTheTA-Fall2015/GENIOverview.pptx slides] * Education Modules - by Jay Aikat, UNC * [http://geni.web.unc.edu/ GENI Education Modules] * [http://silver.web.unc.edu/cscw2015/modules/ Cloud Security Education Modules] == Friday 13:00 - 14:30 == === Lab Zero: A first experiment using GENI === * [http://groups.geni.net/geni/raw-attachment/wiki/GENIEducation/IntroTalks/Terminology_SSH_Expiration_16x9.pptx Background Presentation] - GENI Terminology - How SSH with a Private Key Works - Expiration and Renewal * Hands-On * Presentation: Lab Zero: A First Experiment Using GENI * Instructions: [wiki:GENIExperimenter/Tutorials/jacks/GettingStarted_PartI/Procedure web] * Worksheets: [http://groups.geni.net/geni/raw-attachment/wiki/GENIExperimenter/Tutorials/GettingStarted_PartI/ForInstructors/GettingStarted_PartI_Worksheet_141030.docx docx] === Lab One: Understanding the AM API using a simple experiment === * [attachment:LabOne-Intro-09182015.pptx Background Presentation] - Behind the Scenes of GENI Experimentation: An Introduction to GENI Tools - Automating Resource Configuration * Hands-On * Presentation: [attachment:hadoop-overview-short.pdf Hadoop overview] * ''Slides borrowed from Dr. Amr Awadallah``, [http://web.stanford.edu/class/ee380/Abstracts/111116-slides.pdf original slides] * Instructions: [http://groups.geni.net/geni/wiki/GENIExperimenter/Tutorials/jacks/HadoopInASlice web] === Systematic Experimentation === * Slides: [http://groups.geni.net/geni/raw-attachment/wiki/GENIExperimenter/Tutorials/SystematicExperimentationAnsible/GRW_NEIU_SysExp_v1.pptx pptx] * Instructions: [wiki:GENIExperimenter/Tutorials/SystematicExperimentationAnsible web] == Friday 15:00 - 16:00 == === !CloudLab === * !CloudLab [http://cloudlab.us/ login] * Slides: [attachment: pptx] * [http://docs.cloudlab.us/cloudlab-tutorial.html Instructions] == Friday 16:00 - 17:00 == === Introduction to OpenFlow === * Slides == Saturday 08:30 - 10:30 == === Hands-On OpenFlow and NFV === * Slides * Instructions * [http://groups.geni.net/geni/wiki/GENIExperimenter/Tutorials/OpenFlowOVS OpenFlow 1.0 (OVS or Hardware)] * [https://floodlight.atlassian.net/wiki/display/floodlightcontroller/How+to+Work+with+Fast-Failover+OpenFlow+Groups#HowtoWorkwithFast-FailoverOpenFlowGroups-ResourceAllocation OpenFlow 1.3] * [http://groups.geni.net/geni/wiki/GENIExperimenter/Tutorials/OpenFlowNetworkDevices Network Function Virtualization] == Saturday 11:00 - 12:30 == === Wireless === * Instructions: [http://witestlab.poly.edu/respond/sites/genitutorial/ web] * Slides: [attachment:grw-wimaxslides.pptx slides] === geni-lib === * Pre-work (from this [http://groups.geni.net/geni/wiki/HowTo/InstallGeniLibInVB HowTo page] and repeated here for reference): * If you have a mac running 10.10, geni-lib won't work. Instead boot up a VM on your local machine and install geni-lib there. * We find the combination of [https://www.virtualbox.org/wiki/Downloads VirtualBox] and [http://www.vagrantup.com/downloads vagrant] is really easy to use: 1. Install [https://www.virtualbox.org/wiki/Downloads VirtualBox] 1. Install [http://www.vagrantup.com/downloads vagrant] 1. Follow the [https://docs.vagrantup.com/v2/getting-started/index.html getting started] instructions for vagrant: {{{ mac> vagrant init hashicorp/precise32 # an Ubuntu 12.04 LR 32-bit image mac> vagrant up # load the virtual machine mac> vagrant ssh # login to your VM }}} 1. Install geni-lib following the instructions for [http://geni-lib.readthedocs.org/en/latest/intro/ubuntu.html Ubuntu]. Note you may have to run `sudo apt-get update` when prompted. 1. Download the `omni.bundle` using the browser on your mac, but then copy the `omni.bundle` file from the `Downloads` directory to the same directory as your Vagrantfile. {{{ mac> mv ~/Downloads/omni.bundle /path/to/where/running/vagrant }}} 1. Then when you configure geni-lib, run the following command inside your VM instead of the listed instructions: {{{ ubuntu> context-from-bundle --bundle /vagrant/omni.bundle }}} 1. You should now be able to [http://geni-lib.readthedocs.org/en/latest/tutorials/portalcontext.html#test-it-out test your setup] following the usual steps. 1. When you are done {{{ ubuntu> exit mac> vagrant halt # to shutdown your VM (vagrant destroy will completely delete the VM causing you to lose all your work) }}} * Slides [attachment:geni-lib.pdf pdf] * Instructions * [http://geni-lib.readthedocs.org/en/latest/intro/install.html Pre-work: Install geni-lib] * [http://geni-lib.readthedocs.org/en/latest/tutorials/portalcontext.html Configure geni-lib] * [http://geni-lib.readthedocs.org/en/latest/tutorials/federationquery.html Query Resources] * [http://geni-lib.readthedocs.org/en/latest/tutorials/singlevm.html Request a Single VM] == Saturday 13:30 - 15:30 == === Advanced Exercises === * Inter-aggregate Links - Presentation: Inter-rack Connectivity and Stitching - Hands-On Instructions (pick one): * (easy) Simple topology: [http://groups.geni.net/geni/wiki/Tutorials/Stitching/Procedure web] * Lab One with a Stitched Topology: [http://groups.geni.net/geni/wiki/GENIExperimenter/Tutorials/jacks/GettingStarted_PartII_ccn/Procedure/AppendixStitching web] * Systematic Experiments and Scaling Topologies Demonstration - Presentation: slides ''Part III: Work on your own on assigned exercises'' ''GENI Desktop'' * [http://groups.geni.net/geni/wiki/GENIExperimenter/Tutorials/GettingStarted_PartII_ccn/Procedure/Execute/GEMINI GENI Desktop with CCNx (cont. of Lab One)] ''!LabWiki'' * Videos: * [https://vimeo.com/album/3201122/video/122443850 LabWiki Interface] * [https://vimeo.com/album/3201122/video/122443852 Hello World] * [https://vimeo.com/album/3201122/video/122443853 Run Application on a Single Resource] * [https://vimeo.com/122443851 Learning Switch] * Other [https://vimeo.com/album/3201122 LabWiki Videos] ''jFed resource reservation tool'' * Lab Zero (jFed): [wiki:GENIExperimenter/Tutorials/jFed/GettingStarted_PartI/Procedure web] * Lab One (jFed): [wiki:GENIExperimenter/Tutorials/jFed/GettingStarted_PartII_ccn/Procedure web] ''Networking, Software, GENI/SysAdmin'' || || Network || Software || GENI/System Administration || || Beginner || [http://groups.geni.net/geni/wiki/GENIExperimenter/Tutorials/jacks/GettingStarted_PartII_ccn/Procedure Experiment with the Named Data Networking Future Internet Architecture ] [[BR]] [http://groups.geni.net/geni/wiki/GENIEducation/SampleAssignments/IPRouting/Procedure IP Routing Using Static Routes (no LabWiki)] [[BR]] [http://groups.geni.net/geni/wiki/GENIEducation/SampleAssignments/IPRouting/ProcedureWithLabWiki LabWiki Exercise: IP Routing with LabWiki] [[BR]] [http://www.cs.unc.edu/Research/geni/geniEdu/05-TrafficAnalysis.html Network Debugging using `ping`, `tcpdump`, and `nc` (Jay's Module)] || || [http://www.cs.unc.edu/Research/geni/geniEdu/02-WebServer.html Install a web server and test it by hand (Jay's Module)] || || Intermediate || [http://www.cs.unc.edu/Research/geni/geniEdu/04-TcpDelayWinSize.html Effect of RTT and Window Size on TCP Throughput (Jay's Module)] [[BR]] [http://www.cs.unc.edu/Research/geni/geniEdu/03-TcpTraffic.html TCP behavior with competing traffic (Jay's Module)] || [http://groups.geni.net/geni/wiki/GEC17Agenda/GettingStartedWithGENI_II/Exercise2/Procedure Modify a Layer 2 ping program (`pingPlus`) (use ExoGENI)] ||[http://groups.geni.net/geni/wiki/PaperOSRMethodology OSPF route convergence] [[BR]] [wiki:GENIEducation/SampleAssignments/InstallScripts/Procedure How to write a custom install script to install a Webserver]|| || Advanced || [http://groups.geni.net/geni/wiki/GENIEducation/SampleAssignments/TcpAssignment Compare Performance of Different TCP Options]|| || How to write a custom install script to create a software router [[BR]] [http://groups.geni.net/geni/wiki/GENIExperimenter/Tutorials/SystematicExprCaseStudy/InstallSoftware XORP (1 page)] [[BR]] [wiki:GENIEducation/SampleAssignments/InstallScripts/Procedure Click]|