BSS: a brokering model for service selection using integrated weighting approach in cloud environment

Cloud providers shares their resources and services through collaboration in order to increase resource utilization, profit and quality of services. The offered services with different access patterns, similar characteristics, varied performance levels and cost models create a heterogeneous service environment. It becomes a challenging task for users to decide a suitable service as per their application requirements. Cloud broker, an inter-mediator is required in service management to help both cloud providers and users. Cloud broker has to store all the information related to services and feedback of users on those services in order to provide the best services to end-users. Brokering model for service selection (BSS) has been proposed which employs integrated weighting approach in cloud service selection. Subjective and objective weights of QoS attributes are combined to compute integrated total weight. Subjective weight is obtained from users’ feedback on QoS attributes of a cloud service while objective weight is computed from benchmark tested data of cloud services. Users’ feedback and preferences given to QoS parameters are employed in subjective weight computation. Objective weight is computed using Shannon’s Entropy method. Total weight is obtained by combining subjective and objective weights. BSS method is employed to rank cloud services. Simulation with a case study on real dataset has been done to validate the effectiveness of BSS. The obtained results demonstrate the consistency of model for handling rank reversal problem and provides better execution time than other state-of-the art solutions.


Introduction
Cloud Computing delivers computing services such as storage, networking, processing, etc. on demand and subscription basis over Internet. These services are offered as Infrastructure as a Service (IaaS), Platform as a Service (PaaS), and Software as a Service (SaaS) [1]. IaaS provides infrastructure facilities to run, deploy and manage virtual machines. SaaS provides complete set of applications such as customer relationship management (CRM). PaaS provides platforms such as Google App Engine to develop applications [2]. computing service on higher price. Amazon EC2 [5] offers its same computing services on different prices. It became a very difficult task for a user to select an appropriate services as per QoS demands. QoS demands include both functional and non-functional parameters [6]. Every cloud provider can not fulfill all QoS requirements. There may be a trade-off between fulfilling different QoS demands by service providers. Users have to search and test all cloud services. This becomes infeasible when number of service providers are more.
Multiple cloud environment [7] provides a platform where service providers can offer their cloud services through collaboration. Cloud computing with multiple cloud providers is the new emerging computing paradigm [8]. A huge pool of services is created with varied services such as computing, data, storage, applications [9] in multiple cloud environment. Many services of the pool are of same type but offered with different access methods and posses diverse characteristics [10]. Users have to identify and select desired service from this pool. It causes difficulty to them for selection of the best one because of similar functionality of services but offered differently. An inter-mediator is required to handle issues of service providers and users. So that users have not to visit each and every cloud provider for services. Cloud broker [11] works as an inter-mediator. Cloud broker collects all the required attributes of services from different service providers and offers discovery, ranking, selection, allocation, etc. of services as per requested QoS demands [12].
The nature of Cloud environment is dynamic, heterogeneous and distributed. Therefore cost and performance based metrics and benchmarks of traditional computing environments such as high performance, grid, and cluster computing etc. can not be applied to cloud computing environment [13]. Many organizations such as Information and Communication Technology Service Quality (ICTSQ), Application Performance Index (APDEX), ISO/IEC 9126, eSourcing Capability Model-Client Organizations (eSCM-CL) and Service Measurement Index (SMI) [14] are trying to frame standards and benchmarks for evaluating different cloud services. Cloud service ranking faces many challenges. One of them is collection of QoS values of services [15]. There are many entities which provides QoS data both functional and non-functional of cloud services. End users provide feedback of a cloud service on various QoS parameters. These values can be in linguistic terms which is to be converted in quantifiable form [16]. Cloud service repositories provide QoS values of cloud services which is difficult to measure. Trusted third party monitoring tools provide live QoS data of cloud services. Another challenge is how to measure time varying values of QoS attributes e.g. virtual machine's performance found varying over time compared with the SLA offered [5]. Rank a cloud service on gathered QoS data is also difficult because these data are not in one format.
The above issues make cloud service selection a complex problem which involves more than one QoS criteria to be addressed. Service selection in cloud environment is a multi criteria decision making (MCDM) [17] problem. QoS attributes may be independent or inter-dependent. The QoS attribute and its sub-attribute affects in cloud service ranking and selection [18]. Users demand various QoS requirements as per their applications' need. The user QoS needs can be categorized in to two category: One which are interested only main QoS attributes such as price. Another which are interested not only main QoS attributes but also in sub-attributes. For example price attribute can be decomposed in inbound bandwidth price, outbound bandwidth price and base plan.
Several researchers have proposed techniques to solve cloud service selection problem using multi-criteria decision making approach. There is a lack of hybrid multicriteria decision making technique which employs both subjective and objective assessment of cloud services attributes. The QoS attributes values play an important role in evaluation of services. The weight value assigned to QoS attribute describes its relative Joyent with comparison to other attributes in the evaluation process. Every QoS attribute cannot be assigned equal weight because of its diversification and meaning in decision making [19]. Many approaches can be found in literature to obtain weight of a QoS attribute [20] which can be classified into subjective and objective. The obtained weight from these approaches is known as subjective weight and objective weight [21].
In this paper, we have proposed a brokering model for service selection in cloud environment which employs integrated weighting approach named as BSS. Integrated weight is computed from subjective and objective assessment of cloud services. Subjective assessment of any cloud service is done using users' feedback on various QoS attributes. The feedback is in linguistic terms which is converted into crisp numerical value by employing fuzzy set theory. BSS employs fuzzification and defuzzification methods to compute crisp value of end users' feedback data. Objective assessment of a cloud service is performed through benchmark tested data. Therefore benchmark tested data are also employed to evaluate cloud services. BSS integrates both subjective and objective assessment of cloud service to find best service. We have extended our previous work [22] in this paper with BSS model. Our previous work do not consider end users' feedback and different weighting approaches in service selection. BSS collects end users' feedback on various QoS attributes, converts into crisp numerical value and employs it for service evaluation. It also gathers benchmark tested data of The rest of the paper is organized as follows: Related work is discussed in "Related work" section. "Brokering model for service selection (BSS)" section discusses proposed brokering model, BSS. Service selection method is discussed in "BSS technique" section. "Experiment and result" section provides experimental environment and discussion of results. Conclusion and future work is provided in "Conclusion" section.

