j a v a a b s m u l t i t h r e a d e d p e e r p e e r c o m m u n i c a t i o n u s i n...

4
MULTITHREADED PEER - PEER COMMUNICATION USING DISTRIBUTED FRAMEWORKS INTRODUCTION Distributed computing is a science which solves a large problem by giving small parts of the problem to many computers to solve and then combining the solutions for the parts into a solution for the problem. A type of computing in which a computational task is divided into subtasks that execute on a collection of networked computers. The networks are general- purpose networks (LANs, WANs, or the Internet) as opposed to dedicated cluster interconnects Computing systems in which services to users are provided by teams of computers collaborating over a network. Distributed computing is a programming model in which processing occurs in many different places (or nodes) around a network. Processing can occur wherever it makes the most sense, whether that is on a server, Web site, personal computer, handheld device, or other smart device. Distributed computing or Distributed system is the process of aggregating the power of several computing entities to collaboratively run a single computational task in a transparent and coherent way, so that they appear as a single, centralized system. Peer-to-peer — an architecture where there is no special machine or machines that provide a service or manage the network resources. Instead all responsibilities are uniformly divided among all machines, known as peers. A peer-to-peer (or P2P) computer network is a network that relies on the computing power and bandwidth of the participants in the network rather than concentrating it in a relatively few servers. P2P networks are typically used for connecting nodes via largely ad hoc connections. Such networks are useful for many purposes. Sharing content files containing audio, video, data or anything in digital format is very common, and realtime data, such as Telephony traffic, is also passed using P2P technology. The term "P2P network" can also mean grid computing. A pure peer-to-peer file transfer network does not have the notion of clients or servers, but only equal peer nodes that simultaneously function as both "clients" and "servers" to the other nodes on the network. This model of network arrangement differs from the client-server model where communication is usually to and from a central server. A typical example for a non peer-to-peer file transfer is an FTP server. One user uploads a file to the FTP server, then many others download it, with no need for the uploader and downloader to be connected at the same time.

Upload: ncct

Post on 03-Dec-2014

575 views

Category:

Technology


0 download

DESCRIPTION

Final Year Projects, Final Year Projects in Chennai, Software Projects, Embedded Projects, Microcontrollers Projects, DSP Projects, VLSI Projects, Matlab Projects, Java Projects, .NET Projects, IEEE Projects, IEEE 2009 Projects, IEEE 2009 Projects, Software, IEEE 2009 Projects, Embedded, Software IEEE 2009 Projects, Embedded IEEE 2009 Projects, Final Year Project Titles, Final Year Project Reports, Final Year Project Review, Robotics Projects, Mechanical Projects, Electrical Projects, Power Electronics Projects, Power System Projects, Model Projects, Java Projects, J2EE Projects, Engineering Projects, Student Projects, Engineering College Projects, MCA Projects, BE Projects, BTech Projects, ME Projects, MTech Projects, Wireless Networks Projects, Network Security Projects, Networking Projects, final year projects, ieee projects, student projects, college projects, ieee projects in chennai, java projects, software ieee projects, embedded ieee projects, "ieee2009projects", "final year projects", "ieee projects", "Engineering Projects", "Final Year Projects in Chennai", "Final year Projects at Chennai"

TRANSCRIPT

Page 1: J A V A  A B S    M U L T I T H R E A D E D  P E E R    P E E R  C O M M U N I C A T I O N  U S I N G  D I S T R I B U T E D  F R A M E W O R K S

MULTITHREADED PEER - PEER

COMMUNICATION USING

DISTRIBUTED FRAMEWORKS

INTRODUCTION

Distributed computing is a science which solves a large problem by giving small

parts of the problem to many computers to solve and then combining the solutions

for the parts into a solution for the problem.

A type of computing in which a computational task is divided into subtasks that

execute on a collection of networked computers. The networks are general-

purpose networks (LANs, WANs, or the Internet) as opposed to dedicated cluster

interconnects

Computing systems in which services to users are provided by teams of computers

collaborating over a network. Distributed computing is a programming model in

which processing occurs in many different places (or nodes) around a network.

Processing can occur wherever it makes the most sense, whether that is on a

server, Web site, personal computer, handheld device, or other smart device.

Distributed computing or Distributed system is the process of aggregating the

power of several computing entities to collaboratively run a single computational

task in a transparent and coherent way, so that they appear as a single,

centralized system.

Peer-to-peer — an architecture where there is no special machine or machines

that provide a service or manage the network resources. Instead all responsibilities

are uniformly divided among all machines, known as peers.

A peer-to-peer (or P2P) computer network is a network that relies on the

computing power and bandwidth of the participants in the network rather than

concentrating it in a relatively few servers. P2P networks are typically used for

connecting nodes via largely ad hoc connections.

Such networks are useful for many purposes. Sharing content files containing

audio, video, data or anything in digital format is very common, and realtime data,

such as Telephony traffic, is also passed using P2P technology. The term "P2P

network" can also mean grid computing.

A pure peer-to-peer file transfer network does not have the notion of clients or

servers, but only equal peer nodes that simultaneously function as both "clients"

and "servers" to the other nodes on the network. This model of network

arrangement differs from the client-server model where communication is usually

to and from a central server.

A typical example for a non peer-to-peer file transfer is an FTP server. One user

uploads a file to the FTP server, then many others download it, with no need for

the uploader and downloader to be connected at the same time.

Page 2: J A V A  A B S    M U L T I T H R E A D E D  P E E R    P E E R  C O M M U N I C A T I O N  U S I N G  D I S T R I B U T E D  F R A M E W O R K S

Some networks and channels, such as NAPSTER (now closed), OPENNAP, or

