44
University of Kaiserslautern Department of Computer Science Integrated Communication Systems ICSY http://www.icsy.de Service Composition and Selection in Service Oriented Network Architecture (SONATE) 26 th October 2010 M. Rahamatullah Khondoker

Service Composition and Selection in Service Oriented Network Architecture (SONATE)

  • Upload
    keona

  • View
    67

  • Download
    0

Embed Size (px)

DESCRIPTION

Service Composition and Selection in Service Oriented Network Architecture (SONATE). 26 th October 2010. M. Rahamatullah Khondoker. Outline. Motivation for SONATE Overview of SONATE Concepts and Terminologies Building Blocks Workflows Framework Service Composition Service Selection - PowerPoint PPT Presentation

Citation preview

Page 1: Service Composition and Selection in Service Oriented Network Architecture (SONATE)

University of KaiserslauternDepartment of Computer ScienceIntegrated Communication Systems ICSYhttp://www.icsy.de

Service Composition and Selection in Service Oriented Network Architecture

(SONATE)

26th October 2010

M. Rahamatullah Khondoker

Page 2: Service Composition and Selection in Service Oriented Network Architecture (SONATE)

2M. Rahamatullah Khondoker, University of Kaiserslautern

Outline

Motivation for SONATE Overview of SONATE Concepts and Terminologies

- Building Blocks- Workflows- Framework- Service Composition

Service Selection Conclusions and Outlook Discussion

Page 3: Service Composition and Selection in Service Oriented Network Architecture (SONATE)

3M. Rahamatullah Khondoker, University of Kaiserslautern

Problem Statement

It is hard to integrate new mechanismsinto the current Internet

Because: Many implicit dependencies

(i.e. tight coupling)between existing mechanisms

The problem is not limitedto specific protocols ormechanisms

It is an architectural issue!

Page 4: Service Composition and Selection in Service Oriented Network Architecture (SONATE)

4M. Rahamatullah Khondoker, University of Kaiserslautern

Motivation for SONATE

A Future Network architecture should be flexible:

- Long term flexibility: Support evolution of networks

- Short term flexibilityDynamically adapt to requirements and constraints

Page 5: Service Composition and Selection in Service Oriented Network Architecture (SONATE)

5M. Rahamatullah Khondoker, University of Kaiserslautern

Long Term Flexibility

Enable: stepwise introduction of new functionality Easy introduction of new functionality without depending

on agreements with vendors / providersReasons:

- Enable utilization of highly specific or experimental functionality- Reduce time to market- Opportunity for small companies to provide (network-) services

Of course standardization is still required

Solution: Loose Coupling

Page 6: Service Composition and Selection in Service Oriented Network Architecture (SONATE)

6M. Rahamatullah Khondoker, University of Kaiserslautern

Short Term Flexibility

Requirements of current application, e.g. - Different behaviour for regular and emergency phone calls

Current network constraints, e.g. - Mobile or wired network access- A Network may require authentication when prioritization is

requested Capabilities of currently involved nodes

- Adapt to supported functionality. This is important to utilize new functionality.

Solution: Dynamic Adaptation

Page 7: Service Composition and Selection in Service Oriented Network Architecture (SONATE)

SONATE Concepts

Page 8: Service Composition and Selection in Service Oriented Network Architecture (SONATE)

8M. Rahamatullah Khondoker, University of Kaiserslautern

Building Blocks

Functionality is provided by self-contained building blocks (BB)- Micro-protocols (e.g. flow-control, retransmission or a video

codec)- Other functionality (e.g. monitoring or lookup services)

BB have generic and well-defined interfaces

Description (XML)

BB Code

Effects,Ports,etc.

Effects,Ports,etc.

Effects,Ports,etc.

Effects,Ports,etc.

Page 9: Service Composition and Selection in Service Oriented Network Architecture (SONATE)

9M. Rahamatullah Khondoker, University of Kaiserslautern

Services

A Service- Can be seen as a set of visible effects of the underlying

implementation of a protocol or mechanism - Hides implementation mechanisms

Examples of effects• Reliable transmission, Addressing, Security, Routing, Loss Detection,

Loss Reduction, Loop Avoidance, Connection Management, etc.

