Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
JXTA P2P Platform Denny Chen Dai CMPT 771, Spring 08 Motivations • Standardize – Peer discovery, communication – Advertise, discover network resources • Absence of centralized infrastructure – Self-organized, self-configured groups • Independent of underlying implementation – Language, OS, network environment JXTA Terms Peer Peer: A JXTA node. Peer Peer Peer JXTA Group: a group is a set of JXTA nodes who share a common interest A Rendezvous Peer: a meeting place e.g. gateway for JXTA groups Peer Peer Peer Peer Peer Peer Peer Peer Peer Peer Peer Peer JXTA Virtual Mapping Peer JXTA Virtual Network Peer Peer Peer Peer Peer Peer Peer Virtual Mapping Bluetooth Firewall Http Firewall Physical Network TCP/IP JXTA Groups Group A Peer Peer Peer • Collection of cooperating peers providing a common set of services e.g. file sharing peer group, a CPU sharing peer group. • Peer group boundaries define content search scope Peer • Group hierarchy Group B • At least one rendezvous for a group Peer Peer Peer Peer JXTA Pipes Output Pipe Input Pipe A JXTA Pipe Peer 1 Peer 2 Actual Route Peer 3 Peer 4 Peer Peer Peer Peer Peer Point to Point Propagate • abstraction over peer routes • Unidirectional • Messages flow from the output pipe into the input pipes. Firewall Peer • Virtual Communication Channels • Two Types: • (End) Point to (End) Point • Propagate - multicast JXTA Protocol Stack Peer Discovery Protocol Via Peer Resolver Protocol Peer Discovery Protocol Peer Information Protocol Via Peer Resolver Protocol Peer Information Protocol Pipe Binding Protocol Via Peer Resolver Protocol Pipe Binding Protocol Peer Resolver Protocol Via Enpoint Routing Protocol Peer Resolver Protocol Rendezvous Protocol Via Enpoint Routing Protocol Rendezvous Protocol Endpoint Routing Protocol Via installed Network Transports Endpoint Routing Protocol Network Transport Via Installed Network Transports Network Transport Peer Discovery Peer Discovery Protocol Peer Information Protocol Pipe Binding Protocol • Allows a peer to discover & publish JXTA resources •Using this protocol, peers can advertise their own resources, network service, identity, and discover the resources from other peers • Peer resources are published using XML-based metadata format Peer Information Protocol Peer Discovery Protocol Peer Information Protocol Pipe Binding Protocol • Allows peers to learn about the capabilities & status of other peers e.g. uptime, traffic load, capabilities, state etc • Query a peer’s properties: • e.g. (name, value) Pipe Binding Peer Discovery Protocol Peer Information Protocol Pipe Binding Protocol • Allows a peer to establish a virtual communication channel (i.e. a pipe) between peers • Allows the binding of the two or more ends of the pipe endpoints forming the connection Output Pipe Input Pipe A JXTA Pipe Peer 1 Peer 2 Actual Route Peer 3 Firewall Peer 4 The Peer Resolver Peer Resolver Protocol Rendezvous Protocol Peer Endpoint Protocol • Enables a peer to implement high-level search capabilities • PDP, PIP, PBP • Allows a peer to send and receive generic queries to find or search for peers, peer groups, pipes, and other information Rendezvous • Allows a Peer to send messages to all the listeners of the service Peer Resolver Protocol Rendezvous Protocol Peer Endpoint Protocol •The rendezvous protocol defines how a peer can subscribe or be a subscriber to a propagation service allowing larger communities to form • A rendezvous nodes’ scope is a peer group • e.g. propagate messages. Endpoint Routing Protocol Peer Resolver Protocol Rendezvous Protocol Endpoint Routing Protocol • Allows a peer to find information about the available routes for sending a message to destination peer • Allows a peer to respond to queries with available route information •Allows the implementation of routing algorithms into JXTA JXTA Project – Three Layer Cake JXTA Applications JXTA Services JXTA Community Applications JXTA Community Services Peer Groups JXTA Core Standard JXTA Applications Standard • Indexing JXTA • Searching Services • File Sharing Peer Pipes Peer Monitoring Security (authentication, authorization) Any Peer on the extended Web The Verdict • JXTA is an open network computing platform designed for Peer-to-Peer computing • Interoperability – Heterogeneous peer • Autonomous P2P System References • JXTA v2.0 Protocols Specification – http://jxta-spec.dev.java.net • JXTA Development Community – http://www.jxta.org • JXTA Programmer Guide – https://jxta-guide.dev.java.net Thank you • Question ?