Term Project
Spring 2013
CS 5550: Computer Networks
The project is a semester-long effort that is performed individually or in groups. The goal is to introduce you to networking research and state-of-the-art networking technologies, protocols, and architectures. Typically, projects fall into three categories:
1. Survey projects: In which students conduct in-depth literature review of a specific subject pertaining to computer/telecommunication networks. These projects should point the different solutions proposed in the literature to handle the surveyed subject and the tradeoff between these solutions.
2. Implementation projects: In which students conduct a brief literature review of a specific subject (e.g., protocol) and then build a system to test, demonstrate, or evaluate some features.
3. Simulation projects: In which students conduct a brief literature review of a specific subject (e.g., protocol), propose changes, and then perform analytical/simulation studies to study the performance implications of the proposed changes.
Project Grading* (20 points Max.):
Checkpoint 5
Final Documented Software & Report 10
Demo and Presentation 5
Deliverables:
1. Proposal
· Due date: Thursday, February 7th (in class).
· Length: 1-2 pages.
· Format: Typed using word processing software (e.g., MS-word) or document processing software (e.g., LaTeX).
· Content: Member names and email addresses, project title, idea, goal, general architecture, used technologies, references, to-do list. Notice that the list should specify the tasks to be completed before and after the checkpoint. The following is a sample entry in the TO-DO list:
Tasks |
Description |
People (Effort) |
Date (start-finish) |
Literature Review |
Investigate the Java technologies and various APIs available to implement the project. |
Bob Someone |
Jan 14-Jan 21 |
· Note1: The project TO-DO list should be presented in a table format. The list should specify the project tasks, people involved in each task, and the date to complete each task.
· Note2: You are strongly encouraged to discuss your ideas with the professor to make sure that your idea is good and that different people are not working on the same stuff.
2. Checkpoint
· Due date: Thursday, March 14th (in class).
· Length: 2-3 pages.
· Format: Typed using word processing software (e.g., MS-word) or document processing software (e.g., LaTeX).
· Content: Describe the progress accomplished so far against the to-do list in the proposal (itemized check in table format). Also, the report should address the detailed software architecture, overview of used technologies, and high-level design of the various software modules.
· Note: You are strongly encouraged to keep discussing your ideas with the professor to get feedback about the work and suggestions on how to progress.
3. Presentation & Demo:
· Date: Thursday, April 18th (in class).
· Duration: 10-15 minutes.
· Content: Present your work emphasizing your implementations, used technologies, contributions, and the tradeoffs between the studied approaches.
4. Final Report
· Due date: Thursday, April 18th (in class).
· Length: 3-4 pages.
· Format: Provide one hardcopy and one softcopy of all work completed throughout the semester. The final report should be typed using word processing software (e.g., MS-Word) or document processing software (e.g., LaTeX). The report should comply with the IEEE transactions format. Microsoft word template or LaTeX style files can be found at the following URLs:
Instructions |
http://www.ieee.org/portal/cms_docs/pubs/transactions/TRANS-JOUR.PDF
|
MS-Word |
Template File: http://www.ieee.org/portal/cms_docs/pubs/transactions/TRANS-JOUR.DOC
|
LaTeX (PC/Mac) |
Style File: http://www.ieee.org/portal/cms_docs/pubs/transactions/IEEEtran.zip
Bibliography Style File: http://www.ieee.org/portal/cms_docs/pubs/transactions/IEEEtranBST.zip
|
LaTeX (Unix) |
Style File: http://www.ieee.org/portal/cms_docs/pubs/transactions/IEEEtran.tar.gz
Bibliography Style File: http://www.ieee.org/portal/cms_docs/pubs/transactions/IEEEtranBST.tar.gz
|
· Content: Complete report (with citations and references) documenting all the work completed in the project (software architecture, used technologies, brief review of the different technologies used in the project, software design, etc.). All parameters, values, graphs, etc., must be clearly labeled and identified.
5. Software
· Due date: Thursday, April 18th.
· E-mail your implementation and final report in a single ZIP file attachment.
· Format: Software MUST be clearly documented, commented, and indented.
TIPS:
· Reading a brief tutorial about Java Design Patterns before you start your implementation can very helpful (http://www.stardeveloper.com/articles/display.html?article=2004022804&page=1)
· Do not jump into coding without design.
· Build clean development (J2SE, j2EE, j2ME, .NET, IDE, etc.) and deployment (tomcat, apache, SUN Java System Application Server) environments for your application. Use “ant” or “make” files.
· Research the technologies that you will use more and read tutorials about it before you jump into coding.
· It is always a good idea to start with a very small prototype for your application.
CS 5550 – Computer Networks
Spring 2013
Sample Term Projects
1. Overview of VoiceXML.
2. Overview of Voice Over IP (VoIP) protocols (e.g., SIP vs. H.323).
3. Overview of Peer-to-Peer Networks (e.g., KaZaA, Gnutella, BitTorrent, Napster).
4. Overview of Intrusion Detection and Protection Systems (e.g., snort).
5. Overview of Honeypot security.
6. Overview of site-to-site and remote access Virtual Private Networks (VPNs).
7. Overview of the IPSec protocol ftramework (IPSec protocol, Encryption, Authentication, and Diffie-Hellman).
8. Overview of Linux Firewalls Using iptables.
9. Routing in Wireless Ad-Hoc Networks.
10. Border Gateway Protocol.
11. Wireless Access Protocol (WAP).
12. Real-Time Streaming Protocol.
13. WiMax (IEEE802.16).
14. Global System for Mobile Communications (GSM), GPRS, EDGE.
15. Comparison between 3G and 4G Wireless Systems.
16. Code Division Multiple Access (CDMA).
17. Optical Burst Switching.
18. Optical Wavelength Switching.
19. Optical Packet Switching.
20. Multiprotocol Label Switching (MPLS).
21. Write a computer program (e.g., using SimJava) that simulates a simple packet queue. Packet queues are usually installed in router output ports to resolve contention for limited capacity links. The source is assumed to follow the ON/OFF traffic model. The ON and OFF periods are assumed to be exponentially distributed with parameters a (i.e., mean ON period) and b (i.e., mean OFF period) respectively.
The simulation program requests the following data from the user:
The simulation program produces the following performance metrics:
*
Exceptionally excellent projects can get up to 10 extra points.