Elsevier

Computers & Electrical Engineering

Volume 42, February 2015, Pages 107-113
Computers & Electrical Engineering

A combinatorial optimization algorithm for multiple cloud service composition

https://doi.org/10.1016/j.compeleceng.2014.11.002Get rights and content

Highlights

  • The COM2 algorithm efficiently considers multiple clouds while composing services.

  • The proposed algorithm successfully competes with previous algorithms.

  • Low examined service number is achieved without impacting the combined cloud number.

Abstract

Service composition is an evolving approach that increases the number of applications of cloud computing by reusing existing services. However, the available methods focus on generating composite services from a single cloud, which limits the benefits that are derived from other clouds. This paper proposes a novel COMbinatorial optimization algorithm for cloud service COMposition (COM2) that can efficiently utilize multiple clouds. The proposed algorithm ensures that the cloud with the maximum number of services will always be selected before other clouds, which increases the possibility of fulfilling service requests with minimal overhead. The experimental results demonstrate that the COM2 successfully competes with previous multiple cloud service composition algorithms by examining a small number of services—which directly relates to execution time—without compromising the number of combined clouds.

Introduction

Cloud computing is an elastic service provisioning model that enables on-demand network access to a shared pool of computing resources. The popularity of cloud computing has increased in recent years. Currently, cloud computing provides a single set of physical resources for providing multiple information technology (IT) services to a large user base with varying needs [1]. Cloud services are offered as self-contained components that provide IT solutions for consumer requirements via the Internet [2]; they are typically delivered by a Web service interface. Although cloud services are used interchangeably with Web services, these services differ primarily with respect to their service level agreement (SLA) identification, quality of service (QoS) and service discovery [3].

In many cases, a user’s needs require multiple cloud services to be provided, which is the main driver for the concept of service composition. This concept focuses on the creation of a new value-added cloud service that incorporates previously existing cloud services [4].

The service composition problem is an NP-hard optimization problem [5], [6]. Thus far, several service composition approaches have emerged to provide guidance for this problem by combining services to create higher-level business processes at a reduced time and cost with increased efficiency [7]. For instance, an optimal service composition algorithm was introduced based on the QoS of the candidate cloud services [8]. An additional criterion that accounts for the relationships among the different cloud services was added, which improves the quality of the composite services [9]. EFlow was presented [10] as a platform for service composition. The general idea behind this method is that software agents can be utilized by Web services to perform automatic Web service discovery, execution and composition. A semantic Web technique was proposed [11] to generate composite services from a high-level declarative description. This strategy uses the syntactic and semantic properties of the services to determine whether two services are composable. More than ten service composition methods have been reviewed and analyzed in [6]; however, a common assumption among these techniques was that all the services that are required for the composition are contained within a single cloud. This approach is simply unrealistic; many business processes require services from different providers and thus from multiple clouds [12].

Multiple cloud service composition is an emerging topic that has attracted much recent attention. Multiple clouds, multi-clouds and cloud federations are newly coined terms in cloud computing that have begun to attract attention. These synonymous terms refer to cloud services that are utilized through several cloud providers [13], [14]. There are four approaches to implementing multiple clouds.

  • Horizontal multiple clouds. In this approach, multiple providers create a federated cloud by cooperating on an agreed upon price scheme.

  • Inter-clouds. In this approach, clouds are organized into groups based on common criteria, such as addressing, naming, identity, trust and time domains [15].

  • Cross-clouds. In this approach, multiple cloud providers create a federation in which they offer/consume resources through a series of steps, service discovery, match making and authentication [16].

  • Sky computing. In this approach, multiple cloud providers offer multiple services, such as resources, applications and platforms. This architecture enables new value-added services through the composition of existing services with dynamic support to real-time demands. The key feature of sky computing is the transparency of a multiple-cloud environment. Specifically, this architecture provides an image of a single cloud with a seemingly infinite pool of accessible resources [17].