Page 10: Service Composition and Selection in Service Oriented Network Architecture (SONATE)

10M. Rahamatullah Khondoker, University of Kaiserslautern

Workflow

Interaction of Services is defined by a workflow description- Order of Services- Possible data exchange

Descriptions can be changed easier than code Placement of a functionality is not fixed

Page 11: Service Composition and Selection in Service Oriented Network Architecture (SONATE)

11M. Rahamatullah Khondoker, University of Kaiserslautern

Workflow

Interaction of Services is defined by a workflow description- Order of Services- Possible data exchange

Descriptions can be changed easier than code Placement of a functionality is not fixed

Loose coupling achieved by:

Building blocks & Workflow-Descriptions

Foster long term flexibility

Page 12: Service Composition and Selection in Service Oriented Network Architecture (SONATE)

12M. Rahamatullah Khondoker, University of Kaiserslautern

SONATE Framework

Workflow processing Management of services

Repository of building blocks

Msg1 Msg2 Msg3

Timer, Events,debugging support, …

From previous node To successor node

Shared Data Structures

Physical orvirtual link

Physical orvirtual link

WorkflowEngine

ToApplication

receive send

FromApplication

Msg1’ Msg3’Msg2’

Page 13: Service Composition and Selection in Service Oriented Network Architecture (SONATE)

13M. Rahamatullah Khondoker, University of Kaiserslautern

Service Composition

Create workflow descriptions- Select services to be used- Compose (connect)

services

Adapt to (current) requirements andconstraints

ServiceComposition

Application: Requirements

Network: Constraints

Page 14: Service Composition and Selection in Service Oriented Network Architecture (SONATE)

14M. Rahamatullah Khondoker, University of Kaiserslautern

Signal Workflows

Be independent of Service Composition algorithms Intermediate nodes may

- alter workflows, i.e. act as gateways- provide feedback, i.e. request different behavior

Initiator Next Node

Msgs

FunctionalComposition

Framework FrameworkMsgs

Gateway Node

FunctionalComposition

FrameworkMsgsMsgs

Page 15: Service Composition and Selection in Service Oriented Network Architecture (SONATE)

15M. Rahamatullah Khondoker, University of Kaiserslautern

Signal Workflows

Be independent of Service Composition algorithms Intermediate nodes may

- alter workflows, i.e. act as gateways- provide feedback, i.e. request different behavior

Initiator Next Node

Msgs

FunctionalComposition

Framework FrameworkMsgs

Gateway Node

FunctionalComposition

FrameworkMsgsMsgs

Dynamic adaption achieved by:

Service Composition& Processing of Workflow-Descriptions

Foster short term flexibility

Page 16: Service Composition and Selection in Service Oriented Network Architecture (SONATE)

Service Selection

Page 17: Service Composition and Selection in Service Oriented Network Architecture (SONATE)

17M. Rahamatullah Khondoker, University of Kaiserslautern

Service Selection

Service Composition Approaches- Manually (supported by tools)- Templates (predefined structure, delayed completion)- Genetic algorithms (automatic but time consuming process)- Compose few coarse grain modules / partial workflows- Compose fine grained building blocks

Page 18: Service Composition and Selection in Service Oriented Network Architecture (SONATE)

18M. Rahamatullah Khondoker, University of Kaiserslautern

Service Selection

Composition approaches differ according to- Tradeoff: When to perform vs. Information availability

• Design time: General requirements and protocols are known• Deployment time: General application requirements and system

constraints are known• Run time: User requirements and available resources are known

- Flexibility- Effort for calculation

It is unlikely that one approach is always optimal

Page 19: Service Composition and Selection in Service Oriented Network Architecture (SONATE)

19M. Rahamatullah Khondoker, University of Kaiserslautern

Service Selection Process

Application

Requirements

Conventional

TCP/IPUDP/IPSCTP/IP…

Compound Template S&C

ServiceBroker

Offerings

Network Abstraction API

SelectedService

Requirements

Access to Service Provider

Service Providers

Page 20: Service Composition and Selection in Service Oriented Network Architecture (SONATE)

20M. Rahamatullah Khondoker, University of Kaiserslautern

Requirements: Service Selection

Service Description- For comparing application requirements and offered services

Service Selection Methodology- For getting suitable services - For getting the best service

