• 沒有找到結果。

以降低成本為目標同時考量執行時間變動及服務品質條件之複合式雲端服務組成模組選擇問題之研究

N/A
N/A
Protected

Academic year: 2021

Share "以降低成本為目標同時考量執行時間變動及服務品質條件之複合式雲端服務組成模組選擇問題之研究"

Copied!
49
0
0

加載中.... (立即查看全文)

全文

(1)

國立臺中教育大學資訊工程學系碩士論文

以降低成本為目標同時考量執行時間變動

及服務品質條件之複合式雲端服務組成

模組選擇問題之研究

QoS-driven Service Selection Methods for Cost

Minimization of Composite Cloud Services

under Stochastic Runtime Performance

指導教授:黃國展 博士

研究生:蔡沐容 撰

(2)

誌 謝

很開心研究所兩年,又繼續在國立台中教育大學資訊工程系就讀。兩年來學習到很 多大學沒有實際接觸的領域,也完成了真不敢相信自己可以真的寫完它的碩士論文。從 一開始的茫然到定題目,接著逐步完成實驗,到最後的論文初稿、口試、定稿,都在許 多人的幫忙下完成,真的非常感謝一路幫忙我的人們。首先要感謝的當然是我的指導老 師黃國展博士,老師不只在論文上幫助我良多,也在平常的生活瑣事和人生健康等等給 予我們很多的建議和教誨。還要感謝每位口試委員給予的重要建議,讓我的這本碩士論 文更加的完整。除此之外,也要感謝系統實驗室的諸位夥伴,謝謝和展、博仁、英麟、 則齊、柏均學長以及迪萱學姊在計畫和論文方面給我的許多幫助,謝謝俊豪、信吉學弟 以及曉青學妹給我的許多幫忙讓我順利完成論文實驗。感謝冠嵐、謝瑋、阿紳、大祐、、、 等等從大學部畢業後又繼續念研究所,一起努力到現在的好同學們。謝謝資工系的系統、 軟工、網路、資安,四個實驗室的所有同學、學長姊、學弟妹以及老師們,感謝你們讓 我這兩年過得既充實又快樂。特別感謝爸爸和媽媽讓我後顧無憂的完成碩士學位,謝謝 兩位可愛的妹妹雨憙和貴紅很辛苦地幫我輸入文獻的電子檔資料。謝謝秋逢不厭其煩地 幫我整理實驗數據表格,一起陪我整理參考文獻。最後謝謝 ACRT、心好、胖丁、蕾蕾、 蝸牛、一哥、雪山教官老師、、、等等,每一位我深愛一路上支持我又鼓勵我的老師、 家人、同學、好朋友們。沒有你們我獨自一人是無法完成這本碩士論文的,感謝你們!

(3)

摘 要

近年來,雲端計算已經成為最有前景的下一代計算平台。以軟體即服務(Saas)和服 務導向架構(SOA)為基礎的複合式雲端服務,正在改變我們開發和使用軟體的方式,並 預期將為軟體開發者及使用者帶來極大的便利和效益。雲端服務提供者在組合一個複合 式雲端服務時,必須面臨服務選擇的問題。服務選擇可看成是一個限制條件下的最佳化 問題,目的是要在盡量符合服務層級協議(SLA)的前提下,達到降低成本的目標。這樣 的一個服務選擇問題若考量實際雲端環境中服務的執行效能等服務品質指標之可能的 動態變化,將變得更難處理。本篇論文提出了兩個不同的方法來解決上述之動態雲端環 境下的服務選擇問題。第一個方法以循環的方式,反覆執行三個步驟: 以整數線性規劃 為基礎之最佳化求解、模擬動態雲端環境的影響、服務選擇調整,直到挑選出最佳服務 組合為止。第二個方法則利用了統計學上的 Chebyshev 定理並搭配了非線性規劃求解來 處理服務選擇的問題。這個方法將服務執行效能的動態變化因素直接納進非線性規劃目 標函數的考量當中,因此使用單一步驟就可處理服務選擇問題。我們進行了一系列的模 擬實驗來評估及比較我們所提出的方法。實驗結果顯示我們的方法比起先前文獻中的方 法,更能夠有效地降低提供複合式雲端服務所需的總成本。 關鍵字:複合式雲端服務,服務選擇,成本最佳化,動態服務品質

(4)

Abstract

Cloud computing has become the most promising next-generation computing platform recently. Composite cloud services based on the methodologies of Software as a Service (SaaS ) and Service-Oriented Architecture (SOA) are transforming how people develop and use software and expected to bring a lot of benefits for both software developers and users. Cloud service providers have to deal with the issues of service selection when composing a composite cloud service, which can be viewed as a constrained optimization problem aiming to minimize the total costs of providing such services with respect to the constraints of Service Level Agreement (SLA). The service selection problem becomes even more challenging when considering the stochastic QoS performance. This thesis presents two approaches to the service selection problem in dynamic cloud environments where services’ performance might varies with time. The first one is an iterative compound approach, with each iteration containing three steps: Integer Linear Programming (ILP) optimization, simulation of stochastic performance, and adaptation. The second approach is a one-step method based on the Chebyshev’s theorem and nonlinear programming. It takes into consideration the stochastic performance in the objective function of a nonlinear programming formulation. We have conducted a series of simulation experiments to evaluate the proposed approaches. Our approaches outperform the previous method in the literature significantly in terms of total cost reduction.

(5)

Table of Contents

誌謝……….. Ⅰ 摘要………... Ⅱ Abstract…...………Ⅲ Table of Contents……….……Ⅳ List of Figures………Ⅴ List of Tables………..………Ⅶ Chapter 1. Introduction ... 1

Chapter 2. Related Work ... 5

Chapter 3. Service Selection under Stochastic Performance ... 9

3.1 Composite Cloud Services ... 9

3.2 An Iterative Compound Approach ... 11

3.3 One-Step Statistics-Based Nonlinear Optimization ... 16

Chapter 4. Experiments and Performance Evaluation ... 20

4.1 Experimental Setup ... 20

4.2 Performance Results ... 20

Chapter 5. Conclusions and Future Work... 33

(6)

List of Figures

Figure 3.1 Example definition of composite cloud services……….……10

Figure 3.2 Critical Task Determination……….…14

Figure 3.3 Adaptation step in [7] ………..15

Figure 3.4 Our Adaptation step………...……..15

Figure 3.5 Normal distribution of service response time………....……..17

Figure 4.1 Costs under scenario 1………...……..21

Figure 4.2 Costs under scenario 2………...……..21

Figure 4.3 Costs under scenario 3………...……..22

Figure 4.4 Costs under scenario 4………...……..22

Figure 4.5 Service response time under scenario 1………....…...23

Figure 4.6 Service response time under scenario 2………....…...23

Figure 4.7 Service response time under scenario 3………....…...23

Figure 4.8 Service response time under scenario 4………....…...24

Figure 4.9 SLA violation time under scenario 1………....…...24

Figure 4.10 SLA violation time under scenario 2………..…...25

Figure 4.11 SLA violation time under scenario 3………..…...25

Figure 4.12 SLA violation time under scenario 4………..…...25

Figure 4.13 Comparison across different penalties under scenario 1………...26

Figure 4.14 Comparison across different penalties under scenario 2………...26

Figure 4.15 Comparison across different penalties under scenario 3………...27

Figure 4.16 Comparison across different penalties under scenario 4………...27

(7)

Figure 4.19 Comparison across different price configurations under scenario 3………..…...28 Figure 4.20 Comparison across different price configurations under scenario 4………..…...29 Figure 4.21 Comparison across different ranges of standard deviation of service response time under scenario1…...………...29 Figure 4.22 Comparison across different ranges of standard deviation of service response time under scenario 2……..………...30 Figure 4.23 Comparison across different ranges of standard deviation of service response time under scenario 3………..………...30 Figure 4.24 Comparison across different ranges of standard deviation of service response time under scenario 4………..………...31 Figure 4.25 Evaluation of the capability of SLA enforcement………...32 Figure 4.26 Comparison of required execution time of different approaches……..……...32

(8)

List of Tables

