Quality of Service Models for Web Services Eric Montrym 2/18/05.

35
Quality of Service Models for Web Services Eric Montrym 2/18/05

description

Web Services Self-contained, self-describing applications –Enable developers to build applications that provide services to other applications across the Web Examples –Simple: stock quotes, weather forecasts –Complex: business processes Can couple multiple services to build more complex ones

Transcript of Quality of Service Models for Web Services Eric Montrym 2/18/05.

Page 1: Quality of Service Models for Web Services Eric Montrym 2/18/05.

Quality of Service Models for Web Services

Eric Montrym2/18/05

Page 2: Quality of Service Models for Web Services Eric Montrym 2/18/05.

Agenda

• Web services• Baseline Web service model• Quality of Service model• Expanded Quality of Service model

Page 3: Quality of Service Models for Web Services Eric Montrym 2/18/05.

Web Services

• Self-contained, self-describing applications– Enable developers to build applications that provide

services to other applications across the Web• Examples

– Simple: stock quotes, weather forecasts– Complex: business processes

• Can couple multiple services to build more complex ones

Page 4: Quality of Service Models for Web Services Eric Montrym 2/18/05.

Web Services

• XML• Industry standard, platform independent

syntax for describing and structuring data• Messages are self-describing

– Contain data– Also contain the definition of that data

(metadata)

Page 5: Quality of Service Models for Web Services Eric Montrym 2/18/05.

Web Services

• Goal: Allow any authorized user to access any available service

• Standardized on 3 sets of functions– Standard transport and message protocols

• Allow communications between Web services and service requesters

• Use HTTP, requests look like ordinary Web traffic

Page 6: Quality of Service Models for Web Services Eric Montrym 2/18/05.

Web Services

– Directory services– Standard service-description language

• Use XML for messages between requestors and providers

• XML not only describes application data but also the SOAP (Simple Object Access Protocol) message envelopes that carry data between requestors and services

Page 7: Quality of Service Models for Web Services Eric Montrym 2/18/05.

Web Services• SOAP requestPOST /InStock HTTP/1.1 Host: www.stock.org Content-Type: application/soap+xml; charset=utf-8 Content-Length: nnn <?xml version="1.0"?> <soap:Envelope xmlns:soap="http://www.w3.org/2001/12/soap-envelope" soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding"> <soap:Body xmlns:m="http://www.stock.org/stock"> <m:GetStockPrice> <m:StockName>IBM</m:StockName> </m:GetStockPrice> </soap:Body> </soap:Envelope>

Page 8: Quality of Service Models for Web Services Eric Montrym 2/18/05.

Web Services• SOAP responseHTTP/1.1 200 OK Content-Type: application/soap; charset=utf-8 Content-Length: nnn <?xml version="1.0"?> <soap:Envelope xmlns:soap="http://www.w3.org/2001/12/soap-envelope" soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding"> <soap:Body xmlns:m="http://www.stock.org/stock"> <m:GetStockPriceResponse> <m:Price>34.5</m:Price> </m:GetStockPriceResponse> </soap:Body> </soap:Envelope>

Page 9: Quality of Service Models for Web Services Eric Montrym 2/18/05.

Web Services

• Follows the Distributed Computing model– Applications deployed as services that anyone

can use– Using components from different sources has

drawbacks• Reliability, confidentiality, quality

Web Services deal with these same disadvantages

Page 10: Quality of Service Models for Web Services Eric Montrym 2/18/05.

Web Services

• Original Web model– Human access to server based content– Current majority of transactions

• Web services– Automated program-to-program

communication– ‘Future of the Web’

Page 11: Quality of Service Models for Web Services Eric Montrym 2/18/05.

Web Services

• Becoming increasingly popular• New opportunities for:

– Increased revenue– Better/tighter relationships with customers &

business partners• E-business

– Platform interoperability– Component re-use

Page 12: Quality of Service Models for Web Services Eric Montrym 2/18/05.

Web Services

• Web Services are fairly common – though adoption has been slow

• Why?– Lack of security and transaction support– But, there are emerging standards in those areas

• What about service usability and utility?

Page 13: Quality of Service Models for Web Services Eric Montrym 2/18/05.

Quality of Service

• Refers to the non-functional aspects of a Web service– Example: performance, reliability, availability

• How do we define Quality of Service (QoS)?– Example: transaction time, price– What task is at hand?

• If multiple services, how do we choose?

Page 14: Quality of Service Models for Web Services Eric Montrym 2/18/05.

Agenda

• Web services• Baseline Web service model• Quality of Service model• Expanded Quality of Service model

Page 15: Quality of Service Models for Web Services Eric Montrym 2/18/05.

Baseline Web Service Model

• Service provider– application

• Service requestor– user/application

• Service registry– database

Service registry

Service providerService requestor

Service description

Service

Service descriptions

Find

Bind

Publish

Page 16: Quality of Service Models for Web Services Eric Montrym 2/18/05.

Agenda

• Web services• Baseline Web service model• Quality of Service model• Expanded Quality of Service model

Page 17: Quality of Service Models for Web Services Eric Montrym 2/18/05.

Quality of Service Model

• Businesses need assurances– How do I know that the service will meet my

performance (speed) requirement?– Will the service be reliable for my mission-

critical systems implementation?• Foreseeable that multiple services may

provide the needed service with different QoS – discovery process

Page 18: Quality of Service Models for Web Services Eric Montrym 2/18/05.

Quality of Service Model

Service registry

Service providerService requestor

Service description

Service

Service descriptions

Find

Bind

Publish

QoS certifier

Certify QoSVerify QoS

Page 19: Quality of Service Models for Web Services Eric Montrym 2/18/05.

Quality of Service Model

