'''Project Number''' 1645 '''Project Title''' A Prototype of a Million Node GENI [[BR]] a.k.a. MillionNodeGENI, MILNGENI '''Technical Contacts''' '''PI''' Thomas Anderson (mailto:tom@cs.washington.edu / 206 543 9348) [[BR]] '''Co-PI''' Justin Cappos (mailto:justinc@cs.washington.edu / 206 685 4131) '''Participating Organizations''' University of Washington[[BR]] Paul Allen Center for Computer Science and Engineering[[BR]] Box 352350[[BR]] Seattle WA 98195-2350 '''Scope''' The scope of work on this project is to specify, build, and demonstrate a prototype end host deployment platform consisting of three components: a) a general-purpose yet safe execution environment for experimenter code running on end hosts, b) a light-weight, programmable and customizable proxy for end hosts for redirecting end-user traffic into GENI, and c) a clearinghouse for resources contributed by end users who have opted into the system. Specific development goals include:[[BR]] 1. Development of a viable end-host virtual machine[[BR]] 2. Control-plane integration, including resource discovery and reservation; experiment debug and control[[BR]] 3. End-user configuration and management tools[[BR]] 4. Deployment strategies such as inclusion in Bit Tyrant or web plug-in[[BR]] 5. End-user policy & awareness issues and mechanisms [[Image(MillionNodeGENI-components.gif, 40%)]] '''Milestones''' [[MilestoneDate(MILNGENI: S2.a Installer v 0.1)]] Installation scripts and simple packaging for Windows / Mac / Linux. [[BR]] [[MilestoneDate(MILNGENI: S2.b End hosts with intermitted connectivity)]] [https://seattle.cs.washington.edu/wiki/NatNodes Operation with end-hosts that have intermittent connectivity and/or are behind firewalls and NATs.] [[BR]] [[MilestoneDate(MILNGENI: S2.c Implement example applications)]] Example applications such as Chord and a web redirection service. [[BR]] [[MilestoneDate(MILNGENI: S2.d Create an example assignment)]] Example assignment leveraging Seattle that an educator might use. [[BR]] [[MilestoneDate(MILNGENI: S2.e Integrate with ProtoGENI)]] Calls to get resources & release resources work across both frameworks. [[BR]] [[MilestoneDate(MILNGENI: S2.f Clearinghouse API spec. for end-hosts)]] Specification for Clearinghouse API for end-hosts. [[BR]] [[MilestoneDate(MILNGENI: S2.g v0.1 of end-host clearinghouse)]] Reference implementation v0.1 of end-host clearinghouse. [[BR]] [[MilestoneDate(MILNGENI: S2.h Sprial 2 identify management mechanisms)]] Integrate Sprial 2 identify management mechanisms. [[BR]] [[MilestoneDate(MILNGENI: S2.i Collaborate with O&M team)]] Collaborate with O&M team on methods to share O&M data with other GENI groups. [[BR]] '''Project Technical Documents''' [http://groups.geni.net/geni/attachment/wiki/MillionNodeGENI/End_host_VM_Techniques_Design_Document.pdf End Host VM Design Techniques] [http://groups.geni.net/geni/attachment/wiki/MillionNodeGENI/Node_Manager_Design_Document.pdf Node Manager Design] (Check https://seattle.cs.washington.edu/wiki/NodeManagerDesign for updates.) [http://groups.geni.net/geni/attachment/wiki/MillionNodeGENI/Rspec_format.pdf RSpecs in the Million Node GENI system] [https://seattle.cs.washington.edu/wiki/NatNodes Description of how NATed nodes connect to the testbed] '''Software Deliverables''' The node manager and repy (end host vm) are in the seattle_repy.tgz tarball that can be downloaded from https://seattlegeni.cs.washington.edu/geni/download/flibble/. Install the node manager on the local machine by running ./install.sh. Note that you should have Python 2.5.2 installed (but it may work with Python 2.5.X or 2.6). The reference implementation of a trivial experiment manager (a test client for the node manager) can be downloaded from http://seattlegeni.cs.washington.edu/dist/demokit.zip. This contains seash.py which is a trivial PLuSH / GUSH-like experiment manager. The installer is available at https://seattle.cs.washington.edu/wiki/BaseInstallers. Libraries that implement connectivity from NATed nodes at https://seattle.cs.washington.edu/browser/seattle/trunk '''Quarterly Status Reports''' [http://groups.geni.net/geni/attachment/wiki/MillionNodeGENI/MillionNodeGeni-QSR-Dec08.pdf December 2008 Report][[BR]] [http://groups.geni.net/geni/attachment/wiki/MillionNodeGENI/qsr-april09.pdf April 2009 Report][[BR]] [http://groups.geni.net/geni/attachment/wiki/MillionNodeGENI/qsr-june09.pdf June 2009 Report] [[BR]] [http://groups.geni.net/geni/attachment/wiki/MillionNodeGENI/qsr-sep09.pdf September 2009 Report] [[BR]] [http://groups.geni.net/geni/attachment/wiki/MillionNodeGENI/qsr-june09.2.pdf December 2009 Report] '''Spiral 1 Connectivity''' Part of the ProtoGENI cluster. Connectivity issues need to be sorted out (NAT traversal, intermittent connectivity, etc). End user devices will already have IP addresses. Need to figure out how they connect to clearinghouses, etc. '''GPO Liaison System Engineer''' Vic Thomas mailto:vthomas@geni.net '''Related Projects'''