qos-aware service composition

24
QoS QoS - - Aware Service Composition Aware Service Composition Klara Klara Nahrstedt Nahrstedt Joined work with Joined work with Xiaohui Gu Xiaohui Gu and and Jingwen Jingwen Jin Jin klara, klara, xgu xgu ,jjin1@ ,jjin1@ cs cs . . uiuc uiuc . . edu edu University of Illinois at Urbana University of Illinois at Urbana - - Champaign Champaign

Upload: khangminh22

Post on 21-Feb-2023

1 views

Category:

Documents


0 download

TRANSCRIPT

QoSQoS--Aware Service CompositionAware Service Composition

Klara Klara NahrstedtNahrstedtJoined work with Joined work with Xiaohui Gu Xiaohui Gu and and Jingwen Jingwen JinJin

klara,klara,xguxgu,jjin1@,[email protected] of Illinois at UrbanaUniversity of Illinois at Urbana--ChampaignChampaign

Research Context: Ubiquitous Research Context: Ubiquitous ComputingComputing

Research Context: Research Context: PeerPeer--toto--Peer Computing GridsPeer Computing Grids

InternetInternetpeerpeer

peerpeer

peerpeer

peerpeer

peerpeer

peerpeer

Peer to peer (P2P) computing grids consist of many peer nodes that communicate directly among themselves through Internet and can act as both clients and servers. They are distributed systems without any centralized infrastructure or hierarchical organization.

Why Dynamic Why Dynamic QoSQoS--aware Service aware Service Composition and DistributionComposition and Distribution ??

• Flexible Service composition • compose a QoS-aware distributed application using service components, discovered in the current environment and possibly provided by different service providers

• accommodate runtime changes and heterogamous clients

• Resource-informed service distribution • overcome resource limitations of mobile devices

• provide load balancing, selection of service proxies

• maintain quality levels in case of runtime changes (e.g., old devices crash or new devices are added)

Presentation OutlinePresentation Outline

• Existing Approaches

• QoS-aware Composable Service Model

• Dynamic QoS-aware Service Composition

• Resource-based Service Distribution and Service Routing

• Experimental results

• Conclusions

Existing Approaches Existing Approaches • Service composition

• PATHS (Stanford): linear service path, media type mediations

• SAHARA(Berkeley): robust, fault-tolerant service composition

• 2KQ (UIUC): Representing a distributed application using multiple pre-defined service paths

• Service distribution

• Load balancing among peer servers

• Coign: automatically distribute binary application at setup time.

• AOS: partition application at finer granularity, e.g., Java Class

• None of them addressed both aspects in a coordinated, unified framework.

•Other relevant research in P2P Systems (Gnutella, Napster, CAN, Cord), Web server selection, etc.

Dynamic, Dynamic, QoSQoS--Aware Service Aware Service Composition Composition

for Ubiquitous Environmentfor Ubiquitous Environment• An integrated framework to address BOTH aspects

• Service composition tier: choose and compose current available service components and coordinate arbitrary interactions between them;

• Service distribution tier: distribute service components to different available devices

s1

s2

s3

s4

s5

s6

s1 s3 s2 s4 s5 s6

QoSQoS--aware Service Composition aware Service Composition for P2P for P2P App1: S1 -> S2;

App2: S3 -> S2;

App3: S7 -> S6 -> S5 -> S4;

A

B2

B1

B3

C1

D1

S1

S2

S3

S7

S6

S5

S4

Exploit P2P Redundancy- each service can have multiple instances with different QoS- each service instance can be located on multiple peers

QoSQoS--aware aware ComposableComposable Service ModelService Model

s1

s2

s3

s4

s5

s6

Service Graph (DAG): nodes represent service components and arcs represent data flows

s4 s5Qin Qout Qin

R = ff(Qin, Qout)

bi,j

Qin = [q1in, q2

in, …, qnin], Qout = [q1

out, q2out, …, qn

out], R = [r1, r2,…, rm];

DEFINITION: QoS Consistency relation called satisfy “ “:

