SlideShare uma empresa Scribd logo
1 de 13
Peer to Peer Messaging System

(Synopsis)

1
ABSTRACT
The project titled

peer-to-peer Messaging presents the development

of an instant messaging application based on the concept of peer-topeer

networking

using

JXTA

platform.

P2P

(or

peer-to-peer)

networking is a network model where, depending on an operation's
context, any node can operate as either a server or a client. The P2P
architecture is a decentralized architecture, where neither client nor
server status exists in a network. Every entity in the network, referred
to as a peer, has equal status, meaning that an entity can either
request a service or provide a service. The main goal of this project is
to send instant messages to peers in the JXTA network using JXTA
relay.
JXTA defines a set of protocols to enable a framework for peerto-peer computing. All JXTA network users are peers to each other .
Peers communicate with each other to perform different tasks (such
as searching for new peers). Peer identifiers uniquely identify the peer
on the JXTA network The JXTA relay can accept client commands and
act upon the commands on the client's behalf. The relay acts as a
junction between the JXTA networks and peers.
JXTA has defined the data communication protocols that enable
messaging between a relay and a client. The JXTA relay receives
commands from a J2ME client, performs what's necessary on the
client's behalf, and represents a JXME client on the JXTA network. The
JXME client send messages to the relay. The relay discovers the peer
and route the messages to the destination.

2
INTRODUCTION
The traditional approach to information systems,
accessed by users by means of powerful devices (such as desktops
and laptops) with known features, will not be anymore significant in
the future years. Indeed, the current trend suggests that it will be
possible to offer continuous access to all information sources, from all
locations and through various kinds of devices, mainly small and
mobile (e.g., palmtops and PDAs, cellular phones). Therefore, the need
emerges for the design of applications for smart devices, which are
highly flexible, capable of exploiting in an optimal way the resources.
This Project analyzes the opportunity to design, develop and deploy
interactive applications running on smart cellular phones (commonly
referred to as smart phones), based on a peer-to-peer communication
model and GPRS technology.
PEER-TO-PEER (P2P) TECHNOLOGY enables any
network-aware device to provide services to another network-aware
device. A device in a P2P network can provide access to any type of
resource that it has at its disposal, whether documents, storage
capacity, computing power, or even its own human operator.
In the client/server architecture, clients request services and
servers provide those services. A variety of servers exist in today's
Internet -- Web servers, mail servers, FTP servers, and so on. The
client/server architecture is an example of a centralized architecture,
where the whole network depends on central points, namely servers,
to provide services. Regardless of the number of browsers or clients,
the network can exist only if a server exists.

3
CLIENT-SERVER MODEL

Like the client/server architecture, P2P is also a
distributed computing model, but there is an important difference. The
P2P architecture is a decentralized architecture where neither client
nor server status exists in a network. Every entity in the network,
referred to as a peer, has equal status, meaning that an entity can
either request a service (a client trait) or provide a service (a server
trait). Figure 2 illustrates a P2P network.

4
PEER-TO-PEER MODEL

Though peers all have equal status in the network, they don't all
necessarily have equal physical capabilities. A P2P network might
consist of peers with varying capabilities, from mobile devices to
mainframes. A mobile peer might not be able to act as a server due to
its intrinsic limitations, even though the network does not restrict it in
any way.
Although P2P might sound like a dot-com fad, the
technology is a natural extension of the Internet’s philosophy of
robustness through decentralization. In the same manner that the
5
Internet provides domain name lookup (DNS), World Wide Web, email,
and other services by spreading responsibility among millions of
servers, P2P has the capacity to power a whole new set of robust
applications by leveraging resources spread across all corners of the
Internet.
P2P networks shun the centralized organization of
the client/server architecture and instead employ a flat, highly
interconnected architecture. By allowing intermittently connected
computers to find each other, P2P enables these machines to act as
both clients and servers that can determine the services available on
the P2P network and engage those services in some application
specific manner. The main advantage of P2P networks is that they
distribute the responsibility of providing services among all peers on
the network; this eliminates service outage due to a single point of
failure and provides a more scalable solution for offering services. In
addition, P2P networks exploit
available bandwidth across the entire network by using a variety of
communication channels and by filling bandwidth to the “edge” of the
Internet. Unlike traditional client/server communications, P2P enables
communication via a variety of network routes, thereby reducing
network congestion.
P2P is the key to realizing this potential, giving
individual machines a mechanism for providing services to each other.
Unlike the client/server architecture, P2P networks don’t rely on a
centralized server to provide access to services, and they usually
operate outside the domain name system.

