Dr. Ian Wang Cardiff University, U.K.. Ian Wang, Cardiff University Peer-to-Peer and Grids What does the Peer-to-Peer paradigm offer Grids? Scalable Decentralized.

Slides:



Advertisements
Similar presentations
UNIVERSITY OF JYVÄSKYLÄ P2PDisCo – Java Distributed Computing for Workstations Using Chedar Peer-to-Peer Middleware Presentation for 7 th International.
Advertisements

Web Services Nasrullah. Motivation about web service There are number of programms over the internet that need to communicate with other programms over.
Decentralized Reactive Clustering in Sensor Networks Yingyue Xu April 26, 2015.
UNIT-IV Computer Network Network Layer. Network Layer Prepared by - ROHIT KOSHTA In the seven-layer OSI model of computer networking, the network layer.
Reliability on Web Services Presented by Pat Chan 17/10/2005.
Naming Computer Engineering Department Distributed Systems Course Asst. Prof. Dr. Ahmet Sayar Kocaeli University - Fall 2014.
Extensible Networking Platform IWAN 2005 Extensible Network Configuration and Communication Framework Todd Sproull and John Lockwood
Technical Architectures
Rheeve: A Plug-n-Play Peer- to-Peer Computing Platform Wang-kee Poon and Jiannong Cao Department of Computing, The Hong Kong Polytechnic University ICDCSW.
JXTA P2P Platform Denny Chen Dai CMPT 771, Spring 08.
JXTA Protocol Introduction Student : Jia-Hui Huang Adviser : Kai-Wei Ke Date : 2005/11/22.
Socket Programming.
JXTA Selo TE Introduction What is JXTA ( pronounced Juxta ) What is JXTA ( pronounced Juxta ) Jxta – an open, network computing platform designed.
PROGRESS project: Internet-enabled monitoring and control of embedded systems (EES.5413)  Introduction Networked devices make their capabilities known.
1 Client-Server versus P2P  Client-server Computing  Purpose, definition, characteristics  Relationship to the GRID  Research issues  P2P Computing.
Peer-to-Peer Networks & JXTA by Madhurasmitha Chakravarthy & Priti Sabadra.
JXTA Lecture 1.JXTA Overview a) Background to Project JXTA b) Design Constraints c) Terminology d) Overview and Architecture e) Introducing the Concepts.
A Study on Mobile P2P Systems Hongyu Li. Outline  Introduction  Characteristics of P2P  Architecture  Mobile P2P Applications  Conclusion.
1 DNS,NFS & RPC Rizwan Rehman, CCS, DU. Netprog: DNS and name lookups 2 Hostnames IP Addresses are great for computers –IP address includes information.
Middleware for P2P architecture Jikai Yin, Shuai Zhang, Ziwen Zhang.
Ian Taylor - UNCLASSIFIED – APPROVED FOR PUBLIC RELEASE Network Simulation Tools for Prototyping Scalable P2P Applications NATO.
MobileMAN Kickoff1 Prototype Development Kit & P2P Middleware Proposal Giovanni Turi IIT - CNR Pisa
Introduction Widespread unstructured P2P network
Barracuda Load Balancer Server Availability and Scalability.
Module 10: Designing an AD RMS Infrastructure in Windows Server 2008.
Cli/Serv.: JXTA/151 Client/Server Distributed Systems v Objective –explain JXTA, a support environment for P2P services and applications ,
Network Protocols. Why Protocols?  Rules and procedures to govern communication Some for transferring data Some for transferring data Some for route.
Cmpe 494 Peer-to-Peer Computing Anıl Gürsel Didem Unat.
What is a Protocol A set of definitions and rules defining the method by which data is transferred between two or more entities or systems. The key elements.
Remote Access Chapter 4. Learning Objectives Understand implications of IEEE 802.1x and how it is used Understand VPN technology and its uses for securing.
Peer To Peer Applications
1 A P2P Collaborative System Using JXTA Hosei Graduation School ITPC 02R3315 Katsuhiro CHIBA.
Lecture 3: Sun: 16/4/1435 Distributed Computing Technologies and Middleware Lecturer/ Kawther Abas CS- 492 : Distributed system.
Triana: Service-Oriented Examples Ian Taylor Cardiff University, and the Center for Computation and Technology LSU.
Rev PA102/03/20041 Communication Between Peer Wireless Sensor Networks over 2.5G/3G Mobile Networks Srdjan Krco R&D Ericsson Ireland
Wireless Networks of Devices (WIND) Hari Balakrishnan and John Guttag MIT Lab for Computer Science NTT-MIT Meeting, January 2000.
Peer-to-Pee Computing HP Technical Report Chin-Yi Tsai.
Peer-to-Peer Distributed Shared Memory? Gabriel Antoniu, Luc Bougé, Mathieu Jan IRISA / INRIA & ENS Cachan/Bretagne France Dagstuhl seminar, October 2003.
CS1Q Computer Systems Lecture 17 Simon Gay. Lecture 17CS1Q Computer Systems - Simon Gay2 The Layered Model of Networks It is useful to think of networks.
2-1 JXTA Concepts. 2-1 Learning Objectives ● This module will help you... – Understand P2P principles – Learn about JXTA virtual network core building.
3-1 JXTA Platforms. 3-1 Learning Objectives ● Learn about the different platform implementations of the JXTA protocols – Features provided by each implementation.
Advanced Computer Networks Topic 2: Characterization of Distributed Systems.
1 MSc Project Yin Chen Supervised by Dr Stuart Anderson 2003 Grid Services Monitor Long Term Monitoring of Grid Services Using Peer-to-Peer Techniques.
INAT Hari BalakrishnanFrans Kaashoek John Guttag Robert Morris MIT Laboratory for Computer Science NGI PI Meeting October 2, 2000.
13-1 Monitoring and Metering Learning Objectives ● This module will help you... – Understand the JXTA monitoring and metering functionality – Gain.
What is Triana?. GAPGAP Triana Distributed Work-flow Network Action Commands Workflow, e.g. BPEL4WS Triana Engine Triana Controlling Service (TCS) Triana.
Mobile IP Outline Intro to mobile IP Operation Problems with mobility.
Client-Server Model of Interaction Chapter 20. We have looked at the details of TCP/IP Protocols Protocols Router architecture Router architecture Now.
Information-Centric Networks10b-1 Week 10 / Paper 2 Hermes: a distributed event-based middleware architecture –P.R. Pietzuch, J.M. Bacon –ICDCS 2002 Workshops.
18-1 Summary (Day 2) Learning Summary – What is JXTA ? – Understand the fundamental concepts of JXTA – Learn about the various implementations of.
A Demonstration of Collaborative Web Services and Peer-to-Peer Grids Minjun Wang Department of Electrical Engineering and Computer Science Syracuse University,
AMQP, Message Broker Babu Ram Dawadi. overview Why MOM architecture? Messaging broker like RabbitMQ in brief RabbitMQ AMQP – What is it ?
Peer to Peer Network Design Discovery and Routing algorithms
Data Communications and Networks Chapter 9 – Distributed Systems ICT-BVF8.1- Data Communications and Network Trainer: Dr. Abbes Sebihi.
REST By: Vishwanath Vineet.
Computer Communication: An example What happens when I click on
Design and implementation of an intentional naming system William Adjie-WinotoElliot Schwartz Hari BalakrishnanJeremy Lilley MIT Laboratory for Computer.
6-1 How to Write JXTA Applications. 6-1 Learning Objectives ● This module will help you... – Gain familiarity with guidelines and design conventions that.
Peer Simple P2P implementation based on JXTA. JXTA history Started by SUN Microsystems in 1999 Released Open Source in 2001.
Project JXTA Kaarthik Sivashanmugam. JXTA..? JXTA is a set of open, generalized peer-to-peer (P2P) protocols that allow any connected device on the network.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
AMSA TO 4 Advanced Technology for Sensor Clouds 09 May 2012 Anabas Inc. Indiana University.
Project JXTA By Jude Mercado.
Last Class: Introduction
Module 8: Networking Services
Peer-to-peer networking
CHAPTER 3 Architectures for Distributed Systems
Chapter 3: Windows7 Part 4.
New Tools In Education Minjun Wang
Distributed Systems and Algorithms
Presentation transcript:

