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

KafkaとAWS Kinesisの比較
KafkaとAWS Kinesisの比較KafkaとAWS Kinesisの比較
KafkaとAWS Kinesisの比較Yoshiyasu SAEKI
 
Machine Learning Night - Preferred Networksの顧客向けプロダクト開発 - 谷脇大輔
Machine Learning Night - Preferred Networksの顧客向けプロダクト開発 - 谷脇大輔Machine Learning Night - Preferred Networksの顧客向けプロダクト開発 - 谷脇大輔
Machine Learning Night - Preferred Networksの顧客向けプロダクト開発 - 谷脇大輔Preferred Networks
 
Apache Avro vs Protocol Buffers
Apache Avro vs Protocol BuffersApache Avro vs Protocol Buffers
Apache Avro vs Protocol BuffersSeiya Mizuno
 
My sqlで2億件のシリアルデータと格闘した話
My sqlで2億件のシリアルデータと格闘した話My sqlで2億件のシリアルデータと格闘した話
My sqlで2億件のシリアルデータと格闘した話saiken3110
 
Doma SQLテンプレートのしくみ
Doma SQLテンプレートのしくみDoma SQLテンプレートのしくみ
Doma SQLテンプレートのしくみToshihiro Nakamura
 
smarthrを支えるインフラ
smarthrを支えるインフラsmarthrを支えるインフラ
smarthrを支えるインフラtei-k
 
スキーマレスカラムナフォーマット「Yosegi」で実現する スキーマの柔軟性と処理性能を両立したログ収集システム / Hadoop / Spark Con...
スキーマレスカラムナフォーマット「Yosegi」で実現する スキーマの柔軟性と処理性能を両立したログ収集システム / Hadoop / Spark Con...スキーマレスカラムナフォーマット「Yosegi」で実現する スキーマの柔軟性と処理性能を両立したログ収集システム / Hadoop / Spark Con...
スキーマレスカラムナフォーマット「Yosegi」で実現する スキーマの柔軟性と処理性能を両立したログ収集システム / Hadoop / Spark Con...Yahoo!デベロッパーネットワーク
 
コンテナにおけるパフォーマンス調査でハマった話
コンテナにおけるパフォーマンス調査でハマった話コンテナにおけるパフォーマンス調査でハマった話
コンテナにおけるパフォーマンス調査でハマった話Yuta Shimada
 
Passive Fingerprinting of HTTP/2 Clients by Ory Segal
Passive Fingerprinting of HTTP/2 Clients by Ory SegalPassive Fingerprinting of HTTP/2 Clients by Ory Segal
Passive Fingerprinting of HTTP/2 Clients by Ory SegalCODE BLUE
 
20180914 security iotlt#1_ほんとうにあった怖い話_aws_iot編
20180914 security iotlt#1_ほんとうにあった怖い話_aws_iot編20180914 security iotlt#1_ほんとうにあった怖い話_aws_iot編
20180914 security iotlt#1_ほんとうにあった怖い話_aws_iot編Tatsuya (達也) Katsuhara (勝原)
 
Apache Airflow入門 (マーケティングデータ分析基盤技術勉強会)
Apache Airflow入門  (マーケティングデータ分析基盤技術勉強会)Apache Airflow入門  (マーケティングデータ分析基盤技術勉強会)
Apache Airflow入門 (マーケティングデータ分析基盤技術勉強会)Takeshi Mikami
 
PostgreSQL - C言語によるユーザ定義関数の作り方
PostgreSQL - C言語によるユーザ定義関数の作り方PostgreSQL - C言語によるユーザ定義関数の作り方
PostgreSQL - C言語によるユーザ定義関数の作り方Satoshi Nagayasu
 
kintoneがAWSで目指すDevOpsQAな開発
kintoneがAWSで目指すDevOpsQAな開発kintoneがAWSで目指すDevOpsQAな開発
kintoneがAWSで目指すDevOpsQAな開発Teppei Sato
 
Apache Bigtopによるオープンなビッグデータ処理基盤の構築(オープンデベロッパーズカンファレンス 2021 Online 発表資料)
Apache Bigtopによるオープンなビッグデータ処理基盤の構築(オープンデベロッパーズカンファレンス 2021 Online 発表資料)Apache Bigtopによるオープンなビッグデータ処理基盤の構築(オープンデベロッパーズカンファレンス 2021 Online 発表資料)
Apache Bigtopによるオープンなビッグデータ処理基盤の構築(オープンデベロッパーズカンファレンス 2021 Online 発表資料)NTT DATA Technology & Innovation
 
Knative Eventing 入門(Kubernetes Novice Tokyo #11 発表資料)
Knative Eventing 入門(Kubernetes Novice Tokyo #11 発表資料)Knative Eventing 入門(Kubernetes Novice Tokyo #11 発表資料)
Knative Eventing 入門(Kubernetes Novice Tokyo #11 発表資料)NTT DATA Technology & Innovation
 
はじめようRGB-Dセンシングと画像処理
はじめようRGB-Dセンシングと画像処理はじめようRGB-Dセンシングと画像処理
はじめようRGB-Dセンシングと画像処理Takashi Yoshinaga
 
Kafkaを活用するためのストリーム処理の基本
Kafkaを活用するためのストリーム処理の基本Kafkaを活用するためのストリーム処理の基本
Kafkaを活用するためのストリーム処理の基本Sotaro Kimura
 

Mais procurados (20)

KafkaとAWS Kinesisの比較
KafkaとAWS Kinesisの比較KafkaとAWS Kinesisの比較
KafkaとAWS Kinesisの比較
 
Machine Learning Night - Preferred Networksの顧客向けプロダクト開発 - 谷脇大輔
Machine Learning Night - Preferred Networksの顧客向けプロダクト開発 - 谷脇大輔Machine Learning Night - Preferred Networksの顧客向けプロダクト開発 - 谷脇大輔
Machine Learning Night - Preferred Networksの顧客向けプロダクト開発 - 谷脇大輔
 
Apache Avro vs Protocol Buffers
Apache Avro vs Protocol BuffersApache Avro vs Protocol Buffers
Apache Avro vs Protocol Buffers
 
My sqlで2億件のシリアルデータと格闘した話
My sqlで2億件のシリアルデータと格闘した話My sqlで2億件のシリアルデータと格闘した話
My sqlで2億件のシリアルデータと格闘した話
 
Doma SQLテンプレートのしくみ
Doma SQLテンプレートのしくみDoma SQLテンプレートのしくみ
Doma SQLテンプレートのしくみ
 
smarthrを支えるインフラ
smarthrを支えるインフラsmarthrを支えるインフラ
smarthrを支えるインフラ
 
Java11へのマイグレーションガイド ~Apache Hadoopの事例~
Java11へのマイグレーションガイド ~Apache Hadoopの事例~Java11へのマイグレーションガイド ~Apache Hadoopの事例~
Java11へのマイグレーションガイド ~Apache Hadoopの事例~
 
HashMapとは?
HashMapとは?HashMapとは?
HashMapとは?
 
スキーマレスカラムナフォーマット「Yosegi」で実現する スキーマの柔軟性と処理性能を両立したログ収集システム / Hadoop / Spark Con...
スキーマレスカラムナフォーマット「Yosegi」で実現する スキーマの柔軟性と処理性能を両立したログ収集システム / Hadoop / Spark Con...スキーマレスカラムナフォーマット「Yosegi」で実現する スキーマの柔軟性と処理性能を両立したログ収集システム / Hadoop / Spark Con...
スキーマレスカラムナフォーマット「Yosegi」で実現する スキーマの柔軟性と処理性能を両立したログ収集システム / Hadoop / Spark Con...
 
コンテナにおけるパフォーマンス調査でハマった話
コンテナにおけるパフォーマンス調査でハマった話コンテナにおけるパフォーマンス調査でハマった話
コンテナにおけるパフォーマンス調査でハマった話
 
Passive Fingerprinting of HTTP/2 Clients by Ory Segal
Passive Fingerprinting of HTTP/2 Clients by Ory SegalPassive Fingerprinting of HTTP/2 Clients by Ory Segal
Passive Fingerprinting of HTTP/2 Clients by Ory Segal
 
20180914 security iotlt#1_ほんとうにあった怖い話_aws_iot編
20180914 security iotlt#1_ほんとうにあった怖い話_aws_iot編20180914 security iotlt#1_ほんとうにあった怖い話_aws_iot編
20180914 security iotlt#1_ほんとうにあった怖い話_aws_iot編
 
KafkaとPulsar
KafkaとPulsarKafkaとPulsar
KafkaとPulsar
 
Apache Airflow入門 (マーケティングデータ分析基盤技術勉強会)
Apache Airflow入門  (マーケティングデータ分析基盤技術勉強会)Apache Airflow入門  (マーケティングデータ分析基盤技術勉強会)
Apache Airflow入門 (マーケティングデータ分析基盤技術勉強会)
 
PostgreSQL - C言語によるユーザ定義関数の作り方
PostgreSQL - C言語によるユーザ定義関数の作り方PostgreSQL - C言語によるユーザ定義関数の作り方
PostgreSQL - C言語によるユーザ定義関数の作り方
 
kintoneがAWSで目指すDevOpsQAな開発
kintoneがAWSで目指すDevOpsQAな開発kintoneがAWSで目指すDevOpsQAな開発
kintoneがAWSで目指すDevOpsQAな開発
 
Apache Bigtopによるオープンなビッグデータ処理基盤の構築(オープンデベロッパーズカンファレンス 2021 Online 発表資料)
Apache Bigtopによるオープンなビッグデータ処理基盤の構築(オープンデベロッパーズカンファレンス 2021 Online 発表資料)Apache Bigtopによるオープンなビッグデータ処理基盤の構築(オープンデベロッパーズカンファレンス 2021 Online 発表資料)
Apache Bigtopによるオープンなビッグデータ処理基盤の構築(オープンデベロッパーズカンファレンス 2021 Online 発表資料)
 
Knative Eventing 入門(Kubernetes Novice Tokyo #11 発表資料)
Knative Eventing 入門(Kubernetes Novice Tokyo #11 発表資料)Knative Eventing 入門(Kubernetes Novice Tokyo #11 発表資料)
Knative Eventing 入門(Kubernetes Novice Tokyo #11 発表資料)
 
はじめようRGB-Dセンシングと画像処理
はじめようRGB-Dセンシングと画像処理はじめようRGB-Dセンシングと画像処理
はじめようRGB-Dセンシングと画像処理
 
Kafkaを活用するためのストリーム処理の基本
Kafkaを活用するためのストリーム処理の基本Kafkaを活用するためのストリーム処理の基本
Kafkaを活用するためのストリーム処理の基本
 

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

Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESmohitsingh558521
 

Último (20)

Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
 

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