Home » DESIGN AND IMPLEMENTATION OF A PEER TO PEER NETWORK FOR FILE SHARING

DESIGN AND IMPLEMENTATION OF A PEER TO PEER NETWORK FOR FILE SHARING

Design and implementation of a peer to peer network for file sharing

 

CHAPTER ONE

INTRODUCTION

Background Of The Study

“File sharing is the practice of distributing or providing access to digitally stored information, such as computer programs, multimedia (audio, images and video), documents, or electronic books. It may be implemented through a variety of ways. Peer-to-peer file sharing systems have become more popular for sharing, exchanging, and transferring files among many users over the internet. In the peer-to-peer network, a central point is not necessary. In addition, a peer-to-peer sharing system is getting more attention in computing. Many peer-to-peer file sharing systems are available between computers, such as Napster, Gnutella, and Freenet over the internet. Most of the internet traffic is due to file sharing systems. Napster uses a server to communicate between the users, and each user should contact the server in order to get the data. Gnutella, however, depends on the client/server approach where the peer sends a query to all peers in the network. The main issue in peer-to-peer file sharing is deciding which protocol to use for finding and indexing information that generates the least amount of internet traffic.

Peer-to-peer system forms have been used for many years for file sharing, recently implemented for services such as Skype. These services reduce load on their servers by passing data directly from user to user. Java is a general-purpose, concurrent, class-based, object-oriented computer programming language that is specifically designed to have as few implementation dependencies as possible. It is intended to let application developers “write once, run anywhere” (WORA), meaning that code that runs on one platform does not need to be recompiled to run on another. Java applications are typically compiled to byte code (class file) that can run on any Java virtual machine (JVM) regardless of computer architecture. Java is, as of 2021, one of the most popular programming languages in use, particularly for client-server web applications, with a reported 3 billion users. Java was originally developed by James Gosling at Sun Microsystems (which has since merged into Oracle Corporation) and released in 1995 as a core component of Sun Microsystems’ Java platform. The language derives much of its syntax from C and C++, but it has fewer low-level facilities than either of them. The aim of this project is to design and implement a file sharing application for networked devices. This project will allow multiple users to share files to multiple devices. This project would provide a stable platform.

Objectives Of The Study

The main objective of this study is to design and implement a peer-to-peer computer network for socsmait office.

The specific objectives of this study are

To enable communication between two or more computers on the network.
To allow the computers in the network communicate without the need for a central server.
To allow the computers connected in the network perform the function of both a server and a client on the network i.e. they are given the administrative right to both send and receive data.
To create a network for each computer to easily upload and download files over the peer to peer network, and this can be done without having access to the internet.

Significance Of The Study

This project is designed to provide a means to transmit files (data / video) from one system to another system or a group of systems connected to a hub or connected via an Ethernet straight-through cable. It also provides a cost-effective, secured, safe, faster means to transfer files from one device to another device. It is also a secured and effective way of transferring the results of students in the department to the office of the dean. It is an improved means for proper administration of students in the department, to eradicate the issues associated with missing results in the department, and also saves cost because we would not have need to get a server.

Scope Of The Study

This research focuses on creating a peer to peer network using two systems and an Ethernet straight-through cable. The systems would be given IP addresses manually, before the systems would be able to communicate with each other, to create a faster, safer and more efficient medium for file transfer.

Limitation Of The Study

This project is limited to creating a peer to peer network for a group of devices, but due to financial constraints, we are limited to using just two computers inter connecting with an Ethernet cross-over cable. Also, due to financial circumstances, we are limited to only using Ethernet cross-over cable and we won’t be able to make use of a network hub.

Definition Of Terms

COMPUTER: A computer is an electro-mechanical device that receives data, processes, and stores and gives back the data as information.

NETWORK: A network is a collection of computers, servers, mainframes, network devices, peripherals, or other devices connected to one another to allow the sharing of data.

PEER –TO – PEER: Peer-to-peer is a decentralized communications model in which each party has the same capabilities and either party can initiate a communication session.

ETHERNET CROSSOVER CABLES: An Ethernet crossover cable is a type of Ethernet cable used to connect computing devices together directly. It is most often used to connect two devices of the same type: e.g. two computers (via network interface controller) or two switches to each other.

ETHERNET STRAIGHT-THROUGH CABLES: An Ethernet straight through cable is a type of Ethernet cable used to connect computing devices together directly. It is most often used to connect two devices of different type: e.g. a computer to a printer (via network interface controller) or a switch to a router.

NETWORK HUB: A network hub is a network hardware device that contains multiple ports for connecting multiple Ethernet devices together and making them act as a single network segment.

CLIENT: This is a desktop computer or workstation that is capable of obtaining information and application from a server.

SERVER: A server is a computer program or device that provides functionality for other programs or devices called “clients”.

OSI MODEL: These are protocols which is responsible for devices of different manufacturers to still communicate.

TCP:A standard that defines how to establish and maintain a network conversation via which application programs can exchange data.

IP ADDRESS: This is the address given to layer 3 devices and used to communicate with other layer 3 devices.

SUBNET MASK:It determines what subnet an IP address belongs to, and it is a 2 bit number that marks an IP address into network and host address.