Dr. Ian Wang Cardiff University, U.K.

Ian Wang, Cardiff University Peer-to-Peer and Grids What does the Peer-to-Peer paradigm offer Grids? Scalable Decentralized e.g. Kazaa, Gnutella scale to millions of peers Fault Tolerant No central point of failure Dynamic Dynamic resource discovery Lightweight Utilize low power resources (e.g. PCs) e.g. achieved a ‘grid’ of millions of home PCs Easy Installation What are the disadvantages? Security and Trust

Ian Wang, Cardiff University What is P2PS? Peer-to-Peer Simplified Lightweight Peer-to-Peer Infrastructure Dynamic, Decentralized Service Discovery Pipe-based Communication XML Advertisements and Queries Domain Independent Develop Peer-to-Peer Applications in multiple domains e.g. File Sharing, Distributed Computation, Instant Messaging Java Reference Implementation Simple, clean Java API

Ian Wang, Cardiff University P2PS Goals Simplicity Simplify the development of Peer-to-Peer Applications Scalability Ad-Hoc Networks containing millions of nodes Decentralized Discovery and Communication Extensibility Additional Transport Protocols Different Discovery Algorithms and Rendezvous Policies

Ian Wang, Cardiff University P2PS v JXTA Generic Peer-to-Peer Application Infrastructures Same Motivation Service Discovery and Pipe-Based Communication Differences in Realization… e.g. JXTA: Separate protocols for advertisement and discovery P2PS: Queries are specialized advertisements JXTA: Query for predefined advertisement types P2PS: Query for arbitrary advertisement types JXTA: Routing expressed implicitly in XML message envelope P2PS: Routing is endpoint resolution issue JXTA: Dynamically import module implementations P2PS: Not implemented (complexity doesn’t match benefit) Performance Expect P2PS to out perform JXTA (but no figures to back this up… yet)

