25
A JXTA-based Peer Architecture for enhanced service discovery in SOA-based P2P Applications Paolo Bocciarelli, Andrea D'Ambrogio and Michele Angelaccio Dept. of Computer Science System and Production University of Roma “Tor Vergata” Roma (Italy) EMSOA 2010 Ghent

A JXTA-based Peer Architecture for enhanced service ... · Services Oriented Architectures ! In the last few years the development of ... offers an efficient, scalable, fault-resilient

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: A JXTA-based Peer Architecture for enhanced service ... · Services Oriented Architectures ! In the last few years the development of ... offers an efficient, scalable, fault-resilient

A JXTA-based Peer Architecture for enhanced service discovery

in SOA-based P2P Applications

Paolo Bocciarelli, Andrea D'Ambrogio and Michele Angelaccio

Dept. of Computer Science System and Production University of Roma “Tor Vergata”

Roma (Italy)

EMSOA 2010 Ghent

Page 2: A JXTA-based Peer Architecture for enhanced service ... · Services Oriented Architectures ! In the last few years the development of ... offers an efficient, scalable, fault-resilient

A.D'Ambrogio 2 COSP'07

Outline w  QoS Analysis for SOA-based P2P application

w  QoS-Enabled WSDL (Q-WSDL)

w  QShare Peer Architecture

w  QoS-enabled Service Discovery in a P2P Network

w  Example application: Service Discovery in QShare Architecture for Team Emergency

w  Conclusions

Page 3: A JXTA-based Peer Architecture for enhanced service ... · Services Oriented Architectures ! In the last few years the development of ... offers an efficient, scalable, fault-resilient

A.D'Ambrogio 3 COSP'07

Services Oriented Architectures w  In the last few years the development of

distributed and enterprise systems has been widely influenced by the computing paradigm based on service-oriented architectures (SOA)

w  The service-oriented architecture provides the necessary support for the consolidation of multiple services into a single composite service corresponding to the overall process

w  Web services are the preferred and widely-used technology for implementing the service concept.

w  The Quality of Services (QoS) of SOA-based applications executed on top of conventional platforms may rapidly degrade when the number of concurrent client requests scales up.

Page 4: A JXTA-based Peer Architecture for enhanced service ... · Services Oriented Architectures ! In the last few years the development of ... offers an efficient, scalable, fault-resilient

A.D'Ambrogio 4 COSP'07

SOA-based P2P Applications w  To overcome the downgrade of QoS,

simple solution such as the use of additional servers (or clusters of servers) may be either economically unfeasible or not sufficient.

w  Peer-to-peer (P2P) environments have gradually emerged as a viable alternative to traditional client/server environments.

w  A P2P overlay network of service providers offers an efficient, scalable, fault-resilient and self-organizing substrate for building SOA-based applications.

Page 5: A JXTA-based Peer Architecture for enhanced service ... · Services Oriented Architectures ! In the last few years the development of ... offers an efficient, scalable, fault-resilient

A.D'Ambrogio 5 COSP'07

Limitations of Service Discovery in P2P network

w  In a traditional context a Service Provider publishes a WSDL description of each available services in one o more UDDI registry.

w  A Service Consumer enquiries UDDI registries to find the WSDL descriptions of needed services.

w  Unfortunately the use of standard like UDDI or WSDL shows some limitations inwhen applied to SOA-based applications executed on top of a P2P network.

Page 6: A JXTA-based Peer Architecture for enhanced service ... · Services Oriented Architectures ! In the last few years the development of ... offers an efficient, scalable, fault-resilient

A.D'Ambrogio 6 COSP'07

w  UDDI allows only search services by use of a few attributes, and this is not suitable when a large number of services is available.

w  UDDI are centralized and represents a single points of failure that do not allow to fully exploit the benefits of decentralized approaches provided by P2P technologies.

w  WSDL documents only address the functional aspects of web services, without containing any useful description of QoS characteristics.

Limitations of Service Discovery in P2P network (2)

Page 7: A JXTA-based Peer Architecture for enhanced service ... · Services Oriented Architectures ! In the last few years the development of ... offers an efficient, scalable, fault-resilient

A.D'Ambrogio 7 COSP'07