6
P2P has the capability of serving resources with
high availability at a much lower cost while maximizing the use of
resources from every peer connected to the P2P network. Whereas
client/server solutions rely on the addition of costly bandwidth,
equipment, and co-location facilities to maintain a robust solution, P2P
can offer a similar level of robustness by spreading network and
resource demands across the P2P network.
Unfortunately, P2P suffers from some disadvantages
due to the redundant nature of a P2P network’s structure. The
distributed form of communications channels in P2P networks results
in service requests that are nondeterministic in nature. For example,
clients requesting the exact same resource from the P2P network
might

connect

to

entirely

different

machines

via

different

communication routes, with different results. Requests sent via a P2P
network might not result in an immediate response and, in some
cases, might not result in any response. Resources on a P2P network
can disappear at times as the clients that host those resources
disconnect from the network; this is different from the services
provided by the traditional Internet, which have most resources
continuously available. P2P overcomes this disadvantage by providing
redundant access to a resource.

7
Existing System
In the client/server architecture, clients request services and
servers provide those services. Clients connect to a server using a
specific communications protocol, such as the File Transfer Protocol
(FTP), to obtain access to a specific resource. Most of the processing
involved in delivering a service usually occurs on the server, leaving
the client relatively unburdened.

The client in the client/server

architecture acts in a passive role, capable of demanding services from
servers but incapable of providing services to other clients. This model
of service delivery was developed at a time when most machines on
the Internet had a resolvable static IP address, meaning that all
machines on the Internet could find each other easily using a simple
name.
Limitations of the current system
The disadvantage of using client-server architecture is that
as the number of clients increases, the load and bandwidth demands
on the server also increase, eventually preventing the server from
handling additional clients.
Objective
The main objective of this project is to send instant messages
within a peer group in a decentralized network using JXTA technology.

8
Proposed System
The existing system operated on a client/server
mechanism

in

which

a

centralized

server

is

required.

While

communicating between the peer members in the JXTA network i.e.,
the proposed system, a peer name has to be given by the user in the
configurator window. The user is identified in the network using the
peer id. The peer member can secure his identification using the
password. The user should have an idea regarding the identification of
another person. Thorough knowledge of

identifying the members,

adding the peers in the network, deleting the members from the
network are required.

9
Hardware & Software Requirements
•

Pentium IV Processor – 2 GHZ

•

NIC – 32 Bit Ethernet Card

•

40 GB HDD

•

256 MB DDR RAM

•

Mobile Phone

•

JXTA Proxy Server

•

J2SDK 1.4.2_06

•

J2ME WTK 2.0

•

Windows 2000 Server

10
The project Peer-to-Peer Messaging is divided into three major
modules:
•

Element

•

Message

•

Peer Network

ELEMENT MODULE
The Element represents a single element of the JXME
message. The JXME implementation uses the Element to author JXME
messages. A pure P2P system does not require the existence of any
centralized servers or resources to operate. Therefore, a P2P system
must not rely on any centrally administered naming or addressing
system.
The first module of the project deals with entering the
member into the JXTA network and to enable them to chat with other
members of the group. Batch file called myjxta will be run first. In the
advanced settings tab, TCP option has to be enabled. Incoming and
outgoing connections has to be enabled. Port number of the system
has to be provided in the http settings. The peer who wants to become
the member of the JXTA group will enter with the peer name. Only
authenticated users can enter the network as password is required. In
the relay host, proxy id should be given for communicating with the
other peer. When all the settings are completed, the peer member has
entered the network and is ready to communicate with all members in
the NetPeerGroup.
MESSAGE MODULE
The message module is designed for the peer members to
communicate with each other in the network. JXME does not define

11
any special request message that explicitly asks the relay to send one
or more response messages it has for the JXME client. The JXME client
continues to send requests (for example, a peer group join request, a
pipe creation request, or a search query) or other outbound messages
to the relay. The relay avails these requests as opportunities to send
any incoming message to the JXME client in response to a request. The
JXME client uses the request Id element in the response message to
find out which request this response corresponds to.

