CS/ECpE 5516, Spring 1998
Computer and Network Architecture II
 

Term Project

(based on Term Project from Spring 1997 class)

[Overview] [Projects Types] [Proposal] [Report] [Other Information] [ Frequently Asked Questions
See syllabus for due date. 

Project Overview

The final project may be Projects may also be some combination of these types. For example, simulation experiments may be used to compare alternative approaches for a critical review. The project may be done individually or in teams of up to three students.   The complexity of the project should be proportional to the number of students in a team.

You should select a project that interests you, that you are qualified to undertake, that can be completed in a timely manner, and that can be completed using resources that are available to you. Be realistic in selecting a project. It is better to complete a modest project than to partially finish an ambitious project. Incomplete grades cannot be given just to allow extra time to work on the project.

A project proposal must be submitted to, and approved by, the instructor. A final written report is also required for all projects.

The project must be done in accordance with the Graduate Honor Code.  Please review Appendix III of the Code for specific information on how to avoid inadvertent plagiarism.

Types of Project

Programming Project

A programming project should involve the implementation and demonstration of a protocol and/or network service. For example, a project could involve the design and implementation of an application-level protocol such as Simply implementing a "socket" program is not sufficient; the focus of the project must be protocol issues rather than use of system calls and/or libraries.

Use of C, C++, or Java is encouraged, but the program may be implemented using any language. Any suitable operating system may be used.

A written report must be submitted that describes the function, design, and implementation of the protocol and/or service and of the program. The report must include a documented program listing and, if appropriate, program results in appendices. The project will be evaluated based on the completeness, correctness, and performance of the protocol and/or service design, the demonstrated correctness and performance of the implementation, and the written report.

Here's a suggestion from Spring 1997 class for a streaming audio programming project.

Experimental Project

An experimental project may be either a simulation study or a performance experiment using measurements in a real system. For simulations, a simulation package may be used or a simulator can be written using a standard programming language such as Java, C or C++. A specific issue to be examined should be determined. For example, an experimental study could characterize Web, video or audio traffic on a LAN, while a simulation study could examine the jitter due to congestion control strategies in an ATM network. A model and an experiment should be designed to provide insight into the issue. After the experiment is completed, the results should be analyzed and conclusions drawn.

Consider using experiment design methods.  For example, if you want to determine the best thoughput in a simulation, and there are five input variables to the simulator, each taking one of ten values, you would need to do 510 experiments (possibly more if multiple replicas are done when any of the five input variables are drawn from a random variable.)  You might be able to do fewer experiments using experiment design methods from statistics.  These are discussed in the following book, which is on reserve in the library:

Experiment design methods from the Jain book are also discussed on the Web pages for CS5014

For CS students, the Visual Simulation Environment used in CS5224 (taken by some students in our class last semester) could be used for simulation.  An IP simulator has been written using this environment, and might be reused by a team simulating higher level protocols or IP issues.  The VSE will be put on the graduate lab NT machines if there is interest.

For EE students, a simulator package, MIL 3's OPNET Modeler, is available in the Electrical Engineering Workstation Laboratory for students in Blacksburg. Students are responsible for learning to use OPNET on their own (see  OPNET FAQ list at VirginiaTech).

For other experimental studies, CS or EE students may request through Prof. Midkiff access to the Electrical Engineering Department's Networking and Visualization Laboratory which includes a FORE Systems ASX-200WG ATM switch, an Ethernet LAN, seven Silicon Graphics workstations, and three Pentium Pro personal computers running Microsoft Windows NT 4.0.

The experiment, including issues, models, results, analysis, and conclusions, must be documented in a written report. If simulation is used, the report must include a listing of the simulator package input or documented program listing and output data in appendices. If measurements are used, the report must include listings of any test programs and all measurements in appendices. The project will be evaluated based on experimental design, analysis of results, and the written report.

Critical Review Paper

A critical review paper should describe an issue or problem area, e.g. transport protocols for carrying real-time multimedia traffic over IP, specify criteria for evaluation, review three or four alternative approaches described in the literature, and provide an assessment or critique of the different approaches. Additional references should be used to describe the problem and/or evaluation criteria. The paper should highlight the relative strengths and weaknesses of each approach. Note that a critical review paper is not just a review of several papers on the same topic. You are expected to add "intellectual content" by comparing and contrasting the ideas in the papers.

The project will be evaluated based on the definition of the problem and evaluation criteria, the thoroughness of the literature review, insight into alternative approaches and their detailed comparison, and the written report.

Project Proposal

All projects must be approved by the instructor. Each student or team must submit a brief project proposal (no more than the equivalent of three pages) by email to the instructor at abrams@vt.edu with the subject line "5516 proposal". Only one proposal should be submitted per team.

The proposal must outline

Students are encouraged to discuss project ideas with the instructor and to submit proposals as early as possible. Revisions may be needed.

Project Reports

All projects require a written report. Only one report can be submitted per team. All reports must be typed and neatly formatted. In addition to technical content, neatness, spelling, grammar, writing style, and clarity will be considered in grading. Reports must be organized as follows.

Other Information


 Project information may be added during the semester. Check back for new and updated material.


Last modified by abrams@vt.edu on 23 April 1998.