Internet2 "Neternship"
Winter, 2005
The focus of this project is to provide students with the opportunity to collaboratively create or enhance a piece of software that takes advantage of the advanced network features provided by Internet2.
Goals
- Provide a small group of students the opportunity to interact with students and faculty from other campuses through a distributed programming project
- Introduce students to collaborative tools that are currently in use across Internet2 and the commodity Internet
- Produce functioning software by the end of the term that addresses all functionality identified at the outset of the project
Benefits to Students and Campus
- Hands-on experience for students in advanced network programming fundamentals
- Collaborative experience will put students in touch with new communities: network infrastructure, video, collaborative tool providers, researchers, etc.
- Introduction to Internet2 (technology, staff and community) will be beneficial not only for the participating students, but also for campus staff. Contact points deep into the Internet2 community will be useful for future questions regarding networking at the campus and backbone level.
- Opportunity not only for students, but for campuses to to contribute to the advancement of networking as a whole. The tools and technologies created will be publicize by Internet2 and can be cross-referenced for local announcements.
Requirements and Assumptions
- The students will participate via independent study on their own campuses. Final grading and credit will be determined by each student's local campus instructor/advisor. Students are expected to be self-motivating and know when to ask for help.
- Students will participate in a weekly "class" using the Internet2 Commons video conferencing infrastructure (H.323), AccessGrid, VRVS, and/or ConfXP.
- Students are expected to be proficient in network programming and familiar with compile/debug tools for the languages. Languages possibilities will probably be C, C++, and/or Java, but specifics will be determined once the student group is assembled.
- Each student's instructor will be available for one online "class" instruction. The instructor will provide Q&A, guidance, and consultant-style assistance.
- Software will be produced under the Internet2 Intellectual Property Framework
- Software compilation should rely only on open source software. Specifically, open source tools should be used for compilation, linked libraries, etc. Software can be created using any tools (e.g., closed source editors).
Interesting and Useful Additional Skills?
- Database knowledge
- Network routing
- Graphics programing (UI and 2D, do not expect 3D will be useful)
- Glue languages like Perl, Python and/or Ruby might be useful.
Current Projects
Bulk File Transfer Application for High Performance Networks
- Bulk file transfer is becoming a more common task for many users. Although several bulk file transfer programs exist, none of them provide a good graphical user interface for complex command line tools. As a result, the programs are rather cumbersome for a typical user. The goal of this project is to create a front end GUI that will interface with an existing bulk file transfer program. Bandwidth testing of possible backend configurations will occur to determine the optimal backend for the application.
Calendar
January 2006
- Continue with bandwidth tests to determine optimal configuration using the HPN-SCP patch.
- Conduct usability studies on a prototype of the GUI.
February 2006
- Make improvements to the GUI based on results of the usability studies.
- Complete bandwidth tests.
|