Internet2 "Neternship"
Fall 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.
Potential Project Ideas
Bulk File Transfer Helper Application for Video Distribution
Bulk file transfer is a common task for a variety of user communities. Many of the communities are now requesting a front end GUI for complex command line tools. A previous neternship project created a video distribution architecture based on RSS feeds. The next step is to create a GUI that will interface with high performance file transfer programs (e.g., bbftp, GridFTP). A survey of existing file transfer programs will also be required.
Comet DVIP Interface
Internet2 is encouraging the use of DV (digital video) over IP. One of the pieces of hardware that we use is the Comet DVIP card. The interface for this card is cumbersome and complex. Creating a interface to remotely control the hardware would assist in the popularity and wider use of the card.
Migration to SSM Multicast
There are two multicast network protocols that applications can implement, ASM and SSM. SSM is the newer protocol and provides a variety of advantages over ASM. DVTS, and some related tools, are currently coded to use ASM. Porting some of this work to SSM should be straightforward, but will require an understanding of multicast networking and networking hardware.
Calendar
August 2005: Initial distribution of this proposition
September 2005: Identify participants (students and instructors), Students select project(s)
October 2005: Neternship in progress
November 2005: Neternship in progress
December 2005: Neternship in concludes with final presentation
Previous Projects
See http://www.internet2.edu/neternship/
|