Table 3.1 Services’ QoS and cost attributes……….……….…10

Table 3.2 Worst-case aggregation functions for response time and costs……….…12

Table 3.3 Formulation of ILP……….13

Table 3.4 Formulation of nonlinear programming………..19

Table 4.1 Four scenarios of different relationship among services’ QoS parameters and prices………...………..20

(9)

Chapter 1. Introduction

Cloud computing [1] has become the most promising next-generation computing platform recently. Some cloud computing service providers have begun to provide commercial services, such as Amazon EC2 [2], Google App Engine [3] and Microsoft Azure [4]. Cloud computing is usually divided into three layers of services [5]: Infrastructure as a Service (IaaS), Platform as a Service (PaaS), and Software as a Service (SaaS). The concept of SaaS [6] has caused a revolution in how we develop and use software applications. Service-Oriented Architecture (SOA) [6] is one of the important underlying technologies to develop such kind of cloud services, which are usually composite services in the sense that they are developed by composing several existing services together. Software development and deployment based on the new models of SaaS and SOA is expected to bring a lot of benefits for both developers and users.

However, before the benefits to be realized, .developers of composite cloud services are confronting several new issues which were not seen in developing traditional stand-alone or simple web-based applications. Service selection and composition is one of the important issues which deals with how to efficiently and effectively select among existing services and put the selected services together to develop new composite cloud services with some Quality of Service (QoS) goals in mind. More specifically, the Service Selection Problem (SSP) [7] is the challenge regarding optimally selecting services from several functionally appropriate or equivalent ones with an optimization objective and under some QoS constraints. A solution to the SSP is a set of feasible assignments of specific services to the tasks within a composite cloud service, which can achieve the optimization goal and satisfy the OoS constraints.

(10)

Users and providers of composite cloud services might have different concerns regarding how to select appropriate services. For users, several QoS aspects might be of concern, such as reliability, throughput, security, and response time. On the other hand, the most concern of providers is usually the total cost of services since it affects their attainable profits greatly. Usually, there will be Service Level Agreements (SLA) between users and cloud service providers, which define the contracted performance of concerned QoS aspects and the penalties for violation of the contracted QoS. Therefore, for cloud service providers, the SSP becomes a constrained optimization problem aiming to minimize the cost function with respect to the constraints of SLA, where the cost function takes into consideration both service usage costs and penalties for SLA violation. In this thesis, we focus on one of the most important QoS aspects, the response time of the entire composite cloud service, and develop service selection approaches to minimizing the total costs for service providers under the regulation of SLA.

The SSP has been extensively studied in the literature, such as [8] [9] [10] [11]. However, in those studies, the SSP was addressed based on deterministic performance parameters, e.g., service response time. On the other hand, in practice we know that most performance parameters are not always deterministic and rather follow a stochastic distribution. To address the gap between most existing studies and the reality, in this thesis, we propose two service selection approaches for minimizing the costs of providing a composite cloud service, including the fees for using existing services and penalties for SLA violation, in a dynamic cloud environment where services’ response time varies stochastically due to dynamically changing workload or other uncertainties.

To cope with the issue of stochastic performance variation, our first approach is based on an iterative process consisting of an Integer Linear Programming (ILP) [12] procedure, a

(11)

simulation process, and an adaptation step, which is similar to the structure in [7]. In the ILP procedure, costs and deterministic response time of services are used to formulate an optimization problem and then find an optimal solution to the SSP. In the second step, the simulation process, we simulate the execution of the composite cloud service with the services selected in the first step in a dynamic environment where the response time of services varies stochastically. Based on the simulation results, the third step makes an adaptation to the solution of the SSP. The three steps are repeated until a good enough solution is found based on some criteria. In contrast to the first approach, our second approach is a one-step method based on the Chebyshev’s theorem [13] and nonlinear programming [14], which takes into consideration the stochastic performance variation in the objective function. In addition to reduced steps, another advantage of the second approach is the capability of enforcing an upper bound on QoS violation while minimizing the costs.

The proposed approaches were evaluated with a series of simulation experiments and compared to the method in [7]. The method in [7] tries to reduce QoS violation through choosing services with smaller standard deviation of response time in the adaptation step. In our approaches, we take into consideration not only services’ standard deviation of response time but also services’ costs when selecting services, in order to effectively reduce the total costs. The experimental results indicate that our approaches outperform the previous method in [7] and have the potential to improve the profits for cloud services providers through reducing the total costs of using existing services and QoS violation penalties. In addition, the second approach can in general achieve better results than the first approach in most cases.

The reminder of this thesis is organized as follows. Chapter 2 discusses related works on the SSP. We present our two service selection approaches in chapter 3. Chapter 4 evaluates

(12)

the proposed approaches and compares it with an existing method. Chapter 5 concludes this thesis.

(13)

Chapter 2. Related Work

As cloud computing emerges, SaaS applications based on the SOA [6] methodology have become a promising direction for future development and usage of software applications and have received a lot of research attentions. The SaaS- and SOA-related research works in the literature span a variety of different issues, including execution platforms and runtime environments[15] [16] [17], service discovery[18] [19], service selection[20] [21] [24], service

replacement [54] [62] [63], service and resource allocation [24] [25] [35] [36] [37], service

composition [22] [23], service orchestration [26] [27] [28] [29] [30], service choreography [30]

[31], service deployment[32] [33] [34], service security[38] [39], service

trustworthy[40][41][42], and other issues. In this thesis, we focus on the issue of service selection which deals with the challenge regarding optimally selecting a service for each task in a composite cloud service from several functionally equivalent ones with an optimization objective of the entire composite cloud service under some QoS constraints.

Most previous studies on service selection assumed deterministic QoS parameters and proposed solutions based on different optimization techniques, such as genetic algorithms [60]

[61], ranking chaos optimization[53], particle swarm optimization [56] [57], Markov model

[65], and some heuristic approaches [55] [64]. The work in [43] extends a component calculus

to deal with software QoS properties, such as response time, availability, bandwidth requirement, and memory usage, in the process of selecting and composing software

components. The authors of[44] proposed a method, called QCM, to deal with the issue that

different users of the same cloud service might have different QoS demands. Consumer demands are modelled as three factors: quality constraints, preference weights and determinate degrees. QCM is performed through selecting top-k composite services for each pair of

(14)

subtasks in an iteration. The optimal solution in the last iteration is returned for a consumer. In [45] the authors presents a coordination language to express services, their interaction capabilities and information sharing constraints, and the infrastructure of a service cloud model in which services can be accurately provisioned, composed and reasoned over to provide necessary guarantees.

The works in [46] [67] focus on the multi-tenancy issue for SaaS. In [46], the authors explored the utility function of the SLA and uses an approach for the optimal selection of a multi-tenancy service based on a SLA utility function, while a novel QoS-driven approach was introduced in [67] for helping SaaS developers select the services for composing multi-tenant SaaS, which achieves SaaS providers’ optimization goals while fulfilling the end-users’ different levels of QoS constraints. A technique was proposed in [47] for predicting whether the execution of a service composition will be compliant with service level objectives (SLOs).

A multi-objective quality-driven service selection approach was presented in[48] to find service selections for a workflow whose quality of-service (QoS) values are Pareto-optimal, considering multiple QoS attributes such as response time, cost, and reliability. A selection is Pareto-optimal if no other selection has better QoS values for some attributes and at least equivalent values for all others. The authors of [49] presented a novel model for the service selection problem of workflow-based applications in the context of self-managing situated computing, where the execution environment includes different types of devices, from remote servers to personal notebooks, smartphones, and wireless sensors. The work deal with the tradeoff between the remote execution of software fragments and their dynamic deployment on local nodes of the computational environment.

(15)

The work in[50] combines the DSOL planning techniques with a linear optimizer to calculate the optimal plan for a composite cloud service with respect to the QoS requirements. The approach in [51] uses discrete Bayesian Network to represent the economic model of end users. The authors of [52] investigated the use of rank aggregation methods for performing adequate information fusion for web service selection in view of composition. The goal is to take advantage of these methods working on ranks rather than on the direct values for inferring global QoS.