Thus, leading cloud service providers, such as Microsoft, have begun to develop architectures and investigate the challenges associated with multiple cloud services [12]. In an attempt to overcome these challenges, an agent-based approach to composing services in multi-cloud environments has been proposed [18]. Although empirical results have shown that this work might successfully compose services to satisfy service requirements in multiple-cloud environments, the multiagent distributed solutions are always associated with processing and communication overhead costs that limit their benefits [19]. In contrast to this distributed approach, three multiple-cloud service composition algorithms with a centralized control were proposed [2]. The first algorithm, which is referred to as the All Clouds Combination Algorithm, considers all clouds as inputs for the composition and enumerates all possible solutions. This method locates a service composition sequence in an execution time that is relatively short; however, it does not minimize the number of clouds in the final service composition sequence. The second algorithm, which is referred to as the Base Cloud Combination Algorithm, recursively enumerates all cloud combination possibilities until a composition solution is identified in a cloud combination. This method generates an optimal cloud combination with a small number of clouds; however, it requires substantial execution time. The third algorithm, which is referred to as the Smart Cloud Combination Algorithm, is designed to find a near-optimal cloud combination based on an approximation algorithm. This method identifies a sub-optimal cloud combination after searching for a service composition sequence at a reduced cost while utilizing a cloud-reduced set. This algorithm provides a near-optimal cloud combination but remains time consuming.

Based on the above survey, there are always tradeoffs between the execution time and the number of clouds in the last service composition sequence when multiple clouds are considered. In this case, the service composition obstacle is considered to be a combinatorial optimization problem of finding a suitable combination with a short execution time and with a minimal number of clouds. Minimizing the number of clouds is critical because services that are distributed in different clouds substantially increase communication costs and financial charges [2]. This paper proposes a novel COMbinatorial optimization algorithm for cloud service COMposition (COM2) that can efficiently compose services with small numbers of examined services and combined clouds. The proposed algorithm ensures that the cloud with the maximum number of services will be selected before clouds with fewer services are selected, which increases the possibility of fulfilling service requests with minimal overhead costs. When evaluating the COM2 using an experimental framework based on the default Web service test set provided in the OWL-S XPlan package [20], the results showed that the COM2 challenges the available multiple cloud service composition algorithms by achieving a superior tradeoff between the number of combined clouds and the number of examined services.

The remainder of this paper is organized as follows: Section 2 illustrates the system design, giving an example of how it works, while Section 3 describes the implementation and evaluation processes. The experimental results and discussion are presented in Sections 4 Results, 5 Discussion, respectively. The paper is concluded in Section 6 by highlighting future research directions.

Section snippets

System design

Most research has focused on service composition in a single cloud and limits the benefits received from other clouds that might have more suitable services [12]. This paper utilizes combinatorial optimization concepts to develop a novel method for service composition that employs multiple clouds, has a short execution time and requires a minimal number of clouds.

To solve the cloud service composition problem, a framework was developed and is illustrated in Fig. 1. This framework has four main

Evaluation

To evaluate the COM2 and to obtain a better understanding of its performance, a previously developed MCE model [2] was adopted. Thus, we were able to find a ready and suitable implementation for the benchmark algorithms, the All Clouds Combination Algorithm, the Base Cloud Combination Algorithm and the Smart Cloud Combination Algorithm. Additionally, we maintained identical simulation parameters, which leads to a more robust evaluation methodology. The experimental data were based on the

Results

The results of the experiment are shown in Table 4, which lists the number of clouds that are involved in the resulting composition sequence |B| and the number of examined services |N|. The data indicate that the COM2 algorithm successfully maintained a low number of examined services, which is directly related to execution time, while reducing the number of combined clouds compared to the other algorithms. The number of services examined |N| did not exceed 50, and the number of combined clouds

Discussion

The results for the three benchmark algorithms, the All Clouds, the Base Cloud and the Smart Cloud, are all consistent with previously reported results [2], which was expected because we followed the same evaluation methodology and adopted the same cloud simulation model.

Comparing the COM2 to the three algorithms discussed above, the COM2 surpassed the Base Cloud and Smart Cloud algorithms in nearly all cases by a high margin with respect to the number of examined services |N|. Even at its

Conclusions

The objective of this paper was to develop an algorithm that could efficiently consider multiple clouds and perform service composition with a short execution time and minimal numbers of clouds, thereby reducing communication costs and financial charges. The proposed algorithm, COM2, ensures that the cloud with the maximum number of services will always be selected before other clouds, which increases the possibility of fulfilling service requests with minimal overhead.

The results of our study

Acknowledgments

This work was funded by the Long-Term Comprehensive National Plan for Science, Technology and Innovation of the Kingdom of Saudi Arabia, grant number 11-INF1895-08.

Heba Kurdi is an Assistant professor at the Computer Science Department, King Saud University. She received her PhD degree from the School of Engineering and Design, Brunel University, UK. She has many publications in international journals and conferences. Her research interests include Cloud and Grid Computing, Bio-inspired Engineering, Wireless and P2P Networks.