JXTA peers use pipes to send messages to one another. Pipes
are an asynchronous and unidirectional message transfer mechanism
used for service communication. Pipes are indiscriminate; they support
the transfer of any object, including binary code, data strings, and
Java technology-based objects. The pipe endpoints are referred to as
the input pipe (the receiving end) and the output pipe (the sending
end). Pipe endpoints are dynamically bound to peer endpoints at
runtime.

Peer

endpoints

correspond

to

available

peer

network

interfaces (e.g., a TCP port and associated IP address) that can be
used to send and receive message. JXTA pipes can
have endpoints that are connected to different peers at different times,
or may not be connected at all.
PEER NETWORK MODULE
The Peer Network contains the methods to allow the JXME
communication

with

the

relay.

The

Peer

Network

is

like

a

communication module that internally uses different Message and
Element objects and handles all communication with the relay. Peer
Network has methods to perform the various tasks between the relay
and the mobile client. The Peer Network manages all the messages

12
and maintains the support tasks, maintaining the identity of various
messages exchanged between the relay and the client.

The third module deals with the implementation of communication
between JXTA peers in the midlet. Proxy id should be given and the
peer enters the group with a peer name. There are various options like
sending the message, reply, connect to the relay, Buddy list,
configuration

and

default

settings.

Using

the

various

options,

messages can be sent, reply can be sent to the received message and
connection can be established with the relay. Using the buddy list
menu, members can chat, new members can be added to the group
and the members can also leave the group.

13

Mais conteúdo relacionado

Mais procurados

Chat application android app ppt
Chat application android app pptChat application android app ppt
Chat application android app pptZreena
 
Android technical quiz app
Android technical quiz appAndroid technical quiz app
Android technical quiz appJagdeep Singh
 
Multicast chat with file and desktop sharing
Multicast chat with file and desktop sharingMulticast chat with file and desktop sharing
Multicast chat with file and desktop sharingKhagendra Chapre
 
Pycricbuzz - a python library to fetch live cricket scores
Pycricbuzz -  a python library to fetch live cricket scoresPycricbuzz -  a python library to fetch live cricket scores
Pycricbuzz - a python library to fetch live cricket scoresShivam Mitra
 
Client server chat application
Client server chat applicationClient server chat application
Client server chat applicationSamsil Arefin
 
Chat server nitish nagar
Chat server nitish nagarChat server nitish nagar
Chat server nitish nagarNitish Nagar
 
أساسيات لغة Php بالعربي
أساسيات لغة Php بالعربيأساسيات لغة Php بالعربي
أساسيات لغة Php بالعربيtahsal99
 
Online Quiz System Project Report ppt
Online Quiz System Project Report pptOnline Quiz System Project Report ppt
Online Quiz System Project Report pptKishan Maurya
 
Presentation on telnet
Presentation on telnetPresentation on telnet
Presentation on telnetAmandeep Kaur
 
Lan chat system
Lan chat systemLan chat system
Lan chat systemWipro
 
Online Job Portal ppt presentation
Online Job Portal ppt presentationOnline Job Portal ppt presentation
Online Job Portal ppt presentationPrateek Kulshrestha
 
Introduction to C++ Remote Procedure Call (RPC)
Introduction to C++ Remote Procedure Call (RPC)Introduction to C++ Remote Procedure Call (RPC)
Introduction to C++ Remote Procedure Call (RPC)Abdelrahman Al-Ogail
 
SRS Of Social Networking
SRS Of Social NetworkingSRS Of Social Networking
SRS Of Social Networkingmaaano786
 
Word اسئلة امتحان
Word اسئلة امتحانWord اسئلة امتحان
Word اسئلة امتحانMahmoud Soliman
 
system requirements for android projects
system requirements for android projectssystem requirements for android projects
system requirements for android projectsparry prabhu
 

Mais procurados (20)

Chat application android app ppt
Chat application android app pptChat application android app ppt
Chat application android app ppt
 
Android technical quiz app
Android technical quiz appAndroid technical quiz app
Android technical quiz app
 
Srs2 Job Portal
Srs2 Job PortalSrs2 Job Portal
Srs2 Job Portal
 