Related work
Service selection in multiple cloud environment is one of the most challenging and researched topic for researchers. This section discusses literature related to cloud brokering techniques for cloud service selection. Recent research work in cloud service selection has focused on providing methods and mechanism to rank services which will help users in selecting best service.
Patiniotakis et al. [23] have presented a brokerage service based on preference-based recommender system for ranking cloud services. It applies multi-criteria decision making to optimize the brokerage. The recommender system considers heterogeneous characteristics of service in evaluation. Ranking of services is done with fuzzy AHP [24] method which considers multi-objective assessment of services. It considers precise and imprecise metrics to deal with fuzziness of cloud services opinions. The method provides more expressive and unified way to gather users' preferences.
Chan et al. [25] have proposed an enhanced fuzzy Analytic Hierarchy Process (AHP) which is based on fuzzy AHP. It uses triangular fuzzy number to convert linguistic terms into numeric form. The method finds weight vectors of customer requirements and provides prioritizing them. A case study based evaluation of proposed method has been given which demonstrates the effectiveness of method by capturing vagueness of human judgment in weight calculation.
Garg et al. [26] have proposed SMICloud framework for ranking cloud services using AHP [24] method. Service Measurement Index (SMI) parameters including functional and non-functional QoS parameters are formulated. Main attribute and sub-attributes of QoS parameters are considered for evaluating a cloud service. The rank of cloud services are computed using AHP method.
Patiniotakis et al. [27] have proposed an approach for cloud service evaluation based on heterogeneous service characteristics. It provides alternative classification of metrics used for cloud service ranking. Proposed approach uses method to convert fuzziness of service characteristics into numerical form. Proposed approach provides unified way to assess multi-objective criteria of a cloud service. Proposed model implements fuzzy AHP method to evaluate it.
Sidhu and Singh [28] have proposed a framework based on subjective attributes assessment to compute trust of a cloud service provider. The framework employs AHP [29] and TOPSIS [30] methods to compute trust value of a cloud service. AHP method is employed to compute Joyent in the form of a weight value of QoS parameters. TOPSIS is employed to compute trust value of a cloud service considering weight value provided by AHP method.
Rehman et al. [31] have proposed a multi-criteria decision making method for cloud service selection. The method distinguishes service on its various QoS attributes. Proposed approach has considered services which are similar in various specifications but differ in performance.
Anastasi et al. [32] have proposed a genetic approach for cloud brokering. It finds suitable IaaS services which satisfies QoS requirements of applications. Proposed approach mitigates scalability and vendor lock-in issues by finding near optimal solution according to customer preferences. It supports different cost models of cloud providers.
Sundareswaran et al. [33] have proposed a brokerage architecture for service selection. Large number of cloud service providers and thier information are managed through a indexing technique which is given by architecture. It also contains one method which uses query algorithm for finding suitable service or set of services. It also aggregates services if single service cannot satisfy the requirements.
Qu et al. [34] have proposed a framework for cloud service selection which aggregates subjective assessment for users and objective performance from a trusted third party. The subjective and objective attributes of a cloud service are normalized and aggregated using simple additive weighting system. The framework provides a technique to filter feedback from malicious users. A case study has been proposed to verify the framework. Kumar et al. [35] have proposed a framework for selection of cloud services considering fuzzy environment. Users can provide their input for QoS parameters through linguistic terms. AHP and fuzzy TOPSIS methods are employed for selection of cloud services. AHP has been employed to compute weight of QoS parameters. TOPSIS with triangular fuzzy number has been employed to rank cloud services.
Paunovic et al. [36] have proposed a two-stage fuzzy logic model for cloud supplier evaluation and selection. The model is based on Fuzzy Analytic Hierarchy Process (FAHP). It applies fuzzy logic approaches based on technology perspective to model users requirements. The model helps decision makers to extract knowledge from database to find best cloud providers. It is evaluated through a case study based numerical example.
Esposito et al. [16] have proposed a method for storage cloud service selection in cloud environment. It uses fuzzy set theory to overcome problems associated in subjective preference given by users to QoS levels. Dempster-shafer theory of evidence and game theory approach are used to resolve service selection problem and find best service as per users QoS requirements.
Alam et al. [37] have proposed an integrated uncertainty aware hybrid multi criteria decision making model for cloud service evaluation and selection. The model is integration of Fuzzy Analytic Hierarchy Process [38] and Weighted Aggregated Sum Product Assessment method [39]. The model can be used for finding best services of IaaS, SaaS and PaaS types. Proposed model provides rank of services based on QoS attributes of cloud services. Case study based evaluation of the model has been presented.
Tajvidi et al. [40] have proposed a fuzzy logic framework for selection of cloud services. The framework consists of four modules: interface, QoS management, service selection process and cloud service repository. Interface module gathers data from users about their requirements. QoS management module captures linguistic weight of requested criteria. It converts into crisp value through triangular fuzzy numbers. Service selection modules performs two tasks: compute the QoS metrics of services and assign rank to the services. Cloud service repository is responsible to collect different QoS values of services from different sources. Case study based evaluation of proposed framework has been done to validate it.
Rohit and Rakesh [41] have proposed a framework for cloud service selection based on Gaussian TOPSIS (G-TOPSIS) method. G-TOPSIS considers QoS feedback of cloud services provided by different users for ranking them. It also considers priority assigned to QoS parameters by end user. The QoS values are normalized using cumulative Gaussian density function. The framework has been tested on real time dataset obtained from CloudHarmony. G-TOPSIS ranks cloud services similar to TOPSIS method. G-TOPSIS solves rank reversal problem. G-TOPSIS does not consider inter-dependency of QoS attributes as well as qualitative QoS metrics. It does not consider QoS feedback given in linguistic terms.
Hussain et al. [42] have proposed a framework, CSSaaS for cloud service selection in cloud computing environment. CSSaaS consists of two parts: monitoring & indexing and filtration & recommendation. The monitoring & indexing component consist of a benchmarking/monitoring service, an indexing service, and an indexed services database. The filtration & recommendation component includes a requirement identification service, a filtration service, and a ranking/recommendation service. CSSaaS contains a multicriteria decision making approach named as Fuzzy Linear Best Worst Method (FLBWM) which works under fuzzy environment. FLBWM has been tested in two conditions: optimization of parameters and IaaS service selection. Results are obtained on sensitivity analysis, rank correlation, collaborative decision making. Obtained results demonstrate that CSSaaS performs better compared to other state of the art solutions. CSSaaS do not consider discrete values for evaluation of cloud services.
It can be observed from above discussion that service selection in cloud environment is a decision making problem which has been solved using MCDM techniques by researchers. Authors have used either subjective or objective attributes to provide Joyent to QoS criteria in MCDM techniques. There is scope to integrate both subjective and objective attributes for finding suitable service as per users' requirements. We have integrated both subjective and objective attributes' weight to search the cloud services based on users' QoS demands.

