WebPeer: A P2P-based System for

Similar documents
Agent and Object Technology Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma. Distributed and Agent Systems

A Survey of Peer-to-Peer Content Distribution Technologies

Telecommunication Services Engineering Lab. Roch H. Glitho

Peer-to-Peer Internet Applications: A Review

Unit 8 Peer-to-Peer Networking

Peer-to-Peer Systems. Chapter General Characteristics

Assignment 5. Georgia Koloniari

DISTRIBUTED COMPUTER SYSTEMS ARCHITECTURES

Telematics Chapter 9: Peer-to-Peer Networks

Naming and Service Discovery in Peer-to-Peer Networks

6. Peer-to-peer (P2P) networks I.

Peer-to-Peer Architectures and Signaling. Agenda

Distributed Meta-data Servers: Architecture and Design. Sarah Sharafkandi David H.C. Du DISC

ICENI: An Open Grid Service Architecture Implemented with Jini Nathalie Furmento, William Lee, Anthony Mayer, Steven Newhouse, and John Darlington

Introduction to Peer-to-Peer Systems

JXTA TM Technology for XML Messaging

Peer-to-Peer Systems. Network Science: Introduction. P2P History: P2P History: 1999 today

Making Gnutella-like P2P Systems Scalable

Peer-to-peer systems and overlay networks

P2P Applications. Reti di Elaboratori Corso di Laurea in Informatica Università degli Studi di Roma La Sapienza Canale A-L Prof.ssa Chiara Petrioli

JXTA: A Self-Adaptive Framework for Building P2P Systems

Exploiting peer group concept for adaptive and highly available services

Distributed Hash Table

Addressed Issue. P2P What are we looking at? What is Peer-to-Peer? What can databases do for P2P? What can databases do for P2P?

Introduction on Peer to Peer systems

Scalable overlay Networks

Architectures for Distributed Systems

WEB-202: Building End-to-end Security for XML Web Services Applied Techniques, Patterns and Best Practices

Georges Da Costa Introduction on Peer to Peer systems

Peer-to-Peer Signalling. Agenda

Overview Computer Networking Lecture 16: Delivering Content: Peer to Peer and CDNs Peter Steenkiste

Peer-to-Peer Networks

Content Search. Unstructured P2P

Using peer to peer. Marco Danelutto Dept. Computer Science University of Pisa

Peer-to-Peer Computing

CS 640 Introduction to Computer Networks. Today s lecture. What is P2P? Lecture30. Peer to peer applications

ICT 6544 Distributed Systems Lecture 2: ARCHITECTURES

Chapter 2: Application layer

Overlay networks. Today. l Overlays networks l P2P evolution l Pastry as a routing overlay example

Overlay and P2P Networks. Introduction and unstructured networks. Prof. Sasu Tarkoma

Presented By: Niharjyoti Sarangi

Peer-to-Peer XML. Presented By: Vasu Sathu 11/11/02

Chapter 18 Distributed Systems and Web Services

EECS 122: Introduction to Computer Networks Overlay Networks and P2P Networks. Overlay Networks: Motivations

Programming the Internet. Phillip J. Windley

Chapter 17 Web Services Additional Topics

AGENT EXTENSIONS FOR PEER-TO-PEER NETWORKS. Kalyan Valiveti, B.E. Thesis prepared for the Degree of MASTER OF SCIENCE UNIVERSITY OF NORTH TEXAS

CS6601 DISTRIBUTED SYSTEM / 2 MARK

COURSE OUTLINE MOC : PLANNING AND ADMINISTERING SHAREPOINT 2016

Content Search. Unstructured P2P. Jukka K. Nurminen

Overlay Networks: Motivations. EECS 122: Introduction to Computer Networks Overlay Networks and P2P Networks. Motivations (cont d) Goals.

Super-Peer Architectures for Distributed Computing

CSE 486/586 Distributed Systems Peer-to-Peer Architectures