Limitations of Service Discovery in P2P network (3)

To overcome the mentioned limitation we propose the QShare Peer Architecture.

QShare allows: • QoS-enabled Web services description

with Q-WSDL • QoS-enabled and Keywords-based

services discovery • Distributed repository for Q-WSDL

document

Page 8: A JXTA-based Peer Architecture for enhanced service ... · Services Oriented Architectures ! In the last few years the development of ... offers an efficient, scalable, fault-resilient

A.D'Ambrogio 8 COSP'07

QoS-Enabled WSDL w  A WSDL description is an XML document

that contains all the information about service capabil it ies and invocation mechanisms

w  A WSDL does not contain any description of QoS characteristics of Web Service

w  A WSDL extension is needed w  The proposed extension is based on a

metamodel trasformation w  The WSDL and Q-WSDL metamodels are

defined by use of the Meta Object Facility (MOF)

Page 9: A JXTA-based Peer Architecture for enhanced service ... · Services Oriented Architectures ! In the last few years the development of ... offers an efficient, scalable, fault-resilient

A.D'Ambrogio 9 COSP'07

Q-WSDL Metamodel

+name+targetNamespace

Definition

+nameMessage

+nameBinding

+name+location

Port

+nameOperation

+namePart

+nameService

+namePortType

input

output

fault*

0..* 1..*

1

1

1

1..*

1..*

1..*

1..*

1..*

0..1

0..1

0..1

1..*

1..*

1

+namespace+location

Import

1..*

Types

0..1

is_located_on

is_acceded_by

+qualification+isOffered

MessageEncryption

QoSCharacteristic

+value+unit+source

Protocol+value+unit+source

KeyType

QoSDimension QoSDimension

+qualification+isOffered

OperationDemand+qualification+isOffered

OperationLatency

+qualification+isOffered

Network

+qualification+isOffered

AccessControl

+qualification+isOffered

Reliability+qualification+isOffered

Availability

+value+unit = 'msec'+type+direction = 'decreasing'+source

ServiceTime+value+unit = 'msec'+type+direction = 'decreasing'+source

TurnAround+value+unit = 'requests/sec'+type+direction+source

ArrivalRate

+value+unit = 'Mbit/sec'+type+direction = 'increasing'+source

BitRate+value+unit = 'msec'+type+direction = 'decreasing'+source

Delay

+value+unit = 'msec'+type+direction = 'decreasing'+source

Jitter

+value+unit = '%'+type+direction = 'decreasing'+source

PacketLoss

+value+unit = 'hours'+type+direction = 'decreasing'+source

TimeToRepair+value+unit = 'hours'+type+direction = 'increasing'+source

TimeBetweenFailure+value+unit = 'failures/year'+type+direction = 'decreasing'+source

ExpFailures

+value+unit+source

Policy

QoSCharacteristic QoSCharacteristic

QoSCharacteristic

QoSCharacteristicQoSCharacteristic

QoSCharacteristic

QoSDimension QoSDimensionQoSDimension

QoSDimension QoSDimension

QoSDimension

QoSDimension

QoSDimension

QoSDimension

QoSDimensionQoSDimension

0..1 0..1 0..1

0..1

0..1

0..10..1

1 0..1

1 0..1 1

1 0..1

0..1

0..1

1

10..10..1

+value+unit = '%'+type+direction = 'increasing'+source

ExpAvailability

QoSDimension

1

QoSDimension

0..1

Page 10: A JXTA-based Peer Architecture for enhanced service ... · Services Oriented Architectures ! In the last few years the development of ... offers an efficient, scalable, fault-resilient

A.D'Ambrogio 10 COSP'07

OMG’s MDA w  The OMG (Object Management Group) addresses

this notion with MDA, the Model Driven Architecture

w  MDA Motivation: transfer the focus of work from coding (“everything is an object”) to modeling (“everything is a model”)

w  MDA provides a set of guidelines for structuring specifications expressed as models and the transformations between such models

w  The transformations map the elements of a source model that conforms to a specific metamodel to elements of another model, the target model that conforms to the same or to a different metamodel

Page 11: A JXTA-based Peer Architecture for enhanced service ... · Services Oriented Architectures ! In the last few years the development of ... offers an efficient, scalable, fault-resilient

