Download presentation
Presentation is loading. Please wait.
Published byMartha Copeland Modified over 9 years ago
1
Efficient Provisioning of Service Level Agreements for Service Oriented Applications Valeria Cardellini, Emiliano Casalicchio, Vincenzo Grassi, Francesco Lo Presti Università di Roma “Tor Vergata”, Italy IW-SOSWE 2007
2
2 The SOA environment Applications built by composing services services offered by loosely coupled providers “recursion”: a composition of services can be offered as a service Competing services same functionality, but different QoS and/or cost by the same provider or by different providers Service Level Agreement (SLA) a contractual framework for the requester and provider obligations, to deliver a service at a given QoS and cost level SLA management : key issue in a SOA environment
3
IW-SOSWE 2007 3 SLA management SLA life-cycle creation deployment & provisioning enforcement & monitoring termination SLA provisioning (from the viewpoint of a composite service provider) service selection –which services? (among a set of functionally equivalent candidates) service provisioning –how much load (at most) to each candidate service?
4
IW-SOSWE 2007 4 Service selection which services? (among a set of functionally equivalent candidates) Service Requestors Service Providers Composite Service
5
IW-SOSWE 2007 5 Service provisioning How much load (at most) to each candidate service? Service Requestors Service Providers Composite Service
6
IW-SOSWE 2007 6 A conceptual model for service selection (1) 1 23 4 (V 1 1, V 2 1 ) (V 1 3, V 2 3 ) (V 1 2, V 2 2 ) (V 1 4, V 2 4 ) A flow graph for 2 service classes (m=2) A probabilistic flow graph a model of the composite service workflow Graph macro-node: an abstract service Usage profile : average number of invocations for each abstract service i: (V 1 i … V m i )
7
IW-SOSWE 2007 7 A conceptual model for service selection (2) Candidate concrete services represented inside each flow graph macro-node 4.1 4.2 1.1 1.2 1.33.13.22.1 2.2 2.3 1 3 2 4 (V 1 1, V 2 1 ) (V 1 2, V 2 2 ) (V 1 3, V 2 3 ) (V 1 4, V 2 4 )
8
IW-SOSWE 2007 8 (V 1 1, V 2 1 ) A conceptual model for service selection (3) “control variables” x u ij used to model the service selection x u ij refers to the selection of the concrete service i.j (which implements the abstract service i), for service class u x u ij {0, 1} 4.1 4.2 1.1 1.2 1.33.13.22.1 2.2 2.3 1 3 2 4 1.1 1.2 1.3 (x 1 11, x 2 11 )(x 1 13, x 2 13 ) (x 1 12, x 2 12 ) 1 (V 1 2, V 2 2 ) (V 1 3, V 2 3 ) (V 1 4, V 2 4 )
9
IW-SOSWE 2007 9 Existing approaches for service selection selection made for a single request, according to one or more QoS attribute x u ij = 0 (service i.j not selected) or x u ij = 1 (service i.j selected) pros very high flexibility –each request managed on an individual basis (per request customized QoS and cost) quite strict QoS guarantees –concerning each single request cons computational cost –NP-hard problem, heuristics for approximate solution –problems in case of a high rate of requests risk of instability problems for service provisioning planning
10
IW-SOSWE 2007 10 Our approach selection made considering all requests in a temporal window (SLA duration) statistical guarantee for the average overall QoS in the window 0 ≤ x u ij ≤ 1 : probability that service i.j is selected more than one concrete service can be selected for the abstract service i pros reduced computational cost –linear programming problem –solution calculated “once” for the entire SLA duration facilitates service provisioning planning –wider temporal horizon cons less flexibility –same QoS/cost for all requests coming from a requester (but we can manage customized SLAs for different requesters) looser guarantee –average over all the temporal window
11
IW-SOSWE 2007 11 An SLA model (for a composite service) SLA template : SLO : upper bounds on the avg. response time and cost, lower bound on the avg. availability –other QoS parameters could be addded load: upper bound on the rate of requests sent by the client duration: validity period of the contract for both the : provider role (towards the prospective clients) requester role (towards the candidate component services) slotted time model SLA duration SLA obligations to be fulfilled within each slot
12
IW-SOSWE 2007 12 General optimization problem an optimization problem for each time slot covered by at least one SLA minimize (or maximize) a global utility function (QoS/cost goals) involving all the SLAs covering that time slot takes into account constraints that limit the set of feasible solutions SLA for requester a SLA for requester b SLA for requester c Constrained multi- criteria optimization problem QoS constraints Functional constraints T : overall time period covered by SLAs
13
IW-SOSWE 2007 13 Notation T: overall time period covered by SLAs t T : a time slot I i,t : set of candidate concrete services (implementing i) available at t U t : set of composite service requesters at time slot t [r i j, c i j, a i j, L i j, D i j ] : SLA of the composite service provider with the provider of concrete service i.j I i,t –r i j : upper bound on the average response time –c i j : upper bound on the average cost –a i j : lower bound on the average availability –L i j : upper bound on the average request rate to i.j –D i j : SLA duration [r u, c u, a u, u, D u ] : SLA of the requester u U t with the composite service provider x u i,j,t : fraction of requests for i generated by u U t at t T, addressed to i.j I i,t (service selection) b i,j,t : rate of requests addressed by the composite service to i.j I i,t, at t T (service provisioning) SLA between the composite service (requester role) and a constituent concrete service SLA between the composite service (provider role) and a requester constraints control
14
IW-SOSWE 2007 14 QoS attributes (1) Average number of requests to the concrete service i.j I i,t, generated by a request of the requester u U t : Average response time (upper bound) for a request of u U t : holds in case of no fork-join patterns (e.g. BPEL flow construct) –see Cardellini, Casalicchio, Grassi, Lo Presti (ICWS 2007) for a more general expression Average cost (upper bound) for a request of u U t : Analogous expression for the average availability (lower bound) using the logarithm of availability to make it additive
15
IW-SOSWE 2007 15 QoS attributes (2) Overall response time (C(x)), cost (R(x)), availability (A(x)) : availability expression holds for the logarithm of availability
16
IW-SOSWE 2007 16 Instance of the optimization problem maximize the objective function (weighted sum of the normalized QoS attributes) : subject to constraints: SLA constraints (provider role) SLA constraints (requester role) functional constraints
17
IW-SOSWE 2007 17 SLA provisioning process Optimization problem solved : each time a new requester arrives –SLA admission control each time a significant change is detected –concrete service, usage profile, QoS values, usage profile … Once a solution has been calculated use the x u i,j,t values to select randomly one concrete service for each abstract service needed to fulfill a request from requester u
18
IW-SOSWE 2007 18 Example Travel Planner composite service Set of abstract services = {1, 2, 3, 4, 5, 6} –(see paper for the usage profiles) 1 2 3 4 5 6
19
IW-SOSWE 2007 19 Example SLAs (1) Travel Planner requester role 2 candidate concrete services for each abstract service, except service 2 (Hotel booking), which has 4 candidate concrete services SLAs with these services –Load : L ij = 10 for each i.j –Duration : “infinite”, except for providers of service 2 SLO : Serv.c ij r ij a ij Serv.c ij r ij a ij 1.1620.9993.2130.99 1.2340.994.10.5 0.999 2.1420.9994.20.310.99 2.2240.995.1120.999 2.34.510.995.20.72.20.99 2.4150.956.10.51.80.999 3.1210.9996.20.220.99
20
IW-SOSWE 2007 20 Example SLAs (2) Travel Planner provider role 3 requesters for the Travel Planner service (+ an additional one, arriving later) SLAs with these requesters –Load : 1 = 3, 2 = 2, 3 = 6, ( 4 = 2) –Duration : SLO : RequesterC max R max A min 120120.95 215 0.95 312200.9 412150.9
21
IW-SOSWE 2007 21 Results (1) Focus on the provisioning strategy for service 2 (Hotel Booking) First scenario: minimizing the average cost (w c = 1)
22
IW-SOSWE 2007 22 Results (2) Focus on the provisioning strategy for service 2 (Hotel Booking) Second scenario: minimizing the average response time (w r = 1)
23
IW-SOSWE 2007 23 Results (3) QoS and cost metrics for requester 3 the only requester with a SLA duration spanning the entire interval 1..10
24
IW-SOSWE 2007 24 Conclusions and future work A flexible and efficient approach for SLA provisioning flexible: customized QoS/cost for each requester efficient: solution calculated by liner programming techniques Future work SLAs with stricter statistical guarantees Service sharing among different applications
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.