Changes between Version 59 and Version 60 of GENIEducation/SampleAssignments
- Timestamp:
- 01/28/16 12:25:17 (8 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
GENIEducation/SampleAssignments
v59 v60 9 9 == 1. Introduction to GENI == 10 10 === Lab Zero: My first GENI Experiment === 11 [wiki:GENIExperimenter/Tutorials/GettingStarted_PartI/ForInstructors Link to materials] (recommended) [[BR]]11 [wiki:GENIExperimenter/Tutorials/GettingStarted_PartI/ForInstructors Link to exercise] ('''highly recommended''' as a first lab that the students do in the class with help of an instructor) [[BR]] 12 12 '''Type:''' Tutorial (Instructor-led mode preferred) [[BR]] 13 13 '''Purpose:''' Setup students accounts correctly through a simple GENI experiment and familiarize students with the process of setting up an experiment. [[BR]] 14 '''Resources:''' 2VMs (EG, IG , PG)[[BR]]15 '''Duration:''' 1h [[BR]] [[BR]]16 This lab is '''highly recommended''' as a first lab that the students do in the class with help from an instructor or as the basic hands-on exercise in a GENI event.14 '''Resources:''' 2VMs (EG, IG)[[BR]] 15 '''Duration:''' 1h [[BR]] 16 '''POC:''' [mailto:tutorials@geni.net Experimenter support], GENI Project Office 17 17 18 18 === Lab One: Understanding the AM API and Omni === 19 [wiki:GENIExperimenter/Tutorials/GettingStarted_PartII_ccn/ForInstructors Link to materials] [[BR]]19 [wiki:GENIExperimenter/Tutorials/GettingStarted_PartII_ccn/ForInstructors Link to exercise] [[BR]] 20 20 '''Type:'''Tutorial (Instructor-led mode preferred) [[BR]] 21 21 '''Purpose:''' Students understand how GENI reservation process work and get familiar with the GENI common Aggregate Manager API (GENI AM API), the students also learn how to use Omni [[BR]] 22 '''Resources:'''4 VMs (EG)[[BR]] 23 '''Duration:''' 1h [[BR]][[BR]] 22 '''Resources:'''4 VMs (IG) [[BR]] 23 '''Duration:''' 1h [[BR]] 24 '''POC:''' [mailto:tutorials@geni.net Experimenter support], GENI Project Office 25 26 === GENI Desktop Basics === 27 [http://www.cs.unc.edu/Research/geni/geniEdu/01-Instrumentation.html Link to exercise] [[br]] 28 '''Type:''' Self-guided tutorial [[br]] 29 '''Purpose:''' Teach the basics of instrumenting a slice and viewing measurement data using the GENI Destop [[br]] 30 '''Resources:''' 2 VMs (IG) [[BR]] 31 '''Duration:''' 1h [[BR]] 32 '''POC:''' [mailto:aikat@cs.unc.edu Jay Aikat], University of North Carolina, Chapel Hill 24 33 25 34 == 2. Networking Basics == … … 29 38 '''Purpose:''' Students will understand how IPv4 forwarding works and how to configure static routes. [[BR]] 30 39 '''Resources:''' 3 VMs (EG). [[BR]] 31 '''Difficulty:''' Easy [[BR]][[BR]] 40 '''Difficulty:''' Easy [[br]] 41 '''POC:''' [mailto:mzink@cas.umass.edu Mike Zink], University of Massachusetts, Amherst 42 32 43 33 44 === TCP Congestion Control === … … 37 48 '''Resources:''' 2 VMs (IG). Uses the GENI Desktop to visualize flows. [[BR]] 38 49 '''Duration:''' 20 minutes for in-class demo [[br]] 39 '''Difficulty:''' !Easy/Moderate 50 '''Difficulty:''' !Easy/Moderate [[br]] 51 '''POC:''' [mailto:aikat@cs.unc.edu Jay Aikat], University of North Carolina, Chapel Hill 52 40 53 41 54 === Effect of RTT and Window Size on TCP Throughput === … … 45 58 '''Resources:''' 2 VMs (IG). Uses the GENI Desktop to visualize flows. [[BR]] 46 59 '''Duration:''' 20 minutes for in-class demo [[br]] 47 '''Difficulty:'''Moderate 48 49 {{{ 50 #!comment 51 === FTP vs UDT === 52 [wiki:UDTExampleExperiment Link to exercise][[BR]] 53 '''Type:''' Assignment [[BR]] 54 '''Purpose:''' Students will understand the difference between TCP and UDP by comparing the behavior of two different file transfer applications (FTP, UDT) under varying network conditions.[[BR]] 55 '''Resources:'''3 PCs (PG)[[BR]] 56 '''Difficulty:''' medium [[BR]][[BR]] 57 }}} 60 '''Difficulty:'''Moderate [[br]] 61 '''POC:''' [mailto:aikat@cs.unc.edu Jay Aikat], University of North Carolina, Chapel Hill 62 58 63 59 64 === Learning Switch === … … 61 66 '''Type:''' Assignment [[BR]] 62 67 '''Purpose:''' Implementation of the learning switch capability that is used by Ethernet switches. Develop a five-port learning switch using a software-based OpenFlow switch. This exercise uses the LabWiki tool. [[br]] 63 '''Difficulty:''' Moderate/advanced 68 '''Difficulty:''' Moderate/advanced [[br]] 69 '''POC:''' [mailto:mzink@cas.umass.edu Mike Zink], University of Massachusetts, Amherst 70 64 71 65 72 == 3. Advanced Networking == … … 69 76 '''Purpose:''' Implement of a load balancer using OpenFlow switches (OVS switches) and a controller capable of collecting flow stats. The exercise includes a template for a Trema-based controller. Only a few methods need to implemented to get the required functionality. 70 77 '''Resources:''' 6 VMs. 71 '''Difficulty:''' Moderate/advanced 78 '''Difficulty:''' Moderate/advanced [[br]] 79 '''POC:''' [mailto:mzink@cas.umass.edu Mike Zink], University of Massachusetts, Amherst 80 72 81 73 82 === OpenFlow based Load Balancing Router === … … 76 85 '''Purpose:''' Implement of a load balancer using OpenFlow switches (OVS switches) and a controller capable of collecting flow stats. The exercise includes a template for a Treme-based controller. Only a few methods need to implemented to get the required functionality. [[br]] 77 86 '''Resources:''' 7 VMs (including a VM for the !OpenFlow controller) [[br]] 78 '''Difficulty:''' Moderate/advanced 87 '''Difficulty:''' Moderate/advanced [[br]] 88 '''POC:''' [mailto:mzink@cas.umass.edu Mike Zink], University of Massachusetts, Amherst 89 79 90 80 91 === VLC/Dynamic Adaptive Streaming over HTTP === … … 83 94 '''Purpose:''' Give students a better understanding of how Dynamic Adaptive Streaming over Http (DASH) works. It builds on the "Load Balancing Router" exercise and uses the same topology. VLC parameters such as VLC decision bit rate (actual measured bit rate), VLC empirical rate (instant measured throughput) are measured and displayed using GIMI tools. [[br]] 84 95 '''Resources:''' 7 VMs (including a VM for the !OpenFlow controller) [[br]] 85 '''Difficulty:''' Moderate/advanced 96 '''Difficulty:''' Moderate/advanced [[br]] 97 '''POC:''' [mailto:mzink@cas.umass.edu Mike Zink], University of Massachusetts, Amherst 98 86 99 87 100 === Content Centric Networking === … … 91 104 '''Resources:''' 4 VMs [[br]] 92 105 '''Tools:''' The GENI Portal. Option to use the GENI Desktop to visualize information caching and retreival in a content centric network. [[br]] 93 '''Difficulty:''' moderate 106 '''Difficulty:''' moderate [[br]] 107 '''POC:''' [mailto:tutorials@geni.net Experimenter support], GENI Project Office 108 94 109 95 110 === Network Function Virtualization: !OpenFlow based Firewall === … … 98 113 '''Purpose:''' Introduce NFV concepts by making an !OpenFlow controlled OVS switch function as a network firewall. Much of the code for the Ryu-based controller is provided. Uses the same topology as the !OpenFlow-based NAT exercise. [[br]] 99 114 '''Resources:''' 4 VMs [[br]] 100 '''Difficulty:''' Moderate/advanced 115 '''Difficulty:''' Moderate/advanced [[br]] 116 '''POC:''' [mailto:tutorials@geni.net Experimenter support], GENI Project Office 117 101 118 102 119 === Network Function Virtualization: !OpenFlow based NAT === … … 105 122 '''Purpose:''' Introduce NFV concepts by making an !OpenFlow controlled OVS switch function as a network firewall. Much of the code for the Ryu-based controller is provided. Uses the same topology as the !OpenFlow-based NAT exercise. [[br]] 106 123 '''Resources:''' 4 VMs [[br]] 107 '''Difficulty:''' Moderate/advanced 108 124 '''Difficulty:''' Moderate/advanced [[br]] 125 '''POC:''' [mailto:tutorials@geni.net Experimenter support], GENI Project Office 126 127 128 == Distributed Systems == 109 129 110 130 … … 177 197 || [wiki:GENIEducation/SampleAssignments/TcpAssignment TCP Assignment] || [[Image(GENIEducation/SampleAssignments/TcpAssignment:TCPAssignment.png, 30%, nolink)]] || || 178 198 199 {{{ 200 #!comment 201 === FTP vs UDT === 202 [wiki:UDTExampleExperiment Link to exercise][[BR]] 203 '''Type:''' Assignment [[BR]] 204 '''Purpose:''' Students will understand the difference between TCP and UDP by comparing the behavior of two different file transfer applications (FTP, UDT) under varying network conditions.[[BR]] 205 '''Resources:'''3 PCs (PG)[[BR]] 206 '''Difficulty:''' medium [[BR]][[BR]] 179 207 180 208 == GENI Tutorials == … … 182 210 || [http://www.protogeni.net/wiki/GeniTutorial Intro to Flack Tutorial] || [[Image(GENIExperimenter/Graphics:flack.png, 50%,nolink)]] || This is a tutorial for teaching users how to use Flack. Flack is a graphical tool that helps user reserve resources. || 183 211 || [wiki:GEC15Agenda/IntroToOmni/Instructions Intro to Omni Tutorial] || [[Image(http://trac.gpolab.bbn.com/gcf/raw-attachment/wiki/Omni/omni-pic.png, nolink, 50%)]] || This is a tutorial for teaching users how to use Omni. Omni is a command line tool for reserving GENI resources, and thus can help users automate their experiments. The tutorial guides the attendees through a very simple layer 2 example while introducing all the omni commands || 212 }}}