[[PageOutline]] = GENI Desktop Project Status Report = Period: Post GEC 19 Report == I. Major accomplishments == The following highlights our accomplishments during the last reporting period. === A. Milestones achieved === * Integrate the GENI Desktop more tightly with the GENI portal, Flack and OMNI. * At GEC19, demonstrate the use of GENI Desktop and access to GENI infrastructure. === B. Deliverables made === * We developed several enhancements to the GENI Desktop -- many supporting what were GENI Portal functions -- and have posted the code * We continued to enhanced the GENI Desktop's interoperability with OMNI, ExoGENI, InstaGENI, and the iRods service == II. Description of work performed during last quarter == The following provides a description of the progress made during the last reporting period. === A. Activities and findings === Our activities this past reporting period have been focused on adding new features to the GENI Desktop that enable it to better manage slices and to better interoperate with Insta and Exo GENI racks. The biggest changes came in the form of enhancements to the slice list page in the GENI Desktop. We made significant changes to its look and feel in order to make it easier for users to interact with, and control, their slices. The first change was to allow the user to determine which slices appear on the page. Because users are often members of multiple projects, the system allows them to view only slices belonging to a particular project. A related change that we made was to limit the number of slices that are displayed within a project. Because some users were members of projects with many slices (sometimes numbering into the hundreds of slices), we now allow users to select which slices from the project will be shown or hidden. This allows users to easily focus on the slices that they are working with at the moment. A second important change was the addition of slice operations that allow users to perform slice operations that otherwise would have had to have been performed on the GENI portal or in Flack. In particular, users can now create a slice, assign an RSPEC to a slice (more on that later), and allocate the necessary resources all from within the GENI Desktop. When a user is done with a slice, the GENI Desktop can be used to delete the resources associated with a slice. These operations are performed through the newly designed slice description page. Each field on the page is "clickable" so that it can be viewed in more detail and/or edited. New fields include an image of the topology, an RSPEC field, an aggregate manager field, and an auto-renew field. The slice status field and the next action field have also been enhanced to better reflect the slice's current context/status. Users are now able to assign an RSPEC to a slice and have the GENI Desktop instantiate the resources (sliver) specified by the RSPEC. Users can contribute RSPECs to a public RSPEC list (available for anyone to use), or to their own private list. When creating an RSPEC to be (re)used in the future, the user can create a thumbnail image of the topology that will be displayed along with the slice or while selecting and RSPEC to assign to a slice. This gives users a visual representation of what the topology looks like so that the user does not have to mentally parse the textual RSPEC to discover the topology. To assign and RSPEC to a topology, users simply select from a list of RSPECS, and can hover over any item in the list to find more information about the RSPEC (e.g., the number of nodes in the RSPEC, a description of its purpose/use/topology, information about its creator (if they choose to reveal their identity), and the aggregate managers that are bound to the RSPEC. In addition, users can search the lists for RSPECs containing a particular search string. Another handy feature is the ability to "rebind" and RSPEC to a different topology. For example if an RSPEC used resources at the University of Utah, and we wanted to reuse the same RSPEC at the University of Kentucky, then we would have the GENI Desktop "rebind" the RSPEC to the new aggregate manager. A common problem experienced by users was slices unexpectedly expiring and being deleted. To address this problem we added the ability for the GENI Desktop to auto-renew a slice on a user's behalf as long as the GENI Desktop window remained open. This ensures that slices will not time out as long as they are working with them. It is particularly helpful with slices that have short expiration times. We also made changes to the way logging is done and shown. There are now logging windows for sliver creation results/logs and for instrumentation results/logs. We continued to work with the control frameworks and adjust our code to work with the latest changes in InstaGENI and ExoGENI racks. We also revised our code to interoperate better with iRods via the GENI Desktop's archival functions. We added a feedback/bug report link to send email to the GENI Desktop team, as well as a FAQ to help people with common problems. === B. Project participants === The following individuals are involved with the project in one way or another: * Jim Griffioen - Project PI (Kentucky) * Zongming Fei - Project Co-PI (Kentucky) * Hussamuddin Nasir - Technician/Programmer (Kentucky) * Charles Carpenter - Technician/Programmer (Kentucky) * Xiongqi Wu - Ph.D. Student * Jeremy Reed - Ph.D. Student === C. Publications (individual and organizational) === === D. Outreach activities === * We presented during the instrumentation and measurement meetings and during the demo session at GEC 19 showing the enhancements made to the GENI Desktop. === E. Collaborations === Most of our collaborations have been between the Kentucky team and the Indiana team. We also continue to work with the GPO Portal team. === F. Other Contributions ===