Service Composition TierService Composition TierAcquire the Abstract Service Graph and Translate User’s Request (e.g., QoS Compiler).

Discover service instances (e.g., Chord, CAN).

Check QoS consistencies, coordinate ad-hoc interactions, and compose

QoS consistent path.

Generate the QoS consistent service graph and deliver it to the service distribution tier.

1. Failed discovery of service instances;

Solution: recursively apply the service composition algorithm2. Fast and efficient QoS consistency check;

Solution: Ordered Coordination algorithm3. Automatic correction of inconsistent interactions.

Solution: Ordered Coordination algorithm

4. Selection among multiple QoS paths

Solution: Shortest path

Ordered Coordination AlgorithmOrdered Coordination Algorithm5

1

2

3

4 6

7

8

93 7

4

1

5

9

2

8 6

3 7

4

1

5

9

2

8 6

3 7

4

1

5

9

2

8 6

(a) the Original Service Graph (b) the Topological Sorting of the Original Service Graph

(c) Check QoS Consistency in the Reverse Orderof its Topological Sorting (d) Automatic Corrections on QoS Inconsistencies

QinQoutsatisfy2 7

Qin

Qou

t satisfy

8

7transcoder

adjust Qout2

checking order7 current examined node

checking order7 current examined node

automaic corrections

QoSQoS Consistent Shortest Service PathConsistent Shortest Service Path

0

1

2

3

4

5

6

7

8

9

1 01 1

1 2

s in ks e r v ic e

s e r v i c e 2s e r v ic e 3

s o u r c e s e r v ic e

s in ks e r v ic e

( a ) S e r v ic e in s t a n c e s f o ra l l r e q u i r e d s e r v ic e s

( b ) A d d e d g e s b e t w e e n t w o Q o S -c o n s is t e n t s e r v ic e in s t a n c e s

S e r v ic e a g g r e g a t io nd i r e c t io n

S e r v ic e a g g r e g a t io nd i r e c t io n

0

1

2

3

4

5

6

7

8

9

1 01 1

1 2s e r v i c e 2s e r v ic e 3

s o u r c e s e r v ic e

( R 1 , b 1 , 0 )

( R 4 , b 4 , 0 )

( R 5 , b 5 , 1 )

( R 2 , b 2 , 0 )

0

1

2

3

4

5

6

7

8

9

1 01 1

1 2

s in ks e r v i c e

s e r v i c e 2s e r v i c e 3

s o u r c e s e r v i c e

( c ) F in d t h e s h o r t e s t s e r v i c e p a t h

S e r v i c e a g g r e g a t i o nd i r e c t i o n

0 2 7 1 1

Q o S - c o n s i s t e n t ,r e s o u r c e - s h o r t e s t

s e r i v c e p a t h

Service Distribution TierService Distribution Tier

Service Distribution For UbiquitousEnvironment – K-cut

Service Distribution For P2P – DistributedPeer Selection

Service Distribution For P2P – ServiceMulticast

Mapping from Abstract Composition to Physical Infrastructure

Service Distribution TierService Distribution Tier3 7

4

1

5

9

2

8 6fit into

RA1

RA2

RA3

b1,2b2,3

b1,3

Optimal Service Distribution(OSD) problem is defined as finding the k-cut ( k represents the number of available devices) that makes the service graph fit into k devices and also minimizes the cost aggregation.

The cost aggregation is defined as the weighted sum of the ratios between the resource requirements and the resource availabilities.

Service Distribution TierService Distribution Tier• However, the Optimal Service Distribution problem is NP-hard…

• Polynomial heuristic algorithm for the OSD problem

Insert those special service components into proper devices;

While there exists uninserted service components Do

sort the available devices in decreasing order of resource availability;

pick the head of the device list , device D;

if D contains a node A

then insert A’s largest neighbor into D and merge it with A;

else insert the service component which has the largest resourcerequirements into A;

Dynamic Peer Selection TierDynamic Peer Selection Tier• Distributed and hop-by-hop peer selection