Brokering model for service selection (BSS)
In this section, we describe our proposed broker based cloud service selection model (BSS) for cloud environment. BSS employs users' feedback of cloud services and third party given tested data for finding best service for a user. It consists of four modules: service selection, users' feedback, feedback aggregation service and benchmark tested data modules. The proposed model is shown in Fig. 1. Users interact to broker to find suitable service as per their needs. Users provide functional and non-functional requirements as QoS demands as well as preference to these QoS parameters in linguistic form. The broker return service or set of services based on given search.   Very Good Bad (5,7,9) Best Worst (7,9,9) every cloud service to measure QoS attributes. Neither subjective nor objective feedback of a cloud service is sufficient to describe its functionality. Users' feedback module provides subjective feedback while benchmark testing module provides objective feedback of a cloud service. User provides an preference to a QoS attributes of a cloud service such as high reliable cloud service. This preference is converted into a weight value in computation. As the preference is given into linguistic form, fuzzy rating as given in 1 is employed to compute its crisp value. The preference to subjective and objective attributes can be different. This lets to know the user that which attributes are good for requested service. • Cloud Service Repository: This module is the catalog for storing information of cloud services and QoS parameters given by service providers. It is having information related to the cloud services which are offered by different cloud service providers. The past information of cloud services is stored with this module. Service ranking and selection module access information of cloud services form this module for ranking them.