Chapter 3. Database Architecture and the Web

Advanced Distributed Systems. Peer to peer systems. Reference. Reference. What is P2P? Unstructured P2P Systems Structured P2P Systems

Distributed Systems. 17. Distributed Lookup. Paul Krzyzanowski. Rutgers University. Fall 2016

Overlay and P2P Networks. Unstructured networks. PhD. Samu Varjonen

P2P Contents Distribution System with Routing and Trust Management

Peer-to-Peer Middleware Introduction Peer-to-Peer and Grids

P2P. 1 Introduction. 2 Napster. Alex S. 2.1 Client/Server. 2.2 Problems

CompSci 356: Computer Network Architectures Lecture 21: Overlay Networks Chap 9.4. Xiaowei Yang

internet technologies and standards

Early Measurements of a Cluster-based Architecture for P2P Systems

(9A05803) WEB SERVICES (ELECTIVE - III)

CMSC 332 Computer Networks P2P and Sockets

Lecture 21 P2P. Napster. Centralized Index. Napster. Gnutella. Peer-to-Peer Model March 16, Overview:

CS 470 Spring Distributed Web and File Systems. Mike Lam, Professor. Content taken from the following:

P2P Applications. Reti di Elaboratori Corso di Laurea in Informatica Università degli Studi di Roma La Sapienza

Overlay and P2P Networks. Unstructured networks. Prof. Sasu Tarkoma

Module SDS: Scalable Distributed Systems. Gabriel Antoniu, KERDATA & Davide Frey, ASAP INRIA

Distributed Systems. 16. Distributed Lookup. Paul Krzyzanowski. Rutgers University. Fall 2017

CS 470 Spring Distributed Web and File Systems. Mike Lam, Professor. Content taken from the following:

Announcements. me your survey: See the Announcements page. Today. Reading. Take a break around 10:15am. Ack: Some figures are from Coulouris

CS 3516: Advanced Computer Networks

Stratos Idreos. A thesis submitted in fulfillment of the requirements for the degree of. Electronic and Computer Engineering

Managing Peer-to-Peer Applications

Slides for Chapter 10: Peer-to-Peer Systems

Hacking MANET. Building and Breaking Wireless Peering Networks. Riley Caezar Eller

DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN. Chapter 2 ARCHITECTURES

Identität und Autorisierung als Grundlage für sichere Web-Services. Dr. Hannes P. Lubich IT Security Strategist

Chapter 10: Peer-to-Peer Systems

EE 122: Peer-to-Peer Networks

A Resource Exchange Architecture for Peer-to-Peer File Sharing Applications

Overlay and P2P Networks. Unstructured networks. Prof. Sasu Tarkoma

Peer-to-Peer Applications Reading: 9.4

Distributed systems. Distributed Systems Architectures

05 Indirect Communication

Opportunistic Application Flows in Sensor-based Pervasive Environments

JXTA Overview and Demo. M. Ranganathan ITG/ANTD/NIST

Motivation for peer-to-peer

Lecture 13: P2P Distributed Systems

Enabling QoS in Web Service Composition in a P2P Environment

Design of Next Generation Internet Based on Application-Oriented Networking

Distributed Service Discovery Algorithm Based on Ant Colony Algorithm

Peer to Peer Networks

Internet Technology. 06. Exam 1 Review Paul Krzyzanowski. Rutgers University. Spring 2016

DHANALAKSHMI COLLEGE OF ENGINEERING, CHENNAI

International Journal of Computer Science Trends and Technology (IJCST) Volume 3 Issue 6, Nov-Dec 2015

A Survey of P2P Middlewares

Internet Technology 3/2/2016

Transcription:

Huazhong University of Science and Technology Web: A P2P-based System for Publishing and Discovering Web Services Ruixuan Li Internet and Distributed Computing Laboratory College of Computer Science and Technology Huazhong University of Science and Technology Wuhan 430074, P.R.China rxli hust.edu.cn