The above works deal with the service selection problem with deterministic QoS attributes. However, in practice we know that most performance parameters, such as service response time, are not always deterministic and rather follow a stochastic distribution. Recently, there have been some research works starting to tackle such issues regarding

stochastic QoS performance. The work in[58] aims to design a complete method to study the

stochastic QoS of a composed web service at design time. The authors proposed a technique to derive non-Markovian stochastic Petri net (NMSPN) models from WS-BPEL processes, with the final goal of evaluating parameters such as the service time distribution and the service reliability.

The authors of [59] proposed an approach for web service dynamic composition based on global QoS constraints decomposition. The global QoS constraints are decomposed into local constraints by an algorithm named Culture Genetic Algorithm. Then, the best web services that can satisfy the local constraints are selected for each task during the running time. In contrast to the dynamic approach, our approaches in this thesis complete the service selection process before the entire composite cloud service begin to serve users. The approach in [66] tries to maximize the quality of a single request and minimize the variance of the

(16)

quality over time simultaneously, but doesn’t deal with the issues regarding costs and penalties due to SLA violation.

The authors of [7] presented an integrated approach based on Integer Linear Programming (ILP) and simulation to address the service selection problem for complex workflows in conjunction with stochastic QoS parameters. The idea is to account for penalty cost, which accrue due to QoS violations, during the service selection process in order to reduce the impact of stochastic QoS behavior on total cost. The first approach of our works in this thesis shares the same goal, reduction of total costs of providing a composite cloud service, and the iterative service selection process with the work in [7]. However, our approach considers both service usage costs and QoS violation penalties in the service adaptation step and thus is more effective than the method in [7] regarding total cost reduction.

The work in [68] also deals with the issues of stochastic QoS performance when performing service selection for composite web services. The proposed solution is based on a dynamic programming approach, while our two approaches in this thesis are based on Integer Linear Programming (ILP) and statistics-based nonlinear programming, respectively. In addition to service response time and service usage costs, the approach in [68] also takes service availability into consideration, while our approach focuses on service response time and costs since the resource reliability on modern cloud platforms is usually pretty good, which makes service response time becomes relatively more important than the reliability issue. Regarding the penalty model, the work in [68] assumes a fixed penalty once SLA violation occurs. On the other hand, we consider the penalty to be proportional to the period of time exceeding the constraint defined in SLA, which is a more practical assumption.

(17)

Chapter 3. Service Selection under Stochastic

Performance

This chapter describes the problem of service selection for composite cloud services and presents two service selection approaches to minimizing the total costs of running a composite cloud service under SLA constraints.

3.1 Composite Cloud Services

The methodology based on SaaS and SOA is a promising way for future software development and usage [6]. Therefore, most software will become composite cloud services in the sense that they are developed by composing several existing services together and run on cloud platforms. Figure 1 presents an example of such kind of composite cloud services in the commonly used BPMN notations [69] for illustrating the SSP.

The example definition of a composite cloud service in Figure 3.1 looks like a Directed Acyclic Graph (DAG), sometimes called a workflow[70], where according to the BPMN notation[69] ‘+’ represents an AND branch and ‘X’ indicates an XOR branch. In general, there are three types of execution dependencies among tasks within a composite cloud service: AND-block, XOR-block, and Sequence. The eight blue square blocks, each with an ID, in Figure 3.1 represent the constituent tasks of the composite service. Each task has to be bound to a specific service instance before the entire composite cloud service can be instantiated for providing services. For each task, there could be several functionally equivalent candidate services to choose. Providers of those services will offer various QoS and cost attributes of each service for composite-service developers to make their decisions on service selection. Table 3.1 shows an example of such QoS attributes and cost information that will be

(18)

considered in this thesis. Since the response time of a service would not be a fixed value in a real dynamic cloud environment, the QoS attributes of each service contain both its average response time and standard deviation of response time.

Figure 3.1: Example definition of composite cloud services

Table 3.1: Services’ QoS and cost attributes

On cloud platforms, users pay a fixed amount of money for using a specific cloud service according to the list price specified by the provider. There might be a Service-Level Agreement (SLA) between users and the provider which specifies various QoS demands that the service promise to satisfy. Once a service violates the QoS requirement after its execution,

ID Average Response Time

Standard Deviation Price

a 110 1 500 b 120 2 400 c 130 3 300 d 140 4 200 e 150 5 100 8

+

5 4 7 6 3 2 1

+

x

x

+

Service Aa

Service Ab

Service Ac

Service Ad

Service Ae

(19)

there would be a penalty fee for the service provider. Since users pay a fixed amount of money for services, the service provider would have a motivation to maximize his profits by reducing the costs as much as possible. Based on the SaaS and SOA technologies, cloud service providers usually develop a new composite cloud service by putting together some existing services, which might be developed and hosted by other service providers, in addition to their home-made codes. Therefore, the main costs of providing a composite cloud service come from two parts: the usage costs of the constituent services and the potential penalties for SLA violation. The penalty fee is assumed to be proportional to the exceeded service response time compared to the SLA. The SSP dealt with in this thesis concerns how to minimize the costs of providing composite cloud services under the regulation of SLA.

3.2 An Iterative Compound Approach

This section presents an iterative compound approach to the service selection problem in a dynamic cloud environment where services’ response time varies stochastically due to dynamically changing workload or other uncertainties. The approach aims to minimize the costs of providing a composite cloud service, including the fees for using existing services and potential penalties for QoS violation. To cope with services’ stochastic performance, the approach is based on an iterative process, similar to the structure in [7], consisting of a deterministic optimization step using Integer Linear Programming (ILP) [12], a simulation step for evaluating potential QoS violation, and an adaptation step preparing for service reselection. The three steps are repeated until a good enough solution is found based on some criteria.

At the first step, costs and deterministic response time, i.e. the average response time, of services are used to formulate an optimization problem and then find an optimal solution

(20)

using ILP [12]. To prepare the formulation of an ILP optimization problem, we need to derive the expected QoS values of an entire composite cloud service from the attribute values of each

constituent service. According to [7] , the following symbols are defined. The set of all tasks

within a composite cloud service is labeled with I. The set of services functionally appropriate

to execute a certain task i is labeled with Ji, The decision variables xij ∈ {0, 1} indicate

whether a service j is selected to conduct task i. Cost is represented by c and response time is indicated by r. Regarding branches, we label the set of paths with L. Referring to the composite cloud service in Figure 3.1, there are two paths within the XOR-block, thus L = {1,

2}. The tasks within a branching are covered by the set IL ⊆ I, whereas Il ⊆ IL represents the

set of tasks within path l. We label the set of the remaining tasks which are not located within any branching, the Sequences in a composite cloud service. Therefore, the goal of the service selection problem is to minimize the following formula. To make it amenable to ILP, we formulate the objective function and conditions in Table 3.3 based on the example composite cloud service in Figure 3.1.

min⁡(∑ ∑ c ∈ ∈ 𝑥 + ∑ ∑ ∑ ∈ ∈ 𝑥 ∈ + m ∈ ∑ ∑ ∈ ∈ 𝑥 )

Table 3.2: Worst-case aggregation functions for response time and costs

Sequence AND-block XOR-block

response time ∑ ∑ ∈ ∈ 𝑥 m ∈ ∑ ∑ ∈ ∈ 𝑥 m ∈ ∑ ∑ ∈ ∈ 𝑥 cost ∑ ∑ ∈ ∈ 𝑥 ∑ ∑ ∑ ∈ ∈ 𝑥 ∈ m ∈ ∑ ∑ ∈ ∈ 𝑥

(21)

Table 3.3: Formulation of ILP The goal min (∑ ∑ c ∈ ∈ 𝑥 + ∑ ∑ ∑ ∈ ∈ 𝑥 ∈ + 𝑜 ) Condition ∑ ∑ ∈ ∈

𝑥 + 𝑚e1 + time2 ≤ SLA

∀l ∈ 𝐴𝑁𝐷∑ ∑ ∈ ∈ 𝑥 ≤ 𝑚𝑒1 ∀l ∈ 𝑋𝑂𝑅∑ ∑ ∈ ∈ 𝑥 ≤ 𝑚𝑒2 ∀l ∈ 𝑋𝑂𝑅∑ ∑ 𝐶 ∈ ∈ 𝑥 ≤ 𝑜 ∑ 𝑥 ∈ 1