A.D'Ambrogio 11 COSP'07

MDA key standards w  Meta Object Facility (MOF): defines an

abstract language and a framework for specifying, constructing, and managing technology neutral metamodels, or models used to describe other models

w  XML Metadata Interchange (XMI): provides a set of rules for serializing MOF

metamodels and models to XML schemas and documents, respectively

Page 12: A JXTA-based Peer Architecture for enhanced service ... · Services Oriented Architectures ! In the last few years the development of ... offers an efficient, scalable, fault-resilient

A.D'Ambrogio 12 COSP'07

Metamodel-Based Extension Process

Page 13: A JXTA-based Peer Architecture for enhanced service ... · Services Oriented Architectures ! In the last few years the development of ... offers an efficient, scalable, fault-resilient

A.D'Ambrogio 13 COSP'07

Model-Driven QoS Management Framework

w  An application is initially specified as a workflow of abstract services (abstract model)

w  A keyword-based service discovery is carried out

w  A concrete model in obtained by binding each abstract service to one of the several concrete services matching the abstract service interface

w  The concrete model is then automatically transformed into a QoS analysis model

P2PLayer

ModelLayer

ApplicationLayer

ApplicationDescription

AbstractModel

Service Discovery and Binding

ConcreteModel

Model Transformation

QoS Analysis Model

QoS Evaluation

Result(QoS prediction)

MeetRequired

QoS?

Is there alternatives

?

yes

no

yes

Deployment, Execution and

Update

P2Pnetwork

Discovery

Q-WSDLdescriptions

Page 14: A JXTA-based Peer Architecture for enhanced service ... · Services Oriented Architectures ! In the last few years the development of ... offers an efficient, scalable, fault-resilient

A.D'Ambrogio 14 COSP'07

Model-Driven QoS Management Framework (2)

w  The QoS analysis model is evaluated

w  The QoS prediction is compared vs the QoS requirements

w  In the positive case, a SLA can be stipulated

w  In the negative case the availability of alternatives must be explored

w  At execution time, whether the operational conditions of the P2P network change, a new discovery is carried out and the model-driven approach is applied again

P2PLayer

ModelLayer

ApplicationLayer

ApplicationDescription

AbstractModel

Service Discovery and Binding

ConcreteModel

Model Transformation

QoS Analysis Model

QoS Evaluation

Result(QoS prediction)

MeetRequired

QoS?

Is there alternatives

?

yes

no

yes

Deployment, Execution and

Update

P2Pnetwork

Discovery

Q-WSDLdescriptions

Page 15: A JXTA-based Peer Architecture for enhanced service ... · Services Oriented Architectures ! In the last few years the development of ... offers an efficient, scalable, fault-resilient

A.D'Ambrogio 15 COSP'07

QShare leading concepts w  QShare is integrated into the framework in order

to allow the application of the QoS management loop at execution time in a time-effetive way

w  QShare is based on a structured overlay network were items are stored and located by use of Chord protocol

w  Items stored in each Peers are the Q-WSDL description of available services

w  Each Web services is described by a set of keywords

w  Peers should be able to discover services with the same criterion of a centralized registry

Page 16: A JXTA-based Peer Architecture for enhanced service ... · Services Oriented Architectures ! In the last few years the development of ... offers an efficient, scalable, fault-resilient

A.D'Ambrogio 16 COSP'07

Insight QShare Architecture The implementation of each peer should includes:

•  Set of provided Web services •  Repository of Q-WSDL descriptions of provided services •  Core function which provides low-level primitives such as

join, leave and lookup •  Query Engine which translates the weywords based query

to the indexes space of the underlying Chord protocol

Harware/Software Resources

Web Services

Q-WSDL Repository

Query Engine

Core Functions

join leave lookup

enquiry

P2P routing layer

stabilize

Page 17: A JXTA-based Peer Architecture for enhanced service ... · Services Oriented Architectures ! In the last few years the development of ... offers an efficient, scalable, fault-resilient

A.D'Ambrogio 17 COSP'07

Core Functions w  The join, leave and stabilize interfaces are

needed to deal with the variability of population •  when peer n joins the network, certain keys

previously assigned to n’s successor, will become assigned to n