Outline Background of P2P Research A Glance of our Current Projects Web: A Web Services Oriented -to-peer System Experiments & Implementation Summary & Ongoing Work IDC Lab, HUST 1

Outline Background of P2P Research A Glance of our Current Projects Web: A Web Services Oriented -to-peer System Experiments & Implementation Summary & Ongoing Work IDC Lab, HUST 2

Society Development First phase: Before B.c. 2000 Hominid society: cooperative equal commutative IDC Lab, HUST 3

Second phase: Before Now Structured society: hierarchical ranking centralized The Day After Tomorrow IDC Lab, HUST 4

Service Architecture Development Client/Server Cooperative The Arch. Architecture After Those -to to- Architecture! IDC Lab, HUST 5

Predictions From Forbes (Feb., 2005) (Internet) Applications based on peer-to-peer topologies will be the mainstream. From Brainpower of U.S (Jan., 2005) Self-Aware -to- Systems will develop resilient, scalable sensor/computation networks with decentralized control. IDC Lab, HUST 6

Distributed Computing Economics An equivalent price for following computing items: one database access 10 bytes of internet traffic 100,000 instructions 10 bytes of disk storage a megabyte of disk bandwidth (Views of Jim Gray) The break-even point is 10,000 instructions per byte This serves a basis how we do cost-effective Internetbased computing, such as peer-to-peer computing IDC Lab, HUST 7

What is -to-? A model of communication where every node in the network acts alike. As opposed to the Client-Server model, where one node provides services and other nodes use the services. In P2P network, every node is both client (consumer) & server (producer). IDC Lab, HUST 8

Why P2P? Inherent scalability Abundant resources No central point of failure No guarantee about QoS IDC Lab, HUST 9

Building P2P Topology User User User Us er User 4: File 1, File 2, File 3,... 6: File 1, File 2, File 3, SuperNode C Directory Server User User User SuperNode A 1 SuperNode B 2 3 User User User User 4 5 6 (1) (2) (3) Hybrid Centralized P2Ps Napster Central Metadata Single Failure Point Low Scalability Pure Decentralized P2Ps Gnutella, Freenet No Central Point Good Scalability Flooding-based Search Hard Management Partially Decentralized P2Ps KazaA, Morpheus Structured Good Scalability IDC Lab, HUST 10

P2P Applications File Sharing Science Computing Collaboration E- Commerce Others IDC Lab, HUST 11

Key Issues Topology Maintenance Searching Scheme (Routing Protocol) Data Dissemination Scheme Buffer Management Security and Reputation IDC Lab, HUST 12

Our Experiences on P2P Web A Web Services Oriented P2P System http://idc.hust.edu.cn/webpeer/ CoEdit A P2P Based Collaborative Editing System http://idc.hust.edu.cn/coedit/ Trusted A Secure and Dynamic Trusted P2P System IDC Lab, HUST 13

Next Background of P2P Research A Glance of our Current Projects Web: A Web Services Oriented -to-peer System Experiments & Implementation Summary & Ongoing Work IDC Lab, HUST 14

CoEdit: Overview Collaborative Editing is a form of Editing which involves a group editing process. Scenario: Cartographers, designers and drawers fulfill drawing objectives, through sharing resources, context and group interaction. Monitoring Activities Joining Activities Evaluating Activities Collaborative Workplace Discussion Collaborative Editing Collaborative Drawing etc Internet/Intranet Shared Knowledge Construction Drawer Cartographer Drawer Drawer Designer IDC Lab, HUST 15

CoEdit: Issues Session Management: How do distributed users create, destroy, join and leave collaborative sessions? Concurrency Control: How do we ensure that concurrent users do not enter inconsistent commands, or merge concurrent commands entered by different users? Undo/Redo: What are the semantics of undo/redo in a collaborative session? Awareness: How are users made aware of out of band activities of their collaborator? Access Control: How do we ensure that users do not execute unauthorized commands? Other Aspects: IDC Lab, HUST 16

