Lab 6 - Choose Your Own Adventure

The goal of this lab is for you to explore a networking-related project of your choosing. You will have over 4 weeks to complete this project, so it should be roughly twice the size of Lab 4 or Lab 5. The lecture period on April 12 will be devoted to discussion of your proposal. By April 12, you will need to submit a 1-2 paragraph description of your proposed project. I will respond promptly with any comments about your proposal. You are strongly encouraged to meet with the professor early and often to discuss your ideas.

For this project, you may choose to work in teams of 2. I will expect teams to complete roughly 2 times more work than individuals, and each team member will receive a grade based on my assessment of the individual contributions.

Your final grade will be based upon your proposal, the functionality of your final submission, the design of your final submission, the degree of difficulty of your proposed project, and your final demonstration. Submissions that demonstrate a low level of difficulty will be graded accordingly. Upon reading your proposal I will give you feedback on the level of difficulty of the project.

Following are some ideas for Lab 6 This is not meant to be an exhaustive list, and is meant to inspire your creativity. You may choose to do a more development-oriented project where you implement a protocol or system, or you may choose to do a more research-oriented project where you propose a new idea or hypothesis and evaluate it, possibly by doing some implementation or data analysis.

    1. Use the Seattle testbed to implement a link state and a distance vector routing protocol and evaluate each.
    2. Reimplement your distributed cache using the ICP protocol used by Squid. Test your system by verifying it is compatible with a Squid cache.
    3. Use ns or a different network simulator to implement and evaluate a protocol of your choosing (e.g., a congestion control protocol).
    4. Propose a hypothesis related to mDNS traffic/performance and capture and analyze traffic to prove or disprove your hypothesis.
    5. Implement a reliable multicast protocol and use it to replace the reliable protocol you implemented for Lab 5.
    6. Propose and test a hypothesis regarding performance metrics of wired versus wireless networks.
    7. Propose and test a hypothesis regarding the performance of your home network.
    8. Implement and evaluate a congestion control for the protocol you implemented in Lab 5.

Due 2:40PM - Tuesday, April 12

1. Email me a 1-2 paragraph description of your proposed extension. I will respond promptly with any comments about your proposal.

Due - May 17. 2011

1. You must demonstrate your completed program by May 17. 2011. Demo slots will be filled on a first-come first-served basis. Please plan accordingly.

Note: No portion of your code may be copied from any other source including another text book, a web page, or another student (current or former). You must provide citations for any sources you have used in designing and implementing your program.