Page 21: Service Composition and Selection in Service Oriented Network Architecture (SONATE)

21M. Rahamatullah Khondoker, University of Kaiserslautern

Service Selection: Service Description

Used to determine for a requested service- Which offered services are suitable

(i.e. fulfills all compulsory requirements)- Which suitable service is optimal

(i.e. compare properties of service) Describe services using two types of properties

- Mandatory properties, attributes using absolute values• <PropID, lower-bound, upper-bound>• Examples: compare MTU size, average Bandwidth, Costs, …

- Optional properties, attributes using absolute values• <PropID, rating> rating [-9,9]• Examples: decide to increase security vs. reduce delay

Page 22: Service Composition and Selection in Service Oriented Network Architecture (SONATE)

22M. Rahamatullah Khondoker, University of Kaiserslautern

Service Selection: Methodology

Service Selection Methodology- For getting an optimal service, optimization of optional properties

is required- For example, security and delay of similar services - We need Multiple Criteria Decision Analysis (MCDA)

• Several algorithms (MAUT, AHP, ELECTRE III, Evamix) exist for doing this

- Where as no other MCDA methods allow interdependence of different criteria, AHP does that

- We used Analytic Hierarchy Process (AHP)• Checking consistency of evaluation measures• Reduces biased behavior in decision making process

- AHP must be adapted for automatic service selection

Page 23: Service Composition and Selection in Service Oriented Network Architecture (SONATE)

23M. Rahamatullah Khondoker, University of Kaiserslautern

Service Selection: AHP

Fig. Analytic Hierarchy Process (AHP)

Absolutely More

Absolutely Less

9753-1 or 1-3-5-7-9

Moderately Less

Moderately MoreEqual

Fig. Pairwise comparison scale

Page 24: Service Composition and Selection in Service Oriented Network Architecture (SONATE)

24M. Rahamatullah Khondoker, University of Kaiserslautern

Service Selection: Usage of AHP

AHP in service description and selection- Input

• A set of effects- Requirements

• Pairwise priority assignment• Calculate one priority for each effect

- Offers• Pairwise priority assignment

- This requires a mapping mechanism which cannot be done by AHP• Calculate one priority for each effect

- Output• A service with the highest priority value

Page 25: Service Composition and Selection in Service Oriented Network Architecture (SONATE)

25M. Rahamatullah Khondoker, University of Kaiserslautern

Service Selection

The priority assigned in requirements needs to be mapped to the offered services

Pairwise prioritization of services per effect- The mapping must be generic- The mapping should be monotonic- A linear mapping of measured values to prioritization is not

adequate- An approach for mapping is proposed to use monotonic

interpolation/extrapolation

+/- 1

9

-9

Hints Measured value

Measured value of offers

Prio

rity

Fig. Values in terms of hints

Page 26: Service Composition and Selection in Service Oriented Network Architecture (SONATE)

26M. Rahamatullah Khondoker, University of Kaiserslautern

Example: AHP in Service Selection

Offerings

Application Requirements

Page 27: Service Composition and Selection in Service Oriented Network Architecture (SONATE)

27M. Rahamatullah Khondoker, University of Kaiserslautern

Summary and Outlook

Summary- SONATE as a flexible network architecture- Service Description- Service Selection

• Analytic Hierarchy Process (AHP)

Outlook- Service Composition Challenges

Page 28: Service Composition and Selection in Service Oriented Network Architecture (SONATE)

Thanks for your attention

Any questions, comments or concerns?

Page 29: Service Composition and Selection in Service Oriented Network Architecture (SONATE)

29M. Rahamatullah Khondoker, University of Kaiserslautern

Discussion Questions?

Assuming that more than one services provide the same functionality. In that case, we need mechanisms for rating those services to select the most appropriate one.

- How to do rating of composed services?

• Which time is suitable for rating a composed service Design time, deployment time or runtime?

• Do we have enough information to aggregate properties at that time? For example, delay and security of a service

Page 30: Service Composition and Selection in Service Oriented Network Architecture (SONATE)

30M. Rahamatullah Khondoker, University of Kaiserslautern

Discussion Questions?