CoEdit: Our Approach Enhance the efficiency and performance through employing P2P technology. Centralized and decentralized architecture Direct communication between collaborative sites Message routing in the collaborative group Access control among different peers IDC Lab, HUST 17

CoEdit: Arcgitecture Collaborative Group 1 Collaborative Collaborative Group 2 Collaborative Collaborative Internet/LAN Collaborative Collaborative CoEdit Server IDC Lab, HUST 18

CoEdit: Function Model Collaborative User Interface Layer Role Administrate Co assistant Co Awareness Co Design Co undo / Redo Consistence Maintenance Dynamic Lock Mechanism Collaborative Control Layer Collaborative Transport Layer IDC Lab, HUST 19

Another Project Trusted One of the security related projects IDC Lab, HUST 20

Trusted: Overview referenced IDC Lab, HUST 21

Trusted: Overview Trust on client platform is needed in modern systems and emerging applications Distributed Dissemination CONtrol (DDCON) e.g, Health records of a patient may be transmitted from a primary physician to a consultant who can access them for some limited period of time and cannot transmit them to anyone else P2P VOIP Application Realtime protection of audio data in a platform conversation is not eavesdropped or illegally recorded. Forward control of audio object (e.g., voice mail) Control the platform and user to forward P2P E-Commerce Electronic currency between peer platforms Payment systems for p2p e-commerce IDC Lab, HUST 22

Trusted: Overview Need new security model and architecture Change of trust relation between client and server No centralized and strongly protected server Data located in peers or general client platforms Location of policy enforcement changed Client-side policy enforcement needs trust Trust of platform and application Dynamic environment Software-based attacks Trusted user authentication and authorization in client platform Trusted path from peer to peer Spoofing and man-in-the-middle eavesdropping or modification attacks Trusted information exchange between peers IDC Lab, HUST 23

Trusted: What s our Focus? Three types of researches for P2P security Reputation systems Recommendation systems Trust systems Trusted part of the following project Policy-based Secure Interoperability among Multiple Autonomous Domains Trusted: A Secure and Dynamic Trusted P2P System OntoRBAC: Ontology-based Description and Enforcement of RBAC OntoPolicy: Ontology-based Secure Interoperability among Multiple Security Policies (extended OntoRBAC) IDC Lab, HUST 24

Policy-based Secure Interoperability Architecture Group Security Policy Group Security Policy Dynamic Trust Domain Group A Group N Local Security Policy Domain 1 Distributed Network Environment Domain 2 Secure Negotiation Secure Session Domain 4 Domain 3 Local Security Policy Global Security Policy

Protocol Layers Control Layer Authentication Access Control Trust Management Policy Evalution Policy Negotiation Policy Layer Mapping Layer Authentication Policy Authorization Policy Trust Policy Policy Representation & Transformation Auditing Risk Assessment Transport Layer Message Binding & Delivery IDC Lab, HUST 26

OntoRBAC Kinds of methods for security policy description Logic-based (FOL, Stratified Logic, Deontic Logic) XML-based (XACML, XRBAC, SAML, ) Ontology-based (Rei, KAoS) OntoRBAC Ontology-based Description and Enforcement of RBAC Concepts: Entity, Subject, Role, PolicyRule, Permission, Action, Policy, IDC Lab, HUST 27

OntoRBAC: Concept-Relationship Diagram IDC Lab, HUST 28

OntoRBAC: Architecture Access Requester Request+Credential Response PEP Request Response PDP PAP Policy Loader Query Result Policy Engine Administrate Load OntoRBAC Policy PEP: Policy Enforcement Point PDP: Policy Decision Point PGP: Policy Administration Point IDC Lab, HUST 29

OntoPolicy Goal: Integration of Multiple Different Security Policies Heterogeneity of security model Heterogeneity of security policy (description) Heterogeneity of security semantics OntoPolicy Ontology-based Secure Interoperability among Multiple Security Policies Nearly ongoing IDC Lab, HUST 30