The second step simulates the execution of the entire composite cloud service using the services selected in the first step in a dynamic environment where the response time of each service varies stochastically. To estimate the effects of the selected services’ stochastic performance, the simulation will be conducted for many times and each service’s response time might vary at different runs. The stochastic variation of each service’s response time is determined by one of its QoS attributes: the standard deviation in Table 3.1. Therefore, in some runs the resultant response time of the entire composite cloud service might exceed the requirement of SLA, incurring penalty fees. The total costs of the entire composite cloud service across all the simulation runs, including both service usage costs and penalty fees, will then be used to evaluate the influence of stochastic performance variation.

Based on the simulation results of the second step, the third step makes an adaptation to the previous service selection. In [7], each time only one task within the composite cloud

(22)

service is chosen for service reselection. This task is called critical task and is determined as the algorithm shown in Figure 3.2. The benefit value is calculated according to the following equation, representing the difference between the selected service’s standard deviation of

response time, σs, and the standard deviation values of the other candidate services of task i, σj.

The weight for a task i, ω, is calculated by dividing the number of the simulation runs where task i has been executed and the SLA for response time has been violated by the total number of runs. The task with the highest weighted benefit is chosen as the critical task for the adaptation step.

benefit =m ∈ ( ⁡ ⁡ )

for all i ∈ I do

benefit = computeBenefit(i); ω = computeWeight(i);

if ωbenefit ≥ highestBenefit then

highestBenefit = ωbenefit;

criticalTask = i; end if

end for

Figure 3.2: Critical Task Determination

The adaptation step in [7] , as shown in Figure 3.3, tends to reduce SLA violation

through excluding services with standard deviation larger than current selected one from next iteration’s ILP optimization. However, choosing services with smaller standard deviation of response time does not always lead to reduced costs since those services might have higher prices.

(23)

i = criticalTask; js = getSelectedServiceOf(i); for all j Ji do if ⁡ then setBanned(j); end if end for

Figure 3.3: Adaptation step in [7]

In the following, we propose a new adaptation step to further improve the effectiveness of service selection. In contrast to Figure 3.3, our approach, as shown in Figure 3.4, considers both services’ costs and the potential penalty incurred by response time deviation at the adaptation step in order to minimize the total costs of running a composite cloud service.

i = criticalTask; js = getSelectedServiceOf(i); for all j Ji do if 𝑜 + *⁡ 𝑒 > 𝑜 + *penalty then setBanned(j); end if end for

Figure 3.4: Our Adaptation step

The entire service selection approach conducts iterative execution of the above three steps, controlled by two parameters, greed and anneal, as in [7]. The parameter greed determines how often the three steps are repeated as long as new iterations reduce total costs.

(24)

Another parameter anneal controls for allowing worse solutions temporarily as starting points for further iterations.

3.3 One-Step Statistics-Based Nonlinear Optimization

The approach presented in the previous section goes through a complicated iterative process consisting of three steps. The ILP formulation considers only the deterministic QoS values, i.e. average service response time. Therefore, the effects of services’ stochastic performance, i.e. standard deviation of service response time, have to be dealt with through a series of simulation and adaptation, resulting in a complex iterative procedure. In this section, we try to develop a new approach with a simpler structure. In contrast to the iterative behavior of the previous approach, the new approach can be viewed as a one-step method which is based on the Chebyshev’s theorem [13] and nonlinear programming [14]. The one-step approach takes into consideration the stochastic performance in the objective function of a nonlinear programming formulation.

Without loss of generality, assuming all services’ response time follows the normal distribution, as shown in Figure 3.5, each with different values of mean and standard deviation. According to the statistics theorems, means and variances of linear combinations of random variables can be calculated [13]. Therefore, after selecting a specific set of services, the mean and standard deviation of response time of the entire composite cloud service can be calculated based on the QoS attributes of those constituent services. Based on such information, according to the Chebyshev’s theorem [13], we can calculate the probability that the response time of the composite cloud service exceeds the SLA, the area to the right of the

(25)

violation should be no more than 1/2k2. If the penalty is a fixed value no matter how long the

response time exceeds the SLA, the above probability value can easily be used to estimate the potential penalty fees for SLA violation. For those cases, where the penalty is proportional to the time exceeding SLA, the estimation of incurred penalty fees needs a more complicated calculation as shown in the following.

Figure 3.5: Normal distribution of service response time

Based on statistics methods, the one-step approach doesn’t need to adopt a simulation procedure to estimate the effects of services’ stochastic performance followed by an adaptation step to adjust SLA violation. Instead, it incorporates the potential penalty incurred by SLA violation into the objective function of an optimization problem formulation as follows.

With f(x) being the probability density function of normal distribution,.

𝑓(𝑥) 1

√2𝜋𝑒

(26)

the objective function becomes the following, where penalty is the fine per unit of time exceeding SLA, in order to minimize the total costs of running the composite cloud service including both the service usage costs and SLA violation penalty. :

min⁡(∑ ∑ c ∈ ∈ 𝑥 + ∑ ∑ ∑ ∈ 𝑥 ∈ + m ∈ ∑ ∑ ∈ 𝑥 + pen lty ∗ ∫ (𝑥 ) ∗ 𝑓(𝑥) )

The above formulation becomes a nonlinear programming problem with higher computational complexity than ILP. However, many modern mathematical tools, such MATLAB[71], can handle such kind of optimization problem. In addition to reduced steps, another advantage of the statistics-based one-step approach is the capability of enforcing an upper bound on QoS violation while minimizing the costs, which can be useful since in many cases the SLA might contain the enforcement of QoS violation ratio over a specific period of time or a specific number of service requests. In such cases, we can establish such enforcement by adding the following constraints into the nonlinear programming formulation,

where  and  are the mean and standard deviation of response time of the entire composite

cloud service, which can be obtained by calculating the mean and variance of linear combinations of random variables [13], and r% is the upper bound of QoS violation ratio specified in SLA. Table 3.4 shows the entire nonlinear programming formulation of the service selection problem.

1

(27)

Table 3.4: Formulation of nonlinear programming Goal min⁡(⁡(∑ ∑c ∈ ∈ 𝑥 + ∑ ∑ ∑ ∈ ∈ 𝑥 ∈ + m ∈ ∑ ∑ ∈ ∈ 𝑥 ) +pen lty ∗ ∫ (𝑥 ) ∗ 𝑓(𝑥) ) Conditions ∑ ∑ ∈ ∈ 𝑥 + m ∈ ∑ ∑ ∈ ∈ 𝑥 + 𝑚 𝑥 ∈ ∑ ∑ ∈ ∈ 𝑥 ≤ SLA 𝜇 1 2 2≤ ∑ 𝑥 ∈ 1

(28)

Chapter 4. Experiments and Performance

Evaluation

This chapter presents a series of simulation experiments for evaluating the service selection methods proposed in the previous chapter. The simulation experiments are based on our workflow execution simulator developed in Java and use lp_solve 5.5.2.0 [72] for linear programming and Matlab [71] for nonlinear programming.

4.1 Experimental Setup

The composite cloud service shown in Figure 3.1 was used as the target of service

selection in the experiments. Each task of the composite cloud service has five candidate services to choose. We considered four common scenarios, shown in Table 4.1, regarding the relationship among the three attributes of services: mean response time, standard deviation of response time, and price. Each experiment was repeated for 1000 times to simulate the stochastic behavior of services.

Table 4.1: Four scenarios of different relationship among services’ QoS parameters and prices Average Response

Time Standard Deviation Price

scenario1 ↑ random ↓

scenario2 constant ↑ ↓

scenario3 constant random random

Scenario4 ↑ ↑ ↓

4.2 Performance Results

(29)

service under the four scenarios, respectively. The results indicate that our two approaches, CD-ICA and OSSBNP, outperform the previous approach, DD-ICA, in [7] significantly in all the four scenarios.