BSS technique
In this section, we describe out proposed method for service selection in cloud environment. The method employs aggregated feedback of subjective and objective attributes of cloud services. In our model as shown in previous section, there is only one trusted third party which provides values of objective attributes and sufficient users have provided subjective attribute feedback of cloud services. The trusted third party provides single set of objective attributes as asked by cloud broker for set of cloud services. The service selection process is shown in algorithm (1). The detailed description of BSS method as follows: The decision matrix, D is shown below which is having m cloud services and n QoS criteria: The decision matrix consists of cloud services form different cloud providers hence it carries different scales for QoS attributes. It must be normalized in order to apply common method for evaluation. The benefit QoS attributes are normalized using Eq. (1).
The cost QoS attributes are normalized using following Eq. (2).
x ij = r max − r ij r max − r min (2) In the next step, weighted normalized decision matrix is computed. The weight is aggregated of subjective and objective weights. The subjective weight is computed on the values derived from feedback of users. The subjective feedback values are in linguistic form. The feedback on different QoS parameters is collected as per terms given in Table 1 for both benefit and cost QoS attributes. A decision matrix with available service alternatives and criteria feedback is formed as shown below. 12 a 13 . . . a 1n  a 21 a 22 a 23 . . . a Here, a ij represents feedback value of i th service alternative with respect to j th QoS criteria. Users always interested in one or other QoS attributes with some more values. This preference is assigned through a weight value. The preference parameters and their corresponding values are shown in Table 2.
Compute adverse measures of each cloud service here, Compute total measure of each cloud service using equation