Next Background of P2P Research A Glance of our Current Projects Web: A Web Services Oriented -topeer System Experiments & Implementation Summary & Ongoing Work IDC Lab, HUST 31

Web Services are booming Classical Web Services Service provider Service requestor Service broker (UDDI) Service Provider Publish Bind Service Broker Find Service Requester IDC Lab, HUST 32

Disadvantages of Web Services Single Node Failure UDDI Bottleneck Limited Scalability Denial of Service (DoS) Attack IDC Lab, HUST 33

While -to-peer Computing Sharing plentiful resources and services among network edges Federated cooperation among companies Having Lower costs of system maintenance Fault tolerance & load balance IDC Lab, HUST 34

Combination of the two technologies Using P2P-based technologies to publish and discover Web Services Combination of centralized and decentralized characteristics The node providing web services act as a peer Each peer can request web services from other peers Extend the reliability and scalability of the current web services architecture IDC Lab, HUST 35

Related Work Content-based search in P2P networks CAN(AT&T), Pastry(Microsoft), Chord(MIT) Combination of web services and peer-topeer networks Self-Serv (UNSW, QUT) metrics P2P platform supporting Web Services JXTA (Sun) IDC Lab, HUST 36

WSOP: Web Services Oriented -to-peer Architecture Service Requestor Find Bind Common Service Registry Broker Service Provider Publish Common Web Services Local Service Registry Broker Super Super Local Service Registry Broker 1 3 2 Group 1 1 3 2 Group 2 IDC Lab, HUST 37

CSRB & LSRB CSRB: Common Service Registry Broker Common Web Services Service provider, requestor, broker UDDI (CSRB), SOAP, WSDL LSRB: Local Service Registry Broker Local Web Service s (service provider, requestor) Super peers (LSRB) group (same interests, neighbors) IDC Lab, HUST 38

Service Publishing Publishing services to LSRB Register services to one peer group (super peer) Register services to multiple peer groups Publishing services to CSRB As a traditional service provider Publishing to both LSRB and CSRB Mappings between LSRB and CSRB IDC Lab, HUST 39

Service Discovery Step 1: search the services in its peer group If matches, enjoy the service Otherwise, go to Step 2 Step 2: request will be delivered to other peer groups If matches, return the result, and cache the result on the way home Otherwise, go to Step 3 IDC Lab, HUST 40

Service Discovery Step 3: request will be delivered to CSRB If matches, return the result Establish mappings on LSRB Cache the result on LSRB Otherwise, service not found IDC Lab, HUST 41

Existing Problems Open problem: Super peer will be the bottleneck if the peer group grows large enough Solutions: Using more than one super peer in the group Using Distributed Hash Table (DHT) to organize LSRBs on super peers IDC Lab, HUST 42

Using Multiple Super s Super Group 2 Super Super Super Group 1 Super Group 3 IDC Lab, HUST 43

Modified DHT Approach Establish DHT among Super s DHT: key-based search, need cost of maintenance Super peers are less dynamic and transient than other peers Publishing services Discovering services K V (k1,v1) Super K V Super K V K V Super Insert(k1, v1) K V Super Super Retrive(k1) IDC Lab, HUST 44

Another Solution Using peer groups, but no super peers Publishing services to its neighbors Selected peers (including itself) Discovering services from its neighbors Breadth-First Search (BFS) Random Breadth First Search (RBFS) Intelligent Search Mechanism (ISM) Most results in the past (>RES) Maybe other approaches IDC Lab, HUST 45

No Super s Group 2 Group 1 Group 3 IDC Lab, HUST 46

Service Discovery Techniques Breadth First Search (BFS) 9query all neighbors Random Breadth First Search (RBFS) 9query a random subset of neighbors IDC Lab, HUST 47