•  when peer n leaves the network, all keys assigned to it will be reassigned to its successor; the pairs (key, Q-WSDL description) related to services provided by peer n must be deleted

•  Periodically, each peer runs a stabilization algorithm

w  The lookup interfaces is needed to locate items (Q-WSDL documentation) within P2P

Page 18: A JXTA-based Peer Architecture for enhanced service ... · Services Oriented Architectures ! In the last few years the development of ... offers an efficient, scalable, fault-resilient

A.D'Ambrogio 18 COSP'07

Query Engine To perform a keywords-based query on DHT-based overlay network:

•  User’s query (expressed in terms of a set of keywords) is translated to the index space of Chord protocol

•  Q-WSDL document are located by querying the appropriate peers in the overlay network

QUERY ENGINE

foo

bar …

Keyword Domain

101

110 …

Indexes Domain

101

110

011 100

foo

bar

xyz

zxy

Page 19: A JXTA-based Peer Architecture for enhanced service ... · Services Oriented Architectures ! In the last few years the development of ... offers an efficient, scalable, fault-resilient

A.D'Ambrogio 19 COSP'07

QoS-based Service Discovery The implementation of the keywords-based discovery is essential for managing the QoS in SOA-based P2P applications. Such a discovery allows user to locate the QoS description of services, starting from a set of keywords

Q-WSDLPeer 2

Peer 3

Peer 1

Peer 4

Q-WSDL

Page 20: A JXTA-based Peer Architecture for enhanced service ... · Services Oriented Architectures ! In the last few years the development of ... offers an efficient, scalable, fault-resilient

A.D'Ambrogio 20 COSP'07

QoS-based Service Discovery (2)

Peer 1 compares the QoS of candidate services and choose the one that better satisfy the QoS requirements

Q-WSDL

Q-WSDL

SOAPrequest

SOAPresponse

Peer 2

Peer 3

Peer 1

Peer 4

Page 21: A JXTA-based Peer Architecture for enhanced service ... · Services Oriented Architectures ! In the last few years the development of ... offers an efficient, scalable, fault-resilient

A.D'Ambrogio 21 EMSOA’10

Nomadic Workflow Example (1) Emergency scenario (e.g. earthquake) in which, a search and rescue team (TM1-TM2) is in charge of assuming the control of the situation by TAKING and SHARING PICURES

Page 22: A JXTA-based Peer Architecture for enhanced service ... · Services Oriented Architectures ! In the last few years the development of ... offers an efficient, scalable, fault-resilient

A.D'Ambrogio 22 EMSOA’10

Nomadic Workflow Example (2) Corresponding SOA-based P2P application dealing with the case of an adaptive workflow for nomadic operators connected through a wireless MANET infrastructure

Page 23: A JXTA-based Peer Architecture for enhanced service ... · Services Oriented Architectures ! In the last few years the development of ... offers an efficient, scalable, fault-resilient

A.D'Ambrogio 23 COSP'07

Example Application (2)

Peer Services QoS issues Net Bit rate Net Delay Serv. Time

3 PhotoShareA/uploadImage

25Mbt/s 90 msec 500 msec

4 PhotoShareB/uploadImage

10Mbt/s 190 msec 650 msec

QoS ensured by each provider, specifically with regard to the network characteristics of the service, and the service time (measured at server side) for the provided operation

Page 24: A JXTA-based Peer Architecture for enhanced service ... · Services Oriented Architectures ! In the last few years the development of ... offers an efficient, scalable, fault-resilient

A.D'Ambrogio 24 COSP'07

Conclusions w  The introduction of P2P overlay networks of

service providers offers an efficient, scalable and fault-resilient substrate for building SOA-based applications with high level of QoS.

w  An efficient execution of the discovery step is a key issue.

w  QShare, is a novel approach for the QoS-enabled description and discovery of services in SOA-based P2P applications.

w  The QShare effectiveness has been shown within the context of a model-driven framework for manag ing the QoS o f SOA-based P2P applications.

Page 25: A JXTA-based Peer Architecture for enhanced service ... · Services Oriented Architectures ! In the last few years the development of ... offers an efficient, scalable, fault-resilient

A.D'Ambrogio 25 COSP'07

Thank You!