1 use protogeni cs606, xiaoyan hong university of alabama
TRANSCRIPT
2
outline• Prerequisites
– User account with Emulab (Utah site, per Prof Hong)– For using Flack (web-based), Browser be Flash ready
• ProtoGENI general entry– http://www.protogeni.net/
• Tutorial of using Flack Interface with example – http://www.protogeni.net/ProtoGeni/wiki/GeniTutorial– And with video clips
• Tutorial of using command line Linux – http://www.protogeni.net/ProtoGeni/wiki/Tutorial– And with video clips
• Assignment/project #0
3
Emulab’s Administrative Structure
• Emulab has a two level administrative structure: “Projects”, and “Groups”– Plus “Elab Admins” on top, and “Users” on the bottom
– E.g., a class project with multiple, isolated groups (created by the project leader)
• Administrative control is delegated to “leaders” at each level
• Project gets its own disk space/tree• Users may join multiple projects
• Groups are independent– Files/experiments are protected from each other
• Groups can share– Share the common project file hierarchy
4
Account at Emulab
• Obtain an account :– clicking "Request Account" and then "Join an Existing Project" on
the new page.
– You will need to join the project UA-cs606. https://www.emulab.net/reqaccount.php3
5
Flack based tutorialhttp://www.protogeni.net/ProtoGeni/wiki/GeniTutorial
• Follow the steps– Login and building credential for use
• http://www.youtube.com/watch?v=-XF6wyNu1BE (4min)
– Create a slice (a network)
– Use Rspec to specify a slice (resource and code) • http://www.youtube.com/watch?v=F5q-AYwggug&NR=1 (6min)
– Materialize the afore-claimed slice into sliver• After waiting for booting, your code is running. You have all the
resources at your finger tip
– Use tools to monitor your experimental traffic (INSTOOLS)
6
* NOTE: learn Rspec format through examples– http://www.protogeni.net/ProtoGeni/wiki/RSpecExamples
– http://www.protogeni.net/ProtoGeni/wiki/RSpec
7
Tutorial with Video : Flack based experiment
• First GENI Experience: Hello, GENI!– http://
groups.geni.net/geni/wiki/GENIExperimenter/Tutorials/RunHelloGENI
– First clip: login/download credential
– Second clip: set up slice/Rspec (save it from web)• Iperf server/client
– Clean up
8
Command line based tutorialhttp://www.protogeni.net/ProtoGeni/wiki/Tutorial
• Follow the steps– Login and building credential for use
– Obtain command line tools “test scripts”• Click the test scripts link
• http://www.protogeni.net/ProtoGeni/wiki/TestScripts
– Create a slice (a network) using registerslice.py
– Use Rspec to specify resource and code for the slice• Tickets contains all the resources and credentials to use them
– Materialize the afore-claimed slice into sliver
– Need to log into Linux machine to execute the code.
– * NOTE: uploading SSH keys
9
Video Tutorial:command line based experiment
• First Omni Experience: Hello, Omni!– http://groups.geni.net/geni/wiki/
GENIExperimenter/Tutorials/HelloOmni
10
Assignment/Project #0• Joining Mailing list for ProtoGENI Users
– https://groups.google.com/forum/?fromgroups#!forum/protogeni-users
• Sample Assignment– Use advanced tutorials: Writing a Web Server
– http://groups.geni.net/geni/wiki/WebServerExample
• Multithreaded server
• Obtain the example code and instruction and try out
• Modify the network parameters, curve your results.
• Submit a report.
11
Q&A
• 1. Physical system of ProtoGENI
• 2. Webserver vs iperf
• 3. Iperf condition vs network condition
•
12
Q&A, 1• 1. Physical system of ProtoGENI
– Physical network (real world hostname and IP address, link via internal network/switches)
– Experimental network (own defined topology, own hostname and ip address 10.0.*. *.)
– Mapping between experimental and physical• many exp nodes can be on one physical node (ie, a exp node
uses a Vnode). Rspec can declare the preferences
• Impact to experiment results – Not using the defined topology.
– Super good if all the traffic sends through physical network (interface).
– Do not react to changes in the network conditions if sending through physical network (interface).
13
Q&A, 2
• Webserver vs iperf– All are multithreaded – Server side listening
• Iperf has client side and statistics
• Webclient is not available to run inside the exp due to GUI; it has no statistics
14
Q&A, 3
• Iperf condition vs network condition
• Iperf is a traffic generator– UDP/TCP, Server/client
– Parameters to change the sending load
– Both server and client output statistics
• Network conditions – Link delay, link loss rate, link bandwidth, topology
– System architecture (S/C, number of Cs, P2P, etc)