Service Discovery Techniques (Cont.) Intelligent Search Mechanism (ISM) intelligently query a subset of neighbors according to the relevance rank Directed BFS and >RES query the neighbors that returned the most results in the last 10 queries IDC Lab, HUST 48

Next Background of P2P Research WSOP: Web Services Oriented -to-peer Architecture Web: A Web Services Oriented -to-peer System Experiments & Implementation Summary & Future Work IDC Lab, HUST 49

Experiments Experiment Parameters Vary nodes between 1,000..100,000 Vary percentage of nodes for service publishing between 0.1..0.5 Vary percentage of nodes for service discovery between 0.5..0.9 Initial topology random graph IDC Lab, HUST 50

Experiments Simulations for the four types of approaches CSRB: Traditional UDDI server only LSRB: Using single super peer MSP: Multiple super peers NSP: None super peers BFS, RBFS, ISM, >RES Results will come out soon IDC Lab, HUST 51

Implementation: Detailed Architecture Local SOAP Server Web Services Configuration Node Security Policy P2P System Initialization Group Discovery Authentication Single Super WSDL Generation WSDL Processing WSIF Invocation WSDL Parsing WSDL Download Local Service Cache Service Publishing Service Discovery Export Pipe Import Pipe Group P2P Overlay Remote SOAP Server Internet IDC Lab, HUST 52

An Instance of Web Services Advertisement <?xml version="1.0"?> <!DOCTYPE jxta:msa> <jxta:msa xmlns:jxta="http://www.jxta.org"> <MSID>urn:jxta:uuid-D110E7397F24401EA8318F383CFF29 4035B8C3C1CF6645EABD13B9C76EBB115906</MSID> <Name>JXTASPEC:WebServices:urn:helloservice</Name> <Crtr> Example.org </Crtr> <SURI> http://www.example.org </SURI> <Vers> 1.0 </Vers> <Desc> A service allow you to say hello </Desc> <Parm> <wsdluri> http://www.example.org/helloservice/ helloservice.wsdl </wsdluri> </Parm> <jxta:pipeadvertisement xmlns:jxta="http://jxta.org"> <Id>urn:jxta:uuid-2EC8CDF870744C468B7CB111E337A0 1EE5E3818 F9BBD405B90D2B7626E1549C504</Id> <Type> JxtaUnicast </Type> <Name> WebServices:RespPipe:urn:helloservice</Name> </jxta:pipeadvertisement> </jxta:msa> IDC Lab, HUST 53

Algorithms of Discovering Web Services PROCEDURE discoverwebservicesadvertisement BEGIN WHILE Looking up Web Services Advertisements in local service cache; IF (search result doesn t match the request) BEGIN Sending discovery request to peer group; IF (search result matches the request) Saving result in local service cache; ELSE BEGIN Sending discovery request to CSRB; IF (search result matches the request) Saving result in local service cache; ELSE Return result with no matches; END; END; return the discovery result; UNTIL (number of discovery request is 0); END; PROCEDURE getwsdldocument BEGIN WHILE BEGIN Getting a Web Services advertisement; IF (parameters of advertisement are not null) BEGIN Call doc(structuredtextdocument) to create a structured text document; Saving parameters of advertisement into created document; elements := doc; WHILE BEGIN Getting names of subitems; IF (subitem is wsdluri) BEGIN Getting the value of wsdluri; IF (the value of wsdluri is not null) BEGIN return the value of wsdluri; break the inner LOOP; END END END END else repeat the outer loop; UNTIL (peers has more elements); END; IDC Lab, HUST 54

Web System Interfaces IDC Lab, HUST 55

Next Background of P2P Research WSOP: Web Services Oriented -to-peer Architecture Web: A Web Services Oriented -to-peer System Experiments & Implementation Summary & Ongoing Work IDC Lab, HUST 56

Summary & Ongoing Work Security models for different approaches and topologies Semantic-based model for service publishing and discovery Possible mobility of Web Services in P2P Environment IDC Lab, HUST 57

Thanks! IDC Lab, HUST 58