Figure 4.1: Costs under scenario 1

Figure 4.2: Costs under scenario 2

SLA=615 SLA=613 SLA=611 SLA=609 SLA=607 SLA=605 DD-ICA 849.8 849.8 849.8 849.8 849.8 849.2 CD-ICA 650.3084 650.3632 650.4987 650.8288 651.5415 652.9037 OSSBNP 650.3042 650.3316 650.3992 650.5645 650.9208 651.6017 0 200 400 600 800 1000 COS T

scenario1

SLA=539 SLA=537 SLA=533 SLA=529 SLA=525 SLA=521 DD-ICA 1264.78 1246.215 1239.978 1179.896 1111.776 1037.257 CD-ICA 651.0651 651.4815 652.901 655.8483 660.9628 668.7253 OSSBNP 650.6825 650.8907 651.6005 653.0738 655.6314 659.5129 0 200 400 600 800 1000 1200 1400 COS T

scenario2

(30)

Figure 4.3: Costs under scenario 3

Figure 4.4: Costs under scenario 4

Figures 4.5 to 4.8 compare the three service selection approaches in terms of service response time under the four scenarios, respectively. The penalty is two dollars per time units beyond the SLA constraint. The results reveal that in all scenarios, our two approaches lead to longer service response time compared to DD-ICA. This implies that our approaches could effectively sacrifice service response time under the SLA constraints for using cheaper services to reduce the total costs of providing composite cloud services.

SLA=539 SLA=537 SLA=533 SLA=529 SLA=525 SLA=521 DD-ICA 853.1 861.3 975.5463 1181.91 1295.238 1314.635 CD-ICA 650.6073 651.9323 656.6969 661.4979 659.6243 661.7523 OSSBNP 650.3037 650.3161 650.408 650.8228 652.205 655.4916 0 200 400 600 800 1000 1200 1400 COS T

scenario3

SLA=615 SLA=613 SLA=611 SLA=609 SLA=607 SLA=605 DD-ICA 1271.8 1271.8 1271.802 1271.829 1271.877 1272.042 CD-ICA 652.0443 652.901 654.1315 655.8483 658.1101 660.9628 OSSBNP 651.1721 651.6005 652.2155 653.0738 654.2049 655.6314 0 200 400 600 800 1000 1200 1400 COS T

scenario4

(31)

Figure 4.5: Service response time under scenario 1

Figure 4.6: Service response time under scenario 2

Figure 4.7: Service response time under scenario 3

SLA=615 SLA=613 SLA=611 SLA=609 SLA=607 SLA=605 DD-ICA 578.744 578.711 578.589 578.592 578.72 578.553 CD-ICA 650.3084 650.3632 650.4987 650.8288 651.5415 652.9037 OSSBNP 650.3042 650.3316 650.3992 650.5645 650.9208 651.6017 540 560 580 600 620 640 660 re sp o n se tim e

scenario1

SLA=539 SLA=537 SLA=533 SLA=529 SLA=525 SLA=521 OSSBNP 522.3165 522.3165 522.3165 522.3165 522.3165 522.3165 CD-ICA 522.3165 522.3165 522.3165 522.3165 522.3165 522.3165 DD-ICA 520.4901 520.6006 520.314 519.8586 519.6464 519.1677 0 500 1000 1500 2000 re sp o n se tim e

scenario2

SLA=539 SLA=537 SLA=533 SLA=529 SLA=525 SLA=521 DD-ICA 519.411 519.6995 519.2639 519.3159 519.5141 519.6567 CD-ICA 521.5493 521.5501 521.5165 521.4835 521.5002 521.5471 OSSBNP 521.5567 521.5567 521.5567 521.5567 521.5567 521.5567 518 519 520 521 522 re sp o n se tim e

scenario3

(32)

Figure 4.8: Service response time under scenario 4

Figures 4.9 to 4.12 compare the three service selection approaches in terms of the total amount of time exceeding the SLA constraint, which is directly proportional to the penalty costs, under the four scenarios, respectively. The results indicate that compared to DD-ICA, our approaches are more capable of achieving a global optimization of total costs, not only trying to minimizing penalty costs.

Figure 4.9: SLA violation time under scenario 1

SLA=615 SLA=613 SLA=611 SLA=609 SLA=607 SLA=605 DD-ICA 540.7761 540.7586 540.7536 540.7596 540.7408 540.7747 CD-ICA 602.3161 602.3161 602.3161 602.3161 602.3161 602.3161 OSSBNP 602.3161 602.3161 602.3161 602.3161 602.3161 602.3161 500 520 540 560 580 600 620 re sp o n se tim e

scenario4

SLA=615 SLA=613 SLA=611 SLA=609 SLA=607 SLA=605

DD-ICA 0 0 0 0 0 0 CD-ICA 2.11853 15.81903 49.65759 132.1982 310.3793 650.9174 OSSBNP 2.11853 15.81903 49.65759 132.1982 310.3793 650.9174 0 100 200 300 400 500 600 700 SLA vi o lat io n t im e

scenario1

(33)

Figure 4.10: SLA violation time under scenario 2

Figure 4.11: SLA violation time under scenario 3

Figure 4.12: SLA violation time under scenario 4

SLA=539 SLA=537 SLA=533 SLA=529 SLA=525 SLA=521 DD-ICA 19.99445 28.68512 144.585 374.1164 1044.199 2264.344 CD-ICA 191.282 295.3859 650.2747 1387.012 2665.653 4606.285 OSSBNP 191.282 295.3859 650.2747 1387.012 2665.653 4606.285 0 1000 2000 3000 4000 5000 SLA v io lation tim e

scenario2

SLA=539 SLA=537 SLA=533 SLA=529 SLA=525 SLA=521 DD-ICA 0 0 11.57117 27.41956 259.5523 1074.383 CD-ICA 1.83252 8.058655 49.20526 249.4568 931.033 2587.958 OSSBNP 1.83252 8.058655 53.98444 261.335 952.4529 2595.633 0 500 1000 1500 2000 2500 3000 SLA v io lation tim e

scenario3

SLA=615 SLA=613 SLA=611 SLA=609 SLA=607 SLA=605 DD-ICA 0 0 0.588013 7.26825 19.26825 35.40527 CD-ICA 436.0644 650.2748 957.8309 1387.012 1952.467 2665.653 OSSBNP 436.0644 650.2748 957.8309 1387.012 1952.467 2665.653 0 500 1000 1500 2000 2500 3000 SLA v io lation tim e

scenario4

(34)

Figures 13 to 16 compare the three service selection approaches across different penalties per time unit in terms of total costs under the four scenarios, respectively. The results show that our two approaches still outperform DD-ICA in such situations.

Figure 4.13: Comparison across different penalties under scenario 1

Figure 4.14: Comparison across different penalties under scenario 2

PEN=2 PEN=12 PEN=22 PEN=32 PEN=42 PEN=52 DD-ICA 849.8 849.8 849.8 849.8 849.8 849.8 CD-ICA 650.3084 650.3509 650.3932 650.4355 650.478 650.5203 OSSBNP 650.3042 650.3254 650.3466 650.3678 650.389 650.4101 0 100 200 300 400 500 600 700 800 900 COS T

scenario1

PEN=2 PEN=12 PEN=22 PEN=32 PEN=42 PEN=52 DD-ICA 1265.484 1270.633 1271.071 1290.107 1278.63 1305.93 CD-ICA 651.4815 657.3894 663.2969 669.2046 675.1125 681.0201 OSSBNP 650.8907 653.8447 653.8447 659.7524 662.7061 665.6599 0 200 400 600 800 1000 1200 1400 COS T

scenario2

(35)

Figure 4.15: Comparison across different penalties under scenario 3

Figure 4.16: Comparison across different penalties under scenario 4

Figures 17 to 20 compare the three service selection approaches across three situations which differ in the smallest price difference between services. The results show that our approaches perform well under all situations.

PEN=2 PEN=12 PEN=22 PEN=32 PEN=42 PEN=52 DD-ICA 984.1252 979.8658 978.8 972.8 989.8 985.1033 CD-ICA 657.6113 680.9586 681.0753 686.5549 689.5368 680.3121 OSSBNP 650.408 650.9478 652.0275 652.5674 653.1072 650.408 0 200 400 600 800 1000 1200 COS T