Assuming that a service, Reliable transmission, can be offered as a coarse-grained service or it can also be offered by following services- Error detection- Order preservation- Error control- Data flow limiting

- Which grained of service is better? Coarse-grained or fine-grained. Why?

Page 31: Service Composition and Selection in Service Oriented Network Architecture (SONATE)

31M. Rahamatullah Khondoker, University of Kaiserslautern

Discussion Questions?

Services might be dependent on each other. These dependency information can be written statically or can be obtained dynamically by analysing their semantics.

- Which way of obtaining dependency is better? Why? What properties to be in the service description so that dependency information can be obtained automatically?

Page 32: Service Composition and Selection in Service Oriented Network Architecture (SONATE)

32M. Rahamatullah Khondoker, University of Kaiserslautern

Discussion Questions?

Where to place services? End-to-end, every node, or in the middle boxes?

Page 33: Service Composition and Selection in Service Oriented Network Architecture (SONATE)

33M. Rahamatullah Khondoker, University of Kaiserslautern

Discussion Questions?

How to deal with heterogeneous services?

Page 34: Service Composition and Selection in Service Oriented Network Architecture (SONATE)

Integrated Communication Systems ICSY

University of KaiserslauternDepartment of Computer ScienceP.O. Box 3049D-67653 Kaiserslautern

M. Rahamatullah Khondoker, M.Sc.

Phone: +49 (0)631 205-26 43Fax: +49 (0)631 205-30 56

Email: [email protected]: http://www.icsy.de

Page 35: Service Composition and Selection in Service Oriented Network Architecture (SONATE)

35M. Rahamatullah Khondoker, University of Kaiserslautern

Analytic Hierarchy Process (AHP): step 1

Ref: This example is taken from the slides of Dr. S. Tom Foster, Jr. and Dr. Gerald LaCava

The Analytical Hierarchy Process by Thomas Saaty

A.Car A Car B Car C

Price 13100 11200 9500MPG 18 23 29

Interior Deluxe Above Average StandardBody 4-Door Mid-size 2-Door Sport 2-door compactRadio AM/FM, tape AM/FM AM

Engine 6-cylinder 4-cylinder turbo 4-cylinder

Page 36: Service Composition and Selection in Service Oriented Network Architecture (SONATE)

36M. Rahamatullah Khondoker, University of Kaiserslautern

Analytic Hierarchy Process (AHP): step 2

Ref: This example is taken from the slides of Dr. S. Tom Foster, Jr. and Dr. Gerald LaCava

B. Hierarchy of Decisions

Select the best car

Price MPG Comfort Style

Car ACar BCar C

Car ACar BCar C

Car ACar BCar C

Car ACar BCar C

Page 37: Service Composition and Selection in Service Oriented Network Architecture (SONATE)

37M. Rahamatullah Khondoker, University of Kaiserslautern

Analytic Hierarchy Process (AHP): step 3

Ref: This example is taken from the slides of Dr. S. Tom Foster, Jr. and Dr. Gerald LaCava

C. Establish Priorities

1. The priorities of the four criteria in terms of the overall goal.2. The priorities of the three cars in terms of the purchase-price criterion.3. The priorities of the three cars in terms of the MPG criterion.4. The priorities of the three cars in terms of the comfort criterion.5. The priorities of the three cars in terms of the style criterion.

Page 38: Service Composition and Selection in Service Oriented Network Architecture (SONATE)

38M. Rahamatullah Khondoker, University of Kaiserslautern

Analytic Hierarchy Process (AHP): step 4

Ref: This example is taken from the slides of Dr. S. Tom Foster, Jr. and Dr. Gerald LaCava

D. Pairwise Comparison Scale

Verbal Judgement of Preference Numerical RatingExtremely Preferred 9

Very strong to extremely 8Very strongly preferred 7

Strongly to very strongly 6Strongly preferred 5

Moderately to strongly 4Moderately preferred 3

Equally to moderately 2Equally preferred 1

Page 39: Service Composition and Selection in Service Oriented Network Architecture (SONATE)

39M. Rahamatullah Khondoker, University of Kaiserslautern

Analytic Hierarchy Process (AHP): step 5

Ref: This example is taken from the slides of Dr. S. Tom Foster, Jr. and Dr. Gerald LaCava