Multicast chat with file and desktop sharing
Multicast chat with file and desktop sharingMulticast chat with file and desktop sharing
Multicast chat with file and desktop sharing
 
Pycricbuzz - a python library to fetch live cricket scores
Pycricbuzz -  a python library to fetch live cricket scoresPycricbuzz -  a python library to fetch live cricket scores
Pycricbuzz - a python library to fetch live cricket scores
 
Client server chat application
Client server chat applicationClient server chat application
Client server chat application
 
Chat server nitish nagar
Chat server nitish nagarChat server nitish nagar
Chat server nitish nagar
 
Socket System Calls
Socket System CallsSocket System Calls
Socket System Calls
 
أساسيات لغة Php بالعربي
أساسيات لغة Php بالعربيأساسيات لغة Php بالعربي
أساسيات لغة Php بالعربي
 
Online Quiz System Project Report ppt
Online Quiz System Project Report pptOnline Quiz System Project Report ppt
Online Quiz System Project Report ppt
 
Presentation on telnet
Presentation on telnetPresentation on telnet
Presentation on telnet
 
Online notice board
Online notice boardOnline notice board
Online notice board
 
Lan chat system
Lan chat systemLan chat system
Lan chat system
 
Online Job Portal ppt presentation
Online Job Portal ppt presentationOnline Job Portal ppt presentation
Online Job Portal ppt presentation
 
Introduction to C++ Remote Procedure Call (RPC)
Introduction to C++ Remote Procedure Call (RPC)Introduction to C++ Remote Procedure Call (RPC)
Introduction to C++ Remote Procedure Call (RPC)
 
SRS Of Social Networking
SRS Of Social NetworkingSRS Of Social Networking
SRS Of Social Networking
 
Flappy Birds Project
Flappy Birds ProjectFlappy Birds Project
Flappy Birds Project
 
Word اسئلة امتحان
Word اسئلة امتحانWord اسئلة امتحان
Word اسئلة امتحان
 
system requirements for android projects
system requirements for android projectssystem requirements for android projects
system requirements for android projects
 
Mail server
Mail serverMail server
Mail server
 

Semelhante a Peer peer messaging system (synopsis)

A Brief Note On Peer And Peer ( P2P ) Applications Have No...
A Brief Note On Peer And Peer ( P2P ) Applications Have No...A Brief Note On Peer And Peer ( P2P ) Applications Have No...
A Brief Note On Peer And Peer ( P2P ) Applications Have No...Brenda Thomas
 
Introduction to Computer Networks
Introduction to Computer NetworksIntroduction to Computer Networks
Introduction to Computer NetworksPankaj Gautam
 
International Journal of Computational Engineering Research(IJCER)
International Journal of Computational Engineering Research(IJCER)International Journal of Computational Engineering Research(IJCER)
International Journal of Computational Engineering Research(IJCER)ijceronline
 
Node selection in p2 p content sharing service in mobile cellular networks wi...
Node selection in p2 p content sharing service in mobile cellular networks wi...Node selection in p2 p content sharing service in mobile cellular networks wi...
Node selection in p2 p content sharing service in mobile cellular networks wi...Uvaraj Shan
 
Node selection in p2 p content sharing service in mobile cellular networks wi...
Node selection in p2 p content sharing service in mobile cellular networks wi...Node selection in p2 p content sharing service in mobile cellular networks wi...
Node selection in p2 p content sharing service in mobile cellular networks wi...Uvaraj Shan
 
Node selection in p2 p content sharing service in mobile cellular networks wi...
Node selection in p2 p content sharing service in mobile cellular networks wi...Node selection in p2 p content sharing service in mobile cellular networks wi...
Node selection in p2 p content sharing service in mobile cellular networks wi...Uvaraj Shan
 
Peer to Peer Network with its Architecture, Types, and Examples!!
Peer to Peer Network with its Architecture, Types, and Examples!!Peer to Peer Network with its Architecture, Types, and Examples!!
Peer to Peer Network with its Architecture, Types, and Examples!!DigitalThinkerHelp
 
The International Journal of Engineering and Science (IJES)
The International Journal of Engineering and Science (IJES)The International Journal of Engineering and Science (IJES)
The International Journal of Engineering and Science (IJES)theijes
 
