Cloud Computing Reference Architecture from Different Vendor s Perspective Demeke Gebresenbet Bayyou member IEEE 1, Dr. Menchita F. Dumlao 2 1,2 School of Graduate Studies, AMA University, Manila, Philippines Abstract The provision of on-demand access to Cloud computing services and infrastructure is attracting numerous consumers, as a result migrating from traditional server centric network to Cloud computing becomes inevitable to benefit from the technology through overall expense diminution. This growth of Cloud computing service consumers may influence the future data centers and operational models. The issue of inter-cloud operability due to different Cloud computing vendors Reference Architecture (RA) needs to be addressed to allow consumers to use services from any vendor. In this paper we present the Cloud computing RA of major vendors available in scientific literature and the RA of National Institute of Standard Technology(NIST) by comparing the nature of their RA (role based/layer based) and mapping activities and capabilities to the layer(s) or role(s). Keywords Cloud Computing, Cloud Computing Reference Architecture (RA), Cloud Service Consumers, Cloud Service Providers, SaaS, PaaS, IaaS I. INTRODUCTION Cloud computing is a model for enabling ubiquitous, convenient and an on-demand network access to a shared pool of configurable computing resources (e.g., memory, storage, processors, network bandwidth, servers, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction [1]. The unpredictable demands of the web 2.0 era in combination with the desire for better IT resources utilization are driving the needs for more dynamic IT infrastructure that can respond to rapidly changing requirements in a real-time [2]. The concept of Cloud Computing is based on a collection of many old and few new ideas in several research fields like Service-Oriented Architectures (SOA), distributed and grid computing as well as virtualization [3]. In cloud computing era, the computer can no longer be considered in terms of the physical enclosure (i.e. the case, which contains the motherboard, the processor, memory, storage and associated components that constitute the computer). Instead the computer in the cloud ideally comprises a pool of computing resources (i.e. processors, memory, storage, and network bandwidth) potentially distributed physically across different servers and geographical boundaries, which can be organized on demand into a dynamic logical entity(i.e. a cloud computer ) that can be expand and shrink in real-time in order to assure the desired levels of latency sensitivity, performance, scalability, reliability and security to any application that runs on it [2]. As a result, cloud model is composed of five essential characteristics, three service models, and four deployment models [1]. Essential Characteristics: On-demand self-service. A consumer can unilaterally provision computing capabilities, such as server time and network storage, as needed automatically without requiring human interaction with each service s provider. Broad network access. Capabilities are available over the network and accessed through standard mechanisms that use heterogeneous thin or thick client platforms (e.g., mobile phones, laptops, and PDAs). Resource pooling. The provider s computing resources are pooled to serve multiple consumers using a multi-tenant model, with different physical and virtual resources dynamically assigned and reassigned according to consumer demand. There is a sense of location independence in that the customer generally has no control or knowledge over the exact location of the provided resources but may be able to specify location at a higher level of abstraction (e.g., country, state, or data-center). Rapid elasticity. Capabilities can be rapidly and elastically provisioned, in some cases automatically, to quickly scale out, and rapidly released to quickly scale in [1] (e.g., If one compute-intensive or data-intensive job that can be run in parallel takes 500 hours to process on one machine, with cloud architectures, it would be possible to spawn and launch 500 instances and process the same job in 1 hour. 528
Having available an elastic infrastructure provides the application with the ability to exploit parallelization)[4]. Measured Service. Cloud systems automatically control and optimize resource usage by leveraging a metering capability at some level of abstraction appropriate to the type of service (e.g., storage, processing, bandwidth, and active user accounts). Resource usage can be monitored, controlled, and reported, providing transparency for both the provider and consumer of the utilized service [1]. Service Models: We have found in scientific literature everything as a Service (EaaS). EaaS is the concept of reusable component called across network. It s a subset of cloud computing. as a Service was been associated with others functions such as Communication as a Service (CaaS)[5], Database as a Service(DaaS)[6],Business Process as a Service (BPaaS) [7]. But three of the service models are most widely used. These are: Software as a Service (SaaS). The capability provided to the consumer is to use the provider s applications running on a cloud infrastructure. The applications are accessible from various client devices through either a thin client interface, such as a web browser (e.g., web-based email) or a program interface. The consumer does not manage or control the underlying cloud infrastructure including network, servers, operating systems, storage, or even individual application capabilities, with the possible exception of limited user-specific application configuration settings [8]. Platform as a Service (PaaS). The cloud provider provides platform to deploy users application and software. Deployed applications are accessed from anywhere by the cloud consumer. The cloud consumers have rights to control their deployed application and several application hosting environment configurations. Before deploying an application or software on the cloud, consumers must get a confirmation about whether their application or software tool is supported by the cloud provider or not [9]. Infrastructure as a Service (IaaS). The cloud provider provides capability to the consumer processing, storage, networks, and other fundamental computing resources where the consumer is able to deploy and run arbitrary software, which can include operating systems and applications. Instead of buying resources, users have to pay depending on their usage. The capability provided to consumers does not allow them to manage or control the underlying cloud infrastructure but has control over operating systems; storage, deployed applications, and possibly limited control of select networking components (e.g., host firewalls) [1,9]. Deployment Models: Cloud Computing has four main deployment models, each with specific characteristics that supports the needs of the services and users of the cloud in particular way [9]. Public Cloud. Is one in which the cloud infrastructure and computing resources are made available to the general public over the network. A public cloud is owned by an organization selling cloud services and serves a diverse pool of clients [10]. Private cloud. It gives a single cloud consumer s organization the exclusive access to and usage of infrastructure and computational resources. It may be managed either by the cloud consumer organization or a third party, and may be hosted on the organization s premises (i.e. on-site private clouds) or outsourced to a hosting company (i.e. outsourced private clouds). Community cloud. It serves a group of cloud consumers, who have shared concerns such as mission objectives, security, privacy and compliance policy, rather than serving a single organization as a private cloud does. Similar to private clouds, a community cloud may be managed by the organizations or by a third-party, and may be implemented on customer premise (i.e. on-site community cloud) or outsourced to a hosting company (i.e. outsourced community cloud)[10]. Hybrid cloud. The cloud infrastructure is a composition of two or more clouds (private, community, or public) that remain unique entities but are bound together by standardized or proprietary technology that enables data and application portability (e.g., cloud bursting for load balancing between clouds)[1]. To implement the cloud computing effectively; the requirement of a standardized Reference Architecture (RA), which should provide a blueprint or template architecture that can be reused by others wishing to adopt a similar solution and a Reference Model (RM) which should explain the concepts and relationships that underlie the RA are inevitable. Practically there are a plethora of different reference architectures, models and frameworks for Cloud Computing. Which one should an organization adopt? Of course there s no straightforward answer to this question [11]. 529
In this paper we present the Cloud Computing Reference Architectures of major vendor s available in scientific literature and RA of NIST, by comparing them through the nature of their RA (actor based/layer based) as well as by activity and capability mapping to particular layer(s) or actor(s), which can help the application developers, application tester, application deployers, application administrator, system developers, system administrators and IT managers to understand the RA of different Vendors. The next sections are organized as follows: In the 2 nd section we discuss the related work appeared in scientific literature, 3 rd section discusses the RA of different cloud vendors, the 4 th section presents the comparison between the RAs, and in the 5 th section the conclusions is presented. II. RELATED WORK There are plenty of scientific literature published regarding cloud computing and different issues related to it. As of our best knowledge NIST s white paper is directly related to our research. NIST in their report [12] surveyed on the cloud reference architecture models used by different cloud organization, cloud providers and federal agencies, which include: Cloud Computing Use Case Discussion Group, Distributed Management Task Force (DMTF), Cloud Security Alliance, IBM Cloud Reference Architecture, FCCI (Federal Cloud Computing Initiative), Cisco Cloud Reference,Open Security Architecture Models, SNIA Cloud Data Management Interface, Elastra Cloud Technology Reference Model for Enterprise Clouds and they concluded by comparison among the presented models using the focus area, architecture level and business level as a criterion. In paper [13] they (NIST) designed their own reference architecture and comment that different cloud vendors can only compare their RA with the newly designed (NIST) but not to follow it. III. REFERENCE ARCHITECTURE In this section we discuss the RAs of different cloud service providers. The RA provides a technical blueprint for a system with a well-defined scope, the requirements it satisfies, and the architectural decisions it realizes. It ensures consistency and quality across development and delivery projects [7]. We may classify Cloud reference architectures as one of two styles, either; 1. Role-based: Where activities or capabilities are mapped to roles such as cloud provider or consumer. 2. Layer-based: Where activities or capabilities are mapped to layers in architecture such as application or resource layers or to the service management architecture or security architecture [11]. A. The NIST RA The adoption of cloud computing into the US government and its implementation depend upon a variety of technical and non-technical factors. A fundamental reference point, based on the NIST definition of Cloud computing, is needed to describe an overall framework that can be used government wide [13]. The guiding principles used to create the RA were: 1) Develop a vendor-neutral architecture that is consistent with the NIST definition 2) Develop a solution that does not stifle innovation by defining a prescribed technical solution. This solution will create a level playing field for industry to discuss and compare their cloud offerings with the US government. The NIST cloud computing reference architecture shown in Figure 1, defines five major actors: cloud consumer, cloud provider, cloud carrier, cloud auditor and cloud broker. Each actor is an entity (a person or an organization) that participates in a transaction or process and/or performs tasks in cloud computing. Cloud Consumer. A person or organization that maintains a business relationship with, and uses service from, Cloud providers. Cloud Provider. A person, organization, or entity responsible for making a service available to interested parties. Cloud Auditor. A party that can conduct independent assessment of cloud services, information system operations, performance and security of the cloud implementation. Cloud Broker An entity that manages the use, performance and delivery of cloud services, and negotiates relationships between Cloud Providers and Cloud Consumers. Cloud Carrier. An intermediary that provides connectivity and transport of cloud services from Cloud Providers to Cloud Consumers. 530
Fig. 1. The NIST Conceptual Reference Model [13]. B. The IBM RA The IBM s RA shown in Figure 2, [7, 14] defines the fundamental architectural elements which underpin and provide guidelines for creating a cloud environment. The architecture defines three main roles: Cloud Service Consumer, Cloud Service Provider and Cloud Service Creator. Each role can be fulfilled by a single person or by a group of people or by one or more organizations. The Cloud Service Provider. has the responsibility of providing cloud services to Cloud Service Consumers. Those services are delivered by a Common Cloud Management Platform (CCMP) either by running CCMP infrastructure or consuming one as a service. Cloud Services represent any type of IT capability provided by the Cloud Service Provider to Cloud Service Consumers. These services have cloud essential characteristics. A Cloud Service Creator. designs, implements and maintains run-time and management artifacts specific to a cloud service. Service Development Tools are used by the Cloud Service Creator to develop new Cloud Service Definitions, including run-time artifacts and managementrelated aspects (monitoring, metering, provisioning, etc.). Security, Resiliency, Performance and Consumability span the CCMP Reference Architecture, the hardware infrastructure and Cloud Services. C. The Oracle RA (ORA) The Oracle conceptual view of RA, shown in Figure 3, brings together three key Cloud perspectives - the provider, consumer, and the broker [15]. In the white paper [16], The Cloud Provider is further explained as a layer based architecture, but base on the scientific literature we decided to categorize the Oracle Conceptual RA to role based. The role of the actors is similar with that of the NIST RA. Fig. 2. The IBM Conceptual Reference Model [7] A Cloud Service Consumer. is an organization, a human being or an IT system that consumes service instances delivered by a particular Cloud Service Provider. Besides IT capabilities consumed as cloud services, consumers may continue to have in-house IT managed in a traditional noncloud fashion. The functionality of Cloud Service Integration Tools is required to integrate the existing inhouse IT with cloud services consumed from a cloud service provider. Fig. 3. The ORACLE Conceptual RA [15]. 531
D. The HP RA HP Cloud System reference architecture [17] employs the three-layer architecture shown in figure 4. Within this architecture: The supply layer provides all the infrastructure services for Cloud System; it includes physical and virtual assets such as servers and storage. The delivery layer delivers infrastructure and applications as services. The demand layer contains the self-service portals, where services are consumed by end users or subscribers. Technology Architecture layer. The foundation of this framework is the data center technology architecture layer, which consists of three salient blocks of network, compute, and storage. This layer hosts all the services that are delivered to a cloud consumer or subscriber. Security layer. The key takeaway in this layer is that security is blanketed as an end-to-end architecture across all aspects of the framework. Security is considered as one of the key challenges to be solved in a cloud framework. Service Orchestration layer. This layer is implemented with configuration repository enablers. The configuration repository stores key information such as service catalogue, asset inventory, and resource-to-service mappings. This layer is an important layer because it maps the technology components to the service components and serves as a reference point during service provisioning. The service orchestration layer is the glue that integrates the lower layers to create a service for delivery. Service delivery and management layer. This is where infrastructure and service management function take place. Cloud service consumers layer. This is the topmost layer the usually exposed via a portal-like solution to the consumer. This is the layer where service is defined, requested, and managed by the consumer. Fig. 4.The HP Cloud System three-layer architecture [17]. E. The Cisco RA The Cisco cloud reference architecture [18] model shown in Figure 5, portrays the architectural layers connected via APIs and repositories. It consists of the following layers: IV. COMPARISON In this section we present the comparison of the cloud computing vendors reference architecture discussed above. The nature of each vendors architecture is mapped to layer based or role based and presented in Table 1. In Table 2 we have presented the mapping of activities and capabilities to different layer(s) or actor(s). We extracted those activities and capabilities from the reference architecture we have discussed above. Table 1 Cloud Computing Ra Level Mapping According To Its Nature Vendor Company NIST IBM ORACLE HP Architectural Level Layered Based Role Based Fig. 5. The Cisco Cloud RA [18] Cisco Note: for yes 532
TABLE 2 CLOUD COMPUTING ACTIVITIES AND CAPABILITIES MAPPING TO THE LAYER(S) OR ACTOR(S) Vendor Company Cloud Consumer Cloud Carrier Cloud Provider Cloud Manager Cloud Auditor Cloud Developer Cloud Broker NIST IBM ORACLE HP Cisco The cloud consumer actor, a person, organization or system, who can request cloud services from a cloud provider directly or via a cloud broker. consumer actor, a person organization or a system who can request for a service. consumer actor, a person organization or a system who can request for a service. The demand layer is responsible to provide portal services where consumers or business users can request. consumer layer, which is the consumer-facing layer. The cloud carrier actor, an intermediary that provides connectivity and transport of cloud services from cloud providers to cloud consumers. The cloud provider actor is responsible to provide the connectivity and other infrastructure. provider actor is responsible to provide the facilities for the consumers. The supply layer is responsible for providing the physical and virtual asset. The technology architecture layer is responsible for providing the infrastructure. The cloud provider actor, a person, organization, or entity responsible for making a service available to interested parties. The cloud provider which provides the services to the consumer. The cloud provider actor which provides facility and access to the infrastructure for the consumer. The Supply layer provides all services for the cloud service consumer. Technology architecture layer, which hosts all the services that are delivered to a cloud consumer or subscriber. Service delivery and management architecture layer is also responsible to deliver the services. The cloud provider actor manages the delivery of services and infrastructure The broker actor is also given the responsibility to manage. Provider actor is also responsible for management. provider actor is also responsible for management including the security. The delivery and demand layers are responsible for management of services. The service delivery and management layer is responsible for infrastructure and service management function. The cloud auditor a party that can conduct independent assessment of cloud services, information system operations, performance and security of the cloud implementation. The common cloud management platform (CCMP) which is part of the provider is responsible for auditing. auditor actor but the responsibility is given to the cloud management which is part of cloud service provider actor. It is not clearly described which layer is responsible for auditing but delivery and demand layers are responsible for monitoring by using cloud service automation software. This is performed using the Cisco unified computing system in the technology architecture layer. There is not particular actor defined as cloud developer but it is considered as cloud consumer. creator actor, who will develop a service that can run by cloud service provider. This is considered as cloud builder or cloud application builder and it is defined as part of the service provider actor. This is named as application designer and the responsible layer is the delivery layer. developer layer, the cloud developers are considered as cloud consumers. The cloud broker manages the use, performance and delivery of cloud services, and negotiates relationships between cloud providers and cloud consumers. broker in the RA of IBM. The cloud broker actor, which is responsible for brokering and management. broker in the RA of HP. broker layer and other layer which have the same role. V. CONCLUSION According to the comparison of architectural nature (role/layer based), different vendors use different cloud computing RA and it is clearly shown that, which vendor uses role base and layer based this will avoid the confusion to categorize the RAs. The activities and capabilities mapping to the layer(s) or actor(s) is informative, how the cloud computing RA of different vendors is completely different. This may oblige application developers, application testers, application deployers, application administrators, system developers, system administrators and IT managers to have RA of different vendors in mind when they perform their respective responsibilities in the cloud. Generally this paper may show the importance of having a standardized cloud computing reference architecture, which all cloud vendors will migrate to and follow. REFERENCES [1] Peter Mell and Timothy Grance, The NIST Definition of Cloud Computing (Draft), Recommendations of the National Institute of Standards and Technology, January 2011 [2] Vijia Sarati,Purnendu Naraya and Rao Mikkilineni, Next Generation Cloud Computing Architecture: Enabling real-time dynamism for shared distributed physical infrastructure., 19 th IEEE International Workshops on Enabling Technologies: Infrastructures for Collaborative Enterprises, WETICE, 2010 [3] Amanbir kaur chahal and Gurpreet Singh, Advanced IT Outsourcing By Using Cloud Computing Model, International Journal of Computers &Technology, Volume 2 No.2, April 2012 [4] Jinesh Varia, Amazon Web Services - Architecting for the Cloud: Best Practices, White paper, May 2010 [5] Amel Haji, Asma Ben Letaifa and Sami Tabbane, Cloud Computing: Several Cloud-oriented Solutions, The 4 th International Conference on Advanced Engineering Computing and Applications in Sciences, 2010 [6] Daniel J. Abadi, Data Management in the Cloud: Limitations and Opportunities, IEEE Data Engineering Bulletin, Volume 32, 2009 533
[7] R. Stifani, S. Pappe, G. Breiter and M. Behrendt, 'IBM Cloud Computing Reference Architecture", IBM Academy of Technology,Academy TechNotes, ATN Volume 3, Number 1, 2012 [8] FlexPod with Microsoft Private Cloud-Architecture Overview for FlexPod with Microsoft Windows Server 2008 R2 and Microsoft System Center,2012,White paper, Cisco Publication, April 2012 [9] L. Arockiam, S. Monikandan and G. Parthasarathy, "Cloud Computing: A Survey ", International Journal of Internet Computing (IJIC), ISSN No: 2231 6965, Volume-1, Issue-2, 2011 [10] Keyun Ruan and Joe Carthy, Cloud Computing Reference Architecture and its Forensic Implications: A Preliminary Analysis, Proceedings of the 4 th International Conference on Digital Forensics & Cyber Crime, Springer Lecture Notes, Lafayette, Indiana, USA,, October 25-26, 2012 [11] Lawrence Wilkes, Cloud Computing Reference Architectures, Models and Frameworks, Everware-CBDI Research Note, June 2011 [12] NIST Reference Architecture Analysis Team, Cloud Architecture Reference Models: Survey, 2011 [13] Fang Liu, Jin Tong, Jian Mao, Robert Bohn, John Messina, Lee Badger and Dawn Leaf NIST " Cloud Computing Reference Architecture", Recommendations of the National Institute of Standards and Technology,Special Publication 500-292,September 2012 [14] Emilio Lucotti, "Cloud Architecture " March 7, 2013 [15] Oracle Enterprise Transformation Solutions Series, "Cloud Reference Architecture ", An Oracle White Paper, November 2012 [16] Oracle Reference Architecture, Cloud Foundation Architecture, Release 3.0, November, 2011 [17] Hewlett-Packard(HP)," Understanding the HP CloudSystem Reference Architecture", White paper, August 2011 [18] Cisco Cloud Computing - Data Center Strategy, Architecture, and Solutions Point of View, White Paper for U.S. Public Sector, 2009 534