scenario3

PEN=2 PEN=12 PEN=22 PEN=32 PEN=42 PEN=52 DD-ICA 1271.741 1273.15 1273.972 1274.665 1275.465 1275.03 CD-ICA 660.9628 714.2761 767.5887 820.9018 874.215 927.5281 OSSBNP 655.6314 682.288 708.9443 735.6011 762.2574 788.9138 0 200 400 600 800 1000 1200 1400 COS T

scenario4

(36)

Figure 4.17: Comparison across different price configurations under scenario 1

Figure 4.18: Comparison across different price configurations under scenario 2

gap:100 gap:200 gap:300

DD-ICA 1883.112 3030.848 4179.993 CD-ICA 1359.418 2059.418 2759.418 OSSBNP 1450.415 2250.415 3050.415 0 500 1000 1500 2000 2500 3000 3500 4000 4500 COS T

scenario1

gap:100 gap:200 gap:300

DD-ICA 1204.808 913.8548 1019.976 CD-ICA 654.1315 654.1315 654.1315 OSSBNP 652.2155 652.2155 652.2155 0 200 400 600 800 1000 1200 1400 COS T

scenario2

gap:100 gap:200 gap:300

DD-ICA 1111.453 1395.12 1740.827 CD-ICA 661.4548 667.5533 650.789 OSSBNP 650.5446 650.5446 650.5446 0 500 1000 1500 2000 COS T

scenario3

(37)

Figure 4.20: Comparison across different price configurations under scenario 4

Figures 21 to 24 compare the three service selection approaches across different situations where services have different ranges of standard deviation of service response time. The results show that our approaches consistently outperform DD-ICA in all situations.

Figure 4.21: Comparison across different ranges of standard deviation of service response time under scenario 1

gap:100 gap:200 gap:300

DD-ICA 1694.19 2812.79 3915.155 CD-ICA 1364.208 2064.209 2764.209 OSSBNP 1273.14 1873.14 2473.139 0 1000 2000 3000 4000 5000 COS T

scenario4

σ=1~5 σ=11~15 σ=21~25 σ=31~35 σ=41~45 σ=51~55 DD-ICA 849.8 1379.484 1389.17 1411.974 1451.553 1476.904 CD-ICA 650.3084 671.83575 709.5031 749.6134 790.3768 831.6997 OSSBNP 650.3042 661.0681 770.3431 789.1599 808.8853 972.1349 0 200 400 600 800 1000 1200 1400 1600 COS T

scenario1

(38)

Figure 4.22: Comparison across different ranges of standard deviation of service response time under scenario 2

Figure 4.23: Comparison across different ranges of standard deviation of service response time under scenario 3

σ=1~5 σ=11~15 σ=21~25 σ=31~35 σ=41~45 σ=51~55 DD-ICA 1265.484 1127.2 1185.634 1301.161 1387.356 1459.904 CD-ICA 651.4815 679.1949 717.498 757.567 798.5086 840.4199 OSSBNP 650.8907 664.7473 683.8994 703.9338 724.4042 745.36 0 200 400 600 800 1000 1200 1400 1600 COS T

scenario2

σ=1~5 σ=11~15 σ=21~25 σ=31~35 σ=41~45 σ=51~55 DD-ICA 984.1252 1339.675 1418.845 1507.45 1535.531 1584.256 CD-ICA 657.6113 678.804 716.8978 757.1491 798.1361 840.2138 OSSBNP 650.408 663.8412 683.3677 703.6299 724.2174 745.2067 0 500 1000 1500 2000 COS T

scenario3

(39)

Figure 4.24: Comparison across different ranges of standard deviation of service response time under scenario 4

Although in previous experiments, the performance of OSSBNP is very close to CD-ICA, OSSBNP has a particular advantage over the other approaches which is the capability of enforcing an upper bound on QoS violation while minimizing the costs. This advantage can be useful since in many cases the SLA might contain the enforcement of QoS violation ratio over a specific period of time or a specific number of service requests. In such cases, we can establish such enforcement in OSSBNP, while the other two approaches cannot do that. The experimental results, shown in Figure 25 where SLA contains a 5% violation limit, indicate that OSSBNP can effectively limit the SLA violation ratio under such constraint, less than 50 violations among 1000 repeated experiments, while the other two approaches cannot provide such guarantee. Therefore, OSSBNP has a unique advantage over the other approaches although its required execution time is about 10 times longer than CD-ICA, as shown in Figure 4.26. σ=1~5 σ=11~15 σ=21~25 σ=31~35 σ=41~45 σ=51~55 DD-ICA 1271.741 1242.386 1215.926 1276.347 1354.913 1401.183 CD-ICA 660.9628 701.0797 742.4259 783.9233 825.4772 867.5408 OSSBNP 655.6314 675.6897 696.3633 717.1118 1015.636 982.7726 0 200 400 600 800 1000 1200 1400 1600 COS T

scenario4

(40)

Figure 4.25: Evaluation of the capability of SLA enforcement

Figure 4.26: Comparison of required execution time of different approaches

scenario1 scenario2 scenario3 scenario4

DD-ICA 235 63 6 215 CD-ICA 575 214 64 624 OSSBNP 2 19 1 0 0 100 200 300 400 500 600 700

violations

0 10 20 30 40 50 60

DD-ICA CD-ICA OSSBNP

execution time

DD-ICA CD-ICA OSSBNP

(41)

Chapter 5. Conclusions and Future Work

Cloud services have been becoming more and more popular and important as cloud computing and the SaaS model emerged. For providing complex and large-scale services, composite cloud services based on the SOA technologies are gaining attention in both research work and practical system development since they are promising in bringing lots of benefits, such as fast and flexible development as well as greater market opportunities for software components. To realize the benefits of composite cloud services, several research issues have to be addressed, including service discovery, service composition, service selection, security concerns, and so on. This thesis focuses on the service selection problem which concerns the QoS performance of an entire composite cloud service.

Most previous research works on service selection assumed deterministic QoS parameters and proposed solutions based on different optimization techniques. However, in practice we know that most performance parameters, such as service response time, are not always deterministic and rather follow a stochastic distribution. Therefore, this thesis deals with the service selection problem in a dynamic cloud environment with stochastic performance variation. The goal is to efficiently and effectively select among existing functionally equivalent services for putting them together to provide new composite cloud services at the minimal costs under some QoS constraints.

We propose two approaches to the service selection problem in this thesis. The first one is an iterative compound approach, with each iteration containing three steps: Integer Linear Programming (ILP) optimization, simulation of stochastic performance, and adaptation. The second approach is a one-step method based on the Chebyshev’s theorem and nonlinear

(42)

programming. It takes into consideration the stochastic performance in the objective function of a nonlinear programming formulation.

The advantage of the first approach is that it can reduce the total costs as effectively as the second nonlinear programming approach, but requires much less computational time. However, although having higher computational complexity, the second approach has a unique advantage which is the capability of enforcing an upper bound on SLA violation while minimizing the costs. This capability can be useful since in many cases the SLA might contain the enforcement of QoS violation ratio over a specific period of time or a specific number of service requests. The proposed approaches were evaluated with a series of simulation experiments and compared to a previous method in the literature. The experimental results indicate that our approaches outperform the previous method significantly across different scenarios with different relationships among services’ QoS attributes and costs.

In this thesis, we focus on the cost and response time performance of composite cloud services. Therefore, among various QoS parameters we dealt with mean response time and the standard deviation of response time of each service. However, service availability is another factor which could affect the response time or even reliability of composite cloud services although current cloud computing platforms are in general reliable enough. It is a promising future research direction to take both response time and availability into consideration in developing service selection approaches.

(43)

References

[1] R. Buyya, C. S. Yeo, S. Venugopal, “Market-Oriented Cloud Computing: Vision, Hype, and Reality for Delivering IT Services as Computing Utilities,” Proceedings of IEEE

International Conference, pp. 5-13, 2008.