Analysis of threats and security issues evaluation in mobile P2P networks
Analysis of threats and security issues evaluation in mobile P2P networks Analysis of threats and security issues evaluation in mobile P2P networks
Analysis of threats and security issues evaluation in mobile P2P networks IJECEIAES
 
Flexible bloom for searching textual content
Flexible bloom for searching textual contentFlexible bloom for searching textual content
Flexible bloom for searching textual contentUvaraj Shan
 
Flexible Bloom for Searching Textual Content Based Retrieval System in an Uns...
Flexible Bloom for Searching Textual Content Based Retrieval System in an Uns...Flexible Bloom for Searching Textual Content Based Retrieval System in an Uns...
Flexible Bloom for Searching Textual Content Based Retrieval System in an Uns...Uvaraj Shan
 
Flexible bloom for searching textual content
Flexible bloom for searching textual contentFlexible bloom for searching textual content
Flexible bloom for searching textual contentUvaraj Shan
 
Peer To Peer Networking
Peer To Peer NetworkingPeer To Peer Networking
Peer To Peer Networkingicanhasfay
 
Introduction to Computer Networking
Introduction to Computer NetworkingIntroduction to Computer Networking
Introduction to Computer Networkingshankars73
 
10.11648.j.ajnc.20130202.13
10.11648.j.ajnc.20130202.1310.11648.j.ajnc.20130202.13
10.11648.j.ajnc.20130202.13Uvaraj Shan
 

Semelhante a Peer peer messaging system (synopsis) (20)

Peer to Peer services and File systems
Peer to Peer services and File systemsPeer to Peer services and File systems
Peer to Peer services and File systems
 
A Brief Note On Peer And Peer ( P2P ) Applications Have No...
A Brief Note On Peer And Peer ( P2P ) Applications Have No...A Brief Note On Peer And Peer ( P2P ) Applications Have No...
A Brief Note On Peer And Peer ( P2P ) Applications Have No...
 
04 Client Server Computing
04 Client Server Computing04 Client Server Computing
04 Client Server Computing
 
Introduction to Computer Networks
Introduction to Computer NetworksIntroduction to Computer Networks
Introduction to Computer Networks
 
International Journal of Computational Engineering Research(IJCER)
International Journal of Computational Engineering Research(IJCER)International Journal of Computational Engineering Research(IJCER)
International Journal of Computational Engineering Research(IJCER)
 
Node selection in p2 p content sharing service in mobile cellular networks wi...
Node selection in p2 p content sharing service in mobile cellular networks wi...Node selection in p2 p content sharing service in mobile cellular networks wi...
Node selection in p2 p content sharing service in mobile cellular networks wi...
 
Node selection in p2 p content sharing service in mobile cellular networks wi...
Node selection in p2 p content sharing service in mobile cellular networks wi...Node selection in p2 p content sharing service in mobile cellular networks wi...
Node selection in p2 p content sharing service in mobile cellular networks wi...
 
Node selection in p2 p content sharing service in mobile cellular networks wi...
Node selection in p2 p content sharing service in mobile cellular networks wi...Node selection in p2 p content sharing service in mobile cellular networks wi...
Node selection in p2 p content sharing service in mobile cellular networks wi...
 
Peer to Peer Network with its Architecture, Types, and Examples!!
Peer to Peer Network with its Architecture, Types, and Examples!!Peer to Peer Network with its Architecture, Types, and Examples!!
Peer to Peer Network with its Architecture, Types, and Examples!!
 
The International Journal of Engineering and Science (IJES)
The International Journal of Engineering and Science (IJES)The International Journal of Engineering and Science (IJES)
The International Journal of Engineering and Science (IJES)
 
Peer Sim & P2P
Peer Sim & P2PPeer Sim & P2P
Peer Sim & P2P
 
Final peersimp pt
Final peersimp ptFinal peersimp pt
Final peersimp pt
 
Analysis of threats and security issues evaluation in mobile P2P networks
Analysis of threats and security issues evaluation in mobile P2P networks Analysis of threats and security issues evaluation in mobile P2P networks
Analysis of threats and security issues evaluation in mobile P2P networks
 
Flexible bloom for searching textual content
Flexible bloom for searching textual contentFlexible bloom for searching textual content
Flexible bloom for searching textual content
 