• Certifier– Third-party (independent)– Verifies quality claims of suppliers

• Simple yes/no quality measurement• Shortcomings

– Do certificates expire?– Update method

Page 20: Quality of Service Models for Web Services Eric Montrym 2/18/05.

Agenda

• Web services• Baseline Web service model• Quality of Service model• Expanded Quality of Service model

Page 21: Quality of Service Models for Web Services Eric Montrym 2/18/05.

Expanded Quality of Service Model

• Weaknesses in previous model to address– Not dynamic

• Needs of providers/consumers constantly changing• Providers can’t update their QoS dynamically

– How to verify the QoS with service provider• Has anything changed since certificate issued• Can we verify QoS again

– We can do better than yes/no measurement

Page 22: Quality of Service Models for Web Services Eric Montrym 2/18/05.

Expanded Quality of Service Model

QoS registry

Service providerService requestor

Service description

Service

Service descriptions

Find

Bind

Publish

Service Registry

QoS calculation

QoS feedback

Page 23: Quality of Service Models for Web Services Eric Montrym 2/18/05.

Expanded Quality of Service Model

• QoS computation• Example

Result from QoS registry• Using 3 QoS parameters, returns 3 services

15.3.270.30.0.185.25.2.190.

3,32,31,3

3,22,21,2

3,12,11,1

qqqqqqqqq

Q

Avail. RTT Cost

Page 24: Quality of Service Models for Web Services Eric Montrym 2/18/05.

Expanded Quality of Service Model

• Normalize using 2 arrays– N, where 1 benefits requestor if value increases

and 0 if value decreases– C, maximum normalized value

001321 nnnN

555321 cccC

Page 25: Quality of Service Models for Web Services Eric Montrym 2/18/05.

Expanded Quality of Service Model

• Create first normalization using the following– Vi,j = qi,j / average (qi’s)

• If average qi,j != 0 and average qi,j < cj and nj = 1

– Vi,j = average (qi’s) / qi,j

• If qi,j != 0 and nj = 0 and average qi,j < cj

– Vi,j = cj

Page 26: Quality of Service Models for Web Services Eric Montrym 2/18/05.

Expanded Quality of Service Model

• Our normalized array

67.465.85.33.250.104.18.225.110.1

3,32,31,3

3,22,21,2

3,12,11,1

vvvvvvvvv

Q

Avail. RTT Cost

Page 27: Quality of Service Models for Web Services Eric Montrym 2/18/05.

Expanded Quality of Service Model

• Second normalization– Begin by grouping data (chosen for simplicity)

– Apply this new array to first normalization

100010001

D

53.165.85.77.50.104.192.25.110.1

100010001

53.165.85.77.50.104.192.25.110.1

DQG

Avail. Time CostAvail.RTTCost

Page 28: Quality of Service Models for Web Services Eric Montrym 2/18/05.

Expanded Quality of Service Model

• Second normalization also uses 2 arrays– T, maximum normalized value– F, weight for each category

555321 tttT

123321 fffF

Page 29: Quality of Service Models for Web Services Eric Montrym 2/18/05.

Expanded Quality of Service Model

• Second normalization uses the following– hi,j = gi,j / average (gi’s)

• If average gi,j != 0 and average gi,j < tj

– hi,j = tj

• If average gi,j = 0 or average gi,j >= tj

Page 30: Quality of Service Models for Web Services Eric Montrym 2/18/05.

Expanded Quality of Service Model

• Results in final matrix

• QoS then calculated for each service

43.158.86.72.33.105.186.11.111.1

3,32,31,3

3,22,21,2

3,12,11,1

hhhhhhhhh

G

l

jjjii fhsQoS

1,)(

24.9)( 1 sQoS 20.6)( 2 sQoS 03.3)( 3 sQoS

Page 31: Quality of Service Models for Web Services Eric Montrym 2/18/05.

Expanded Quality of Service Model

• QoS registry – collecting info– User feedback

• End users required to update QoS for services consumed

– Measured results– Satisfaction survey

• Results should be fair since based on runtime data– Manipulation prevented by using a set of keys

Page 32: Quality of Service Models for Web Services Eric Montrym 2/18/05.

Expanded Quality of Service Model

• Improvements– Matrix calculation method allows for variation

• Number of quality parameters can be adjusted• Relative weights

– QoS updates happening with every service consumed

• QoS ratings are changeable• Providers can see their scores as well as the

competition

Page 33: Quality of Service Models for Web Services Eric Montrym 2/18/05.

Conclusion

• Web services– What are they

• Baseline model– No QoS criteria

• Simple QoS model– Yes/No

• Expanded QoS model– Numerical representation

Page 34: Quality of Service Models for Web Services Eric Montrym 2/18/05.

Expanded Quality of Service Model

n

iji

jiji

qn

qv

1,

,, 1

if 011

,

n

ijiqn

and jn

iji

ji cq

n

q

1

,

,

1

and 1jn

jji cv , if 011

,

n

ijiqn

and 1jn

or jn

iji

ji cq

n

q

1

,

,

1

ji

n

iji

ji q

qn

v,

1,

,

1

if 0, jiq

and 0jn

and jji

n

iji

cq

qn

,

1,

1

jji cv , if 0, jiq

and 0jn

or jji

n

iji

cq

qn

,

1,

1

where

n

ijiqn 1

,1 is the average value

Page 35: Quality of Service Models for Web Services Eric Montrym 2/18/05.

Expanded Quality of Service Model

01

1,

,,

n

iji

jiji

gn

gh if

n

ijign 1

, 01

and jn

iji

ji tg

n

g

1

,

,

1

jji th , if 011

,

n

ijign

or jn

iji

ji tg

n

g

1

,

,

1