References (20)

  • A. Iosup et al.

    Performance analysis of cloud computing services for many-tasks scientific computing

    IEEE Trans Parallel Distrib Syst

    (2011)
  • Zou G, Chen Y, Xiang Y, Huang R, Xu Y. AI planning and combinatorial optimization for web service composition in cloud...
  • Wu L, Buyya R. Service level agreement (SLA) in utility computing systems....
  • Tang M, Ai L. A hybrid genetic algorithm for the optimal constrained web service selection problem in web service...
  • Canfora G, Penta MD, Esposito R, Villani ML. An approach for QoS-aware service composition based on genetic algorithms....
  • Rao J, Su X. A survey of automated web service composition methods. In: Proceedings of the first international workshop...
  • C. Peltz

    Web services orchestration

    (2002)
  • Cui L, Li J, Zheng Y. A dynamic web service composition method based on viterbi algorithm. In: Proceedings of the IEEE...
  • Bao H, Dou W. A QoS-aware service selection method for cloud service composition. In: Proceedings of the IEEE 26th...
  • Casati F, Ilnicki S, Jin L. Adaptive and dynamic service composition in Eflow. In: Proceedings of the 12th...
There are more references available in the full text version of this article.

Cited by (66)

  • Cloud service selection based on weighted KD tree nearest neighbor search

    2022, Applied Soft Computing
    Citation Excerpt :

    With the successful commercial application of cloud computing, how to apply cloud computing to military organizations to improve the information sharing ability and resource sharing ability of military organizations has become a hot research field for many researchers [1]. Military organization cloud cooperation draws on the infrastructure management approach of cloud computing to virtualize highly dispersed heterogeneous military resources and provide services in the form of services to service requester distributed in different geographical locations, which can achieve both centralized use of dispersed resources and decentralized services of centralized resources, thus enhancing the ability to discover and interoperate between resources [2,3]. By virtualizing heterogeneous resources into services, i.e., cloud services, cloud cooperation enables combat resources to access the network with a unified interface, and users can find the required services by querying the service list [4].

  • Energy-aware service composition in multi-Cloud

    2022, Journal of King Saud University - Computer and Information Sciences
  • Recent advances in energy management for Green-IoT: An up-to-date and comprehensive survey

    2022, Journal of Network and Computer Applications
    Citation Excerpt :

    The composition of services is energy-aware and integrates the minimum number of IoT services to meet a user’s requirements. This solution outperforms similar algorithms have been previously proposed: All Cloud, Base Cloud, Smart Cloud (Zou et al., 2010) and COM2 (Kurdi et al., 2015). To further improve service composition solutions, we should take into account not only the cloud providers aggregate energy, but also the energy needed for the service execution.

  • Cost-effective deployment of certified cloud composite services

    2020, Journal of Parallel and Distributed Computing
  • Quality-aware multi-objective cloud manufacturing service composition optimization algorithm

    2024, Jisuanji Jicheng Zhizao Xitong/Computer Integrated Manufacturing Systems, CIMS
View all citing articles on Scopus

Heba Kurdi is an Assistant professor at the Computer Science Department, King Saud University. She received her PhD degree from the School of Engineering and Design, Brunel University, UK. She has many publications in international journals and conferences. Her research interests include Cloud and Grid Computing, Bio-inspired Engineering, Wireless and P2P Networks.

Abeer Al-Anazi is a Teaching Assistant in the Computer Science Department, College of Computer and Information Sciences, Prince Salman University. She is a Master Student in Computer Science Department in Al Imam Muhammad Ibn Saud Islamic University. She is interested in Distributed Systems, Network Programming, Cloud Computing and Software Defined Networking.

Carlene Campbell is a Lecturer at the Computer Networks Department, University of Wales Trinity Saint David, United Kingdom. She is the Research Director/Coordinator for the School of Applied Computing research group and supervisor of many MSc and PhD students. She has several publications and has participated in many conferences. Her research interests include Wireless Networks, Protocols and Security.

Auhood Al faries is an Assistant Professor at the Information Technology Department, King Saud University, Riyadh, Saudi Arabia. Her research interests include cloud computing, semantic web, knowledge engineering and natural language processing. She has contributed to a number of publications at conferences and international journals. She has been part of a number of program committees at national and international conferences.

Reviews processed and recommended for publication to the Editor-in-Chief by Associate Editor Dr. Danielo Gomes.

View full text