zaki_lecture

advertisement
Research Issues in
Web Services
CS 4244 Lecture
Zaki Malik
Department of Computer Science
Virginia Tech
zaki@vt.edu
Evolution of the Web
Document
Web
- Sharing research documents
among scientists
Application
Web
- Proprietary & closed systems
- ad hoc interactions
Service
Web
- Emergence of XML-based
standards for description,
invocation, discovery, …
- Ubiquitous protocols (HTTP, …)
Web Services
time
The Web Service Model
UDDI Registry
Service
Registry
Web Browser
0.0000
Publish
UDDI Publication
Find
UDDI Inquiry
0.0000
Service message
has
Web Service
Consumer exchange
defines
0.0000
SOAP
Web Service
Service Description
WSDL
Service
Provider
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
Web Services Trust
• Trust:
the belief that a service consumer has about the
intention and ability of a service provider to act as expected
Incentives for Establishing Trust
Provider’s perspective
- Establish,
- Maintain,
- Increase client base
Consumer’s perspective
- Reduce Risks
- Preserve Privacy
- Increase quality
Web Services Trust
• Challenges
Non
Transparency
Transience
- 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
Composition
- A composite service may be formed of “good” and “bad” services
- Consumers are not aware of how services are composed and how
they interact
Automation
- 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
Alternatives for Trust Establishment
T r u s t
Third-Party
Certification
Security
Mechanisms
Self regulation
Regulations
Third-party Certification
Security Mechanisms
Reputation
Regulations
Self Regulation
- 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
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 valueadded 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)
Web Services Composition
• 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 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
Download