![Page 1: PrimoGENI Tutorial Jason Liu, Miguel Erazo, Nathanael Van Vorst Florida International University GEC12, November 2, 2011, Kansas City, MO](https://reader035.vdocuments.site/reader035/viewer/2022070401/56649f1f5503460f94c38008/html5/thumbnails/1.jpg)
PrimoGENI TutorialJason Liu, Miguel Erazo, Nathanael Van Vorst
Florida International University
GEC12, November 2, 2011, Kansas City, MO
![Page 2: PrimoGENI Tutorial Jason Liu, Miguel Erazo, Nathanael Van Vorst Florida International University GEC12, November 2, 2011, Kansas City, MO](https://reader035.vdocuments.site/reader035/viewer/2022070401/56649f1f5503460f94c38008/html5/thumbnails/2.jpg)
Outline
• Introduction• Demonstration• Hands-on session
![Page 3: PrimoGENI Tutorial Jason Liu, Miguel Erazo, Nathanael Van Vorst Florida International University GEC12, November 2, 2011, Kansas City, MO](https://reader035.vdocuments.site/reader035/viewer/2022070401/56649f1f5503460f94c38008/html5/thumbnails/3.jpg)
PrimoGENI enables hybrid network experiments• Including simulated, emulated, and physical components
• Simulation• Experimentation at scale• Modeling abstractions• Flexibility
• Emulation• Real applications• Resource multiplexing
• Physical Networks• Real traffic
![Page 4: PrimoGENI Tutorial Jason Liu, Miguel Erazo, Nathanael Van Vorst Florida International University GEC12, November 2, 2011, Kansas City, MO](https://reader035.vdocuments.site/reader035/viewer/2022070401/56649f1f5503460f94c38008/html5/thumbnails/4.jpg)
PrimoGENI is a GENI Aggregate
![Page 5: PrimoGENI Tutorial Jason Liu, Miguel Erazo, Nathanael Van Vorst Florida International University GEC12, November 2, 2011, Kansas City, MO](https://reader035.vdocuments.site/reader035/viewer/2022070401/56649f1f5503460f94c38008/html5/thumbnails/5.jpg)
• Manage the life cycle of network experiments Model Configuration Resource Specification Deployment, Execution Online Control & Monitoring Visualization Data Collection
PrimoGENI has an IDE
![Page 6: PrimoGENI Tutorial Jason Liu, Miguel Erazo, Nathanael Van Vorst Florida International University GEC12, November 2, 2011, Kansas City, MO](https://reader035.vdocuments.site/reader035/viewer/2022070401/56649f1f5503460f94c38008/html5/thumbnails/6.jpg)
JavaModel
Python Model
XMLModel
DBMS
In-MemoryModel(JAVA)
NetworkVisualization
InteractiveConsole
Execution Model
ModelCompilation
ModelPartitioning
![Page 7: PrimoGENI Tutorial Jason Liu, Miguel Erazo, Nathanael Van Vorst Florida International University GEC12, November 2, 2011, Kansas City, MO](https://reader035.vdocuments.site/reader035/viewer/2022070401/56649f1f5503460f94c38008/html5/thumbnails/7.jpg)
Physical Resource Layer
Meta Resource Layer
OpenVZ Kernel
VM0 VM1 VM2
OpenVZ Kernel
VM0 VM1 VM2
OpenVZ Kernel
VM0 VM1 VM2
OpenVZ Kernel
VM0 VM1 VM2
OpenVZ Kernel
VM0 VM2 VM3VM1
OpenVZ Kernel
VM0 VM2 VM3VM1
OpenVZ Kernel
VM0 VM2VM1
Simulation and Emulation Execution Layer
S S
S S
S S
EE
EE
EEE
E EE
E EE
E
Experiment Layer
![Page 8: PrimoGENI Tutorial Jason Liu, Miguel Erazo, Nathanael Van Vorst Florida International University GEC12, November 2, 2011, Kansas City, MO](https://reader035.vdocuments.site/reader035/viewer/2022070401/56649f1f5503460f94c38008/html5/thumbnails/8.jpg)
What’s the Use?
A virtual distributed environment:
A fancy delay node: A traffic generator:
![Page 9: PrimoGENI Tutorial Jason Liu, Miguel Erazo, Nathanael Van Vorst Florida International University GEC12, November 2, 2011, Kansas City, MO](https://reader035.vdocuments.site/reader035/viewer/2022070401/56649f1f5503460f94c38008/html5/thumbnails/9.jpg)
![Page 10: PrimoGENI Tutorial Jason Liu, Miguel Erazo, Nathanael Van Vorst Florida International University GEC12, November 2, 2011, Kansas City, MO](https://reader035.vdocuments.site/reader035/viewer/2022070401/56649f1f5503460f94c38008/html5/thumbnails/10.jpg)
Demonstration
![Page 11: PrimoGENI Tutorial Jason Liu, Miguel Erazo, Nathanael Van Vorst Florida International University GEC12, November 2, 2011, Kansas City, MO](https://reader035.vdocuments.site/reader035/viewer/2022070401/56649f1f5503460f94c38008/html5/thumbnails/11.jpg)
• Develop network model in Java• Create experiment• Inspect and change network configurations in
the attribute tree and the python console• Launch experiment on local host• Visualize traffic flowing on the network
Experiment 1: A Simulated Dumbbell Model
![Page 12: PrimoGENI Tutorial Jason Liu, Miguel Erazo, Nathanael Van Vorst Florida International University GEC12, November 2, 2011, Kansas City, MO](https://reader035.vdocuments.site/reader035/viewer/2022070401/56649f1f5503460f94c38008/html5/thumbnails/12.jpg)
Experiment 2: An Emulated Campus Network Model
• Generate/compose large networks• Specify emulated hosts/routers• Set up execution environment (using a
preallocated ProtoGENI slice)• Launch experiment on the ProtoGENI slice• Create emulated traffic (traceroute, iperf)• Monitor real-time traffic using LiveGraph
![Page 13: PrimoGENI Tutorial Jason Liu, Miguel Erazo, Nathanael Van Vorst Florida International University GEC12, November 2, 2011, Kansas City, MO](https://reader035.vdocuments.site/reader035/viewer/2022070401/56649f1f5503460f94c38008/html5/thumbnails/13.jpg)
![Page 14: PrimoGENI Tutorial Jason Liu, Miguel Erazo, Nathanael Van Vorst Florida International University GEC12, November 2, 2011, Kansas City, MO](https://reader035.vdocuments.site/reader035/viewer/2022070401/56649f1f5503460f94c38008/html5/thumbnails/14.jpg)
Experiment 3: HTTP Client Cloud
• Set up and run Apache server on a real node• Create a campus model for simulated clients• Specify stochastic HTTP requests (from
simulated client to real server)• Observe data transfer using tcpdump and
from server log