qos-aware service composition
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: 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