[2] Amazon EC2, http://aws.amazon.com/cn/ec2/, (2014.7).

[3] Google App Engine, https://developers.google.com/appengine/?hl=zh-tw, (2014.7).

[4] Microsoft Azure, http://azure.microsoft.com/, (2014.7).

[5] Cloud computing, http://en.wikipedia.org/wiki/Cloud_computing, (2014.7).

[6] J. Junjie, Z. Jian, “Research on Open SaaS Software Architecture Based on SOA,”

Proceedings of International Symposium on Computational Intelligence and Design (ISCID), pp. 144-147, 2010.

[7] D. Schuller, U. Lampe, J. Eckert, R. Steinmetz, S. Schulte, “Cost-driven Optimization of Complex Service-basedWorkflows for Stochastic QoS Parameters,” Proceedings of

IEEE 19th International Conference on Web Services, pp. 66-73, 2012.

[8] D. Ardagna, B. Pernici, “Adaptive Service Composition in Flexible Processes,”

Proceedings of IEEE Transactions on Software Engineering, vol. 33, no. 6, pp. 369–

384, 2007.

[9] D. A. Menasc´e, E. Casalicchio, V. K. Dubey, “A Heuristic Approach to Optimal Service Selection in Service Oriented Architectures,” Proceedings of Workshop on

Software and Performance. ACM, pp. 13–24, 2008.

[10] A. F. M.Huang, C. W. Lan, S. J. H.Yang, “An Optimal QoS-based Web Service Selection Scheme,” Proceedings of Information Sciences (ISCI), vol. 179, no. 19, pp. 3309–3322, 2009.

[11] A. Strunk, “QoS-Aware Service Composition: A Survey,” Proceedings of European

Conf. Web Services (ECOWS) IEEE Computer Society, pp. 67–74, 2012.

[12] Integer programming , http://en.wikipedia.org/wiki/Integer_programming, (2014.7).

[13] R. E. Walpole, R. H. Myers, S. L. Myers, Probability and Statistics for Engineers and Scientists ,9th Edition, published by Pearson, 2012.

(44)

[14] Nonlinear programming, http://en.wikipedia.org/wiki/Nonlinear_programming,(2014.7). [15] P. Czarnul, “Modeling, Run-Time Optimization and Execution of Distributed Workflow

Applications in the JEE-based BeesyCluster Environment,” The Journal of

Supercomputing, vol.63, Iss. 1, pp. 46-71, 2013.4.

[16] P. Czarnul, M. Fraczak, A. Banaszczyk, M. Fiszer, K. Ramczykowska, “Remote Task Submission and Publishing in BeesyCluster: Security and Efficiency of Web Service Interface,” Lecture Notes in Computer Science, vol. 3911, pp. 220-227, 2006.5.

[17] M. Keidl, S. Seltzsam , A. Kemper, “Reliable Web Service Execution and Deployment in Dynamic Enviroments,” Proceeding of the International Workshop on Technologies

for E-Services, pp. 104-118, 2003.

[18] A. Zisman, G. Spanoudakis, J. Dooley, I. Siveroni, “Proactive Runtime Service Discovery: A Framework and Its Evaluation,” IEEE Transactions on Software

Engineering, pp. 954-974, July 2013.

[19] J. Xu, R. Zhang, K. Xing, S. Reiff-Margamiec, “Service Discovery Using Ontology Encoding Enhanced by Similarity of Information Content,” Proceedings of 2013 IEEE

World Congress on Services, pp. 209-214, June 2013.

[20] I. Trummer, B. Faltimgs, W. Binder, “Multi-Objective Quality-Driven Service Selection—A Fully Polynomial Time Approximation Scheme,” IEEE Transactions on

Software Engineering, pp. 1, December 2013.

[21] W. Ahmed, Y. Wu, W. Zheng, “Response Time based Optimal Web Service Selection,”

IEEE Transactions on Parallel and Distributed Systems, pp. 1, December 2013.

[22] H. Zheng, W. Zhao, J. Yang, A. Bouguettaya, “QoS Analysis for Web Service Compositions with Complex Structures,” IEEE Transactions on Services Computing, pp. 373-386, July 2013.

[23] W. Jiang, S. Hu, “Top K Query for QoS-Aware Automatic Service Composition,” IEEE

Transactions on Services Computing, pp. 1, November 2013.

[24] C. Sandionigi, D. Ardagna, G. Cugola, C. Ghezzi, “Optimizing Service Selection and Allocation in Situational Computing Applications,” IEEE Transactions on Services

(45)

[25] F. ALRebeish, R. Bahsoon, “Risk-Aware Web Service Allocation in the Cloud Using Portfolio Theory,” Proceedings of 2013 IEEE International Conference on Services

Computing, pp. 675-682, June 2013.

[26] S. Rosario, A. Benveniste, S. Hear, C. Jard, “Probabilistic QoS and Soft Contracts for Transaction-Based Web Services Orchestrations,” IEEE Transactions on Services

Computing, pp. 187-200, October 2008.

[27] N. Fakhfakh, H. Verjus, F. Pourraz, “QoS-Aware Adaptive Service Orchestrations Based on the Choquet Integral,” Proceedings of IEEE International Conference on E-Business

Engineering, pp. 77-84, October 2011.

[28] G. Cugola, L. S. Pinto, G. Tamburrelli, “QoS-Aware Adaptive Service Orchestrations,”

Proceedings of 2012 IEEE 19th International Conference on Web Services (ICWS), pp.

440-447, June 2012.

[29] W. Fdhila, S. Rinderle-Ma, A. Baouab, O. Perrin, C. Godart, “On Evolving Partitioned Web Service Orchestrations,” Proceedings of 2012 5th IEEE International Conference

on Service-Oriented Computing and Applications (SOCA), pp. 1-6, December 2012.

[30] C. Wang, J. L. Pazat, “A Chemistry-Inspired Middleware for Self-Adaptive Service Orchestration and Choreography,” Proceedings of 2013 13th IEEE/ACM International

Symposium on Cluster, Cloud and Grid Computing (CCGrid), pp. 426-433, May 2013.

[31] A. Kattypur, N. Georgantas, V. Issarny, “QoS Composition and Analysis in Reconfigurable Web Services Choreographies,” Proceedings of 2013 IEEE International

Conference on Web Services (ICWS), pp. 235-242, June 2013.

[32] Z. Mao, J. Yang, Y. Shang, C. Liu, J. Chen, “A Game Theory of Cloud Service Deployment,” Proceedings of 2013 IEEE World Congress on Services (SERVICES), pp. 436-443, June 2013.

[33] F. Legillon, N. Melab, D. Renard, E. G. Talbi, “Cost Minimization of Service Deployment in a Public Cloud Environment ,” Proceedings of 2013 IEEE International

Symposium on Parallel & Distributed Processing, Workshops and Phd Forum (IPDPSW), pp. 491-498, May,2013.

[34] S. Shahand, S. J. Turner, W. Cai, M. H. Khademi, “DynaSched: A Dynamic Web Service Scheduling and Deployment Framework for Data-Intensive Grid Workflows,”

(46)

[35] T. Cucinotta, G. F. Anastasi, “A Heuristic for Optimum Allocation of Real-Time Service Workflows,” Proceedings of IEEE International Conference on Service-Oriented

Computing and Applications, pp. 1-4, December 2011.

[36] J. Kiruthika, S. Khaddaj, “System Performance in Cloud Services: Stability and Resource Allocation,” Proceedings of 2013 12th International Symposium on

Distributed Computing and Applications to Business, Engineering & Science, pp.

127-131, September 2013.

[37] O. Beaumont, L. E. Dubois, H. Larcheveque, “Reliable Service Allocation in Clouds,”

Proceedings of 2013 IEEE International Symposium on Parallel & Distributed Processing (IPDPS), pp. 55-66, May 2013.

[38] D. V. Bernardo, “Utilizing Security Risk Approach in Managing Cloud Computing Services,” Proceedings of 2013 16th International Conference on Network-Based

Information Systems (NBiS), pp. 119-125, September 2013.

