| 1 | [[PageOutline]] |
| 2 | |
| 3 | = INSTOOLS Project Status Report = |
| 4 | |
| 5 | Period: Q2 2010 - (4/1/10-6/30/10) |
| 6 | |
| 7 | == I. Major accomplishments == |
| 8 | |
| 9 | The following highlights our accomplishments during Q2 2010. |
| 10 | |
| 11 | === A. Milestones achieved === |
| 12 | |
| 13 | In the past quarter we continued to make progress toward our milestones. |
| 14 | Some of our accomplishments include: |
| 15 | * continuing to support operation of the Kentucky ProtoGENI prototype, |
| 16 | enabling basic experimentation through the ProtoGENI clearinghouse. |
| 17 | * released an initial version of our code and helped BBN install/test |
| 18 | the code release. |
| 19 | * continued to give input to the security group and discussed ways to |
| 20 | integrate the emerging ABAC system. |
| 21 | * attempted using ProtoGENI in our classes. |
| 22 | |
| 23 | === B. Deliverables made === |
| 24 | |
| 25 | * We released an initial version of our INSTOOLS software. |
| 26 | |
| 27 | == II. Description of work performed during last quarter == |
| 28 | |
| 29 | The following provides a description of our activities and results |
| 30 | from the last quarter. |
| 31 | |
| 32 | === A. Activities and findings === |
| 33 | |
| 34 | During this quarter we made significant progress on several fronts, including |
| 35 | support for NetFlow data, web interface improvements, the ability to |
| 36 | instrument an existing slice, the ability to span aggregates, an initial code |
| 37 | release, and additional testing/evaluation. |
| 38 | |
| 39 | Building on the groundwork established last quarter, we completed our |
| 40 | implementation of support for NetFlow data collected within a user's slice. |
| 41 | In addition to setting up the instrumentation and measurement infrastructure |
| 42 | to collect packet data rates, we also set up the NetFlow services needed to |
| 43 | capture (and categorize) data on a per-flow basis. Similar to our SNMP |
| 44 | services, the NetFlow capture services send their data to the measurement |
| 45 | controller (MC) for processing and viewing. Currently, the flows to be |
| 46 | monitored are preconfigured for the user so that they can simply go to the |
| 47 | web interface to see most common types of flows (e.g., between well known |
| 48 | ports). Changing what is monitored is a manual task, but we plan to modify |
| 49 | that in a future release. |
| 50 | |
| 51 | The experience of adding a new type of information source (NetFlow) to our |
| 52 | measurement system caused us to think about the problem of adding new |
| 53 | information sources in the future. In particular, we wanted it to be easy |
| 54 | for users to modify the web interface to display the data they collect on |
| 55 | each node or link. To make this possible, we created a web page on the MC |
| 56 | where a user can enter a parameterized command that is then used to |
| 57 | (automatically) generate all the web pages needed to view that type of data. |
| 58 | As a result, it is now relatively easy to incorporate new types of |
| 59 | (collected) information into the web interface. |
| 60 | |
| 61 | To provide authorized access to the data, we have temporarily added user |
| 62 | accounts and passwords to the web interface. While we don't expect this to |
| 63 | be a long-term solution, we needed some way to protect the data being |
| 64 | collected now that we are beginning to have users of the system. We have |
| 65 | been in discussions with the ABAC group and hope to make use of their |
| 66 | authentication system to regulate access to the data. We have also looked |
| 67 | into supporting certificates as a way to regulate access to the data and may |
| 68 | offer that as well. |
| 69 | |
| 70 | Another enhancement we made this past quarter was to make the |
| 71 | instrumentation and measurement deployment and teardown independent of the |
| 72 | slice setup and teardown. Previously, we had modified the Utah slice |
| 73 | creation scripts to also startup the instrumentation system. |
| 74 | In our most recent version of the code, slice creation and instrumentation |
| 75 | are not tied together. Users can create a slice using any of the ProtoGENI |
| 76 | approved ways (e.g., via scripts or via the Utah flash GUI). After the slice |
| 77 | has been established, our new script will discover the topology of the slice |
| 78 | and instrument it appropriately. We also created scripts to remove |
| 79 | instrumentation from a slice when it is no longer needed. |
| 80 | |
| 81 | Perhaps the most important advance we made this past quarter is the ability |
| 82 | to instrument slices that span aggregates. Our new code identifies all the |
| 83 | aggregates that comprise a slice, locates the component managers for those |
| 84 | aggregates, discovers the resources used in each aggregate, and then proceeds |
| 85 | to set up an MC in each of the aggregates. Finally, our code |
| 86 | installs and initiates the measurement software on the resources in each of |
| 87 | the aggregates, with measurement data from each resource being directed to |
| 88 | the appropriate MC. Our scripts also allow a user to instrument |
| 89 | portions of a slice by selecting which aggregates should be instrumented and |
| 90 | which ones should not be instrumented. We are currently in the process of |
| 91 | developing a ''portal'' that will give users the look-and-feel of a single |
| 92 | interface to their data. In the meantime, the list of URLs representing the |
| 93 | various aggregate web servers is returned to the user so they can go to |
| 94 | individual MCs directly. Note that getting our code to run across aggregates |
| 95 | also involved modifying our code to handle differences among the aggregates. |
| 96 | At this point our code runs across the Utah and Kentucky aggregates and can |
| 97 | be made to run across any aggregate that support OS loading of Fedora 8. |
| 98 | |
| 99 | We also gave an assignment using the ProtoGENI system in our undergraduate |
| 100 | networking class. The assignment required students to set up an experiment |
| 101 | and collect and view measurement data using the INSTOOLS system. |
| 102 | It took much longer than we expected to develop the assignment, and we ended |
| 103 | up giving out the assignment very late in the semester. |
| 104 | As a result, no students were able to finish the assignment. |
| 105 | Although we did not learn as much as we would have liked, we did |
| 106 | learn that it took us much longer than we expected to develop the |
| 107 | step-by-step instructions need by the students. In short, the interface to |
| 108 | ProtoGENI is still quite challenging to use. Presumably the new flash GUI |
| 109 | will make this much better. |
| 110 | |
| 111 | As in previous quarters, we upgraded our ProtGENI software to incorporate the |
| 112 | latest changes made by the Utah group, making the necessary changes to our |
| 113 | INSTOOLs software in order to run on the upgraded aggregate. This is an |
| 114 | ongoing task. |
| 115 | |
| 116 | We also created an initial release of our code which we gave to our |
| 117 | colleagues at BBN and also released via the Utah GIT repository. |
| 118 | BBN has installed and tested our software and was able to get it to |
| 119 | work on our Kentucky aggregate. They were also able to get it to work |
| 120 | on the Utah aggregate. The next step is to try it on their own internal |
| 121 | aggregate. |
| 122 | |
| 123 | |
| 124 | === B. Project participants === |
| 125 | |
| 126 | The following individuals have helped with the project in one way or another |
| 127 | during the last quarter: |
| 128 | * Jim Griffioen - Project PI |
| 129 | * Zongming Fei - Project Co-PI |
| 130 | * Hussamuddin Nasir - Technician/programmer |
| 131 | * Xiongqi Wu - Research Assistant |
| 132 | * Jeremy Reed - Research Assistant (half time) |
| 133 | * Lowell Pike - Network administrator |
| 134 | * Woody Marvel - Assists in Emulab administration |
| 135 | |
| 136 | |
| 137 | === C. Publications (individual and organizational) === |
| 138 | |
| 139 | None this quarter. |
| 140 | |
| 141 | === D. Outreach activities === |
| 142 | |
| 143 | We released a version of our code to BBN and help them install, configure, |
| 144 | and test the software. They were able to successfully use the system and |
| 145 | provided feedback to improve our documentation. |
| 146 | |
| 147 | Jim Griffioen attended the 2nd GENI Instrumentation and Measurement Workshop |
| 148 | June 8-9, 2010 and participated in the discussions regarding the design of |
| 149 | the instrumentation and measurement plane. |
| 150 | |
| 151 | === E. Collaborations === |
| 152 | |
| 153 | Most of our collaborations continue to be with the Utah ProtoGENI team, and |
| 154 | we continue to be actively involved in the bi-weekly meetings of the ProtoGENI |
| 155 | cluster. |
| 156 | |
| 157 | We have also continued our discussions with other measurement groups including |
| 158 | the OnTimeMeasure group at Ohio State and the S3 Monitor group at Purdue, and |
| 159 | hope to integrate their code in the future. We have also had dicussions with |
| 160 | the ABAC group about integrating their authorization enforcement mechanisms. |
| 161 | |
| 162 | |
| 163 | === F. Other Contributions === |
| 164 | |
| 165 | None yet. |