Post on 06-Oct-2020
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.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
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.
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.
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.
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)
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
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)
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
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
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
A.D'Ambrogio 12 COSP'07
Metamodel-Based Extension Process
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
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
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
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
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
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
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
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
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
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
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
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.
A.D'Ambrogio 25 COSP'07
Thank You!