The GENI Book pp 235-256 | Cite as

The GENI Experiment Engine

  • Andy Bavier
  • Rick McGeer


The GENI Experiment Engine (GEE) is a lightweight, easy-to-use Platform-as-a-Service on GENI inspired by PlanetLab. The GEE offers one-click creation of slicelets (sets of lightweight containers), single-pane-of-glass orchestration and configuration of slice execution, an integrated intra-slice messaging system, and will soon offer a wide-area file system, and an integrated reverse proxy mechanism. A key design goal of the GEE was simplicity: it should be possible for a new user to get up-and-running with GEE in less than 5 min. The GEE is constructed as an overlay on GENI resources and is available to all GENI users.


File System Distribute Hash Table Storage Service Metadata Server Content Distribution Network 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.



The authors thank Leigh Stoller and Rob Ricci of the University of Utah and Niky Riga and Mark Berman of the GPO for much logistical assistance in setting up and maintaining the GEE Slicelets; Niky Riga, Vic Thomas, and Sarah Edwards of the GPO for counsel and logistical assistance in setting up GEE tutorials; Marshall Brinn of the GPO and Nick Bastin of Barnstomer Softworks for productive conversations; Chip Elliott of the GPO for years of guidance; Bill Wallace, Joe Kochan and the staff at US Ignite; Patrick Scaglia, Dan Ingalls, Alan Kay, Sanjay Rajagopalan, and Carlie Pham of SAP/CDG for financial and logistical support and mentoring; Robert Krahn and Marko Roder of SAP/CDG for assistance with our Lively Web monitoring front end; and Jack Brassil of the InstaGENI project and HP Labs for invaluable help. This chapter is an extension and update of previous workshop [6] and conference [7] papers, and we thank our co-authors: Jim Chen, Yvonne Coady, Joe Mambretti, Jude Nelson, Sean McGeer, Pat O’Connell, Glenn Ricart and Stephen Tredger. Sean McGeer designed the GENI Experiment Engine logo and is responsible for the look and feel of the GEE portal, and the aesthetically-challenged authors thank him for our portal. The students of CS 462/CS 662 at the University of Victoria, Canada, used the GEE for assignments and class projects in the spring of 2015, and gave us invaluable feedback. Of particular note was Matt Hemmings, who used the GEE to deploy the Distributed Visualizer and whose feedback was very helpful. This project was partially funded by the GENI Project Office under subaward from the National Science Foundation.


  1. 1.
    About - Beanstalkd. (2016)
  2. 2.
    Ansible. (2016)
  3. 3.
    AptLab. (2016)
  4. 4.
    Bavier, A.C., Bowman, M., Chun, B.N., Culler, D.E., Karlin, S., Muir, S., Peterson, L.L., Roscoe, T., Spalink, T., Wawrzoniak, M.: Operating systems support for planetary-scale network services. In: Proceedings of NSDI, pp. 253–266. USENIX (2004)Google Scholar
  5. 5.
    Bavier, A., Coady, Y., Mack, T., Matthews, C., Mambretti, J., McGeer, R., Mueller, P., Snoeren, A., Yuen, M.: GENICloud and TransCloud: towards a standard interface for cloud federates. In: Proceedings of the 2012 Workshop on Cloud Services, Federation, and the 8th Open Cirrus Summit, FederatedClouds ’12, pp. 13–18. ACM, New York (2012)Google Scholar
  6. 6.
    Bavier, A., Chen, J., Mambretti, J., McGeer, R., McGeer, S., Nelson, J., O’Connell, P., Ricart, G., Tredger, S., Coady, Y.: The GENI experiment engine. In: 2014 26th International Teletraffic Congress (ITC), pp. 1–6. IEEE, New York (2014)Google Scholar
  7. 7.
    Bavier, A., Chen, J., Mambretti, J., McGeer, R., McGeer, S., Nelson, J., O’Connell, P., Ricart, G., Tredger, S., Coady, Y.: The GENI experiment engine. In: Proceedings of TRIDENTCOM (2015)Google Scholar
  8. 8.
    Bavier, A., Chen, J., Mambretti, J., McGeer, R., McGeer, S., Nelson, J., O’Connell, P., Ricart, G., Tredger, S., Coady, Y.: The GENI experiment engine. In: Proceedings of TRIDENTCOM’15 (2015)Google Scholar
  9. 9.
    Brett, P., Knauerhase, R., Bowman, M., Adams, R., Nataraj, A., Sedayao, J., Spindel, M.: A shared global event propagation system to enable next generation distributed services. In: Proceedings of WORLDS ’04 (2004)Google Scholar
  10. 10.
    Cappos, J., Baker, S., Plichta, J., Nyugen, D., Hardies, J., Borgard, M., Johnston, J., Hartman, J.: Stork: package management for distributed VM environments. In: The 21st Large Installation System Administration Conference ’07 (2007)Google Scholar
  11. 11.
    Cappos, J., Beschastnikh, I., Krishnamurthy, A., Anderson, T.: Seattle: a platform for educational cloud computing. In: Proceedings of the 40th ACM Technical Symposium on Computer Science Education, SIGCSE ’09, pp. 111–115. ACM, New York (2009)Google Scholar
  12. 12.
    Cappos, J., Dadgar, A., Rasley, J., Samuel, J., Beschastnikh, I., Barsan, C., Krishnamurthy, A., Anderson, T.: Retaining sandbox containment despite bugs in privileged memory-safe code. In: Proceedings of the 17th ACM Conference on Computer and Communications Security, CCS ’10, pp. 212–223. ACM, New York (2010)Google Scholar
  13. 13.
    Castro, M., Druschel, P., Kermarrec, A.-M., Nandi, A., Rowstron, A., Singh, A.: Splitstream: high-bandwidth multicast in a cooperative environment. In: Proceedings of SOSP ’03 (2003)Google Scholar
  14. 14.
    Christensen, C.M.: The Innovator’s Dilemma: When New Technologies Cause Great Firms to Fail. Harvard Business School Press, Boston (1997)Google Scholar
  15. 15.
    Docker - Build, Ship, and Run Any App, Anywhere. (2016)
  16. 16.
    Fabric Api Documentation. (2016)
  17. 17.
  18. 18.
    GEE Node Install Scripts. (2016)
  19. 19.
  20. 20.
    McGeer, R.: GEC 19 GEE demo video. (2016)
  21. 21.
    MongoDB for GIANT Ideas. (2016)
  22. 22.
    Nelson, J., Peterson, L.: Syndicate: democratizing cloud storage and caching through service composition. In: Proceedings of the 4th Annual Symposium on Cloud Computing, SOCC ’13, pp. 46:1–46:2. ACM, New York (2013)Google Scholar
  23. 23.
    Nelson, J.C., Peterson, L.L.: Syndicate: virtual cloud storage through provider composition. In: Proceedings of the 2014 ACM International Workshop on Software-defined Ecosystems, BigSystem ’14, pp. 1–8. ACM, New York (2014)Google Scholar
  24. 24.
    OpenShift by RedHat. (2016)
  25. 25.
    Peterson, L., Bavier, A., Fiuczynski, M.E., Muir, S.: Experiences building PlanetLab. In: Proceedings of the 7th USENIX Symp. on Operating Systems Design and Implementation (OSDI) (2006)Google Scholar
  26. 26.
    Recordon, D., Reed, D.: OpenID 2.0: a platform for user-centric identity management. In: Proceedings of the Second ACM Workshop on Digital Identity Management, DIM ’06, pp. 11–16. ACM, New York (2006)Google Scholar
  27. 27.
    Rhea, S.C.: OpenDHT: a public DHT service. PhD thesis, University of California at Berkeley, Berkeley, CA (2005)Google Scholar
  28. 28.
    Ricci, R., Duerig, J., Stoller, L., Wong, G., Chikkulapelly, S., Seok, W.: Designing a federated testbed as a distributed system. In: Proceedings of the 8th International ICST Conference on Testbeds and Research Infrastructures for the Development of Networks and Communities (Tridentcom) (2012)Google Scholar
  29. 29.
    Sanderson, D.: Programming Google App Engine: Build and Run Scalable Web Apps on Google’s Infrastructure (Animal Guide). O’Reilly Media, Sebastopol, CA (2009)Google Scholar
  30. 30.
    Wang, L., Park, K.S., Pang, R., Pai, V., Peterson, L.: Reliability and security in the CoDeeN content distribution network. In: Proceedings of the Annual Conference on USENIX Annual Technical Conference, ATEC ’04, pp. 14–14. USENIX Association, Berkeley, CA (2004)Google Scholar

Copyright information

© Springer International Publishing Switzerland 2016

Authors and Affiliations

  1. 1.Princeton University and PlanetWorks, LLCPrincetonUSA
  2. 2.US IgniteWashington, DCUSA

Personalised recommendations