Flexible Bloom for Searching Textual Content Based Retrieval System in an Uns...
Flexible Bloom for Searching Textual Content Based Retrieval System in an Uns...Flexible Bloom for Searching Textual Content Based Retrieval System in an Uns...
Flexible Bloom for Searching Textual Content Based Retrieval System in an Uns...
 
Flexible bloom for searching textual content
Flexible bloom for searching textual contentFlexible bloom for searching textual content
Flexible bloom for searching textual content
 
Peer To Peer Networking
Peer To Peer NetworkingPeer To Peer Networking
Peer To Peer Networking
 
Introduction to Computer Networking
Introduction to Computer NetworkingIntroduction to Computer Networking
Introduction to Computer Networking
 
Open Systems Interconnection
Open Systems InterconnectionOpen Systems Interconnection
Open Systems Interconnection
 
10.11648.j.ajnc.20130202.13
10.11648.j.ajnc.20130202.1310.11648.j.ajnc.20130202.13
10.11648.j.ajnc.20130202.13
 

Mais de Mumbai Academisc

Mais de Mumbai Academisc (20)

Non ieee java projects list
Non  ieee java projects list Non  ieee java projects list
Non ieee java projects list
 
Non ieee dot net projects list
Non  ieee dot net projects list Non  ieee dot net projects list
Non ieee dot net projects list
 
Ieee java projects list
Ieee java projects list Ieee java projects list
Ieee java projects list
 
Ieee 2014 java projects list
Ieee 2014 java projects list Ieee 2014 java projects list
Ieee 2014 java projects list
 
Ieee 2014 dot net projects list
Ieee 2014 dot net projects list Ieee 2014 dot net projects list
Ieee 2014 dot net projects list
 
Ieee 2013 java projects list
Ieee 2013 java projects list Ieee 2013 java projects list
Ieee 2013 java projects list
 
Ieee 2013 dot net projects list
Ieee 2013 dot net projects listIeee 2013 dot net projects list
Ieee 2013 dot net projects list
 
Ieee 2012 dot net projects list
Ieee 2012 dot net projects listIeee 2012 dot net projects list
Ieee 2012 dot net projects list
 
Spring ppt
Spring pptSpring ppt
Spring ppt
 
Ejb notes
Ejb notesEjb notes
Ejb notes
 
Java web programming
Java web programmingJava web programming
Java web programming
 
Java programming-examples
Java programming-examplesJava programming-examples
Java programming-examples
 
Hibernate tutorial
Hibernate tutorialHibernate tutorial
Hibernate tutorial
 
J2ee project lists:-Mumbai Academics
J2ee project lists:-Mumbai AcademicsJ2ee project lists:-Mumbai Academics
J2ee project lists:-Mumbai Academics
 
Web based development
Web based developmentWeb based development
Web based development
 
Jdbc
JdbcJdbc
Jdbc
 
Java tutorial part 4
Java tutorial part 4Java tutorial part 4
Java tutorial part 4
 
Java tutorial part 3
Java tutorial part 3Java tutorial part 3
Java tutorial part 3
 
Java tutorial part 2
Java tutorial part 2Java tutorial part 2
Java tutorial part 2
 
Engineering
EngineeringEngineering
Engineering
 

Último

GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 

Último (20)

GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 