Generated distributedapplication delivery by mappingthe selected service instances

onto proper peer nodes

0 1 5 9

Serviceinstance

Serviceaggregation

flowPeer Selected

peer

Peer groupproviding the sameservice instance

2 7 11 (b)0 2 7 11 0 2 7 110 0 2 7 11

0 2 7 110

4

56

7

12

3

8910

? 0

4

5

6

7

12

3

8910

? 045

6

7

12

3

8910

(a) (c) (d)

0

4

5

6

7

12

3

8910

?User User User User

(b)

Dynamic Peer Selection TierDynamic Peer Selection Tier•An integrated and configurable metric to select a peer by comprehensively considering

• candidate peer’s uptime >= app’s duration

• candidate peer’s resources >= service instance’s requirements

• if multiple peers qualify, choose the peer with the most abundant resources

• the importance of different resource types can be configured according to the app’s semantics or user preference.

• Dynamic neighbor resolution• neighbor list at each peer is maintained as soft states

• depend on results of the service composer

Performance EvaluationPerformance Evaluation• Using both prototype implementation and simulations

• Experimental results for ubiquitous environments show that our service configuration model achieves the following advantages:

• flexibly accommodate common runtime changes;

• handle complex service graph, not just service path;

• the overhead of dynamic service configuration is small;

• the heuristic service distribution algorithm is efficient compared to the NP-hard optimal solution;

• the heuristic service distribution algorithm achieves best user request success rate by aggregating resources efficiently.

Experimental Results Experimental Results

25fps, 25fps, 6fps6fps

Start Start video conferencingvideo conferencingon the workstations. on the workstations. User User QoSQoS request: request:

video(25fps), audio(6fps)video(25fps), audio(6fps)44

40fps40fpsSwitch back from PDA to Switch back from PDA to another desktop3 another desktop3 33

40fps40fpsSwitch from desktop to Switch from desktop to PDA with a wireless link. PDA with a wireless link. Music continues from the Music continues from the

interruption point.interruption point.22

40fps40fpsStart “Start “mobile audiomobile audio--onon--

demand”demand” on the desktop1. on the desktop1. User User QoS QoS request: CD request: CD

quality music quality music 11

Measured Measured QoSQoSService Configuration ResultsService Configuration ResultsEvent ContentEvent ContentEvent LabelEvent Label

Desktop 1Audio Player

Desktop 2Audio Server

video recorder

Work Station 1

audio recorder

gatewayWorkStation 2

WorkStation3

lipsyncAudio player

video player

Audio Server

MPEG2wavTranscoder

Audio Player

Desktop 1 Desktop 2 Jornada

Desktop 1Audio Player

Desktop 3Audio Server

Experimental Results Experimental Results

0

400

800

1200

1600

2000

1 2 3 4event label

Dis

crim

inat

ed D

ynam

ic

Ser

vice

Con

figur

atio

n O

verh

ead

(ms)

service composition service distributiondynamic downloading initialization or state handoff

Evaluation Methodology for P2PEvaluation Methodology for P2P

• simulate a large-scale P2P system with 10000 peers.

• system parameters such as network bandwidth between peers are randomly set

• the QoS-aware service composition (QSA) algorithms are locally executed on each peer

• probing overhead is controlled within 1%

• evaluation metric: service composition success ratio

• random and fixed (client-server) algorithms as comparison

• shown experiment: without topological variation of P2P systems (further experiments in papers)

Results and Analysis Results and Analysis

Average service composition success ratio under different service composition request rates without topological variation.

ConclusionsConclusions

• Identifying two key problems: “service composition”and “service distribution”• Introducing an integrated model to solve the above problems in a unified framework

• Providing flexible service composition solution with QoS consistency check

• Defining the optimal service distribution problem which is shown to be NP-Hard in different environments and then providing polynomial approximation algorithm

AcknowledgementsAcknowledgements

• This research is supported by the NASA grant and National Science Foundation (NSF) grant.

• Questions and Discussions …