Research Issues in Web Services CS 4244 Lecture Zaki Malik Department of Computer Science Virginia...

Post on 30-Mar-2015

216 views 3 download

Tags:

transcript

Research Issues in Web Services

CS 4244 Lecture

Zaki MalikDepartment of Computer Science

Virginia Techzaki@vt.edu

DocumentWeb

ApplicationWeb

ServiceWeb

- Sharing research documents among scientists

- Proprietary & closed systems- ad hoc interactions

- Emergence of XML-based standards for description, invocation, discovery, …- Ubiquitous protocols (HTTP, …)

Web Services

time

Evolution of the Web

The Web Service Model

0.0000

Computer

Web Service

Web Service

0.0000

0.0000

ServiceRegistry

ServiceConsumer

ServiceProvider

PublishFind

message

exchange

has defines

Service Description

UDDI Publication

UDDI Inquiry

SOAP

WSDL

UDDI Registry

Web Browser

Motivation

• Exploratory – The process of selecting Web services is non-deterministic– Web services are a priori unknown– Services should be determined dynamically

• Volatile– A Web service answering a request at a given time may not be

available to answer the same request in the future– Services may become unavailable in the interval between

selection and invocation• Dynamic

– Web service content provided by the operations may change frequently

– Change may affect the overall execution of the request

Scenario

Issues

– Select Web services with appropriate functionality (Querying)

– Must be discovered in a reasonable time (Querying)

– Multiple services may provide same functionality (Querying, Reputation)

– More than one service might have to be selected (Composition)

– Web services may change over a period of time (Change)

Issues

• Web Services Query Optimization

• Web Services Trust

• Web Services Composition

• Web Services Change Management

Web Services Query Optimization

• Check the Needed Operations

• Locate Web Services that Provide the Operations

• Potential Hindrance– Large Service Space

Web Services Query Optimization

• Reduce Web Service Search Space

• Filter out “Inefficient” Services

• Choose the Best Web Services

Web Services Query Optimization

• Need:– Organization of the Large Web Service Space– Compare the Service Execution Plans– Select the Needed Web Services, Based on QoS

Quality of Service (QoS)– Set of characteristics of a system, necessary to achieve

the required functionality

• QoS Attributes– Reputation: Objective evaluation of trust– Response Time: Delay between request and response – Availability: Probability of system accessibility– Service Fee: Price demanded for service

• Trust: the belief that a service consumer has about the intention and ability of a service provider to act as expected

Web Services Trust

Consumer’s perspectiveProvider’s perspective

Incentives for Establishing Trust

- Establish, - Maintain, - Increase client base

- Reduce Risks- Preserve Privacy- Increase quality

• Challenges

Web Services Trust

Automation

Non Transparency

Transience

Composition

- Automation of processes involving complex, subjective decision making- Agents must be able to reason about whether to trust a service and take decisions on behalf of users

- Services workflow is opaque- Service consumers have little information to form accurate perceptions about services

- Services may be suspended, renamed, redeployed- It is not easy to keep track of services’ history

- A composite service may be formed of “good” and “bad” services- Consumers are not aware of how services are composed and how they interact

Alternatives for Trust Establishment

Self regulation

Regulations

Third-party Certification

Security Mechanisms

- Service providers may or may not implement their commitments- Service providers may change their policy

- May be violated- Not globally enforceable

- Does not scale to the service Web

- May achieve confidentiality, authorization, authentication, …- Not necessarily trust

ReputationThird-Party Certification

Regulations Self RegulationSecurity

Mechanisms

T r u s t

Reputation

• Reputation Management– A service’s reputation within a community of

consumers is a perception shared by some or all of the members of that community about that service

• Approach– Consumers rate Web services– Consumers collaborate to assess services’

reputation– Trust in services derives from their reputation– Reputation-based service selection and

composition

Reputation• Collection

– Automatic Rating of Web Services– Rating Collection– Bootstrapping

• Assessment– Metrics and Models

• Storage

• Dissemination– Push-based– Pull-based

• Robustness– Prevention and Detection of Reputation Tampering

• Trust-based Selection and Composition

Web Services Composition

• Two or more services come-together to provide a value-added functionality

• Understanding the semantics of Web services

• Composability: Can Web service be composed together?

• Generate composite service descriptions

Web Services Composition

Requirement Impact on Service Composition

Dynamics - On the fly business relationships- Adaptability to changes

Large Size - Fast composition- Scalability (number of services, etc.)

Peer-to-Peer - No central authority to manage interactions among component services

Autonomy - Component services interact based on their own terms

Heterogeneity - Different component service capabilities (communication, content, and business logic)

• Declarative Composition– Describing the composite service

• Composers’ input (component services, operations,…)• Recursive composition

– Generating composition plans

– Selection of a composition plan

• Support of Dynamic Relationships– Specification of dynamic relationships

– Selection of candidate services (selection policies)

– Mapping to selected services (messages, operations, …)

Web Services Composition

Web Services Change Management

• Change Management definition:– Detection

• Awareness that a change has occurred• Subsequent identification of its cause

– Propagation• Informing all concerned entities in the system that a change has occurred

– Reaction• Executing a compensatory process that brings the system back to safe

execution mode• Categories of changes:

– Internal• Changes that occur inside a Web service• Example: change in the content provided by a Web service

– External• Changes that occur outside of a Web service• Example: temporary or permanent unavailability of a service or its

operations

Change Management Mechanisms

• Detection– Service unavailability - agents send frequent alive messages to

participant services– Change to operations - compare service descriptions in the registries

with the ones in the system– Change in content - periodic invocation of the an operation and

comparing the subsequent results• Propagation

– Web services participating in a service request are registered with a participant list

– Participant list is maintained by agents• Agents initially add Web service descriptions to the list• The Participant list is consulted before a service is invoked• Agents remove the service description from the list if change occurs

• Reaction– Selection of alternate Web services to fulfill a request– Request cancellation if no alternate service is available– Reaction to internal change is in the form of reconsolidating the result

Conclusion

• A complete Web Services Management System is needed

– Services treated as first-class objects– Optimization, Trust, Composition, and Change

Management seen as major components