(6)
10 Sort the values of total measure in ascending order 11 Lower the value of total measure, higher is the rank 12 Select the cloud service with highest rank; These preference parameters are applied to respective QoS criteria using following equation. r ij =p j ⊗ã ij , j = 1, 2, 3, ..., m; i = 1, 2, 3, ..., n (8) Here,p j is the preference value assigned to QoS criteria j and a ij is the feedback value on j th QoS criteria of i th cloud service. The obtained decision matrix after multiplying preference parameters is in fuzzy form. Defuzzification is required to compute numerical crisp values from them. Strongly Important (5,7,9) Absolutely Important (7,9,9)  Beta distribution [45] is employed to compute numerical crisp value from a triangular fuzzy number.
Here, l, m and u denotes left hand, middle and right hand number of a triangular fuzzy number, respectively. Normalization of criteria values is required so that they can be compared with other values. The QoS criteria for a cloud service can be categorized into two: benefit and cost. The benefit and cost QoS attributes are normalized using Eqs. (1) and (2), respectively. The subjective weight of QoS attributes is calculated with following equation: n j=1 x ij (10) Benchmark testing data provides real time values of QoS attributes of a cloud service. They are more important and can be considered error-free. Objective weight of a QoS criteria is computed through benchmark tested data. Entropy method is employed for objective weight  calculation. Shannon has introduced entropy theory in information theory [46]. Entropy method is very simple to compute disorder degree between set of values. Here, QoS criteria of a cloud service is evaluated through objective values. Based on the value, weight of QoS criteria is computed. According to entropy method if the disorder degree is less the weight is high. Objective weight of a QoS attribute is computed using following equation: Here n i=1 ow i = 1 (12) r ij ln r ij , j = 1, 2, 3, ..., m k = i ln m (13) Total weight of a QoS attribute i is computed using Eq. (14):  In the next step, favorable and adverse values of each QoS criteria is computed. Favorable values are those which provides positive measures and adverse values are those which provides negative measures. Favorable value of cloud service alternatives for a QoS attribute is computed as: {f j = maxx ij , j=1,2,3,...,m.} Adverse values of cloud service alternatives for a QoS attribute is computed as: {a j = minx ij , j=1,2,3,...,m.} In next step, the difference of favorable and adverse values of each service alternative is computed.
The next step comprises of computation of favorable measure of each cloud service alternative.
The adverse measure of each cloud service alternative is computed with following equation: here, In final step total measure is computed with following equation: The total measure values are sorted in ascending order. Lower value is assigned higher rank. Cloud service with highest rank is assigned to user.

Experiment and result
The proposed brokering model, BSS for service selection has been simulated using CloudSim [47], simulation toolkit widely used for simulation of cloud computing environment. BSS in evaluated through a case study which demonstrate effectiveness and usefulness in cloud service selection. The dummy dataset is used to compute subjective weight while a real dataset which has been collected by kumar et al. [35] is used to compute objective weight of QoS parameters. The dataset is created from benchmark service provider CloudHarmony. BSS divides service selection in two parts: aggregate weight computation and service ranking.

Weight computation
The subjective weight of QoS criteria is computed on the basis of feedback provided by users which is in linguistic terms. The service alternatives Joyent, Amazon, City-Cloud, Softlayer, HP, Century Link, Rackspace, Google, Linode and Azure which are further represented as CS1, CS2, CS3, CS4, CS5, CS6, CS7, CS8, CS9 and CS10, respectively as given in paper ( [35]) are considered. The QoS criteria CPU performance, Disk I/O consistency, Disk performance, Memory performance, and Cost which are further referred as SQoS1, SQoS2, SQoS3, SQoS4, and SQoS5, respectively are considered for evaluation of cloud services. Disk performance and memory performance are considered as benefit and others as cost attributes.  The linguistic terms given in Table 1 are used to describe the feedback values on different QoS criteria by a user. The decision matrix shown in Table 3 for obtaining subjective weights is considered.
The linguistic terms are converted into fuzzy ratings as per given in Table 1 values, which is shown in Table 4. The defuzzification is applied to convert fuzzy ratings into numerical crisp values, which is shown in Table 5. These values are further normalized to make them in one form and shown in Table 6. The subjective weight of QoS criteria is obtained and shown in Table 7.
The dataset which has been generated through benchmark testing, given in paper ( [35]) has been used to compute objective weight of QoS criteria. The decision matrix computed from the dataset is shown in Table 8.
Normalized decision matrix for objective weight computation is shown in Table 9. The objective weights obtained from normalized decision matrix is shown in Table 10. Total weight of required QoS attributes is computed using Eq. (14) and shown in Table 11.

