Changes between Initial Version and Version 1 of ProtoGENI-Apr11-status

04/03/11 19:03:38 (9 years ago)



  • ProtoGENI-Apr11-status

    v1 v1  
     3= ProtoGENI/PGAugmentation/PGTools Project Status Reports =
     5Period: GEC9 - GEC10
     7'''Note:''' This is a "comprehensive" report for the three GENI subcontracts
     8held by the University of Utah. For concrete accomplishments, milestones, etc.
     9I have marked major items in this report with '''''P''''' (for ProtoGENI), '''''A''''',
     10(for PGAugmentation), or '''''T''''' (for PGTools) to make it clear which activities
     11were conducted under which subcontract.
     13== I. Major accomplishments ==
     15=== A. Milestones achieved ===
     17'''''T'' PGTools: S3.a:''' User guide for map interface
     19Created a new guide for the Map interface to ProtoGENI (and other GENI) resources, which
     20can be found at: []. The map
     21interface itself has been greatly improved (more on this below), and is now on the
     22front page of []
     24'''''T'' PGTools: S3.b:''' Prepare tools for export to other Emulab sites
     26The Emulab frontend to ProtoGENI has been cleaned up an generalized, so that other Emulab
     27sites participating in ProtoGENI can enable it for their users. The University of Kentucky
     28has been the first external site to test this feature.
     30Though not originally part of this milestone, we have also made changes to the map client
     31to make it easier to host it on sites other than .
     33'''''T'' PGTools: S3.c:''' Read-Only mode for map interface
     35There is now a "read only mode" for the map interface, which gives anyone an interactive
     36veiw of GENI resources, without the need for an account at any GENI aggregate. This uses
     37a set of advertisement RSpecs that are hosted on the ProtoGENI webserver, and which are
     38updated nightly from all participating aggregates.
     40The map interface is able to run complete in "read only" mode, start read-only but include
     41a "log in" button, or to present the user with a selection screen when it starts at to whether
     42they want to run in authenticated or read-only mode.
     44We have made many more improvements to our map interface than anticipated when we set the
     45milestones; see below for more details.
     47'''''P'' ProtoGENI.S2.h:''' Deploy 3 additional backbone network nodes
     49Working with HP and Internet, we deployed 3 more backbone sites in Los Angeles, Houston,
     50and Atlanta. These are connected to each other and the previously existing sites at
     51Layer 2, and are available for experimenters to use.
     53'''''P'' ProtoGENI.S3.a:''' Improved experimenter support
     55We have significantly re-worked the status codes returned by the ProtoGENI API in order
     56to improve the user experience: users now have much more information about why calls they
     57make may have failed (previously, they usually had to ask the ProtoGENI administrators for
     58this information).
     60'''''P'' ProtoGENI: S3.b:''' Demonstration and Outreach at GEC10
     62We presented our map interface in the GEC demo session and status reports sessions, showing
     63both ProtoGENI and PlanetLab resources.
     65We also made presentation materials that we had used for tutorials at other GECs to groups
     66doing tutorials at GEC10. We did not produce new materials, as these groups founding the
     67existing materials to be sufficient.
     69'''''A'' PGINTEGRN: S3.a:''' API for AM<->AM coordination during stitching
     71We described an API for stitching between aggregates; a description of our design can be
     72found here:
     76We also participated in extensive discussions regarding an eventual GENI-wide stitching API.
     78'''''A'' PGINTEGRN: S3.b:''' Implement AM <-> AM coordination API
     80We implemented the API described above, and demonstrated it at GEC10, to create Layer 2
     81connections from the University of Utah Emulab site to the University of Kentucky and the
     82University of Wisconsin.
     84=== B. Deliverables made ===
     86 * Software releases: ''P, T, A'' We have continued to make all software that we develop
     87    available to the public via our git repository at .
     88 * Documentation: ''P, A, T'' in addition to the documentation listed above, we
     89   have documented many of our APIs, data structures, and design decisions
     90   at []
     91 * Example code and RSpecs: ''A, T'' In addition to the main source snapshots
     92   and documentation listed above, we have released sample code, RSpecs, NS
     93   files, and more on []
     95== II. Description of work performed during last quarter ==
     97=== A. Activities and findings ===
     99We made significant improvements this quarter to our flash map-based interface
     100(which we will be renaming to "Flack", since 'flash map-based interface' is not
     101a very catchy name. Many of these improvements are above and beyond the ones
     102that were listed in our milestones. In particular, we re-worked its communication
     103with aggregate managers, and added PlanetLab support.
     105Previously, the interface used the browser's native https support to contact aggregate
     106managers, slice authorities, etc. This had a number of drawback, chief among them the
     107fact that excessive user work was required to add CA certificates and user certificates
     108to their browser. We have replaced the browser's connection mechanisms with Forge, and
     109open-source SSL library implemented in Javascript and Flash. This enables us to load
     110(without user intervention) the same CA bundle used by the ProtoGENI sites, and allows
     111us to automatically fetch user certificates for users who have an Emulab account. The
     112result is a much smoother user experience.
     114The map interface had also previously used the ProtoGENI API to contact aggregates; we
     115added support for the new GENI AM API, so that it can contact non-ProtoGENI aggregates.
     116We verified that this work with PlanetLab aggregates. Since there is not yet a standard
     117GENI RSpec (though it appears that one is coming), we had to add support for the PlanetLab
     118RSpec to the interface. This, along with the AM API, allows us to display PlanetLab
     119resources, and create slivers on them. As more aggregates implement the standard APIs and
     120a common RSpec is implemented, this will put more and more of GENI "on the map."
     122We spend a large amount of time during this period contributing to very useful discussions
     123with GPO personnel, representatives from other CFs, and other GENI community members,
     124regarding GENI issues of GENI-wide importance. These culminated in four sessions at GEC10,
     125regarding identity, authorization, stitching, and RSpecs. The proposals for these four
     126areas, all of which we provided feedback on, were accepted.
     128We also did a significant amount of work on ProtoGENI under funding directly
     129from the NSF. That work will be detailed in our NSF annual report rather than
     130this report.
     132=== B. Project participants ===
     134The following personnel from Utah worked on these projects:
     135 * Robert Ricci (Research Assistant Professor)
     136 * Leigh Stoller (Research Staff)
     137 * Jon Duerig (Research Staff)
     138 * Gary Wong (Research Staff)
     139 * Dan Reading (System Administrator)
     140 * Matt Strum (Undergraduate Student)
     142Others participated in ProtoGENI under direct funding from NSF.
     144=== C. Publications (individual and organizational) ===
     146No publications were funded by these projects during this time period.
     148=== D. Outreach activities ===
     150 * We have been in contact with groups in Korea (KISTI), Taiwan (TWISC),
     151   and China (Tsinghua U.) which are not currently part of GENI, but which are
     152   interested in joining the ProtoGENI federation
     154=== E. Collaborations ===
     156We have worked extensively with other projects, both within our cluster and
     157with other clusters as well. A significant amount of our work, particularly
     158for the PGAugmentation contract, has involved coordinating with cluster
     159members, projects outside of the cluster, and users.
     161Interaction within the cluster has taken place in the following ways:
     162 * Bi-weekly cluster conference calls, which we lead with the help of our
     163   GPO system engineer, Vic Thomas
     164 * The and mailing lists, which
     165   are used for cluster-wide coordination and development discussions
     166 * Cluster meetings at GECs
     167 * Occasional email exchanges and phone calls with cluster members
     169=== F. Other Contributions ===
     171 * Robert Ricci is currently served as co-chair of the Control Framework
     172   Working Group, up until GEC10 when the WGs were dissolved