Implementation and evaluation of WASTE peer-to-peer

advertisement
Implementation and Study of the WASTE Peer-to-Peer Networking Application
Supervisors:
Johan Nykvist, e-mail: johan@sm.luth.se, tel: 2898, office: A3404
Anders Lindgren: e-mail: dugdale@sm.luth.se, tel: 1489, office: A3407
Kaustubh Phanse, e-mail: kphanse@sm.luth.se, tel: 1428, office: A3409
1. Introduction
WASTE [1] is an open source secure and encrypted peer-to-peer file sharing and collaboration
tool. Currently, the software is available primarily for Win-32 and MAC OS, and has limited
support for Linux environment.
2. Project Description
The aim of this project is to implement a Java-based prototype (J-WASTE) of the WASTE
application1. The project should be carried out in the following manner.
Phase 1 :: Protocol documentation
--------------------------------The exact operation of the WASTE protocol is not yet well understood and has not been
documented. Hence, as a first step, you are expected to understand the operation of WASTE
protocol. You have the flexibility to choose the means (e.g., from the course code, by conducting
tests, sniffing packets, etc.) to achieve this. The WASTE protocol operation (characteristics,
client-server interaction, packet format, etc.) should then be documented in the form of a wellwritten technical report (e.g., structured similar to an IETF RFC).
Phase 2 :: Design and Implementation
-----------------------------------This phase will deal with the design and implementation of the new Java-based version of the
WASTE application. You should focus on the following aspects.
• GUI
• Key generation and management
• File browsing and searching
• File transfer
• Messaging
You are encouraged to suggest and implement improvements to the design of the existing
WASTE protocol and application. The source code of your implementation will be released under
an "open source" license, e.g., GPL, LGPL or BSD.
Phase 3 :: Testing and evaluation
-----------------------------------You should propose a set of tests to verify correct operation of your implementation, verify
interoperability between the J-WASTE and the older version of WASTE for Win-32, and to
evaluate performance of the tool, e.g., in terms of load balancing, scalability among other metrics.
1
There seems to be an existing project [2] to implement a WASTE client in Java. However, the project
seems to be dead or at least in an idle state.
3. Deliverables
The following deliverables are expected from this project.
• Technical report on the WASTE protocol (as of v1.5)
• Object-oriented implementation design
• Implementation in Java released under an "open" license
• Test suite and evaluation results
• Well-written project report including implementation documentation and user guide
References
[1] http://waste.sourceforge.net/
[2] http://sourceforge.net/projects/jwaste/
Download