Service ranking
In next step after computing integrated weight of all QoS parameters, ranking of cloud services is performed. Service ranking method with numerical calculation is also shown for better understanding of working of proposed BSS method.
• Construct Normalized Decision Matrix: The decision matrix shown in Table 8 is employed to evaluate BSS method. The normalized matrix which is shown in Table 9 is computed using Eqs. (1) and (2) for benefit and cost criteria, respectively.   (9) is multiplied with the weight values as shown in Table 11 to construct the weighted normalized decision matrix. The matrix is shown in  Table 14. It can be observed from the Table 14 that Amazon is ranked first and Linode is ranked as second. The order of rank is: Amazon, Linode, HP, Softlayer,  Google, Century Link, Joyent, Rackspace, Azure and City-Cloud.

Sensitivity analysis
The sensitivity analysis is performed to check the robustness of proposed model in different scenario. It is also performed to evaluate the proposed model for rank reversal problem. If ranking model gives non-optimal ranks in case of addition and removal of cloud services then the model cannot solve rank reversal problem. The proposed model is also verified for rank reversal problem through sensitivity analysis. Two scenario is possible: first some cloud services are removed and another some cloud services as added in existing cloud services set. Five cloud services, Joyent, Amazon, City-Cloud, Softlayer and HP are taken for first case scenario. The sensitivity analysis is performed by removing City-Cloud cloud service in second experiment. In the first experiment all cloud services were considered. In third experiment, HP cloud service were removed. The total measure values are computed and shown in Table 15. The rank of cloud services are shown in Fig. 2. It can be deduced from above two results that the rank of cloud services are consistent. Hence, BSS model is robust in scenario where cloud services are removed in experiments. The sensitivity analysis for the second case scenario is performed starting with five cloud services: Joyent, Amazon, City-Cloud, Softlayer and HP. In subsequent experiments, three more services are added. In second experiment Google, in third Google and Rackspace, in forth Google, Rackspace and Linode is added. The total measure and rank of all the cloud services in each experiment is computed. The total measure is shown in Table 16 and rank is shown in Fig. 3. It can be observed from the Table 16 that total measure of cloud services is consistent in each experiment until a better cloud service is not introduced. The results show that the BSS model is also consistent and robust in service addition scenario for rank reversal problem.

Result validation
The proposed model, BSS has been simulated and obtained results are compared with existing literature, AHP [26], improved TOPSIS [28] (I-TOPSIS), fuzzy TOP-SIS [35] (F-TOPSIS) based frameworks. The obtained rank for each method is shown in Fig. 4. It can be observed that BSS model gives similar results as given by I-TOPSIS and F-TOPSIS methods. It can be deduced from results that proposed framework is consistent for service selection. BSS is also tested on execution time performance metric. User feedback on 500 cloud services in linguistic terms has been generated and a decision matrix is formed. In the first experiment 100 cloud services are evaluated for execution time. In subsequent experiments every time 100 cloud services are added and execution time is noted. The results are compared with AHP, I-TOPSIS and F-TOPSIS methods. BSS is more efficient in each experiments as shown in Fig. 5.

Conclusion
Multiple cloud providers aggregate services and forms a huge heterogeneous environment. These services possess similar characteristics and different performance levels which make service management a difficult task. Brokering model for service selection (BSS) is proposed for cloud environment. Service selection has been done by employing integrated weighting approach. Subjective and objective weights are combined to obtain integrated total weight of QoS parameters. Simulation based evaluation of service selection method with a case study has been done. Results are analyzed using sensitivity analysis to validate the rank reversal problem. BSS works similar to existing methods for cloud service ranking. Results obtained of execution time metric outperforms than other state-of-the art solutions. Overall, BSS is robust for ranking and selection of services in cloud environment.
In the future work, BSS can be extended for group decision making in cloud service ranking and selection. Hierarchical structure of QoS criteria can be employed to test its significance in weight computation and service selection. Page 12 of 14