[39] P. Wang, K. M. Chao, C. C. Lo, “A Novel Threat and Risk Assessment Mechanism for Security Controls in Service Management,” Proceedings of 2013 IEEE 10 th

International Conference on e-Business Engineering (ICEBE), pp. 337-334, September

2013.

[40] W. Fan, H. Perros,“A Reliability-Based Trust Management Mechanism for Cloud Services,” Proceedings of 2013 12th IEEE International Conference on Trust, Security

and Privacy in Computing and Communications(TrustCom), pp. 1581-1586, July 2013.

[41] S. M. Habib, V. Varadharajan, M. Muhlhauser, “A Trust-Aware Framework for Evaluating Security Controls of Service Providers in Cloud Marketplaces,” Proceedings

of 2013 12th IEEE International Conference on Trust, Security and Privacy in Computing and Communications (TrustCom), pp. 459-468, July 2013.

[42] K. M. Khan, Q. Malluhi, “Trust in Cloud Services: Providing More Controls to Clients,”

IEEE Computer, pp. 94-96, July 2013.

[43] L. S. Barbosa, S. Meng “A Calculus forGeneric,QoS-Aware Component Composition,”

Mathematics in Computer Science, pp. 475-497, 2012.

[44] T. Wu, S. Zhang, X. Wu, W. Dou, “A Consumer-Oriented Service Selection Method for Service-based Applications in the Cloud,” IEEE 16th International Conference on

(47)

[45] M. L. Hale, M. T. Gamble, R. F. Gamble “A Design and Verification Framework for Service Composition in the Cloud,” IEEE Ninth World Congress on Services, pp. 317-324, 2013.

[46] C. K. Ke, Z. H. Lin, M. Y. Wu, S. F. Chang, “An Optimal Selection Approach for a Multi-Tenancy Service based on a SLA Utility,” International Symposium on Computer, pp. 410-413, 2012.

[47] J. Vandewalle, K. Geebelen, E. Truyen, S. Michiels, J. A. K. Suykens, J. Vandewalle, W. Joosen, “I QoS Prediction for Web Service Compositions Using Kernel_Based Quantile Estimation with Online Adaptation of the Constant Offset,” Information Sciences 268 , pp. 397–424, 2014.

[48] I. Trummer, B. Faltings, W. Binder, “Multi-Objective Quality-Driven Service Selection—A Fully Polynomial Time Approximation Scheme,” IEEE Transactions on

Software Engineering, vol. 40, no. 2, pp. 167-191, 2014.

[49] C. Sandionigi, D. Ardagna, G. Cugola, C. Ghezzi, Fellow, “Optimizing Service Selection and Allocation in Situational Computing Applications,” IEEE Transactions on Software

Engineering, vol. 6, no. 3,pp. 414-428, 2013.

[50] G. Cugola, L. S. Pinto, G. Tamburrelli, “QoS-Aware Adaptive Service Orchestrations,”

IEEE 19th International Conference on Web Services, pp. 440-447, 3013.

[51] Z. Ye, A. Bouguettaya, X. Zhou, “QoS-Aware Cloud Service Composition Based on Economic Models,” Springer-Verlag Berlin Heidelberg, pp. 111-126, 2012.

[52] B. Hofreiter, M. M. St’ephane, “Rank Aggregation for QoS-Aware Web Service Selection and Composition,” IEEE 6th International Conference on Service-Oriented

Computing and Applications, pp. 252-259, 2013.

[53] Y. Laili, F. Tao, L. Zhang, Y. Cheng, Y. Luo, B. R. Sarker, “A Ranking Chaos Algorithm for Dual Scheduling of Cloud Service and Computing Resource in Private Cloud,” Computers in Industry 64, pp. 448-463, 2013.

[54] J. Hu, X. Feng, Z. Zhang, Q. Wu, “A Rapid Algorithm to Find Replacement Services for K-Shortest Path Problem with QoS Constraints ,” IFIP International Conference on

Network and Parallel Computing, pp. 710-715, 2007.

[55] C. S. Wu, I. Khoury, “Tree-based Search Algorithm for Web Service Composition in SaaS,” Ninth International Conference on Information Technology, pp. 132-138, 2012.

(48)

[56] J. Liaoa, Y. Liua, X. Zhua, J. Wanga, “Accurate Sub-Swarms Particle Swarm Optimization Algorithm for Service Composition,” The Journal of Systems and Software

90 , pp. 191-203, 2014

[57] W. Li, Y. Zhong, X. Wang, Y. Cao, “Resource Virtualization and Service Selection in Cloud Logistics,” Journal of Networkand Computer Applications 36, pp. 1696-1704, 2013.

[58] D. Bruneo, S. Distefano, F. Longo, M. Scarpa, “Stochastic Evaluation of QoS in Service-Based Systems,” IEEE Transactions on Parallel and Distributed Systems, vol. 24, no. 10, pp. 2090-2099, 2013.10.

[59] Z. Z. Liu, X. Xue, J. Shen, W. R. Li, “Web Service Dynamic Composition Based on Decomposition of Global QoS Constraints,” International Journal of Advanced

Manufacturing Technology, pp. 2247-2260, 2013.

[60] G. Canfora, M. Di Penta, R. Esposito, M. L. Villani, “A Framework for QoS-Aware Binding and Re-Binding of Composite Web Services,” The Journal of Systems and

Software 81 , pp. 1754-1769, 2008.

[61] R. Iordache, F. Moldoveanu, “A Genetic Algorithm for Automated Service Binding,”

24th DAAAM International Symposium on Intelligent Manufacturing and Automation, pp.

1162-1171, 2013.

[62] J. Du, H. Chen, C. Zhang, “A Heuristic Approach with Branch Cut to Service Substitution in Service Orchestration,” International Conference on Frontier of

Computer Science and Technology, pp. 59-67, 2009.

[63] G. H. Alfereza, V. Pelechanob, R. Mazoc, C. Salinesic, D. Diaz, “Dynamic Adaptation of Service Compositions with Variability Models,” The Journal of Systems and Software

91, pp. 24-47, 2014.

[64] P. P. Beran, E. Vinek, E. Schikuta, M. Leitner, “An Adaptive Heuristic Approach to Service Selection Problems in Dynamic Distributed Systems,” 13th ACM/IEEE

International Conference on Grid Computing, pp. 66-75 , 2012.

[65] R. P. Singh, K. K. Pattanaik, “An Approach to Composite QoS Parameter based Web Service Selection,” Procedia Computer Science 19 , pp. 470 -477, 2013.

數據

Table 3.1: Services’ QoS and cost attributes
Table 3.2:  Worst-case aggregation functions for response time and costs
Table 3.3:    Formulation of ILP The goal  min (∑ ∑ c     ∈  ∈
Figure 3.2 :  Critical Task Determination
+7

參考文獻

相關文件

 為了更進一步的提升與改善本校資訊管理系 的服務品質,我們以統計量化的方式,建立

在選擇合 適的策略 解決 數學問題 時,能與 別人溝通 、磋商及 作出 協調(例 如在解決 幾何問題 時在演繹 法或 分析法之 間進行選 擇,以及 與小組成 員商 討統計研

 以課程為目標時,課程包含的是所欲達成的 一組目標,強調課程目標的重要性,所以也 著重於課程目標的選擇、組織、敘寫,並以

在選擇合 適的策略 解決 數學問題 時,能與 別人溝通 、磋商及 作出 協調(例 如在解決 幾何問題 時在演繹 法或 分析法之 間進行選 擇,以及 與小組成 員商 討統計研

For the data sets used in this thesis we find that F-score performs well when the number of features is large, and for small data the two methods using the gradient of the

△△聯合診所所提供之服務範圍計有門診醫療服務(一樓)及 復健治療服務(二樓)兩項,本研究係針對一樓「門診醫療服務流 程」進行研究。由於△△聯合診所之門診醫療服務不具設計及研發

由於本計畫之主要目的在於依據 ITeS 傳遞模式建構 IPTV 之服務品質評估量表,並藉由決

Hammer and Champy (1993)則認為流程再造是從產生問題的基礎重新思 考,徹底翻新作業流程,以便在成本、品質、服務與速度等衡量指標上獲得改 善。Hammer