Design and Implementation of Peer to Peer File Sharing Application
A Peer to Peer is a computer network where every computer or node acts as a client or server for the other nodes in the network so this type of network allows effective sharing of resources without the aid of a Central Server to control the distribution and sharing of resources. A Peer to Peer network allows us to share audio, video and other data. In the case of Peer to Peer network architecture the workload or the partition is divided among all the nodes. So each and every node has some part of the disk under its control and it can use it resources without asking other nodes or any other central coordinator thus it makes the job lot easier because a node is not dependent on any other nodes and it doesn’t have to wait for the resources to be free, because each node has its own independent resource (Torras 2008). This project will deeply analyses the design of the P2P file sharing application.
Some of the peer to peer applications that exists today include BitTorrent, iMesh etc make file sharing over the internet more easier and faster but the problem is that these applications aren’t safe all the time so it is up to us to be circumspect of all the possible threats that can be caused for instance breach in security, damage to computer through virus attacks and copyright issues are some of the common problems that a person using the file sharing application is likely to encounter. So protecting the sensitive information in the computer becomes a hectic task and some of the things that have to be done include: following naming conventions, minimizing the use of file sharing applications on computers where sensitive information are kept and sometimes we have to even consider banning the use of file sharing applications if the security threat is enormous and last but not the least we have to regularly update the security policy followed in an organisation all these steps ensure that the sensitive information are protected from unauthorized users.
There are so many P2P platforms and one such platform that assists in the development of p2p application and one such platform is JXTA (Juxtapose) it uses XML to transfer messages within the network (Castro 2005). Since JXTA uses XML which is a universally accepted standard so we have the comfort of using any language and it creates a virtual overlay network which allows the users to interact easily and the resources in the network are identified by using a unique identifier (UID) and thus it becomes easier to track the resource and nodes using the UID.
In the JXTA the message can be quickly transferred because a loosely consistent network and an optimized routing mechanism is also used to help in the quick transfer of messages and the xml messages are used for advertising about resources and it involves communication to transfer information among the nodes. This project deeply analyzes all the possible designs of P2P data transferring application and will result in implementing a better P2P data transfer system.
- The aim of the project is to design and implement the P2P file sharing application
- The design and implementation of the P2P file sharing application is made with the help of JXTA technology of Sun Microsystems.
- To collect the information about the P2P technology and the JXTA technology
- To set up a proper JXTA technology
- To select few particular P2P application for the investigation purpose.
- To implement a new P2P application from the test results of the existing P2P application
- To analyze the benefits of new implemented P2P application.
- To find a good method of messenger application development on P2P platform using JXTA technology.
- To test the newly implemented P2P application under various security threats.
- To develop a more secure P2P application.
While developing a peer to peer application there are certain steps to be followed which includes selecting a suitable language to develop the software and then we should get the license for developing and launching the software and if needed we can even make it as an open source software so that the code used for developing the software will be available to everyone and then they can download it and also add their own ideas to the software give suggestions to the developer and the person developing the application should also consider ways to improve the revenue generation by using this software.
We should also consider building social communities to encourage people to come together and thus the peer to peer file sharing application will also act as a social media thus it will encourage many people to start using the application and this concept of social community integrated into file sharing application will foster good relationship among the users and also build the reputation of the software and thus the software will quickly gain popularity and use of ideas like pay to download, and pay to use attractive features will also help the developers to make money and the concept of paid support might come in handy to help the person who actually developed the software or the person who currently owns the software
Another important thing to be considered is the use of attractive GUI (Graphical User Interface) to make the software more easy for people to use especially the non-technical persons and thus it is our responsibility to ensure that the software has all the features and sophistications at the same time simplicity has to be maintained because simple things could be very efficient and effective and that’s perhaps the need of many people (Maria 2008).
Last things but definitely not the least thing is to be considered while developing a file sharing application is the network topology. There are many types of topologies but the most commonly used topology in file sharing application is classified as overlay network because it involves building another network over an existing network. Some of the common topologies are ring, mesh, bus, star, line, fully connected topology but the selection of a suitable topology is determined by the use of protocol and the infrastructure available.
Before completing the Ethics Check Form the person undertaking the activity should consider the following questions:
|1||Is the size of sample proposed for any group enquiry larger than justifiably necessary?||√|
|2||Will any lines of enquiry cause undue distress or be impertinent?||√|
|3||Has any relationship between the researcher(s) and the participant(s), other than that required by the academic activity, been declared?||√|
|4||Have the participants been made fully aware of the true nature and purpose of the study?|
If NO is there satisfactory justification (such as the likelihood of the end results being affected) for withholding such information? (Details to be provided to the person approving the proposal).
|5||Have the participants given their explicit consent?|
If NO is there satisfactory justification for not obtaining consent? (Details to be provided to the person approving the proposal).
|6||Have the participants been informed at the outset that they can withdraw themselves and their data from the academic activity at any time?||√|
|7||Are due processes in place to ensure that the rights of those participants who may be unable to assess the implications of the proposed work are safeguarded?||√|
|8||Have any risks to the researcher(s), the participant(s) or the University been assessed?|
If YES to any of the above is the risk outweighed by the value of the academic activity?
|9||If any academic activity is concerned with studies on activities which themselves raise questions of legality is there a persuasive rationale which demonstrates to the satisfaction of the University that:|
|i the risk to the University in terms of external (and internal) perceptions of the worthiness of the work has been assessed and is deemed acceptable||√|
|9||ii arrangements are in place which safeguard the|
interests of the researcher(s) being supervised in
pursuit of the academic activity objectives;
|iii special arrangements have been made for the security of related documentation and artefacts.|
Appropriate expert advice should be sought as appropriate
|10||Have the ethical principles and guidelines of any external bodies associated with the academic activity been considered?||√|
Ethics Check Form
1 Name(s) of Applicant:
3 Name of Supervisor:
4 Title of Project:
5 Resume of ethical issues:
6 Does the project require the approval of any external agency?
If YES has approval been granted by the external agency?
* delete as appropriate
7 Statement by Applicant
I confirm that to the best of my knowledge I have made known all relevant information and I undertake to inform my supervisor of any such information which subsequently becomes available whether before or after the research has begun
Signature of Applicant: ________________________ Date: _____________
8 Statement by Supervisor/Line Manager (please sign the relevant statement)
|Approval for the above named proposal is granted|
I confirm that there are no ethical issues requiring further consideration.
(Any subsequent changes to the nature of the project will require a review of the ethical
Signature of Supervisor: ________________________ Date: _____________
|Approval for the above named proposal is not granted|
I confirm that there are ethical issues requiring further consideration and will refer the
project proposal to the appropriate Committee**
Signature of Supervisor: _________________________ Date: _____________
** For work forming part of an MMU taught programme– refer to Faculty Academic Standards
** For work forming part of an MMU research programme – refer to Faculty Research Degree
** For PhD by published work – refer to Research Degree Committee
** For any other work – refer to appropriate Faculty/Department Committee or line manager.