IRC, use a client-server structure for some tasks (e.g., searching) and a peer-to-

peer structure for others.

Networks such as GNUTELLA or FREENET use a peer-to-peer structure for all

purposes, and are sometimes referred to as true peer-to-peer networks, although

GNUTELLA is greatly facilitated by directory servers that inform peers of the

network addresses of other peers.

Distributed computing works by splitting up the larger task into smaller chunks

which can be performed at the same time independently of each other.

For example, say your task is in the form of a linear sequence of repeated steps,

where the result of the previous step is needed to perform the subsequent step.

This task is not appropriate to distribution. Only one step can be performed at a

time. The main strength of distributed computing is to harness the tons of idle time

of computers in the world. There are ways to keep the details secret, but from a

technical viewpoint, they are all doomed to failure.

AIM OR OBJECTIVE OF THE PROPOSED SYSTEM

The proposed system’s prime objective is to develop a software system, which will

have distributed file sharing system, which should handle the center point of failure

of the system in the case of single server NAPSTER architecture.

The proposed system will adopt a GNUTELLA - MULTIPLE SERVER

DISTRIBUTED MODEL, wherein even if one of the server is unavailable, the other

servers would substitute for the unavailable server by the databse replication.

Moreover the client use a Peer-peer network approach to enble direct

communication process without burdening of the server.

EXISTING SYSTEM

� There are lots of file sharing software existing, but commonly used one is the

NAPSTER architecture.in NAPSTER architecture, a central directory server is

responsible for holding the addressability information of the connected

connected clients

� The major demerit of the above system is that if the ventral server collapses,

then the entire network communication would collapse and come to a stand-still

� To eliminate the above demerit, there arose another architecure called

GNUTELLA

PROPOSED SYSTEM ADVANTAGES

� This GNUTELLA architecture consists of clients gets connected to one another,

where all the clients uses peer-peer communication. It will also use the

MULTIPLE server model which helps all the clients to use the centralized

server and accesses the database, along with peer-peer networks.

� In this model, all the clients are connected to one another and can

communicate with one another with three servers and one client successfully

connects to either of them.

Page 3: J A V A  A B S    M U L T I T H R E A D E D  P E E R    P E E R  C O M M U N I C A T I O N  U S I N G  D I S T R I B U T E D  F R A M E W O R K S

� All the nodes demand increases in parallel with all the clients, including

bandwidth, storage space and computing power. Thus the total capacity of the

system also increases.

� The distributed nature of peer-to-peer networks also increases robustness in

case of failures by replicating data over multiple peers, and in pure P2P systems

by enabling peers to find the data without relying on a centralized index server.

PROPOSED SYSTEM HARDWARE REQUIREMENTS

HARDWARE

Processor - PIII or higher processor server and client

RAM - 128 MB or higher

HDD - 40 GB or higher

MONITOR - LG/SAMSUNG colour

FDD - 1.44 MB / Keyboard / Mouse / ATX Cabinet

SOFTWARE

OPERATING SYSTEM : WIN 2000 / WIN XP / WIN 98

SOFTWARE : JDK 1.3 OR HIGHER

NETWORK OS CLIENT : WINDOWS 98 Client

DATABASE : ORACLE 8i

ABOUT THE PROPOSED PROJECT

A popular solution is the "Distributed Computing" model, where the task is split

up into smaller chunks and performed by the many computers owned by the

general public. Computers spend a lot of their time doing nothing.

With the recent popularity of the Internet, distributed computing has become

popular. The technology behind distributed computing is old, where it is usually

known as parallel computing. When people speak of parallel computing, it is

usually in the context of a local group of computers, owned by the same person or

organization, with good links between nodes.

Distributed computing, bringing in computers owned by the general public over the

world. The key issues here are that the computing power that we don’t own is still

used.

IN OUR PROJECT

� Files are stored in the client and not in the server. Only address ability

information in the server

� Information about the client should be given before the client connection is

made.

� The proposed system follows a MULTIPLE SERVER DISTRIBUTED MODEL

where there are 3 servers, and when a client can successfully, connects to either of them, the respective session details and files they are sharing, are

recorded, in the server database

Page 4: J A V A  A B S    M U L T I T H R E A D E D  P E E R    P E E R  C O M M U N I C A T I O N  U S I N G  D I S T R I B U T E D  F R A M E W O R K S

ADVANTAGES OF PEER - TO - PEER NETWORKS

An important goal in peer-to-peer networks is that all clients provide resources,

including bandwidth, storage space, and computing power.

Thus, as nodes arrive and demand on the system increases, the total capacity of

the system also increases.

This is not true of a client-server architecture with a fixed set of servers, in which

adding more clients could mean slower data transfer for all users. In the latter

case, there is no single point of failure in the system.

When the term peer-to-peer was used to describe the NAPSTER network, it

implied that the peer protocol nature was important, but, in reality, the great

achievement of NAPSTER was the empowerment of the peers (i.e., the fringes of

the network) in association with a central index, which made it fast and efficient to

locate available content. The peer protocol was just a common way to achieve this.

ASSUMPTIONS

1. The user knows the file name for the sharing concept

2. Clients, Servers, IP addresses and port numbers are pre-defined

3. The system should have minimum of three nodes

PROPOSED SYSTEM MODULES

A. SERVER MODULES

1. Client information

2. Client validation

3. Record the shared files

4. Files search result

5. Connection establishment with other servers

6. Client data updation

7. Active users list

8. Database replication

9. Shortest path simulation using DIJIKSTRA

B. CLIENT MODULES

1. Login authentication

2. Registration

3. File sharing list

4. Client file search request

5. File transfer

6. Account maintenance

7. Connection with other servers