| 1 | [[PageOutline]] |
| 2 | |
| 3 | = Adopt-a-GENI Project Status Report = |
| 4 | |
| 5 | Period: Post GEC 21 Report |
| 6 | |
| 7 | == I. Major accomplishments == |
| 8 | |
| 9 | The following highlights our accomplishments during the last reporting period. |
| 10 | |
| 11 | === A. Milestones achieved === |
| 12 | |
| 13 | * Integrate the AAG path selection function with the GENI Desktop. |
| 14 | |
| 15 | * Demonstrate the AAG path selection function in the GENI Desktop at GEC21. |
| 16 | |
| 17 | === B. Deliverables made === |
| 18 | |
| 19 | * We developed a module in the GENI Desktop for integrating the AAG path selection function into the GENI Desktop. |
| 20 | |
| 21 | == II. Description of work performed during last quarter == |
| 22 | |
| 23 | The following provides a description of the progress made during the last reporting period. |
| 24 | |
| 25 | === A. Activities and findings === |
| 26 | |
| 27 | Our activities this last reporting period have been primarily focused on |
| 28 | developing a module for integrating the AAG path selection function |
| 29 | into the GENI Desktop. |
| 30 | |
| 31 | The GENI Desktop was designed to be extensible in the sense that new |
| 32 | modules can be written to include new functionalities. We took advantage |
| 33 | of this property of the GENI Desktop and write a module for the AAG function. |
| 34 | While creating a module is straightforward, the major task is to modify |
| 35 | the exiting AAG code to handle the interactions between the GENI Desktop |
| 36 | and the AAG module. There are two aspects. |
| 37 | |
| 38 | One aspect is how to get the information about a slice. In order to |
| 39 | verify and set up the user-selected path, the AAG module needs information |
| 40 | about the slice, such as the topology, IP addresses, MAC addresses, etc. |
| 41 | The original AAG code obtained this information from the manifest, which |
| 42 | was provided as a textual file in XML format. As a part of the GENI Desktop, |
| 43 | the AAG module gets the slice information from the parser of the GENI Desktop. |
| 44 | The parser obtains the slice information from aggregates and provides the |
| 45 | manifest as a JSON object. The AAG code was modified to accommodate this change. |
| 46 | |
| 47 | The other aspect is how the user selects the path. The GENI Desktop provides |
| 48 | a graphical user interface (GUI) showing the topology of the slice. |
| 49 | Instead of providing a list of desired nodes, the user can pick the nodes |
| 50 | via the GUI of the GENI Desktop. There is a mechanism in the GENI Desktop |
| 51 | to pass this information from GUI to an associated module. The AAG module |
| 52 | processes this information and installs the flows to the switches. |
| 53 | |
| 54 | [[Image(aag_gec21_demo.png, 600)]] |
| 55 | |
| 56 | We demonstrated the AAG module at GEC 21. The topology is shown in the |
| 57 | Figure above. We can invoke the module called "OpenFlow Paths" from the module |
| 58 | launcher. The user provides the IP address of the controller. After selecting |
| 59 | a path, the module will call AAG controller and set up the OpenFlow rules |
| 60 | at the switches. |
| 61 | |
| 62 | === B. Project participants === |
| 63 | |
| 64 | The following individuals are involved with the project in one way or another: |
| 65 | * Zongming Fei - Project PI (Kentucky) |
| 66 | * Jim Griffioen - Project Co-PI (Kentucky) |
| 67 | * Kobus van der Merwe - Project Co-PI (Utah) |
| 68 | * Rob Ricci - Project Co-PI (Utah) |
| 69 | * Hussamuddin Nasir - Technician/Programmer (Kentucky) |
| 70 | * Jonathon Duerig - Research Associate (Utah) |
| 71 | * Sergio Rivera Polanco - Ph.D. Student (Kentucky) |
| 72 | |
| 73 | === C. Publications (individual and organizational) === |
| 74 | |
| 75 | === D. Outreach activities === |
| 76 | |
| 77 | * We presented the AAG path selection module of the GENI Desktop during the demo session at GEC 21. |
| 78 | |
| 79 | === E. Collaborations === |
| 80 | |
| 81 | * Most of our collaborations have been between the Kentucky team and the |
| 82 | Utah team. We continued our discussion on what functions need to be |
| 83 | provided in Jacks for the AAG project and how Jacks can be integrated |
| 84 | with the GENI Desktop. |
| 85 | |
| 86 | === F. Other Contributions === |