Peer peer messaging system (synopsis)

  • 1. Peer to Peer Messaging System (Synopsis) 1
  • 2. ABSTRACT The project titled peer-to-peer Messaging presents the development of an instant messaging application based on the concept of peer-topeer networking using JXTA platform. P2P (or peer-to-peer) networking is a network model where, depending on an operation's context, any node can operate as either a server or a client. The P2P architecture is a decentralized architecture, where neither client nor server status exists in a network. Every entity in the network, referred to as a peer, has equal status, meaning that an entity can either request a service or provide a service. The main goal of this project is to send instant messages to peers in the JXTA network using JXTA relay. JXTA defines a set of protocols to enable a framework for peerto-peer computing. All JXTA network users are peers to each other . Peers communicate with each other to perform different tasks (such as searching for new peers). Peer identifiers uniquely identify the peer on the JXTA network The JXTA relay can accept client commands and act upon the commands on the client's behalf. The relay acts as a junction between the JXTA networks and peers. JXTA has defined the data communication protocols that enable messaging between a relay and a client. The JXTA relay receives commands from a J2ME client, performs what's necessary on the client's behalf, and represents a JXME client on the JXTA network. The JXME client send messages to the relay. The relay discovers the peer and route the messages to the destination. 2
  • 3. INTRODUCTION The traditional approach to information systems, accessed by users by means of powerful devices (such as desktops and laptops) with known features, will not be anymore significant in the future years. Indeed, the current trend suggests that it will be possible to offer continuous access to all information sources, from all locations and through various kinds of devices, mainly small and mobile (e.g., palmtops and PDAs, cellular phones). Therefore, the need emerges for the design of applications for smart devices, which are highly flexible, capable of exploiting in an optimal way the resources. This Project analyzes the opportunity to design, develop and deploy interactive applications running on smart cellular phones (commonly referred to as smart phones), based on a peer-to-peer communication model and GPRS technology. PEER-TO-PEER (P2P) TECHNOLOGY enables any network-aware device to provide services to another network-aware device. A device in a P2P network can provide access to any type of resource that it has at its disposal, whether documents, storage capacity, computing power, or even its own human operator. In the client/server architecture, clients request services and servers provide those services. A variety of servers exist in today's Internet -- Web servers, mail servers, FTP servers, and so on. The client/server architecture is an example of a centralized architecture, where the whole network depends on central points, namely servers, to provide services. Regardless of the number of browsers or clients, the network can exist only if a server exists. 3
  • 4. CLIENT-SERVER MODEL Like the client/server architecture, P2P is also a distributed computing model, but there is an important difference. The P2P architecture is a decentralized architecture where neither client nor server status exists in a network. Every entity in the network, referred to as a peer, has equal status, meaning that an entity can either request a service (a client trait) or provide a service (a server trait). Figure 2 illustrates a P2P network. 4
  • 5. PEER-TO-PEER MODEL Though peers all have equal status in the network, they don't all necessarily have equal physical capabilities. A P2P network might consist of peers with varying capabilities, from mobile devices to mainframes. A mobile peer might not be able to act as a server due to its intrinsic limitations, even though the network does not restrict it in any way. Although P2P might sound like a dot-com fad, the technology is a natural extension of the Internet’s philosophy of robustness through decentralization. In the same manner that the 5
  • 6. Internet provides domain name lookup (DNS), World Wide Web, email, and other services by spreading responsibility among millions of servers, P2P has the capacity to power a whole new set of robust applications by leveraging resources spread across all corners of the Internet. P2P networks shun the centralized organization of the client/server architecture and instead employ a flat, highly interconnected architecture. By allowing intermittently connected computers to find each other, P2P enables these machines to act as both clients and servers that can determine the services available on the P2P network and engage those services in some application specific manner. The main advantage of P2P networks is that they distribute the responsibility of providing services among all peers on the network; this eliminates service outage due to a single point of failure and provides a more scalable solution for offering services. In addition, P2P networks exploit available bandwidth across the entire network by using a variety of communication channels and by filling bandwidth to the “edge” of the Internet. Unlike traditional client/server communications, P2P enables communication via a variety of network routes, thereby reducing network congestion. P2P is the key to realizing this potential, giving individual machines a mechanism for providing services to each other. Unlike the client/server architecture, P2P networks don’t rely on a centralized server to provide access to services, and they usually operate outside the domain name system. 6
  • 7. P2P has the capability of serving resources with high availability at a much lower cost while maximizing the use of resources from every peer connected to the P2P network. Whereas client/server solutions rely on the addition of costly bandwidth, equipment, and co-location facilities to maintain a robust solution, P2P can offer a similar level of robustness by spreading network and resource demands across the P2P network. Unfortunately, P2P suffers from some disadvantages due to the redundant nature of a P2P network’s structure. The distributed form of communications channels in P2P networks results in service requests that are nondeterministic in nature. For example, clients requesting the exact same resource from the P2P network might connect to entirely different machines via different communication routes, with different results. Requests sent via a P2P network might not result in an immediate response and, in some cases, might not result in any response. Resources on a P2P network can disappear at times as the clients that host those resources disconnect from the network; this is different from the services provided by the traditional Internet, which have most resources continuously available. P2P overcomes this disadvantage by providing redundant access to a resource. 7
  • 8. Existing System In the client/server architecture, clients request services and servers provide those services. Clients connect to a server using a specific communications protocol, such as the File Transfer Protocol (FTP), to obtain access to a specific resource. Most of the processing involved in delivering a service usually occurs on the server, leaving the client relatively unburdened. The client in the client/server architecture acts in a passive role, capable of demanding services from servers but incapable of providing services to other clients. This model of service delivery was developed at a time when most machines on the Internet had a resolvable static IP address, meaning that all machines on the Internet could find each other easily using a simple name. Limitations of the current system The disadvantage of using client-server architecture is that as the number of clients increases, the load and bandwidth demands on the server also increase, eventually preventing the server from handling additional clients. Objective The main objective of this project is to send instant messages within a peer group in a decentralized network using JXTA technology. 8
  • 9. Proposed System The existing system operated on a client/server mechanism in which a centralized server is required. While communicating between the peer members in the JXTA network i.e., the proposed system, a peer name has to be given by the user in the configurator window. The user is identified in the network using the peer id. The peer member can secure his identification using the password. The user should have an idea regarding the identification of another person. Thorough knowledge of identifying the members, adding the peers in the network, deleting the members from the network are required. 9
  • 10. Hardware & Software Requirements • Pentium IV Processor – 2 GHZ • NIC – 32 Bit Ethernet Card • 40 GB HDD • 256 MB DDR RAM • Mobile Phone • JXTA Proxy Server • J2SDK 1.4.2_06 • J2ME WTK 2.0 • Windows 2000 Server 10
  • 11. The project Peer-to-Peer Messaging is divided into three major modules: • Element • Message • Peer Network ELEMENT MODULE The Element represents a single element of the JXME message. The JXME implementation uses the Element to author JXME messages. A pure P2P system does not require the existence of any centralized servers or resources to operate. Therefore, a P2P system must not rely on any centrally administered naming or addressing system. The first module of the project deals with entering the member into the JXTA network and to enable them to chat with other members of the group. Batch file called myjxta will be run first. In the advanced settings tab, TCP option has to be enabled. Incoming and outgoing connections has to be enabled. Port number of the system has to be provided in the http settings. The peer who wants to become the member of the JXTA group will enter with the peer name. Only authenticated users can enter the network as password is required. In the relay host, proxy id should be given for communicating with the other peer. When all the settings are completed, the peer member has entered the network and is ready to communicate with all members in the NetPeerGroup. MESSAGE MODULE The message module is designed for the peer members to communicate with each other in the network. JXME does not define 11
  • 12. any special request message that explicitly asks the relay to send one or more response messages it has for the JXME client. The JXME client continues to send requests (for example, a peer group join request, a pipe creation request, or a search query) or other outbound messages to the relay. The relay avails these requests as opportunities to send any incoming message to the JXME client in response to a request. The JXME client uses the request Id element in the response message to find out which request this response corresponds to. JXTA peers use pipes to send messages to one another. Pipes are an asynchronous and unidirectional message transfer mechanism used for service communication. Pipes are indiscriminate; they support the transfer of any object, including binary code, data strings, and Java technology-based objects. The pipe endpoints are referred to as the input pipe (the receiving end) and the output pipe (the sending end). Pipe endpoints are dynamically bound to peer endpoints at runtime. Peer endpoints correspond to available peer network interfaces (e.g., a TCP port and associated IP address) that can be used to send and receive message. JXTA pipes can have endpoints that are connected to different peers at different times, or may not be connected at all. PEER NETWORK MODULE The Peer Network contains the methods to allow the JXME communication with the relay. The Peer Network is like a communication module that internally uses different Message and Element objects and handles all communication with the relay. Peer Network has methods to perform the various tasks between the relay and the mobile client. The Peer Network manages all the messages 12
  • 13. and maintains the support tasks, maintaining the identity of various messages exchanged between the relay and the client. The third module deals with the implementation of communication between JXTA peers in the midlet. Proxy id should be given and the peer enters the group with a peer name. There are various options like sending the message, reply, connect to the relay, Buddy list, configuration and default settings. Using the various options, messages can be sent, reply can be sent to the received message and connection can be established with the relay. Using the buddy list menu, members can chat, new members can be added to the group and the members can also leave the group. 13