E. Pairwise comparison matrix showing preferences for the three cars in terms of comfort

Comfort Car A Car B Car CCar A 1 2 8Car B 0,5 1 6Car C 0,125 0,166666667 1

Page 40: Service Composition and Selection in Service Oriented Network Architecture (SONATE)

40M. Rahamatullah Khondoker, University of Kaiserslautern

Analytic Hierarchy Process (AHP): step 6

Ref: This example is taken from the slides of Dr. S. Tom Foster, Jr. and Dr. Gerald LaCava

F. Synthesizing JudgmentsComfort Car A Car B Car CCar A 1 2 8Car B 0,5 1 6 Sum the columns in the pairwise comparison matrix.Car C 0,125 0,166666667 1

1,625 3,166666667 15

Comfort Car A Car B Car CCar A 0,615384615 0,631578947 0,533333Car B 0,307692308 0,315789474 0,4 Divide elements by the column totals.Car C 0,076923077 0,052631579 0,066667

1 1 1

Priority Vector for ComfortComfort Car A Car B Car CCar A 0,615384615 0,631578947 0,533333 0,593432Car B 0,307692308 0,315789474 0,4 0,341161 Sum the rows.Car C 0,076923077 0,052631579 0,066667 0,065407

Car A 0,593Car B 0,341 The priority vector for the cars with respect to comfort.Car C 0,065

Page 41: Service Composition and Selection in Service Oriented Network Architecture (SONATE)

41M. Rahamatullah Khondoker, University of Kaiserslautern

Analytic Hierarchy Process (AHP): step 7

Ref: This example is taken from the slides of Dr. S. Tom Foster, Jr. and Dr. Gerald LaCava

G. Other Pairwise ComparisonsPrice Car A Car B Car C Priority VectorsCar A 1 0,33333333 0,25 0,123Car B 3 1 0,5 0,32Car C 4 2 1 0,557

MPG Car A Car B Car CCar A 1 0,25 0,166667 0,087Car B 4 1 0,333333 0,274Car C 6 3 1 0,639

Style Car A Car B Car CCar A 1 0,33333333 4 0,265Car B 3 1 7 0,655Car C 0,25 0,142857143 1 0,08

Page 42: Service Composition and Selection in Service Oriented Network Architecture (SONATE)

42M. Rahamatullah Khondoker, University of Kaiserslautern

Analytic Hierarchy Process (AHP): step 8

Ref: This example is taken from the slides of Dr. S. Tom Foster, Jr. and Dr. Gerald LaCava

H. Pairwise comparison matrix for the four criteria in the car selection problem.Criterion Price MPG Comfort StylePrice 1 3 2 2MPG 0,333333333 1 0,25 0,25Comfort 0,5 4 1 0,5Style 0,5 4 2 1

I. Priorities for the overall goal.Price 0,398MPG 0,085Comfort 0,218Style 0,299

Page 43: Service Composition and Selection in Service Oriented Network Architecture (SONATE)

43M. Rahamatullah Khondoker, University of Kaiserslautern

Analytic Hierarchy Process (AHP): step 9

Ref: This example is taken from the slides of Dr. S. Tom Foster, Jr. and Dr. Gerald LaCava

J. Developing an overall priority ranking.Criterion Price MPG Comfort Style

Car A 0,123 0,087 0,593 0,265 Alternative Car B 0,32 0,274 0,341 0,655

Car C 0,557 0,639 0,065 0,08

Overall car A priority = .398(0.123)+0.085(0.087)+).218(0.593)+0.299(0.265)=.265Overall car B priority = .398(0.320)+0.085(0.274)+).218(0.341)+0.299(0.655)=.421Overall car C priority = .398(0.557)+0.085(0.639)+).218(0.066)+0.299(0.080)=.314

Page 44: Service Composition and Selection in Service Oriented Network Architecture (SONATE)

44M. Rahamatullah Khondoker, University of Kaiserslautern

Analytic Hierarchy Process (AHP): step 10

Ref: This example is taken from the slides of Dr. S. Tom Foster, Jr. and Dr. Gerald LaCava

K. Final AHP Ranking of Alternatives

Car B 0,421Car C 0,314Car A 0,265

1

Dr. LaCava's Mid-life Crisis Maserati!