Ian Wang, Cardiff University Discovery Example HelloWorld Client/Server Server Client ServerPipe ServerPipe Network Pipe “HELLO WORLD”

Ian Wang, Cardiff University Java Example (HelloWorld Server) public class HelloWorldServer implements MessageListener { public HelloWorldServer() throws IOException { Peer peer = new PeerImp(); peer.init(); adverts = peer.getAdvertisementFactory(); discovery = peer.getDiscoveryService(); pipes = peer.getPipeService(); // initialise server pipe advertisement pipead = (PipeAdvertisement) adverts.newAdvertisement (PipeAdvertisement.PIPE_ADVERTISEMENT_TYPE); pipead.setPipeName("serverPipe"); // create server pipe and attach listener InputPipe inpipe = pipes.createInputPipe(pipead); inpipe.addPipeListener(this); // publish server pipe advertisement discovery.publish(pipead); } public void messageReceived(MessageReceivedEvent event) { // display received messages } }

Ian Wang, Cardiff University XML Advertisements Standard Advertisements PipeAdvertisement ServiceAdvertisement EndpointAdvertisement EndpointResolverAdvertisement RendezvousAdvertisement GroupAdvertisement Extendible to New Advertisement Types Custom Content

Ian Wang, Cardiff University PipeAdvertisement Example advert id originating peer id pipe id pipe name pipe type (e.g. Standard, Bidirectional, Discovery)

Ian Wang, Cardiff University XML Queries Queries are Specialized Advertisements Queries are published exactly as for Advertisements Standard Queries PipeQuery ServiceQuery EndpointQuery etc. Extendible to New Query Types Custom Query Parameters

Ian Wang, Cardiff University PipeQuery Example advert id PipeAdvertisement optional peer id to match optional pipe name to match optional pipe type to match endpoint address Query Matching tag denotes XML as a Query matches in Advertisement matches in Advertisement, etc. Matching Adverts sent to replyEndpointAddress Alternatively replyPipeAdvertisement can be used

Ian Wang, Cardiff University Discovery Subnet/Pipes Discovery Pipe Standard P2PS Pipe Type Bidirectional Pipe Broadcasts Advertisements/Queries to all Peers in Subnet Receives Advertisements/Queries from all Peers in Subnet Implementation delegated to Endpoint Resolvers Typical implementation would be UDP Multicast Other implementations (e.g. bluetooth) equally valid Discovery Subnet Subnet covered by Discovery Pipe Scope of Subnet determined by Implementation e.g. UDP Multicast range, Bluetooth range

Ian Wang, Cardiff University Rendezvous Peers Link Discovery Subnets Cache Advertisements/Queries Forward Queries to other Rendezvous Peers Server Client Discovery Subnet Discovery Subnet Rendezvous ServerPipe ServerPipe ServerPipe ServerPipe Pipe “HELLO WORLD”

Ian Wang, Cardiff University Rendezvous Open Issues Which Peers become Rendezvous Peers? Sometimes obvious (e.g. head-nodes on clusters, a PC in a network of low-power edge peers) Sometimes not (e.g. a network of homogeneous machines) How do Rendezvous Peers initially locate existing Rendezvous Peers? Centralized Lookup Service? How is connectivity maintained in dynamic networks? Multiple policies available e.g. attempt to maintain connection with three other rendezvous Where is each Advertisements/Queries cached? Multiple policies available e.g. cache local adverts + all queries, distributed hash-table

Ian Wang, Cardiff University Pipes Virtual Communication Channels Transport Protocol and Endpoint Independent Only bound to specific Endpoints at connection time Bound using Endpoint Resolution Protocol Pipe Types Standard Assumed to be unreliable, unidirectional and not secure Actual properties depend on implementation protocol Bidirectional Same as Standard but Bidirectional Discovery Broadcast/Receive Messages within a Discovery Subnet Custom Types e.g. Secure, Reliable

Ian Wang, Cardiff University Endpoint Resolvers Responsible for binding virtual Pipes to actual Endpoints Resolvers discovered using Endpoint Resolver Advertisements Published/Discovered using standard Discovery mechanism Advertisements include: Peer IDs of Peers handled by the Resolver Transport Protocol and Pipe Types handled by the Resolver Endpoint(s) for querying the Resolver Peer sends Endpoint Query to Endpoint Resolver Contains ID of Pipe being resolved Endpoint Resolver returns actual Endpoint Address for the Pipe (if known)

Ian Wang, Cardiff University Endpoint Resolution abc ServerPipe Server Client TCP Resolver UDP Resolver TCP UDP “HELLO WORLD” Pipe abc xyz abc xyz abc … via Discovery Service

Ian Wang, Cardiff University Endpoint Resolver Benefits Late-Binding of Pipes to Endpoints Endpoint Address not specified in Pipe Advertisement Dynamic Endpoints Endpoints can be dynamically created, moved, destroyed Pipes can be relayed over multiple Protocols Gateways between networks (e.g. Bluetooth to TCP) Disadvantages: Speed Complexity Alternative: Use Endpoint Advertisements Directly Avoids Endpoint Resolver Protocols

Ian Wang, Cardiff University Peer Groups and Security Currently being developed with P2PS Dynamic Sub-Network of Cooperating Peers Reduce load on Rendezvous Peers Essential for Security Group Discovery Group Advertisements/Queries to discover existing Groups Group Resolvers to bind Groups to actual Endpoints Group Organization Group Rendezvous Peers Cache/forward Advertisements within Group Enforce Security by only forwarding to Authorized Peers No Discovery Subnet – Peers connect direct to Rendezvous Peers

Ian Wang, Cardiff University Java Reference Architecture Pluggable Services Discovery Service Rendezvous Service Pipe Service Endpoint Resolvers All Communication via Endpoint Resolvers Custom Network Protocols Custom Discovery Pipes TCP Resolver??? Resolver Discovery Service Rendezvous Service P2PS Peer Pipe Service UDP Resolver Network UDPTCP???

Ian Wang, Cardiff University Triana – P2PS Pipe (Input) P2PS Pipe (Output) P2PS Service Local Machine Remote Machine P2PS Pipe (Control) Network

Ian Wang, Cardiff University WSPeer Application deploypublishlocateinvoke deploy publish discover send P2PS WSPeer - WS Pipes

Ian Wang, Cardiff University Sensor Nets - srss.pf.itd.nrl.navy.mil Scalable Robust Self-organizing Sensor (SRSS) NRL (Navy Research Laboratory) Distributed, Self-Organizing Sensor Devices Wireless Networks including Wireless Multicast Simulation using NS2 P2PS in SRSS Sensors are Peers Dynamic Sensor Discovery in Hostile Environments Rendezvous Caching and Automatic Election SRSS/P2PS Infrastructure Agent-J Real world Java Applications within NS2 P2PSx P2PS within NS2

Ian Wang, Cardiff University Future Direction Develop Peer Groups and Security Secure Pipes (e.g. SSL) Group Authorization (e.g. X509 Credentials) Develop Pluggable Generic Pipe Properties e.g. reliability, encryption, http, error correction Layer over any pipe implementation Performance Evaluation Comparison with JXTA NS/2 Focus on Application Environments Triana, Sensor Nets, WSPeer

Ian Wang, Cardiff University P2PS Summary Peer-to-Peer Simplified Lightweight Peer-to-Peer Infastructure Dynamic, Decentralized Service Discovery Pipe-Based Communication XML Advertisement and Query Domain Independent Simple, Clean Java Reference Implementation For More Information: