Upload
huong
View
25
Download
2
Tags:
Embed Size (px)
DESCRIPTION
A P2P Collaborative System Using JXTA. Hosei Graduation School ITPC 02R3315 Katsuhiro CHIBA. Background. In latest years, Peer to Peer (P2P) technologies have great influences on people. - PowerPoint PPT Presentation
Citation preview
1
A P2P Collaborative A P2P Collaborative System Using JXTASystem Using JXTA
Hosei Graduation SchoolITPC 02R3315
Katsuhiro CHIBA
2
BackgroundBackground
In latest years, Peer to Peer (P2P) technologies have great influences on people.
With the appearance of Napster, Gnutella and so on P2P applications grew very popular. The initial goal of P2P was file sharing.
But, nowadays, we can see new P2P applications for other purposes, such as groupware, distributed computing, and collaboration on the Internet.
3
Objective of ResearchObjective of Research
Development and implementation of a P2P collaborative system with following features: Sharing web information and browser’s actions with
multiple users. Sharing view of text and image files with multiple users. Supporting collaborative work with groups on the Internet,
regardless of network configuration (firewalls and NAT*). Keywords
Peer to peer network JXTA Collaboration on the Internet
*NAT :Network Address Translation
4
What is Collaboration?What is Collaboration?
In recent years, the collaboration work style has permeated. A collaboration is the way a group of people do work together over the wall of a company or a section.
By practical use of P2P technology, people cooperate in the business by gathering in a virtual group exceeding the gap of time or distance.
Furthermore, JXTA enables us to collaborate on the Internet, regardless network of composition and hierarchy.
5
Why Peer to Peer?Why Peer to Peer?
Merits Decentralization Robustness Cost reduction Scalability Resource Sharing
Demerits Uneasy of security Maintenance of network composition
6
Browser for CollaborationBrowser for Collaboration Screen Image
7
Functions of Collaborative SystemFunctions of Collaborative System
Shared browser’s view (WYSWIS) Shared navigation
(URL field, hyperlink clicks, scrollbar movements) Shared text and picture files, etc. Real-time communication (chat & messenger) Synchronized drawing pad
8
Client / Server ArchitectureClient / Server Architecture
Nowadays, most systems are based on the client/server architecture.
Because resources and management authority are concentrating on a server, management is very easy.
At the same time, server make it difficult that clients work freely.
9
Peer to Peer Architecture (1)Peer to Peer Architecture (1)
Peer to Peer architecturearchitecture consists of computers/devices with equal capabilities that share resource, communicate exclusively with each other and don’t rely on a server or central database for exchanging information and sharing resource.
Representative systems Napster, Gnutella (file sharing) Groove, BadBlue (groupware) SETI@HOME (distributed computing) Kontiki (contents distribution) ICQ, AOL Messenger (messenger)
10
Peer to Peer Architecture (2)Peer to Peer Architecture (2)
Hybrid P2P Architecture A central server authenticates all
users. A peers serve as search hubs which catalog the files of peers connected to them. Then, the server responds with results that allow direct connections for file transfer.
Pure P2P Architecture Pure P2P does not have any
central servers. There is no authentication, and peers search for resource via a distributed-search mechanism.
11
JXTA (1)JXTA (1)
JXTA is a set of open, generalized peer-to-peer protocols that allow any connected devices on the network to communicate and collaborate as peers, with following main features:
Interoperability Platform independence Ubiquity
12
JXTA (2)JXTA (2)
Peer group Advertisement Message
JXTA concepts Peer Service Pipe
13
Peers & Peer GroupsPeers & Peer Groups
Peers Each peer operates independently and asynchronously from
all other peers, and is uniquely identified by its peer ID. Peers voluntarily discover each other on the network to
form transient or persistent relationships called peer groups.
Peer Groups A peer group is a collection of peers that have agreed upon
a common set of services. Each peer group can establish its own membership policy
from open to highly secure and protected.
14
ServiceService
Discovery service Membership service
(join, leave, making group) Access service Pipe service Resolver service
(send generic query requests) Monitoring service
15
AdvertisementAdvertisement All JXTA network
resources are represented by advertisements.
Advertisements are metadata structures represented as XML documents.
The JXTA protocols define the following advertisement types. Peer Advertisement Peer Group Advertisement Pipe Advertisement Module Advertisement
<?xml version="1.0"?><!DOCTYPEjxta:PipeAdvertisement>
<jxta:PipeAdvertisement xmlns:jxta="http://jxta.org"><Id>urn:jxta:uuid-DD6DDF43EB9044A5B8BC9725ECD3EA7448B8BBCFDDC84F5E868E9DB02F646AD204</Id><Type>
JxtaPropagate</Type><Name>
yamada</Name>
</jxta:PipeAdvertisement>
Ex. pipe advertisement
16
Discover AnimationDiscover Animation
http://platform.jxta.org/servlets/ProjectHome
17
Pipe (1)Pipe (1)
Pipes are asynchronous and unidirectional message transfer mechanisms used for service communications.
Pipes are indiscriminate; they support the transfer of any object, including binary code, data string, and Java technology-based objects.
The pipe endpoints are referred to as the input pipe and the output pipe.
18
Pipe (2)Pipe (2)
Point-to-point Pipe A point-to-point pipe connects
exactly two pipe endpoints together.
Propagate Pipe A propagate pipe connects one
output pipe to multiple input pipes.
All propagations are done within the scope of a peer group.
A
B
C
D
Input pipe Output pipe
Peer A Peer BMessage
19
MessageMessage
A message is the basic unit of data exchange between JXTA peers.
A message is an ordered sequence of named and typed contents called message elements.
There are two representations for messages; XML (many different kinds of protocols) Binary (J2SE platform)
20
Overview of Collaborative SystemOverview of Collaborative SystemGroup Management
Chat Management
Shared View Management
21
Group ManagementGroup ManagementPeer name
Group name
Peer list
Group listMake group button
Join group button
Leave group button
System exit button
22
Shared View ManagementShared View ManagementURL field
Browser Panel
Browser Button Share Button
Scroll Bar
23
Communication ManagementCommunication Management
Group chat among all peers in a group
One-to-one chat Between any two peers in a group
Send Button
Output Area
Input Field
One-to-one chat
24
SummarySummary
Features This system uses the pure P2P architecture rather than else.
It enables us to share information and communicate with others, regardless of network configuration and hierarchy. Finally, it helps us to collaborate on the Internet.
Potential applications E-education Tele-presentation on the Internet Virtual meeting on the Internet Flexible information sharing Co-navigation on the Internet
25
Current Work FinishedCurrent Work Finished
Basic group management Shared browser Group chat One-to-one chat Pipe across firewalls & NAT via HTTP
26
Future WorkFuture Work
Short term (by next March) Sharing files (text, image, pdf, mp3) Improving communication reliability Enhancing group management Effective memory usage Free drawing pad
Long term Voice/video communication based on Java & JMF Record additional drawing on text & image file Network security